Sounds plausible but how is that possible? I don't understand what those tweaks 
are(unless you
mean the SOURCE_DATE_EPOCH="$(date +%s)" tweak)
Maybe I should try without SSTATE cache at all just to see if that make a 
difference?

 Jocke

On Mon, 2023-12-18 at 14:11 +0100, Alexander Kanavin wrote:
> The short execution time is suspicious. The test is written so that
> build B doesn't reuse the cache from build A, and if it does because
> of your local tweaks, then you're probably just comparing the A
> package with itself.
>
> Alex
>
> On Mon, 18 Dec 2023 at 12:20, Joakim Tjernlund via
> lists.openembedded.org
> <[email protected]> wrote:
> >
> > I setup above test for reproducible builds and build one pkg(u-boot) and 
> > try to force a
> > non-reproducible build to test the framework:
> > --- a/meta/recipes-bsp/u-boot/u-boot.inc
> > +++ b/meta/recipes-bsp/u-boot/u-boot.inc
> > @@ -9,7 +9,7 @@ inherit uboot-config uboot-extlinux-config uboot-sign 
> > deploy python3native kerne
> >
> >  DEPENDS += "swig-native"
> >
> > -EXTRA_OEMAKE = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${TARGET_PREFIX}gcc 
> > ${TOOLCHAIN_OPTIONS}" V=1'
> > +EXTRA_OEMAKE = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${TARGET_PREFIX}gcc 
> > ${TOOLCHAIN_OPTIONS}" V=1 SOURCE_DATE_EPOCH="$(date +%s)"'
> >  EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}"'
> >  EXTRA_OEMAKE += 'STAGING_INCDIR=${STAGING_INCDIR_NATIVE} 
> > STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE}'
> >
> > forcing EPOCH to current build date but I still get an success report:
> >
> > oe-selftest -v -r reproducible.ReproducibleTests.test_reproducible_builds
> > 2023-12-18 12:05:22,355 - oe-selftest - INFO - Adding layer libraries:
> > 2023-12-18 12:05:22,356 - oe-selftest - INFO -  
> > /home/jocke/yocto-xr/3pp/poky/meta/lib
> > 2023-12-18 12:05:22,356 - oe-selftest - INFO -  
> > /home/jocke/yocto-xr/3pp/poky/meta-yocto-bsp/lib
> > 2023-12-18 12:05:22,356 - oe-selftest - INFO -  
> > /home/jocke/yocto-xr/3pp/meta-openembedded/meta-oe/lib
> > 2023-12-18 12:05:22,356 - oe-selftest - INFO -  
> > /home/jocke/yocto-xr/meta-xr/lib
> > 2023-12-18 12:05:22,356 - oe-selftest - INFO -  
> > /home/jocke/yocto-xr/3pp/poky/meta-selftest/lib
> > 2023-12-18 12:05:22,359 - oe-selftest - INFO - Running bitbake -e to test 
> > the configuration is valid/parsable
> > 2023-12-18 12:05:27,248 - oe-selftest - INFO - Adding: "include 
> > selftest.inc" in /home/jocke/yocto-xr/build/infn-xr/gmcu-st/conf/local.conf
> > 2023-12-18 12:05:27,248 - oe-selftest - INFO - Adding: "include 
> > bblayers.inc" in bblayers.conf
> > 2023-12-18 12:05:27,248 - oe-selftest - INFO - test_reproducible_builds 
> > (reproducible.ReproducibleTests)
> > 2023-12-18 12:05:29,724 - oe-selftest - DEBUG - Writing to: 
> > /home/jocke/yocto-xr/build/infn-xr/gmcu-st/conf/selftest.inc
> >
> >
> > 2023-12-18 12:08:26,539 - oe-selftest - INFO - Building reproducibleA 
> > (sstate allowed)...
> > 2023-12-18 12:08:26,545 - oe-selftest - DEBUG - Writing to: 
> > /home/jocke/yocto-xr/build/infn-xr/gmcu-st/conf/selftest.inc
> > PACKAGE_CLASSES = "package_ipk"
> > INHIBIT_PACKAGE_STRIP = "1"
> > TMPDIR = "/home/jocke/yocto-xr/build/infn-xr/reproducibleA/tmp"
> > LICENSE_FLAGS_ACCEPTED = "commercial"
> > DISTRO_FEATURES:append = ' systemd pam'
> > USERADDEXTENSION = "useradd-staticids"
> > USERADD_ERROR_DYNAMIC = "skip"
> > USERADD_UID_TABLES += "files/static-passwd"
> > USERADD_GID_TABLES += "files/static-group"
> >
> >
> > 2023-12-18 12:09:08,936 - oe-selftest - INFO - Building reproducibleB 
> > (sstate NOT allowed)...
> > 2023-12-18 12:09:08,937 - oe-selftest - DEBUG - Writing to: 
> > /home/jocke/yocto-xr/build/infn-xr/gmcu-st/conf/selftest.inc
> > PACKAGE_CLASSES = "package_ipk"
> > INHIBIT_PACKAGE_STRIP = "1"
> > TMPDIR = "/home/jocke/yocto-xr/build/infn-xr/reproducibleB/tmp"
> > LICENSE_FLAGS_ACCEPTED = "commercial"
> > DISTRO_FEATURES:append = ' systemd pam'
> > USERADDEXTENSION = "useradd-staticids"
> > USERADD_ERROR_DYNAMIC = "skip"
> > USERADD_UID_TABLES += "files/static-passwd"
> > USERADD_GID_TABLES += "files/static-group"
> > SSTATE_DIR = "${TMPDIR}/sstate"
> > SSTATE_MIRRORS = "file://.*/.*-native.*  
> > http://sstate.yoctoproject.org/all/PATH;downloadfilename=PATH 
> > file://.*/.*-cross.*
> > http://sstate.yoctoproject.org/all/PATH;downloadfilename=PATH";
> >
> >
> > 2023-12-18 12:09:24,772 - oe-selftest - INFO - Checking ipk packages for 
> > differences...
> > 2023-12-18 12:09:24,843 - oe-selftest - INFO - Reproducibility summary for 
> > ipk: same=4 different=0 different_excluded=0 missing=0 total=4
> > unused_exclusions=[]
> > 2023-12-18 12:09:24,847 - oe-selftest - INFO -  ... ok
> > 2023-12-18 12:09:26,044 - oe-selftest - INFO - 
> > ----------------------------------------------------------------------
> > 2023-12-18 12:09:26,044 - oe-selftest - INFO - Ran 1 test in 241.335s
> > 2023-12-18 12:09:26,045 - oe-selftest - INFO - OK
> > 2023-12-18 12:09:32,355 - oe-selftest - INFO - RESULTS:
> > 2023-12-18 12:09:32,356 - oe-selftest - INFO - RESULTS - 
> > reproducible.ReproducibleTests.test_reproducible_builds: PASSED (237.60s)
> > 2023-12-18 12:09:32,361 - oe-selftest - INFO - SUMMARY:
> > 2023-12-18 12:09:32,362 - oe-selftest - INFO - oe-selftest () - Ran 1 test 
> > in 241.336s
> > 2023-12-18 12:09:32,362 - oe-selftest - INFO - oe-selftest - OK - All 
> > required tests passed (successes=1, skipped=0, failures=0, errors=0)
> >
> >
> > Looking harder I don't see oe-seftest ever creating 
> > reproducibleA/reproducibleB directories.
> > I have these set
> > OEQA_REPRODUCIBLE_TEST_PACKAGE = "ipk"
> > OEQA_REPRODUCIBLE_TEST_TARGET = "xr-u-boot"
> >
> > I am missing something?
> >
> >  Jocke
> >
> > 
> >

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#192642): 
https://lists.openembedded.org/g/openembedded-core/message/192642
Mute This Topic: https://lists.openembedded.org/mt/103240689/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to