bitbake.conf: Stop exporting TARGET_ flags variables
PATCH 1/1 bitbake.conf: Stop exporting TARGET_ flags variables
Way back in
http://lists.openembedded.org/pipermail/openembedded-core/2014-April/210138.html
a few of us discussed not exporting TARGET_LDFLAGS. There seemed to be support for this idea, and I modified our tree to not do so. I then seem to have dropped the ball. :( We've been running like that for over five years, and not observed any problems.
It seems sensible to stop exporting TARGET_CPPFLAGS, TARGET_CFLAGS and TARGET_CXXFLAGS too.
I've successfully compile-tested core-image-minimal and core-image-sato for x86_64 and qemuarm64 with these changes.
--- meta/conf/bitbake.conf | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
meta/conf/bitbake.conf +4 -4
@@ -569,17 +569,17 @@ PATCHRESOLVE = "noop" export BUILD_CPPFLAGS = "-isystem${STAGING_INCDIR_NATIVE}" BUILDSDK_CPPFLAGS = "" export CPPFLAGS = "${TARGET_CPPFLAGS}" -export TARGET_CPPFLAGS = "" +TARGET_CPPFLAGS = "" export BUILD_CFLAGS = "${BUILD_CPPFLAGS} ${BUILD_OPTIMIZATION}" BUILDSDK_CFLAGS = "${BUILDSDK_CPPFLAGS} ${BUILD_OPTIMIZATION} ${DEBUG_PREFIX_MAP}" export CFLAGS = "${TARGET_CFLAGS}" -export TARGET_CFLAGS = "${TARGET_CPPFLAGS} ${SELECTED_OPTIMIZATION}" +TARGET_CFLAGS = "${TARGET_CPPFLAGS} ${SELECTED_OPTIMIZATION}" export BUILD_CXXFLAGS = "${BUILD_CFLAGS}" BUILDSDK_CXXFLAGS = "${BUILDSDK_CFLAGS}" export CXXFLAGS = "${TARGET_CXXFLAGS}" -export TARGET_CXXFLAGS = "${TARGET_CFLAGS}" +TARGET_CXXFLAGS = "${TARGET_CFLAGS}" export BUILD_LDFLAGS = "-L${STAGING_LIBDIR_NATIVE} \ -L${STAGING_BASE_LIBDIR_NATIVE} \
@@ -601,7 +601,7 @@ TARGET_LINK_HASH_STYLE ?= "${@['-Wl,--hash-style=gnu',''][d.getVar('LINKER_HASH_ ASNEEDED ?= "-Wl,--as-needed" export LDFLAGS = "${TARGET_LDFLAGS}" -export TARGET_LDFLAGS = "-Wl,-O1 ${TARGET_LINK_HASH_STYLE} ${ASNEEDED}" +TARGET_LDFLAGS = "-Wl,-O1 ${TARGET_LINK_HASH_STYLE} ${ASNEEDED}" # Pass parallel make options to the compile task EXTRA_OEMAKE_prepend_task-compile = "${PARALLEL_MAKE} "
Signature · 1 line
2.20.1
Quoted 7 lines · Mike Crowe
Way back in
http://lists.openembedded.org/pipermail/openembedded-core/2014-April/210138.html
a few of us discussed not exportingTARGET_LDFLAGS. There seemed to be support for this idea, and I modified our tree to not do so. I then seem to have dropped the ball. :( We've been running like that for over five years, and not observed any problems.
Quoted 5 lines
It seems sensible to stop exporting
TARGET_CPPFLAGS,TARGET_CFLAGSandTARGET_CXXFLAGStoo.I've successfully compile-tested core-image-minimal and core-image-sato for
x86_64and qemuarm64 with these changes.
FWIW I'm really happy to see this!
Cheers,
Richard
Quoted 9 lines · Richard Purdie
Quoted 7 lines · Mike Crowe
Way back in
http://lists.openembedded.org/pipermail/openembedded-core/2014-April/210138.html
a few of us discussed not exportingTARGET_LDFLAGS. There seemed to be support for this idea, and I modified our tree to not do so. I then seem to have dropped the ball. :( We've been running like that for over five years, and not observed any problems.
Quoted 7 lines
Quoted 5 lines
It seems sensible to stop exporting
TARGET_CPPFLAGS,TARGET_CFLAGSandTARGET_CXXFLAGStoo.I've successfully compile-tested core-image-minimal and core-image-sato for
x86_64and qemuarm64 with these changes.FWIW I'm really happy to see this!
Yes, good too see this. Does it mean we're also now ready to address (e.g. remove or poison?) these variables for -native and -nativesdk as well? Or is that still considered too risky?
Quoted 21 lines · Andre McCurdy
Quoted 19 lines · Richard Purdie
Quoted 17 lines · Mike Crowe
Way back in
http://lists.openembedded.org/pipermail/openembedded-core/2014-April/210138.html
a few of us discussed not exportingTARGET_LDFLAGS. There seemed to be
support for this idea, and I modified our tree to not do so. I then seem to
have dropped the ball. :( We've been running like that for over five years,
and not observed any problems.It seems sensible to stop exporting
TARGET_CPPFLAGS,TARGET_CFLAGSandTARGET_CXXFLAGStoo.I've successfully compile-tested core-image-minimal and core- image-sato for
x86_64and qemuarm64 with these changes.
Quoted 5 lines
Quoted 1 line
FWIW I'm really happy to see this!
Yes, good too see this. Does it mean we're also now ready to address (e.g. remove or poison?) these variables for -native and -nativesdk as well? Or is that still considered too risky?
Initially I thought you meant they were being exported and they're not.
There aren't many references to TARGET_CFLAGS in recipes, it wouldn't be hard to clean up the remaining references (the cross recipe references are needed and can stay), then we could look at deleting them in those classes...
If we don't do it now it may be worth a bug so we remember.
Cheers,
Richard