]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
native/nativesdk: Stop overriding unprefixed *FLAGS variables
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 13 Jun 2024 08:31:52 +0000 (09:31 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 1 Jul 2024 12:58:06 +0000 (13:58 +0100)
We're currently encouraging an "arms race" with the FLAGS variables since
a recipe might want to set a specific flag for all variants but to do so,
+= won't work due to the assignment in the native/nativesdk class files. This
means recipes are using append.

Since the default variables are constructed out of TARGET_XXX variables and
we redefine these, there is no need to re-define the un-prefixed variables. If
we drop that, the += appends and similar work and recipes don't have to resort
to append.

Change the classes and cleanup a number of recipes to adapt to the change. This
change will result in some flags appearing to some native/nativesdk variants
but that is probably what was originally expected anyway.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
20 files changed:
meta/classes-recipe/native.bbclass
meta/classes-recipe/nativesdk.bbclass
meta/recipes-connectivity/bind/bind_9.18.27.bb
meta/recipes-connectivity/nfs-utils/nfs-utils_2.6.4.bb
meta/recipes-core/systemd/systemd-boot_255.6.bb
meta/recipes-devtools/python/python3-bcrypt_4.1.3.bb
meta/recipes-devtools/python/python3-maturin_1.6.0.bb
meta/recipes-devtools/python/python3_3.12.4.bb
meta/recipes-devtools/qemu/qemu-native.inc
meta/recipes-devtools/rust/libstd-rs_1.75.0.bb
meta/recipes-devtools/rust/rust_1.75.0.bb
meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb
meta/recipes-extended/bzip2/bzip2_1.0.8.bb
meta/recipes-extended/ltp/ltp_20240524.bb
meta/recipes-extended/pam/libpam_1.6.1.bb
meta/recipes-gnome/gtk+/gtk4_4.14.4.bb
meta/recipes-kernel/lttng/babeltrace2_2.0.6.bb
meta/recipes-kernel/powertop/powertop_2.15.bb
meta/recipes-sato/rxvt-unicode/rxvt-unicode.inc
meta/recipes-support/sqlite/sqlite3.inc

index 84a3ec65da06ef9f3c491de8b8cbc91362bda660..d9651a7f22dedfe4040d4ad33ae572a7b9ff1581 100644 (file)
@@ -40,11 +40,6 @@ HOST_CC_ARCH = "${BUILD_CC_ARCH}"
 HOST_LD_ARCH = "${BUILD_LD_ARCH}"
 HOST_AS_ARCH = "${BUILD_AS_ARCH}"
 
-CPPFLAGS = "${BUILD_CPPFLAGS}"
-CFLAGS = "${BUILD_CFLAGS}"
-CXXFLAGS = "${BUILD_CXXFLAGS}"
-LDFLAGS = "${BUILD_LDFLAGS}"
-
 STAGING_BINDIR = "${STAGING_BINDIR_NATIVE}"
 STAGING_BINDIR_CROSS = "${STAGING_BINDIR_NATIVE}"
 
index de6debda93cf1ba0d94c333d618867c602e41983..b0634de5829cdbda25880b5f988ea174e27732b8 100644 (file)
@@ -66,11 +66,6 @@ TARGET_FPU = ""
 EXTRA_OECONF_GCC_FLOAT = ""
 TUNE_FEATURES = ""
 
-CPPFLAGS = "${BUILDSDK_CPPFLAGS}"
-CFLAGS = "${BUILDSDK_CFLAGS}"
-CXXFLAGS = "${BUILDSDK_CXXFLAGS}"
-LDFLAGS = "${BUILDSDK_LDFLAGS}"
-
 # Change to place files in SDKPATH
 base_prefix = "${SDKPATHNATIVE}"
 prefix = "${SDKPATHNATIVE}${prefix_nativesdk}"
index 98b8bb5513a41399b3450a357f3d852435c1f7cd..0d22bace6f38ec1b5a37dd504ea86ccd49e04356 100644 (file)
@@ -44,7 +44,7 @@ EXTRA_OECONF = " --disable-auto-validation \
                  --sysconfdir=${sysconfdir}/bind \
                  --with-openssl=${STAGING_DIR_HOST}${prefix} \
                "
-LDFLAGS:append = " -lz"
+LDFLAGS += "-lz"
 
 # dhcp needs .la so keep them
 REMOVE_LIBTOOL_LA = "0"
index af7a74a5fb0a744335e64edc935254f366a24830..9aa8bc4eabf6a72154edc2f761251adbc99ed648 100644 (file)
@@ -62,7 +62,7 @@ EXTRA_OECONF = "--with-statduser=rpcuser \
                 --with-rpcgen=${HOSTTOOLS_DIR}/rpcgen \
                "
 
-LDFLAGS:append = " -lsqlite3 -levent"
+LDFLAGS += "-lsqlite3 -levent"
 
 PACKAGECONFIG ??= "tcp-wrappers \
     ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
index 4ee25ee72f8f8c86f469702408856146cc59f9b5..9a6d8e9d6e390429650c6d65a5e566cabc3226b2 100644 (file)
@@ -8,10 +8,10 @@ DEPENDS = "intltool-native libcap util-linux gperf-native python3-jinja2-native
 inherit meson pkgconfig gettext
 inherit deploy
 
-LDFLAGS:prepend = "${@ " ".join(d.getVar('LD').split()[1:])} "
+LDFLAGS =+ "${@ " ".join(d.getVar('LD').split()[1:])} "
 
 EFI_LD = "bfd"
-LDFLAGS:append = " -fuse-ld=${EFI_LD}"
+LDFLAGS += "-fuse-ld=${EFI_LD}"
 
 do_write_config[vardeps] += "EFI_LD"
 do_write_config:append() {
index deb5cbdee3dfb02ccbecab70fc725d6c58044c36..9bed5ee148e3154de4b71d147a8e84c15070b138 100644 (file)
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=8f7bb094c7232b058c7e9f2e431f389c"
 HOMEPAGE = "https://pypi.org/project/bcrypt/"
 
 DEPENDS += "python3-cffi-native"
-LDFLAGS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'ptest', ' -fuse-ld=bfd', '', d)}"
+LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'ptest', '-fuse-ld=bfd', '', d)}"
 
 SRC_URI[sha256sum] = "2ee15dd749f5952fe3f0430d0ff6b74082e159c50332a1413d51b5689cf06623"
 
