diff options
author | Martin Jansa <Martin.Jansa@gmail.com> | 2023-04-05 21:37:46 +0200 |
---|---|---|
committer | Martin Jansa <Martin.Jansa@gmail.com> | 2023-08-29 11:51:14 +0200 |
commit | 982b7398fae273a3b830efb7359c6366690415ab (patch) | |
tree | e629c1e68cade35654895cd7d07fdb2ee9fe34fb | |
parent | e6c54d7e4f0bc9c458882684b8af3427a5a01d65 (diff) | |
download | openembedded-core-contrib-982b7398fae273a3b830efb7359c6366690415ab.tar.gz |
populate_sdk_ext.bbclass: add SSTATE_MIRRORS for NATIVELSBSTRING when not using uninativejansa/pull
* this fixes the issue where eSDK preparation fails when uninative isn't enabled:
Preparing build system...
WARNING: You are using a local hash equivalence server but have configured an sstate mirror. This will likely mean no sstate will match from the mirror. You may wish to disable the hash equivalence use (BB_HASHSERVE), or use a hash equivalence server alongside the sstate mirror.
Loading cache: 100% | | ETA: --:--:--
Parsing recipes: 100% |####################################################| Time: 0:00:10
Initialising tasks: 100% |#################################################| Time: 0:00:02
Checking sstate mirror object availability: 100% |#########################| Time: 0:00:00
WARNING: The base-files:do_install sig is computed to be 83b9c9a6ef1145baac5a1e0d08814b9156af239c58fc42df95c25a9cd8a7f201,
but the sig is locked to 3dc22233059075978e5503691e98e79e7cc60db94259dfcd886bca2291c0add7 in SIGGEN_LOCKEDSIGS_t-qemux86-64
ERROR: Task glibc-locale.do_deploy_source_date_epoch attempted to execute unexpectedly and should have been setscened
Task virtual:native:/OE/build/test-sdk-without/layers/poky/meta/recipes-support/libpcre/libpcre2_10.42.bb:do_populate_sysroot,
unihash 4615cb1da18a0fae9852bbeb9a57bc5858cd3c18489a29dfb7d42bf9e5d26783, taskhash 4615cb1da18a0fae9852bbeb9a57bc5858cd3c18489a29dfb7d42bf9e5d26783
...
Task virtual:native:/OE/build/test-sdk-without/layers/poky/meta/recipes-devtools/rpm/rpm_4.18.0.bb:do_deploy_source_date_epoch,
unihash 593e6c8bcc68da0b0e1eb562eac65e3805172a92ac5c7fb276a0e8641ebc41d6, taskhash 593e6c8bcc68da0b0e1eb562eac65e3805172a92ac5c7fb276a0e8641ebc41d6
This is usually due to missing setscene tasks. Those missing in this build were: {
'/OE/build/test-sdk-without/layers/poky/meta/recipes-bsp/v86d/v86d_0.1.10.bb:do_deploy_source_date_epoch',
'/OE/build/test-sdk-without/layers/poky/meta/recipes-bsp/v86d/v86d_0.1.10.bb:do_package',
...
'virtual:native:/OE/build/test-sdk-without/layers/poky/meta/recipes-support/re2c/re2c_3.0.bb:do_deploy_source_date_epoch',
'virtual:native:/OE/build/test-sdk-without/layers/poky/meta/recipes-support/re2c/re2c_3.0.bb:do_populate_sysroot'}
ERROR: Task (/OE/build/test-sdk-without/layers/poky/meta/recipes-core/glibc/glibc-locale_2.37.bb:do_deploy_source_date_epoch) failed with exit code 'setscene ignore_tasks'
ERROR: SDK preparation failed: error log written to /OE/build/test-sdk-without/preparing_build_system.log
* the locked sstate-cache is created with:
fixedlsbstring = "universal%s" % oe.utils.host_gcc_version(d)
but then inside eSDK, we're using regular NATIVELSBSTRING
in this SDK I can see:
test-sdk-without $ find sstate-cache/universal/ -name \*zst | wc -l
150
while for my host LSB gentoo-2.13 it's empty (just many empty directories):
test-sdk-without $ find sstate-cache/gentoo-2.13/ -name \*zst | wc -l
0
test-sdk-without $ find sstate-cache/gentoo-2.13/ | wc -l
263
* smaller test case with much shorter log is e.g. texinfo-dummy-native or m4-native:
test-sdk-without $ BB_SETSCENE_ENFORCE=1 bitbake texinfo-dummy-native
WARNING: You are using a local hash equivalence server but have configured an sstate mirror. This will likely mean no sstate will match from the mirror. You may wish to disable the hash equivalence use (BB_HASHSERVE), or use a hash equivalence server alongside the sstate mirror.
Loading cache...done.
Loaded 1797 entries from dependency cache.
NOTE: Resolving any missing task queue dependencies
Initialising tasks...done.
Sstate summary: Wanted 4 Local 0 Mirrors 0 Missed 4 Current 2 (0% match, 33% complete)
NOTE: Executing Tasks
ERROR: Task quilt-native.do_fetch attempted to execute unexpectedly
Task /OE/build/test-sdk-without/layers/poky/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb:do_deploy_source_date_epoch, unihash b355f17d90c8800c246ec1c597e4726ed57d98e0c67d6f18d1b6d3c821f08e7e, taskhash b355f17d90c8800c246ec1c597e4726ed57d98e0c67d6f18d1b6d3c821f08e7e
Task /OE/build/test-sdk-without/layers/poky/meta/recipes-devtools/quilt/quilt-native_0.67.bb:do_deploy_source_date_epoch, unihash 116f8d4762cd111492fffed036d13d4bcca35e9bafc743e5fce5432ff64b2201, taskhash 116f8d4762cd111492fffed036d13d4bcca35e9bafc743e5fce5432ff64b2201
Task /OE/build/test-sdk-without/layers/poky/meta/recipes-devtools/quilt/quilt-native_0.67.bb:do_populate_sysroot, unihash f25773f9c2ae02d1de6c037b6f4161c79b3ba37ce5add86cf087158ba26c52d9, taskhash f25773f9c2ae02d1de6c037b6f4161c79b3ba37ce5add86cf087158ba26c52d9
Task /OE/build/test-sdk-without/layers/poky/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb:do_populate_sysroot, unihash 1c584073b7e999100258ae34289091b5216d3f921d2210d1f8053fc4c8c516f5, taskhash 1c584073b7e999100258ae34289091b5216d3f921d2210d1f8053fc4c8c516f5
This is usually due to missing setscene tasks. Those missing in this build were: {'/OE/build/test-sdk-without/layers/poky/meta/recipes-devtools/quilt/quilt-native_0.67.bb:do_deploy_source_date_epoch',
'/OE/build/test-sdk-without/layers/poky/meta/recipes-devtools/quilt/quilt-native_0.67.bb:do_populate_sysroot',
'/OE/build/test-sdk-without/layers/poky/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb:do_deploy_source_date_epoch',
'/OE/build/test-sdk-without/layers/poky/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb:do_populate_sysroot'}
ERROR: Task (/OE/build/test-sdk-without/layers/poky/meta/recipes-devtools/quilt/quilt-native_0.67.bb:do_fetch) failed with exit code 'setscene ignore_tasks'
NOTE: Tasks Summary: Attempted 1 tasks of which 0 didn't need to be rerun and 1 failed.
Summary: 1 task failed:
/OE/build/test-sdk-without/layers/poky/meta/recipes-devtools/quilt/quilt-native_0.67.bb:do_fetch
Summary: There was 1 WARNING message.
Summary: There was 1 ERROR message, returning a non-zero exit code.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
-rw-r--r-- | meta/classes-recipe/populate_sdk_ext.bbclass | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/meta/classes-recipe/populate_sdk_ext.bbclass b/meta/classes-recipe/populate_sdk_ext.bbclass index fe656ed824..2394cba2e4 100644 --- a/meta/classes-recipe/populate_sdk_ext.bbclass +++ b/meta/classes-recipe/populate_sdk_ext.bbclass @@ -339,8 +339,15 @@ python copy_buildsystem () { f.write('DL_DIR = "${TOPDIR}/downloads"\n') if bb.data.inherits_class('uninative', d): - f.write('INHERIT += "%s"\n' % 'uninative') - f.write('UNINATIVE_CHECKSUM[%s] = "%s"\n\n' % (d.getVar('BUILD_ARCH'), uninative_checksum)) + f.write('INHERIT += "%s"\n' % 'uninative') + f.write('UNINATIVE_CHECKSUM[%s] = "%s"\n\n' % (d.getVar('BUILD_ARCH'), uninative_checksum)) + else: + nativelsbstring = d.getVar('NATIVELSBSTRING') + # Add my own LSB when not using uninative, because create_locked_sstate_cache bellow uses: + # fixedlsbstring = "universal%s" % oe.utils.host_gcc_version(d) + # but then inside eSDK, we're using regular NATIVELSBSTRING + f.write('SSTATE_MIRRORS += " file://%s/(.*) file://universal/\\1"\n\n' % nativelsbstring) + f.write('CONF_VERSION = "%s"\n\n' % d.getVar('CONF_VERSION', False)) # Some classes are not suitable for SDK, remove them from INHERIT |