Summary: | dev-lang/ruby-3.0.5 and 2.7.7: ebuilds fail to copy libs/binary into image subdir for install phase | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Megas of Vecanti <emegas> |
Component: | Current packages | Assignee: | Gentoo Ruby Team <ruby> |
Status: | RESOLVED FIXED | ||
Severity: | major | CC: | chiitoo, kfm |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
See Also: |
https://bugs.gentoo.org/show_bug.cgi?id=883097 https://bugs.gentoo.org/show_bug.cgi?id=728424 |
||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
build.log
Output of 'find /var/tmp/portage/dev-lang/ruby-3.0.5/image' |
Description
Megas of Vecanti
2023-03-12 12:14:00 UTC
Created attachment 857393 [details]
build.log
build.log (dev-lang/ruby-3.0.5)
Created attachment 857395 [details]
Output of 'find /var/tmp/portage/dev-lang/ruby-3.0.5/image'
Output of 'find /var/tmp/portage/dev-lang/ruby-3.0.5/image' following ebuild completion.
Note absence of /usr/bin and all files within /usr/lib64/ruby structure.
Added Gentoo Ruby Team (at request of tirnanog on Gentoo IRC) Not sure if interesting or not, but from a quick look, while in the configuration summary I have: 'BASERUBY -v: riby 3.0.5p211 [...]' and later 'BASERUBY = /usr/bin/ruby --disable=gems' in the log here the summary part doesn't have BASERUBY at all, and later: 'BASERUBY = echo executable host ruby is required. use --with-baseruby option.; false' which seems quite weird indeed... or maybe it is normal. :] (In reply to Chiitoo from comment #4) > Not sure if interesting or not, but from a quick look, while in the > configuration summary I have: > > 'BASERUBY -v: riby 3.0.5p211 [...]' > > and later > > 'BASERUBY = /usr/bin/ruby --disable=gems' > > in the log here the summary part doesn't have BASERUBY at all, and later: > > 'BASERUBY = echo executable host ruby is required. use --with-baseruby > option.; false' > > which seems quite weird indeed... or maybe it is normal. :] I've fixed that part at least, it now always uses the just-built ruby. >--extout=".ext" --mflags="-j4 -Oline --jobserver-auth=4,5"
I'll be.
I want to add a sanity check for this but I couldn't reproduce it, but I've seen enough reports and I can see how it'd happen with how Ruby's build system interacts with MAKEOPTS and friends. The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e86df55fc08f6fb8ececc9001e9f25187b8d3eff commit e86df55fc08f6fb8ececc9001e9f25187b8d3eff Author: Sam James <sam@gentoo.org> AuthorDate: 2023-04-10 08:16:19 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2023-04-10 08:20:29 +0000 dev-lang/ruby: filter out -Oline from MAKEOPTS, GNUMAKEFLAGS Sorry for another revbump in such a short period (although maybe it's not so bad given very few people will have upgraded yet). Newer Portage sets GNUMAKEFLAGS="--output-sync=line" if MAKEOPTS is unset. It looks like this sometimes leads to Ruby installing no files (or just docs). Filter it out and just parse out --jobs and --load-average from MAKEOPTS. This is behind at least two reports on Bugzilla and possibly another on the forums. Closes: https://bugs.gentoo.org/728424 Closes: https://bugs.gentoo.org/900929 Signed-off-by: Sam James <sam@gentoo.org> dev-lang/ruby/{ruby-2.7.8-r2.ebuild => ruby-2.7.8-r3.ebuild} | 11 ++++++++++- dev-lang/ruby/{ruby-3.0.6-r1.ebuild => ruby-3.0.6-r2.ebuild} | 11 ++++++++++- dev-lang/ruby/{ruby-3.1.4-r1.ebuild => ruby-3.1.4-r2.ebuild} | 11 ++++++++++- dev-lang/ruby/{ruby-3.2.2-r1.ebuild => ruby-3.2.2-r2.ebuild} | 11 ++++++++++- 4 files changed, 40 insertions(+), 4 deletions(-) |