index 1d62671bb90576f9b3c4fffc6b6d5a534b9084ce..ea8cf468ff0a0ba9fca27fe6e6502781bb99c756 100644 (file)
@@ -9,7 +9,7 @@ SRC_URI[sha256sum] = "b955025c24c8babc808db49e0ff90db8b4b1320dcc16b14eb261328417
 
 S = "${WORKDIR}/maturin-${PV}"
 
-CFLAGS:append = " -fdebug-prefix-map=${CARGO_HOME}=${TARGET_DBGSRC_DIR}/cargo_home"
+CFLAGS += "-fdebug-prefix-map=${CARGO_HOME}=${TARGET_DBGSRC_DIR}/cargo_home"
 
 DEPENDS += "\
     python3-setuptools-rust-native \
index eb3866d9be7f118a60b8cb1c94172065f0313208..77bbfaa069e36857416379a08d7a801bed76ad4a 100644 (file)
@@ -118,7 +118,7 @@ ${@bb.utils.contains('PACKAGECONFIG', 'tk', '', '_tkinter', d)}
 EOF
 }
 
-CPPFLAGS:append = " -I${STAGING_INCDIR}/ncursesw -I${STAGING_INCDIR}/uuid"
+CPPFLAGS += "-I${STAGING_INCDIR}/ncursesw -I${STAGING_INCDIR}/uuid"
 
 # COMPILEALL_OPTS= ensures that .pyc are not compiled in parallel
 # This was found to lock up builds, break reproducibility, and produce strange file ownership
index 891dc5e2a10e429e27af21f73d4a83658f0651da..d074d7d18188986f444b2ff68248e4e72e78f09a 100644 (file)
@@ -4,4 +4,4 @@ inherit_defer native
 
 EXTRA_OEMAKE:append = " LD='${LD}' AR='${AR}' OBJCOPY='${OBJCOPY}' LDFLAGS='${LDFLAGS}'"
 
