summaryrefslogtreecommitdiffstats
path: root/meta/classes/setuptools.bbclass
Commit message (Collapse)AuthorAgeFilesLines
* distutils,setuptools: Delete use of SECURITY_NO_PIE_CFLAGSKhem Raj2017-07-081-2/+0
| | | | | | | | | gcc can handle PIE in gcc driver (From OE-Core rev: fcfe6d4ab4460f8358e13023022a5e909941ca93) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* setuptoools.bbclass: Do not use -pie with hardeningKhem Raj2017-06-061-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix build when PIE is turned on. It tries to build .so file using -pie and -shared flags together because its doing compile and link in same step CFLAGS and LDFLAGS are combined and does not work, ending in errors e.g. | /mnt/a/oe/build/tmp/work/cortexa7t2hf-neon-vfpv4-bec-linux-musleabi/python-pygpgme/0.3-r0/recipe-sysroot/usr/l ib/Scrt1.o: In function `_start_c': | /usr/src/debug/musl/1.1.16+gitAUTOINC+179766aa2e-r0/git/crt/crt1.c:17: undefined reference to `main' | collect2: error: ld returned 1 exit status This error while cryptic is due to the fact that we are building a shared library but also pass -pie flag to the link step after specify LDHSARED ( which is -shared linker flags ) we can not use -pie when doing shared libs. This is true for all the python modules inheriting setup tools Disable the pie flags thusly for all modules using setuptools since this setting is done in setuptools makefiles which are then used during module compiles (From OE-Core rev: dc1c16e9df365871b2c40998f63f304ffa610447) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes: Add distutils for python3Khem Raj2014-02-021-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In line with python2 add distutils and setuptools classes for handing python3 Use python-distribute instead of python-setuptools in setuptools bbclass Remove --single-version-externally-managed since its setuptools specific and we dont use it anymore Do build_ext as separate step during compile Add DISTUTILS_BUILD_EXT_ARGS for modules to pass flags to build_ext step in setup.py Add build_ext as sepate step during compile and add the cross sysrooted library and headers since we are cross compiling Use ${PYTHON_PN} in place of hardcoding python name Remove the /etc/share if its empty Since OE-Core times we now have machine specific sysroots for targets unlike before when we used arch specific sysroots so reflect that here Use MACHINE for sysroot when not building for build host Python's machinery replaces directories in sysroot path to match OE's staging area sysroots. Earlier we use to have HOST_SYS represent sysroot always but now we use MACHINE to represent target sysroots but HOST_SYS to represent host sysroot. This patch caters to that difference (From OE-Core rev: 8bb0206ed67228c88dd5bc2d8b36ce28f48b78f4) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* distutils/steuptools: Fix files layout and unbreak buildsRichard Purdie2012-08-241-0/+1
| | | | | | | | | | | | | | | The last two distutils changes progressivly broke the builds. Firstly they moved things from the site_packages directory to being higher up the tree which introduced package QA warnings as a side effect. Secondly, it interacts badly with setuptools which passes in --root=${D} itself. This patch restores the original directory layout, hence fixing the QA warnings and also passes extra options to setuptools to deal with the --root option it passes. (From OE-Core rev: bed18d5df7915e4127a538be9c7550e185c8c850) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* setuptools bbclass: import from OEKoen Kooi2011-01-201-0/+8
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Saul Wold <sgw@linux.intel.com>