| Message ID | 20250916040927.103722-4-hongxu.jia@windriver.com |
|---|---|
| State | New |
| Headers | show |
| Series | [1/8] yocto-space-optimize.inc: move space optimize from recipe webkitgtk | expand |
On Tue Sep 16, 2025 at 6:09 AM CEST, hongxu via lists.openembedded.org wrote: > The modern compilers and code seem to require extra steps to avoid DEBUG errors, > Move debug tuning configuration from recipes to an include file to address these > errors. > > Introduce separate variables to avoid the :remove operations, such DEBUG_OPTLEVEL, > BUILD_OPTLEVEL and OECMAKE_WEBKIT_NO_INLINE_HINTS > > Suggested-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> > Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> > --- Just a note about this patches: I had perf reproducibility issues [1][2] after taking this series and I believe this is linked with this patch. I suspect this is not directly related with it, but more with the issue we have had with perf reproducibility last week. So I dropped this patch for now, but I will take it a bit later this week and try to go further. I still wanted to provide some feedback here. Also, if anyone believes this issue IS related with this series, please share your thoughts. [1] https://autobuilder.yoctoproject.org/valkyrie/#/builders/37/builds/2505 [2] http://valkyrie.yocto.io/pub/repro-fail/oe-reproducible-20250916-0ss72vce/ Thanks, Mathieu
On Wed, Sep 17, 2025 at 04:24 AM, Mathieu Dubois-Briand wrote: > > Just a note about this patches: I had perf reproducibility issues [1][2] > after taking this series and I believe this is linked with this patch. I > suspect this is not directly related with it, but more with the issue we > have had with perf reproducibility last week. > > So I dropped this patch for now, but I will take it a bit later this > week and try to go further. I still wanted to provide some feedback > here. Got it, I will have a look //Hongxu > > Also, if anyone believes this issue IS related with this series, > please share your thoughts. > > [1] https://autobuilder.yoctoproject.org/valkyrie/#/builders/37/builds/2505 > > [2] http://valkyrie.yocto.io/pub/repro-fail/oe-reproducible-20250916-0ss72vce/ > > > Thanks, > Mathieu
On 9/17/25 19:24, Mathieu Dubois-Briand via lists.openembedded.org wrote: > CAUTION: This email comes from a non Wind River email account! > Do not click links or open attachments unless you recognize the sender and know the content is safe. > > On Tue Sep 16, 2025 at 6:09 AM CEST, hongxu via lists.openembedded.org wrote: >> The modern compilers and code seem to require extra steps to avoid DEBUG errors, >> Move debug tuning configuration from recipes to an include file to address these >> errors. >> >> Introduce separate variables to avoid the :remove operations, such DEBUG_OPTLEVEL, >> BUILD_OPTLEVEL and OECMAKE_WEBKIT_NO_INLINE_HINTS >> >> Suggested-by: Peter Kjellerstedt<peter.kjellerstedt@axis.com> >> Signed-off-by: Hongxu Jia<hongxu.jia@windriver.com> >> --- > Just a note about this patches: I had perf reproducibility issues [1][2] > after taking this series and I believe this is linked with this patch. I > suspect this is not directly related with it, but more with the issue we > have had with perf reproducibility last week. > > So I dropped this patch for now, but I will take it a bit later this > week and try to go further. I still wanted to provide some feedback > here. Also, if anyone believes this issue IS related with this series, > please share your thoughts. > > [1]https://autobuilder.yoctoproject.org/valkyrie/#/builders/37/builds/2505 > [2]http://valkyrie.yocto.io/pub/repro-fail/oe-reproducible-20250916-0ss72vce/ Hi I clone the branch of you on contrib https://git.openembedded.org/openembedded-core-contrib/log/?h=mathieu/master-next-success https://git.openembedded.org/bitbake-contrib/log/?h=mathieu/master-next-success And do oe-selftest without the debug build patches, the issue we have had with perf reproducibility still exist $ oe-selftest -r reproducible.ReproducibleTests.test_reproducible_builds ... 2025-09-19 05:05:31,099 - oe-selftest - INFO - ====================================================================== 2025-09-19 05:05:31,099 - oe-selftest - INFO - FAIL: test_reproducible_builds (reproducible.ReproducibleTests) 2025-09-19 05:05:31,099 - oe-selftest - INFO - ---------------------------------------------------------------------- 2025-09-19 05:05:31,099 - oe-selftest - INFO - Traceback (most recent call last): File "/buildarea5/hjia/contrib/openembedded-core-contrib/meta/lib/oeqa/selftest/cases/reproducible.py", line 406, in test_reproducible_builds self.fail('\n'.join(fails)) AssertionError: Bitbake reproducibleA failure Bitbake reproducibleB-extended failure The following deb packages are different and not in exclusion list: /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/deb/./qemux86_64/perf-dbg_6.16.7-r0_amd64.deb /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/deb/./qemux86_64/perf-python_6.16.7-r0_amd64.deb /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/deb/./qemux86_64/perf-src_6.16.7-r0_amd64.deb /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/deb/./qemux86_64/perf_6.16.7-r0_amd64.deb /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/deb/./x86-64-v3/apt-dbg_3.0.3-r0_amd64.deb /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/deb/./x86-64-v3/apt_3.0.3-r0_amd64.deb The following ipk packages are different and not in exclusion list: /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/ipk/./qemux86_64/perf-dbg_6.16.7-r0_qemux86_64.ipk /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/ipk/./qemux86_64/perf-python_6.16.7-r0_qemux86_64.ipk /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/ipk/./qemux86_64/perf-src_6.16.7-r0_qemux86_64.ipk /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/ipk/./qemux86_64/perf_6.16.7-r0_qemux86_64.ipk /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/ipk/./x86-64-v3/apt-dbg_3.0.3-r0_x86-64-v3.ipk /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/ipk/./x86-64-v3/apt_3.0.3-r0_x86-64-v3.ipk The following rpm packages are different and not in exclusion list: /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/rpm/./qemux86_64/perf-6.16.7-r0.qemux86_64.rpm /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/rpm/./qemux86_64/perf-dbg-6.16.7-r0.qemux86_64.rpm /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/rpm/./qemux86_64/perf-python-6.16.7-r0.qemux86_64.rpm /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/rpm/./qemux86_64/perf-src-6.16.7-r0.qemux86_64.rpm /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/rpm/./x86_64_v3/apt-3.0.3-r0.x86_64_v3.rpm /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/rpm/./x86_64_v3/apt-dbg-3.0.3-r0.x86_64_v3.rpm 2025-09-19 05:05:31,099 - oe-selftest - INFO - ---------------------------------------------------------------------- 2025-09-19 05:05:31,099 - oe-selftest - INFO - Ran 1 test in 32633.939s 2025-09-19 05:05:31,099 - oe-selftest - INFO - FAILED 2025-09-19 05:05:31,099 - oe-selftest - INFO - (failures=1) 2025-09-19 05:05:34,691 - oe-selftest - INFO - RESULTS: 2025-09-19 05:05:34,691 - oe-selftest - INFO - RESULTS - reproducible.ReproducibleTests.test_reproducible_builds: FAILED (32633.79s) 2025-09-19 05:05:34,736 - oe-selftest - INFO - SUMMARY: 2025-09-19 05:05:34,736 - oe-selftest - INFO - oe-selftest () - Ran 1 test in 32633.939s 2025-09-19 05:05:34,736 - oe-selftest - INFO - oe-selftest - FAIL - Required tests failed (successes=0, skipped=0, failures=1, errors=0) ... //Hongxu > Thanks, > Mathieu > > -- > Mathieu Dubois-Briand, Bootlin > Embedded Linux and Kernel engineering > https://bootlin.com > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#223592):https://lists.openembedded.org/g/openembedded-core/message/223592 > Mute This Topic:https://lists.openembedded.org/mt/115268059/3617049 > Group Owner:openembedded-core+owner@lists.openembedded.org > Unsubscribe:https://lists.openembedded.org/g/openembedded-core/unsub [hongxu.jia@eng.windriver.com] > -=-=-=-=-=-=-=-=-=-=-=- >
On 9/19/25 11:08, hongxu via lists.openembedded.org wrote: > On 9/17/25 19:24, Mathieu Dubois-Briand via lists.openembedded.org wrote: >> CAUTION: This email comes from a non Wind River email account! >> Do not click links or open attachments unless you recognize the sender and know the content is safe. >> >> On Tue Sep 16, 2025 at 6:09 AM CEST, hongxu via lists.openembedded.org wrote: >>> The modern compilers and code seem to require extra steps to avoid DEBUG errors, >>> Move debug tuning configuration from recipes to an include file to address these >>> errors. >>> >>> Introduce separate variables to avoid the :remove operations, such DEBUG_OPTLEVEL, >>> BUILD_OPTLEVEL and OECMAKE_WEBKIT_NO_INLINE_HINTS >>> >>> Suggested-by: Peter Kjellerstedt<peter.kjellerstedt@axis.com> >>> Signed-off-by: Hongxu Jia<hongxu.jia@windriver.com> >>> --- >> Just a note about this patches: I had perf reproducibility issues [1][2] >> after taking this series and I believe this is linked with this patch. I >> suspect this is not directly related with it, but more with the issue we >> have had with perf reproducibility last week. >> >> So I dropped this patch for now, but I will take it a bit later this >> week and try to go further. I still wanted to provide some feedback >> here. Also, if anyone believes this issue IS related with this series, >> please share your thoughts. >> >> [1]https://autobuilder.yoctoproject.org/valkyrie/#/builders/37/builds/2505 >> [2]http://valkyrie.yocto.io/pub/repro-fail/oe-reproducible-20250916-0ss72vce/ I am digging in the issue, and found the issue only happen on world build of reproducible, have different debuginfo data. I found the commit [1] to fix reproducibility issue for perf, but it seems the issue still existed, ... perf: Fix reproducibility issue Perf's build process generates two copies of its internal headers, one at tools/lib/perf/include/internal and one at libperf/include/internal with files like xyarray.h. Although the files are identical, the binaries including them would see them at different paths and have different debuginfo data. To avoid this, build libperf.a first, which will ensure the libperf headers directory exists. This is used in preference to the other by the build process and results in consistent binaries. ... [1] https://git.openembedded.org/openembedded-core/commit/?id=0a886fcacaab0fbce1306c0f99d482f940a8f705 oe-selftest -r reproducible.ReproducibleTests.test_reproducible_builds $ recipe-sysroot-native/usr/bin/dwarfsrcfiles sources/perf-1.0/libperf/core.o /usr/src/debug/perf/1.0/tools/lib/perf/core.c ... /usr/src/debug/perf/1.0/tools/lib/perf/include/perf/core.h /usr/src/debug/perf/1.0/tools/lib/perf/include/internal/lib.h ... $ recipe-sysroot-native/usr/bin/dwarfsrcfiles sources/perf-1.0/libperf/core.o /usr/src/debug/perf/1.0/tools/lib/perf/core.c ... /usr/src/debug/perf/1.0/libperf/include/perf/core.h /usr/src/debug/perf/1.0/libperf/include/internal/lib.h ... If specify perf of reproducible for oe selftest, the issue was not found $ echo 'OEQA_REPRODUCIBLE_TEST_TARGET = "perf"' >> conf/local.conf $ oe-selftest -r reproducible.ReproducibleTests.test_reproducible_builds $ recipe-sysroot-native/usr/bin/dwarfsrcfiles sources/perf-1.0/libperf/core.o /usr/src/debug/perf/1.0/tools/lib/perf/core.c ... /usr/src/debug/perf/1.0/libperf/include/perf/core.h /usr/src/debug/perf/1.0/libperf/include/internal/lib.h ... $ recipe-sysroot-native/usr/bin/dwarfsrcfiles sources/perf-1.0/libperf/core.o /usr/src/debug/perf/1.0/tools/lib/perf/core.c ... /usr/src/debug/perf/1.0/libperf/include/perf/core.h /usr/src/debug/perf/1.0/libperf/include/internal/lib.h ... //Hongxu > Hi > > I clone the branch of you on contrib > > https://git.openembedded.org/openembedded-core-contrib/log/?h=mathieu/master-next-success > > https://git.openembedded.org/bitbake-contrib/log/?h=mathieu/master-next-success > > And do oe-selftest without the debug build patches, the issue we have > had with perf reproducibility still exist > > $ oe-selftest -r reproducible.ReproducibleTests.test_reproducible_builds > > ... > > 2025-09-19 05:05:31,099 - oe-selftest - INFO - > ====================================================================== > 2025-09-19 05:05:31,099 - oe-selftest - INFO - FAIL: > test_reproducible_builds (reproducible.ReproducibleTests) > 2025-09-19 05:05:31,099 - oe-selftest - INFO - > ---------------------------------------------------------------------- > 2025-09-19 05:05:31,099 - oe-selftest - INFO - Traceback (most recent > call last): > File > "/buildarea5/hjia/contrib/openembedded-core-contrib/meta/lib/oeqa/selftest/cases/reproducible.py", > line 406, in test_reproducible_builds > self.fail('\n'.join(fails)) > AssertionError: Bitbake reproducibleA failure > Bitbake reproducibleB-extended failure > The following deb packages are different and not in exclusion list: > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/deb/./qemux86_64/perf-dbg_6.16.7-r0_amd64.deb > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/deb/./qemux86_64/perf-python_6.16.7-r0_amd64.deb > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/deb/./qemux86_64/perf-src_6.16.7-r0_amd64.deb > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/deb/./qemux86_64/perf_6.16.7-r0_amd64.deb > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/deb/./x86-64-v3/apt-dbg_3.0.3-r0_amd64.deb > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/deb/./x86-64-v3/apt_3.0.3-r0_amd64.deb > The following ipk packages are different and not in exclusion list: > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/ipk/./qemux86_64/perf-dbg_6.16.7-r0_qemux86_64.ipk > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/ipk/./qemux86_64/perf-python_6.16.7-r0_qemux86_64.ipk > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/ipk/./qemux86_64/perf-src_6.16.7-r0_qemux86_64.ipk > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/ipk/./qemux86_64/perf_6.16.7-r0_qemux86_64.ipk > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/ipk/./x86-64-v3/apt-dbg_3.0.3-r0_x86-64-v3.ipk > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/ipk/./x86-64-v3/apt_3.0.3-r0_x86-64-v3.ipk > The following rpm packages are different and not in exclusion list: > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/rpm/./qemux86_64/perf-6.16.7-r0.qemux86_64.rpm > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/rpm/./qemux86_64/perf-dbg-6.16.7-r0.qemux86_64.rpm > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/rpm/./qemux86_64/perf-python-6.16.7-r0.qemux86_64.rpm > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/rpm/./qemux86_64/perf-src-6.16.7-r0.qemux86_64.rpm > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/rpm/./x86_64_v3/apt-3.0.3-r0.x86_64_v3.rpm > /buildarea5/hjia/contrib/openembedded-core-contrib/build-st/reproducibleB-extended/tmp/deploy/rpm/./x86_64_v3/apt-dbg-3.0.3-r0.x86_64_v3.rpm > > 2025-09-19 05:05:31,099 - oe-selftest - INFO - > ---------------------------------------------------------------------- > 2025-09-19 05:05:31,099 - oe-selftest - INFO - Ran 1 test in 32633.939s > 2025-09-19 05:05:31,099 - oe-selftest - INFO - FAILED > 2025-09-19 05:05:31,099 - oe-selftest - INFO - (failures=1) > 2025-09-19 05:05:34,691 - oe-selftest - INFO - RESULTS: > 2025-09-19 05:05:34,691 - oe-selftest - INFO - RESULTS - > reproducible.ReproducibleTests.test_reproducible_builds: FAILED > (32633.79s) > 2025-09-19 05:05:34,736 - oe-selftest - INFO - SUMMARY: > 2025-09-19 05:05:34,736 - oe-selftest - INFO - oe-selftest () - Ran 1 > test in 32633.939s > 2025-09-19 05:05:34,736 - oe-selftest - INFO - oe-selftest - FAIL - > Required tests failed (successes=0, skipped=0, failures=1, errors=0) > > ... > > //Hongxu > >> Thanks, >> Mathieu >> >> -- >> Mathieu Dubois-Briand, Bootlin >> Embedded Linux and Kernel engineering >> https://bootlin.com >> >> > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#223719):https://lists.openembedded.org/g/openembedded-core/message/223719 > Mute This Topic:https://lists.openembedded.org/mt/115268059/3617049 > Group Owner:openembedded-core+owner@lists.openembedded.org > Unsubscribe:https://lists.openembedded.org/g/openembedded-core/unsub [hongxu.jia@eng.windriver.com] > -=-=-=-=-=-=-=-=-=-=-=- >
On Wed Sep 17, 2025 at 1:24 PM CEST, Mathieu Dubois-Briand wrote: > On Tue Sep 16, 2025 at 6:09 AM CEST, hongxu via lists.openembedded.org wrote: >> The modern compilers and code seem to require extra steps to avoid DEBUG errors, >> Move debug tuning configuration from recipes to an include file to address these >> errors. >> >> Introduce separate variables to avoid the :remove operations, such DEBUG_OPTLEVEL, >> BUILD_OPTLEVEL and OECMAKE_WEBKIT_NO_INLINE_HINTS >> >> Suggested-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> >> Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> >> --- > > Just a note about this patches: I had perf reproducibility issues [1][2] > after taking this series and I believe this is linked with this patch. I > suspect this is not directly related with it, but more with the issue we > have had with perf reproducibility last week. > > So I dropped this patch for now, but I will take it a bit later this > week and try to go further. I still wanted to provide some feedback > here. Also, if anyone believes this issue IS related with this series, > please share your thoughts. > > [1] https://autobuilder.yoctoproject.org/valkyrie/#/builders/37/builds/2505 > [2] http://valkyrie.yocto.io/pub/repro-fail/oe-reproducible-20250916-0ss72vce/ > OK, I took again the series, and now the issue is gone. So clearly the AB-INT is still present. Bruce, I've been told you are the one to contact here. Do you have any opinion on this? Thanks, Mathieu
diff --git a/meta/conf/distro/include/debug_build.inc b/meta/conf/distro/include/debug_build.inc index a9222a442a..ae6dc7f4c6 100644 --- a/meta/conf/distro/include/debug_build.inc +++ b/meta/conf/distro/include/debug_build.inc @@ -5,3 +5,40 @@ SELECTED_OPTIMIZATION = "${DEBUG_OPTIMIZATION}" # compiler flags for native/nativesdk BUILD_OPTLEVEL = "-Og" BUILD_OPTIMIZATION = "${BUILD_OPTLEVEL} -g" + +# The modern compilers and code seem to require extra steps to avoid DEBUG errors, +# this file collects debug tuning configuration to address DEBUG errors. + +DEBUG_OPTIMIZATION:append:pn-perf = " -Wno-error=maybe-uninitialized" +DEBUG_OPTIMIZATION:append:armv4:pn-libjpeg-turbo = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" +DEBUG_OPTIMIZATION:append:armv5:pn-libjpeg-turbo = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" +DEBUG_OPTIMIZATION:append:armv4:pn-bash = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" +DEBUG_OPTIMIZATION:append:armv5:pn-bash = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" +DEBUG_OPTIMIZATION:append:pn-mdadm = " -Wno-error" +DEBUG_OPTLEVEL:mips:pn-kea = "-O" +DEBUG_OPTLEVEL:mipsel:pn-kea = "-O" +# {standard input}: Assembler messages: +# {standard input}:1488805: Error: branch out of range +DEBUG_OPTLEVEL:mips:pn-python3-lxml = "-O" +DEBUG_OPTLEVEL:mipsel:pn-python3-lxml = "-O" +# used to fix ../../../../../../../../../work-shared/gcc-8.3.0-r0/gcc-8.3.0/libsanitizer/libbacktrace/../../libbacktrace/elf.c:772:21: error: 'st.st_mode' may be used uninitialized in this function [-Werror=maybe-uninitialized] +DEBUG_OPTIMIZATION:append:pn-gcc-sanitizers = " -Wno-error" + +BUILD_OPTLEVEL:mips:pn-kea = "-O" +BUILD_OPTLEVEL:mipsel:pn-kea = "-O" +# {standard input}: Assembler messages: +# {standard input}:1488805: Error: branch out of range +BUILD_OPTLEVEL:mips:pn-python3-lxml = "-O" +BUILD_OPTLEVEL:mipsel:pn-python3-lxml = "-O" + +CPPFLAGS:append:arm:pn-lttng-ust = " -DUATOMIC_NO_LINK_ERROR" + +OECMAKE_WEBKIT_NO_INLINE_HINTS:pn-webkitgtk = "-DWEBKIT_NO_INLINE_HINTS=ON" + +EXTRA_OECONF:append:pn-debugedit = " --disable-inlined-xxhash" +EXTRA_OECONF:append:pn-debugedit-native = " --disable-inlined-xxhash" +EXTRA_OECONF:append:pn-nativesdk-debugedit = " --disable-inlined-xxhash" + +lcl_maybe_fortify:pn-vim = "" + +CXXFLAGS:append:pn-vulkan-validation-layers = " -DXXH_NO_INLINE_HINTS=1" diff --git a/meta/recipes-connectivity/kea/kea_3.0.1.bb b/meta/recipes-connectivity/kea/kea_3.0.1.bb index cc34c05093..ead4e98e70 100644 --- a/meta/recipes-connectivity/kea/kea_3.0.1.bb +++ b/meta/recipes-connectivity/kea/kea_3.0.1.bb @@ -34,16 +34,6 @@ INITSCRIPT_PARAMS = "defaults 30" SYSTEMD_SERVICE:${PN} = "kea-dhcp4.service kea-dhcp6.service kea-dhcp-ddns.service" SYSTEMD_AUTO_ENABLE = "disable" -DEBUG_OPTIMIZATION:remove:mips = " -Og" -DEBUG_OPTIMIZATION:append:mips = " -O" -BUILD_OPTIMIZATION:remove:mips = " -Og" -BUILD_OPTIMIZATION:append:mips = " -O" - -DEBUG_OPTIMIZATION:remove:mipsel = " -Og" -DEBUG_OPTIMIZATION:append:mipsel = " -O" -BUILD_OPTIMIZATION:remove:mipsel = " -Og" -BUILD_OPTIMIZATION:append:mipsel = " -O" - CXXFLAGS:remove = "-fvisibility-inlines-hidden" do_configure:prepend() { diff --git a/meta/recipes-devtools/debugedit/debugedit_5.2.bb b/meta/recipes-devtools/debugedit/debugedit_5.2.bb index 76c54ba63d..4ac6cab559 100644 --- a/meta/recipes-devtools/debugedit/debugedit_5.2.bb +++ b/meta/recipes-devtools/debugedit/debugedit_5.2.bb @@ -22,8 +22,6 @@ inherit pkgconfig autotools multilib_script RDEPENDS:${PN} += "bash elfutils-binutils" -EXTRA_OECONF = "${@oe.utils.vartrue('DEBUG_BUILD', '--disable-inlined-xxhash', '', d)}" - BBCLASSEXTEND = "native nativesdk" MULTILIB_SCRIPTS = "${PN}:${bindir}/find-debuginfo" diff --git a/meta/recipes-devtools/gcc/gcc-sanitizers.inc b/meta/recipes-devtools/gcc/gcc-sanitizers.inc index 6c81d30243..f4727ee6db 100644 --- a/meta/recipes-devtools/gcc/gcc-sanitizers.inc +++ b/meta/recipes-devtools/gcc/gcc-sanitizers.inc @@ -54,9 +54,6 @@ INHIBIT_DEFAULT_DEPS = "1" ALLOW_EMPTY:${PN} = "1" DEPENDS = "virtual/crypt gcc-runtime virtual/cross-cc" -# used to fix ../../../../../../../../../work-shared/gcc-8.3.0-r0/gcc-8.3.0/libsanitizer/libbacktrace/../../libbacktrace/elf.c:772:21: error: 'st.st_mode' may be used uninitialized in this function [-Werror=maybe-uninitialized] -DEBUG_OPTIMIZATION:append = " -Wno-error" - BBCLASSEXTEND = "nativesdk" PACKAGES = "${PN} ${PN}-dbg" diff --git a/meta/recipes-devtools/python/python3-lxml_6.0.1.bb b/meta/recipes-devtools/python/python3-lxml_6.0.1.bb index 5d76641675..6bcd399da5 100644 --- a/meta/recipes-devtools/python/python3-lxml_6.0.1.bb +++ b/meta/recipes-devtools/python/python3-lxml_6.0.1.bb @@ -23,18 +23,6 @@ SRC_URI[sha256sum] = "2b3a882ebf27dd026df3801a87cf49ff791336e0f94b0fad195db77e01 SRC_URI += "${PYPI_SRC_URI}" inherit pkgconfig pypi setuptools3 -# {standard input}: Assembler messages: -# {standard input}:1488805: Error: branch out of range -DEBUG_OPTIMIZATION:remove:mips = " -Og" -DEBUG_OPTIMIZATION:append:mips = " -O" -BUILD_OPTIMIZATION:remove:mips = " -Og" -BUILD_OPTIMIZATION:append:mips = " -O" - -DEBUG_OPTIMIZATION:remove:mipsel = " -Og" -DEBUG_OPTIMIZATION:append:mipsel = " -O" -BUILD_OPTIMIZATION:remove:mipsel = " -Og" -BUILD_OPTIMIZATION:append:mipsel = " -O" - BBCLASSEXTEND = "native nativesdk" RDEPENDS:${PN} += "libxml2 libxslt python3-compression" diff --git a/meta/recipes-extended/bash/bash_5.3.bb b/meta/recipes-extended/bash/bash_5.3.bb index b50a48d28c..74671f5a56 100644 --- a/meta/recipes-extended/bash/bash_5.3.bb +++ b/meta/recipes-extended/bash/bash_5.3.bb @@ -15,9 +15,6 @@ SRC_URI = "${GNU_MIRROR}/bash/${BP}.tar.gz;name=tarball \ SRC_URI[tarball.sha256sum] = "0d5cd86965f869a26cf64f4b71be7b96f90a3ba8b3d74e27e8e9d9d5550f31ba" -DEBUG_OPTIMIZATION:append:armv4 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" -DEBUG_OPTIMIZATION:append:armv5 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" - CFLAGS += "-std=gnu17" # mkbuiltins.c is built with native toolchain and needs gnu17 as well: # http://errors.yoctoproject.org/Errors/Details/853016/ diff --git a/meta/recipes-extended/mdadm/mdadm_4.4.bb b/meta/recipes-extended/mdadm/mdadm_4.4.bb index 26a60e4c1a..e81b8fdf3c 100644 --- a/meta/recipes-extended/mdadm/mdadm_4.4.bb +++ b/meta/recipes-extended/mdadm/mdadm_4.4.bb @@ -39,8 +39,6 @@ EXTRA_OEMAKE = 'CHECK_RUN_DIR=0 CWFLAGS="" CXFLAGS="${CFLAGS}" SYSTEMD_DIR=${sys BINDIR="${base_sbindir}" UDEVDIR="${nonarch_base_libdir}/udev" LDFLAGS="${LDFLAGS}" \ SYSROOT="${STAGING_DIR_TARGET}" STRIP=' -DEBUG_OPTIMIZATION:append = " -Wno-error" - do_install() { oe_runmake 'DESTDIR=${D}' install install-systemd install -d ${D}/${sysconfdir}/ diff --git a/meta/recipes-graphics/jpeg/libjpeg-turbo_3.1.2.bb b/meta/recipes-graphics/jpeg/libjpeg-turbo_3.1.2.bb index d4877bb92b..bc9d803f6b 100644 --- a/meta/recipes-graphics/jpeg/libjpeg-turbo_3.1.2.bb +++ b/meta/recipes-graphics/jpeg/libjpeg-turbo_3.1.2.bb @@ -44,9 +44,6 @@ EXTRA_OECMAKE:append:class-target:powerpc = " ${@bb.utils.contains("TUNE_FEATURE EXTRA_OECMAKE:append:class-target:powerpc64 = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "-DWITH_SIMD=False", d)}" EXTRA_OECMAKE:append:class-target:powerpc64le = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "-DWITH_SIMD=False", d)}" -DEBUG_OPTIMIZATION:append:armv4 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" -DEBUG_OPTIMIZATION:append:armv5 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" - # libjpeg-turbo-2.0.2/simd/mips/jsimd_dspr2.S # <instantiation>:13:5: error: invalid token in expression # .if $17 != 0 diff --git a/meta/recipes-graphics/vulkan/vulkan-validation-layers_1.4.321.0.bb b/meta/recipes-graphics/vulkan/vulkan-validation-layers_1.4.321.0.bb index 466e757a90..fa7873b62d 100644 --- a/meta/recipes-graphics/vulkan/vulkan-validation-layers_1.4.321.0.bb +++ b/meta/recipes-graphics/vulkan/vulkan-validation-layers_1.4.321.0.bb @@ -26,8 +26,6 @@ EXTRA_OECMAKE = "\ -DSPIRV_HEADERS_INSTALL_DIR=${STAGING_EXECPREFIXDIR} \ " -CXXFLAGS:append = " ${@oe.utils.vartrue('DEBUG_BUILD', '-DXXH_NO_INLINE_HINTS=1', '', d)}" - PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr" PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland" diff --git a/meta/recipes-kernel/lttng/lttng-ust_2.14.0.bb b/meta/recipes-kernel/lttng/lttng-ust_2.14.0.bb index 1a15c5b420..0d4c67f0fa 100644 --- a/meta/recipes-kernel/lttng/lttng-ust_2.14.0.bb +++ b/meta/recipes-kernel/lttng/lttng-ust_2.14.0.bb @@ -16,7 +16,6 @@ inherit autotools lib_package manpages python3native pkgconfig include lttng-platforms.inc EXTRA_OECONF = "--disable-numa" -CPPFLAGS:append:arm = "${@oe.utils.vartrue('DEBUG_BUILD', '-DUATOMIC_NO_LINK_ERROR', '', d)}" DEPENDS = "liburcu util-linux" RDEPENDS:${PN}-bin = "python3-core" diff --git a/meta/recipes-kernel/perf/perf.bb b/meta/recipes-kernel/perf/perf.bb index e1915207ee..98dffd1cc9 100644 --- a/meta/recipes-kernel/perf/perf.bb +++ b/meta/recipes-kernel/perf/perf.bb @@ -415,8 +415,6 @@ FILES:${PN}-python = " \ " FILES:${PN}-perl = "${libexecdir}/perf-core/scripts/perl" -DEBUG_OPTIMIZATION:append = " -Wno-error=maybe-uninitialized" - PACKAGESPLITFUNCS =+ "perf_fix_sources" perf_fix_sources () { diff --git a/meta/recipes-sato/webkit/webkitgtk_2.48.5.bb b/meta/recipes-sato/webkit/webkitgtk_2.48.5.bb index 46031322b9..ba08e8b925 100644 --- a/meta/recipes-sato/webkit/webkitgtk_2.48.5.bb +++ b/meta/recipes-sato/webkit/webkitgtk_2.48.5.bb @@ -86,11 +86,12 @@ PACKAGECONFIG[gamepad] = "-DENABLE_GAMEPAD=ON,-DENABLE_GAMEPAD=OFF,libmanette" PACKAGECONFIG[sysprof-capture] = "-DUSE_SYSTEM_SYSPROF_CAPTURE=YES,-DUSE_SYSTEM_SYSPROF_CAPTURE=NO,sysprof" PACKAGECONFIG[speech] = "-DENABLE_SPEECH_SYNTHESIS=ON,-DENABLE_SPEECH_SYNTHESIS=OFF,flite" +OECMAKE_WEBKIT_NO_INLINE_HINTS ??= "-DWEBKIT_NO_INLINE_HINTS=OFF" EXTRA_OECMAKE = " \ -DPORT=GTK \ ${@oe.utils.vartrue('GI_DATA_ENABLED', '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ ${@oe.utils.vartrue('GIDOCGEN_ENABLED', '-DENABLE_DOCUMENTATION=ON', '-DENABLE_DOCUMENTATION=OFF', d)} \ - ${@oe.utils.vartrue('DEBUG_BUILD', '-DWEBKIT_NO_INLINE_HINTS=ON', '-DWEBKIT_NO_INLINE_HINTS=OFF', d)} \ + ${OECMAKE_WEBKIT_NO_INLINE_HINTS} \ -DENABLE_MINIBROWSER=ON \ -DENABLE_BUBBLEWRAP_SANDBOX=OFF \ -DUSE_GTK4=ON \ diff --git a/meta/recipes-support/vim/vim_9.1.bb b/meta/recipes-support/vim/vim_9.1.bb index fee9f055e9..a24a863ba5 100644 --- a/meta/recipes-support/vim/vim_9.1.bb +++ b/meta/recipes-support/vim/vim_9.1.bb @@ -20,4 +20,4 @@ ALTERNATIVE_LINK_NAME[xxd] = "${bindir}/xxd" # We override the default in security_flags.inc because vim (not vim-tiny!) will abort # in many places for _FORTIFY_SOURCE=2. Security flags become part of CC. # -lcl_maybe_fortify = "${@oe.utils.conditional('DEBUG_BUILD','1','','-D_FORTIFY_SOURCE=1',d)}" +lcl_maybe_fortify = "-D_FORTIFY_SOURCE=1"
The modern compilers and code seem to require extra steps to avoid DEBUG errors, Move debug tuning configuration from recipes to an include file to address these errors. Introduce separate variables to avoid the :remove operations, such DEBUG_OPTLEVEL, BUILD_OPTLEVEL and OECMAKE_WEBKIT_NO_INLINE_HINTS Suggested-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> --- meta/conf/distro/include/debug_build.inc | 37 +++++++++++++++++++ meta/recipes-connectivity/kea/kea_3.0.1.bb | 10 ----- .../debugedit/debugedit_5.2.bb | 2 - meta/recipes-devtools/gcc/gcc-sanitizers.inc | 3 -- .../python/python3-lxml_6.0.1.bb | 12 ------ meta/recipes-extended/bash/bash_5.3.bb | 3 -- meta/recipes-extended/mdadm/mdadm_4.4.bb | 2 - .../jpeg/libjpeg-turbo_3.1.2.bb | 3 -- .../vulkan-validation-layers_1.4.321.0.bb | 2 - meta/recipes-kernel/lttng/lttng-ust_2.14.0.bb | 1 - meta/recipes-kernel/perf/perf.bb | 2 - meta/recipes-sato/webkit/webkitgtk_2.48.5.bb | 3 +- meta/recipes-support/vim/vim_9.1.bb | 2 +- 13 files changed, 40 insertions(+), 42 deletions(-)