-LDFLAGS:append = " -fuse-ld=bfd"
+LDFLAGS += "-fuse-ld=bfd"
index d2bf266f9dd4054ade5a8e1eaa90495a6babf4e1..5fc6fb97bb28656af8308fe9faf95ff00c3adb20 100644 (file)
@@ -50,4 +50,4 @@ BBCLASSEXTEND = "nativesdk"
 # Since 1.70.0 upgrade this fails to build with gold:
 # http://errors.yoctoproject.org/Errors/Details/708194/
 # ld: error: version script assignment of  to symbol __rust_alloc_error_handler_should_panic failed: symbol not defined
-LDFLAGS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd', '', d)}"
+LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', '-fuse-ld=bfd', '', d)}"
index c66c14cc5a58fa45e5c699f7414918d5e6945769..bb10c852b4d7317c13a484c618d612e97de51ce5 100644 (file)
@@ -365,4 +365,4 @@ BBCLASSEXTEND = "native nativesdk"
 # Since 1.70.0 upgrade this fails to build with gold:
 # http://errors.yoctoproject.org/Errors/Details/708196/
 # ld: error: version script assignment of  to symbol __rust_alloc_error_handler_should_panic failed: symbol not defined
-LDFLAGS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd', '', d)}"
+LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', '-fuse-ld=bfd', '', d)}"
index c8e7f25d2b0031db1f2e682f9c8fdef8169bd21a..d75aa95c1fd234c52a67f96dc5072d315398204c 100644 (file)
@@ -48,7 +48,7 @@ TARGET_LDFLAGS = ""
 SECURITY_LDFLAGS = ""
 LDFLAGS_SECTION_REMOVAL = ""
 
-CFLAGS:append = " -DNO_INLINE_FUNCS -Wno-error=implicit-function-declaration"
+CFLAGS += "-DNO_INLINE_FUNCS -Wno-error=implicit-function-declaration"
 
 EXTRA_OEMAKE = " \
        BINDIR=${bindir} SBINDIR=${sbindir} LIBDIR=${libdir} \
index 7d7ab3856b43b0dd7dec88c01b5776eb4db81dbf..adb6ded58127395702e0b9c3dbd749ee8aba537b 100644 (file)
@@ -36,7 +36,7 @@ UPSTREAM_CHECK_URI = "https://www.sourceware.org/pub/bzip2/"
 
 PACKAGES =+ "libbz2"
 
-CFLAGS:append = " -fPIC -fpic -Winline -fno-strength-reduce -D_FILE_OFFSET_BITS=64"
+CFLAGS += "-fPIC -fpic -Winline -fno-strength-reduce -D_FILE_OFFSET_BITS=64"
 
 inherit autotools update-alternatives ptest relative_symlinks
 
index 7105154712fa86d006a8139bd5e4f4d6b3bfdd72..6b46723478d23ef000c3d31d49b7835e219e9602 100644 (file)
@@ -39,8 +39,8 @@ inherit autotools-brokensep pkgconfig
 # SORT_NONE in linker script which isn't supported by gold:
 # https://sourceware.org/bugzilla/show_bug.cgi?id=18097
 # https://github.com/linux-test-project/ltp/commit/3fce2064b54843218d085aae326c8f7ecf3a8c41#diff-39268f0855c634ca48c8993fcd2c95b12a65b79e8d9fa5ccd6b0f5a8785c0dd6R36
-LDFLAGS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd', '', d)}"
-LDFLAGS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' -fuse-ld=bfd', '', d)}"
+LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', '-fuse-ld=bfd', '', d)}"
+LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', '-fuse-ld=bfd', '', d)}"
 
 # After 0002-kvm-use-LD-instead-of-hardcoding-ld.patch
 # https://github.com/linux-test-project/ltp/commit/f94e0ef3b7280f886384703ef9019aaf2f2dfebb
