]> code.ossystems Code Review - openembedded-core.git/commitdiff
rpm: Deterministically set vendor macro entry
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 7 Oct 2021 10:14:18 +0000 (11:14 +0100)
committerSteve Sakoman <steve@sakoman.com>
Mon, 25 Oct 2021 23:28:19 +0000 (13:28 -1000)
On an aarch64 build host, vendor is found to be "unknown", on x86 systems
it is "pc". This filters through to the PLATFORM tag in target rpms.

We saw reproducibility test failures where the PLATFORM tags in noarch
rpms were changing depending upon which host built them. Forcing the
vendor value to a consistent one makes things deterministic.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f6434075b2bdfc23c683d22281b674b1e6abde77)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
meta/recipes-devtools/rpm/rpm_4.14.2.1.bb

index c93654aa8f86f0754d95bfa9f9a467d36e80d903..ab9f0e8e29072c356f6a535688a55c7c408432b1 100644 (file)
@@ -62,7 +62,8 @@ export PYTHON_ABI
 # OE-core patches autoreconf to additionally run gnu-configize, which fails with this recipe
 EXTRA_AUTORECONF_append = " --exclude=gnu-configize"
 
-EXTRA_OECONF_append = " --without-lua --enable-python --with-crypto=openssl"
+# Vendor is detected differently on x86 and aarch64 hosts and can feed into target packages
+EXTRA_OECONF_append = " --without-lua --enable-python --with-crypto=openssl --with-vendor=pc"
 EXTRA_OECONF_append_libc-musl = " --disable-nls"
 
 # --sysconfdir prevents rpm from attempting to access machine-specific configuration in sysroot/etc; we need to have it in rootfs