| Message ID | 20260805070009.3498678-1-twoerner@gmail.com |
|---|---|
| State | Changes Requested |
| Headers | show |
| Series | ruby: scrub build host paths from rbconfig.rb in every class | expand |
On Wed Aug 5, 2026 at 9:00 AM CEST, Trevor Woerner via lists.openembedded.org wrote: > rbconfig.rb records the full configure invocation, which contains the > recipe sysroot, the hosttools directory and the debug prefix map, all of > them paths on the machine that did the build. The recipe removes them, > but only for class-target, so a nativesdk build ships them. > > Nothing noticed because nativesdk-ruby has not been installed into an > SDK before. Doing so fails do_package_qa outright: > > QA Issue: File .../rbconfig.rb in package nativesdk-ruby contains > reference to TMPDIR [buildpaths] > > Drop the class-target restriction so the same scrubbing runs whatever > class is being built. The variables it substitutes are defined for every > class, and for a target build the result is byte for byte what it was. > > AI-Generated: codex/claude-opus 5 (xhigh) > Signed-off-by: Trevor Woerner <twoerner@gmail.com> > --- Hi Trevor, It looks like this is breaking webkitgtk build: ERROR: webkitgtk-2.52.5-r0 do_configure: Execution of '/srv/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/x86-64-v3-poky-linux/webkitgtk/2.52.5/temp/run.do_configure.610119' failed with exit code 1 ... | -- Using source list file: inspector/remote/SourcesGLib.txt | /srv/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/x86-64-v3-poky-linux/webkitgtk/2.52.5/recipe-sysroot-native/usr/lib/ruby/4.0.0/did_you_mean/core_ext/name_error.rb:11: warning: getoptlong is not part of the default gems since Ruby 3.4.0. Install getoptlong from RubyGems. | /srv/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/x86-64-v3-poky-linux/webkitgtk/2.52.5/build/WTF/Scripts/generate-unified-source-bundles.rb:27:in 'Kernel#require': cannot load such file -- getoptlong (LoadError) | from /srv/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/x86-64-v3-poky-linux/webkitgtk/2.52.5/build/WTF/Scripts/generate-unified-source-bundles.rb:27:in '<main>' | CMake Error at Source/cmake/WebKitMacros.cmake:30 (message): | generate-unified-source-bundles.rb exited with non-zero status, exiting | Call Stack (most recent call first): | Source/JavaScriptCore/CMakeLists.txt:1719 (WEBKIT_COMPUTE_SOURCES) | | | -- Configuring incomplete, errors occurred! | WARNING: exit code 1 from a shell command. NOTE: recipe webkitgtk-2.52.5-r0: task do_configure: Failed NOTE: recipe lib32-xf86-video-vmware-2_13.4.0-r0: task do_package: Started ERROR: Task (/srv/pokybuild/yocto-worker/qemux86-world/build/layers/openembedded-core/meta/recipes-sato/webkit/webkitgtk_2.52.5.bb:do_configure) failed with exit code '1' https://autobuilder.yoctoproject.org/valkyrie/#/builders/59/builds/4346 Can you have a look at the issue? Thanks, Mathieu
diff --git a/meta/recipes-devtools/ruby/ruby_4.0.6.bb b/meta/recipes-devtools/ruby/ruby_4.0.6.bb index 13b6746bbeb3..8b8c397963c4 100644 --- a/meta/recipes-devtools/ruby/ruby_4.0.6.bb +++ b/meta/recipes-devtools/ruby/ruby_4.0.6.bb @@ -78,7 +78,7 @@ EXTRA_OECONF:append:libc-musl = "\ PARALLEL_MAKEINST = "" -do_install:append:class-target () { +do_install:append () { rbconfig_rb=`find ${D} -name rbconfig.rb` # Remove build host directories sed -i -e 's:--sysroot=${STAGING_DIR_TARGET}::g' \
rbconfig.rb records the full configure invocation, which contains the recipe sysroot, the hosttools directory and the debug prefix map, all of them paths on the machine that did the build. The recipe removes them, but only for class-target, so a nativesdk build ships them. Nothing noticed because nativesdk-ruby has not been installed into an SDK before. Doing so fails do_package_qa outright: QA Issue: File .../rbconfig.rb in package nativesdk-ruby contains reference to TMPDIR [buildpaths] Drop the class-target restriction so the same scrubbing runs whatever class is being built. The variables it substitutes are defined for every class, and for a target build the result is byte for byte what it was. AI-Generated: codex/claude-opus 5 (xhigh) Signed-off-by: Trevor Woerner <twoerner@gmail.com> --- meta/recipes-devtools/ruby/ruby_4.0.6.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)