[gnome-continuous-yocto/gnomeostree-3.28-rocko: 6184/8267] distutils-base.bbclass: Do not use -pie with hardening



commit 475cc0156224433044726b2e1a7fffeaf3520113
Author: Khem Raj <raj khem gmail com>
Date:   Thu Jun 1 21:34:03 2017 -0700

    distutils-base.bbclass: Do not use -pie with hardening
    
    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: 6a4e3b696d32809279f1550cc1d67bc6b9979a03)
    
    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>

 meta/classes/distutils-common-base.bbclass |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
---
diff --git a/meta/classes/distutils-common-base.bbclass b/meta/classes/distutils-common-base.bbclass
index 824a1b6..fa733c6 100644
--- a/meta/classes/distutils-common-base.bbclass
+++ b/meta/classes/distutils-common-base.bbclass
@@ -11,3 +11,5 @@ FILES_${PN}-dev += "\
   ${libdir}/pkgconfig \
   ${PYTHON_SITEPACKAGES_DIR}/*.la \
 "
+
+SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}"


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]