diff options
| author | Paul Eggleton <paul.eggleton@microsoft.com> | 2021-04-15 21:46:06 +1200 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-04-15 20:18:58 +0100 |
| commit | 1203d1f24d51316ff693556a2d36e1fd71789865 (patch) | |
| tree | 7bfba3c845c9c8ff2ee271e9e1c96d3a22e03bfe | |
| parent | 34a72cf61389eb0bed05953ecf72fab8c75d580c (diff) | |
| download | poky-1203d1f24d51316ff693556a2d36e1fd71789865.tar.gz | |
ref-manual: add mention of DISTUTILS_SETUP_PATH
Add a variable glossary entry and corresponding 3.3 migration
section entry for DISTUTILS_SETUP_PATH.
(From yocto-docs rev: 0823237e6f4b9dbdf48500b3c1e8cc61696fa2d2)
Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | documentation/ref-manual/migration-3.3.rst | 29 | ||||
| -rw-r--r-- | documentation/ref-manual/variables.rst | 13 |
2 files changed, 42 insertions, 0 deletions
diff --git a/documentation/ref-manual/migration-3.3.rst b/documentation/ref-manual/migration-3.3.rst index db1619e627..4fb51a39dc 100644 --- a/documentation/ref-manual/migration-3.3.rst +++ b/documentation/ref-manual/migration-3.3.rst | |||
| @@ -74,6 +74,35 @@ Some example recipes where this change has been made: ``gpgme``, ``libcap-ng``, | |||
| 74 | ``python3-pycairo``. | 74 | ``python3-pycairo``. |
| 75 | 75 | ||
| 76 | 76 | ||
| 77 | .. _migration-3.3-distutils-path: | ||
| 78 | |||
| 79 | ``setup.py`` path for python modules | ||
| 80 | ------------------------------------ | ||
| 81 | |||
| 82 | In a Python module, sometimes ``setup.py`` can be buried deep in the | ||
| 83 | source tree. Previously this was handled in recipes by setting :term:`S` to | ||
| 84 | point to the subdirectory within the source where ``setup.py`` is located. | ||
| 85 | However with the recent :ref:`pseudo <overview-manual/concepts:fakeroot and pseudo>` | ||
| 86 | changes, some Python modules make changes to files beneath ``${S}``, for | ||
| 87 | example:: | ||
| 88 | |||
| 89 | S = "${WORKDIR}/git/python/pythonmodule" | ||
| 90 | |||
| 91 | then in ``setup.py`` it works with source code in a relative fashion, such | ||
| 92 | as ``../../src``. This causes pseudo to abort as it isn't able to track | ||
| 93 | the paths properly. This release introduces a new :term:`DISTUTILS_SETUP_PATH` | ||
| 94 | variable so that recipes can specify it explicitly, for example:: | ||
| 95 | |||
| 96 | S = "${WORKDIR}/git" | ||
| 97 | DISTUTILS_SETUP_PATH = "${S}/python/pythonmodule" | ||
| 98 | |||
| 99 | Recipes that inherit from :ref:`distutils3 <ref-classes-distutils3>` (or | ||
| 100 | :ref:`setuptools3 <ref-classes-setuptools3>` which itself inherits | ||
| 101 | :ref:`distutils3 <ref-classes-distutils3>`) that also set :term:`S` to | ||
| 102 | point to a Python module within a subdirectory in the aforementioned | ||
| 103 | manner should be changed to set :term:`DISTUTILS_SETUP_PATH` instead. | ||
| 104 | |||
| 105 | |||
| 77 | .. _migration-3.3-bitbake: | 106 | .. _migration-3.3-bitbake: |
| 78 | 107 | ||
| 79 | BitBake changes | 108 | BitBake changes |
diff --git a/documentation/ref-manual/variables.rst b/documentation/ref-manual/variables.rst index 8f059650d3..74ac12bf98 100644 --- a/documentation/ref-manual/variables.rst +++ b/documentation/ref-manual/variables.rst | |||
| @@ -1978,6 +1978,19 @@ system and gives an overview of their function and contents. | |||
| 1978 | is included in the default value of | 1978 | is included in the default value of |
| 1979 | :term:`OVERRIDES`. | 1979 | :term:`OVERRIDES`. |
| 1980 | 1980 | ||
| 1981 | :term:`DISTUTILS_SETUP_PATH` | ||
| 1982 | When used by recipes that inherit the | ||
| 1983 | :ref:`distutils3 <ref-classes-distutils3>` or | ||
| 1984 | :ref:`setuptools3 <ref-classes-setuptools3>` class, this variable should | ||
| 1985 | be used to specify the directory in which the ``setup.py`` file is | ||
| 1986 | located if it is not at the root of the source tree (as specified by | ||
| 1987 | :term:`S`). For example, in a recipe where the sources are fetched from | ||
| 1988 | a Git repository and ``setup.py`` is in a ``python/pythonmodule`` | ||
| 1989 | subdirectory, you would have this:: | ||
| 1990 | |||
| 1991 | S = "${WORKDIR}/git" | ||
| 1992 | DISTUTILS_SETUP_PATH = "${S}/python/pythonmodule" | ||
| 1993 | |||
| 1981 | :term:`DL_DIR` | 1994 | :term:`DL_DIR` |
| 1982 | The central download directory used by the build process to store | 1995 | The central download directory used by the build process to store |
| 1983 | downloads. By default, ``DL_DIR`` gets files suitable for mirroring | 1996 | downloads. By default, ``DL_DIR`` gets files suitable for mirroring |
