Skip to content

Commit

Permalink
Merge pull request #426 from IntelPython/setup_pie
Browse files Browse the repository at this point in the history
Improvements to setup.py
  • Loading branch information
Diptorup Deb authored May 21, 2021
2 parents b3dac2f + d768dbd commit 32bf0a6
Show file tree
Hide file tree
Showing 14 changed files with 370 additions and 170 deletions.
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,14 @@ For development:
python setup.py develop
```

It is also possible to build dpctl using [DPC++ toolchain](https://github.com/intel/llvm/blob/sycl/sycl/doc/GetStartedGuide.md) instead of oneAPI DPC++. Instead of activating the oneAPI environment, indicate the toolchain installation prefix with `--sycl-compiler-prefix` option, e.g.

```cmd
python setup.py develop --sycl-compiler-prefix=${DPCPP_ROOT}/llvm/build
```

Please use `python setup.py develop --help` for more details.

Install Wheel Package from Pypi
==================================
1. Install dpctl
Expand Down
14 changes: 12 additions & 2 deletions docs/docfiles/user_guides/QuickStart.rst
Original file line number Diff line number Diff line change
Expand Up @@ -165,9 +165,19 @@ to build and install
Building using custom dpcpp
~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. todo::
It is possible to build dpctl from source using .. _DPC++ toolchain: https://github.com/intel/llvm/blob/sycl/sycl/doc/GetStartedGuide.md
instead of the DPC++ compiler that comes with oneAPI. One reason for doing this
may be to enable support for CUDA devices.

Instructions coming soon.
Following steps in :ref:`Build and Install with setuptools` use command line
option :code:`--sycl-compiler-prefix`, for example:

.. code-block:: bash
python setup.py develop --sycl-compiler-prefix=${DPCPP_ROOT}/llvm/build
Available options and their descriptions can be retrieved using option
:code:`--help`.

Using dpctl
-----------
Expand Down
1 change: 1 addition & 0 deletions dpctl/_sycl_context.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@

# distutils: language = c++
# cython: language_level=3
# cython: linetrace=True

""" Implements SyclContext Cython extension type.
"""
Expand Down
1 change: 1 addition & 0 deletions dpctl/_sycl_device.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@

# distutils: language = c++
# cython: language_level=3
# cython: linetrace=True

""" Implements SyclDevice Cython extension type.
"""
Expand Down
1 change: 1 addition & 0 deletions dpctl/_sycl_device_factory.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@

# distutils: language = c++
# cython: language_level=3
# cython: linetrace=True

""" This module implements several device creation helper functions:
Expand Down
1 change: 1 addition & 0 deletions dpctl/_sycl_event.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@

# distutils: language = c++
# cython: language_level=3
# cython: linetrace=True

""" Implements SyclEvent Cython extension type.
"""
Expand Down
1 change: 1 addition & 0 deletions dpctl/_sycl_platform.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
#
# distutils: language = c++
# cython: language_level=3
# cython: linetrace=True

""" Implements SyclPlatform Cython extension type.
"""
Expand Down
1 change: 1 addition & 0 deletions dpctl/_sycl_queue.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@

# distutils: language = c++
# cython: language_level=3
# cython: linetrace=True

""" Implements SyclQueue Cython extension type.
"""
Expand Down
1 change: 1 addition & 0 deletions dpctl/_sycl_queue_manager.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
#
# distutils: language = c++
# cython: language_level=3
# cython: linetrace=True

from __future__ import print_function

Expand Down
1 change: 1 addition & 0 deletions dpctl/memory/_memory.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@

# distutils: language = c++
# cython: language_level=3
# cython: linetrace=True

"""This file implements Python buffer protocol using Sycl USM shared and host
allocators. The USM device allocator is also exposed through this module for
Expand Down
1 change: 1 addition & 0 deletions dpctl/program/_program.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@

# distutils: language = c++
# cython: language_level=3
# cython: linetrace=True

"""Implements a Python interface for SYCL's program and kernel runtime classes.
Expand Down
1 change: 1 addition & 0 deletions dpctl/tensor/_usmarray.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@

# distutils: language = c++
# cython: language_level=3
# cython: linetrace=True

import numpy as np

Expand Down
Loading

0 comments on commit 32bf0a6

Please sign in to comment.