diff options
| author | Sam James <sam@gentoo.org> | 2023-06-14 21:47:35 +0100 |
|---|---|---|
| committer | Sam James <sam@gentoo.org> | 2023-06-15 22:13:40 +0100 |
| commit | 8478835a7fc4226bcbf6c79475e1ba6d41d42298 (patch) | |
| tree | 77f9e8dd73562c046246a47b5b4b19398a06438e /eclass/ruby-ng.eclass | |
| parent | 52885a31b20f6af327ccefaa62ce74877b9b687d (diff) | |
| download | gentoo-8478835a7fc4226bcbf6c79475e1ba6d41d42298.tar.gz gentoo-8478835a7fc4226bcbf6c79475e1ba6d41d42298.tar.bz2 gentoo-8478835a7fc4226bcbf6c79475e1ba6d41d42298.zip | |
ruby-ng.eclass: use shopt directly, not via estack.eclass
ulm points out that estack.eclass is particularly inefficient (although
it'll get slightly better once https://github.com/gentoo/gentoo/pull/31437
is fixed).
Let's just manually roll it like llvm.eclass does.
Bug: https://bugs.gentoo.org/908465
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'eclass/ruby-ng.eclass')
| -rw-r--r-- | eclass/ruby-ng.eclass | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/eclass/ruby-ng.eclass b/eclass/ruby-ng.eclass index 14f4414337d6..2f14c22ace37 100644 --- a/eclass/ruby-ng.eclass +++ b/eclass/ruby-ng.eclass @@ -75,7 +75,7 @@ if [[ -z ${_RUBY_NG_ECLASS} ]]; then _RUBY_NG_ECLASS=1 [[ ${EAPI} == 6 ]] && inherit eqawarn toolchain-funcs -inherit estack multilib ruby-utils +inherit multilib ruby-utils # S is no longer automatically assigned when it doesn't exist. S="${WORKDIR}" @@ -163,7 +163,8 @@ _RUBY_ATOMS_SAMELIB_RESULT="" _ruby_atoms_samelib() { _RUBY_ATOMS_SAMELIB_RESULT="" - eshopts_push -o noglob + local shopt_save=$(shopt -p -o noglob) + set -f local token local atoms=" RUBYTARGET? (" for token in $*; do @@ -177,7 +178,7 @@ _ruby_atoms_samelib() { esac done atoms+=" ) " - eshopts_pop + ${shopt_save} _ruby_set_globals_invalidate_if_stale local _ruby_implementation |
