]> code.ossystems Code Review - openembedded-core.git/commitdiff
busybox.inc: improve reproducibility
authorJuro Bystricky <juro.bystricky@intel.com>
Wed, 9 Aug 2017 17:48:26 +0000 (10:48 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 15 Aug 2017 23:01:43 +0000 (00:01 +0100)
For reproducible builds do not generate build timestamp as part of
the version string.

Remove host tools references from .config file.
With this patch all eight busybox packages are built as
binary reproducible.

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-core/busybox/busybox.inc

index b8edd3942cb1605acbee8c8342e74ef28b5e9e75..735b1f688161534d169b564fcf95d24246e32db5 100644 (file)
@@ -102,6 +102,9 @@ python () {
 }
 
 do_prepare_config () {
+       if [ "$BUILD_REPRODUCIBLE_BINARIES" = "1" ]; then
+               export KCONFIG_NOTIMESTAMP=1
+       fi
        sed -e '/CONFIG_STATIC/d' \
                < ${WORKDIR}/defconfig > ${S}/.config
        echo "# CONFIG_STATIC is not set" >> .config
@@ -118,6 +121,7 @@ do_prepare_config () {
                  ${S}/.config.oe-tmp > ${S}/.config
        fi
        sed -i 's/CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -n"/CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -b"/' ${S}/.config
+       sed -i 's|${DEBUG_PREFIX_MAP}||g' ${S}/.config
 }
 
 # returns all the elements from the src uri that are .cfg files
@@ -138,6 +142,9 @@ do_configure () {
 
 do_compile() {
        unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
+       if [ "$BUILD_REPRODUCIBLE_BINARIES" = "1" ]; then
+               export KCONFIG_NOTIMESTAMP=1
+       fi
        if [ "${BUSYBOX_SPLIT_SUID}" = "1" -a x`grep "CONFIG_FEATURE_INDIVIDUAL=y" .config` = x ]; then
        # split the .config into two parts, and make two busybox binaries
                if [ -e .config.orig ]; then