index 9f2106ea73027d5e707f02a5e1a5856094de9426..b9ef564f5648fa1d14aaf55e7a3fba2d586cee65 100644 (file)
@@ -37,7 +37,7 @@ EXTRA_OECONF = "--includedir=${includedir}/security \
                 --disable-doc \
                --disable-prelude"
 
-CFLAGS:append = " -fPIC "
+CFLAGS += "-fPIC "
 
 S = "${WORKDIR}/Linux-PAM-${PV}"
 
index 51c37e1a79148da99df2493f13048b898faf1a7d..47e6298370843b4fcd480ce4d005db85b54c2f94 100644 (file)
@@ -79,7 +79,7 @@ PACKAGECONFIG[vulkan] = "-Dvulkan=enabled,-Dvulkan=disabled, vulkan-loader vulka
 
 # Disable int-conversion warning as error until [1] is fixed
 # [1] https://gitlab.gnome.org/GNOME/gtk/-/issues/6033
-CFLAGS:append = " -Wno-error=int-conversion"
+CFLAGS += "-Wno-error=int-conversion"
 
 LIBV = "4.0.0"
 
index d6c75d758011868cc9d543017da000b622ba7a59..a50ba8fcdf1e4d76224c83a8ae95f7ad13f7fab0 100644 (file)
@@ -28,7 +28,7 @@ FILES:${PN}-staticdev += "${libdir}/babeltrace2/plugins/*.a"
 FILES:${PN} += "${libdir}/babeltrace2/plugins/*.so"
 
 ASNEEDED = ""
-LDFLAGS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld ptest', ' -fuse-ld=bfd ', '', d)}"
+LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld ptest', '-fuse-ld=bfd ', '', d)}"
 
 # coreutils since we need full mktemp
 RDEPENDS:${PN}-ptest += "bash gawk python3 make grep coreutils findutils"
index 65c6d0fcd37fddfbdc8e579b540dde777bc5049a..ec81d546a86a00150f47a18e95e544389e599bb2 100644 (file)
@@ -13,7 +13,7 @@ SRCREV = "d51ad395436d4d1dcc3ca46e1519ffeb475bf651"
 
 S = "${WORKDIR}/git"
 
-LDFLAGS:append = " -pthread"
+LDFLAGS += "-pthread"
 
 inherit autotools gettext pkgconfig bash-completion
 
index 95cc140e9eaac8477c375b01ea5e70060dd0e3c5..5193eebb0bc9a7869fe3c174ac2dcce963151fe5 100644 (file)
@@ -19,7 +19,7 @@ PROVIDES = "virtual/x-terminal-emulator"
 ALTERNATIVE:${PN} = "x-terminal-emulator"
 ALTERNATIVE_TARGET[x-terminal-emulator] = "${bindir}/rxvt"
 
-CFLAGS:append = " -fpermissive"
+CFLAGS += "-fpermissive"
 
 EXTRA_OECONF = "--enable-xim \
                --with-term=rxvt --enable-keepscrolling \
index 9a0de085533151cccf5962492ea9df34d49d3686..d093ec5859e379098a50b4d8731fa5062307710d 100644 (file)
@@ -45,14 +45,14 @@ EXTRA_OECONF = " \
 "
 
 # pread() is in POSIX.1-2001 so any reasonable system must surely support it
-CFLAGS:append = " -DUSE_PREAD"
+CFLAGS += "-DUSE_PREAD"
 
 # Provide column meta-data API
-CFLAGS:append = " -DSQLITE_ENABLE_COLUMN_METADATA"
+CFLAGS += "-DSQLITE_ENABLE_COLUMN_METADATA"
 
 # Unless SQLITE_BYTEORDER is predefined, the code falls back to build time
 # huristics, which are not always correct
-CFLAGS:append = " ${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'le', '-DSQLITE_BYTEORDER=1234', '-DSQLITE_BYTEORDER=4321', d)}"
+CFLAGS += "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'le', '-DSQLITE_BYTEORDER=1234', '-DSQLITE_BYTEORDER=4321', d)}"
 
 PACKAGES = "lib${BPN} lib${BPN}-dev lib${BPN}-doc ${PN}-dbg lib${BPN}-staticdev ${PN}"