commit:     449f8d3bf7f807d65a049c06eca0d8da78b4cd11
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat May 17 00:56:04 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat May 17 00:56:04 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=449f8d3b

dev-lang/julia-bin: workaround execstack issues w/ glibc-2.41, add smoke test

* Workaround execstack issues w/ glibc-2.41 by using patchelf.
* Add smoke test to make sure the binary works.

Bug: https://github.com/JuliaLang/julia/issues/57250
Closes: https://bugs.gentoo.org/956047
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...ia-bin-1.10.0.ebuild => julia-bin-1.10.0-r1.ebuild} | 18 ++++++++++++++++--
 ...ulia-bin-1.7.3.ebuild => julia-bin-1.7.3-r1.ebuild} | 18 ++++++++++++++++--
 ...ulia-bin-1.9.4.ebuild => julia-bin-1.8.3-r1.ebuild} | 18 ++++++++++++++++--
 ...ulia-bin-1.8.3.ebuild => julia-bin-1.8.5-r1.ebuild} | 18 ++++++++++++++++--
 ...ulia-bin-1.8.5.ebuild => julia-bin-1.9.4-r1.ebuild} | 18 ++++++++++++++++--
 5 files changed, 80 insertions(+), 10 deletions(-)

diff --git a/dev-lang/julia-bin/julia-bin-1.10.0.ebuild 
b/dev-lang/julia-bin/julia-bin-1.10.0-r1.ebuild
similarity index 81%
rename from dev-lang/julia-bin/julia-bin-1.10.0.ebuild
rename to dev-lang/julia-bin/julia-bin-1.10.0-r1.ebuild
index f4cf78e60c0b..45600a8a1b36 100644
--- a/dev-lang/julia-bin/julia-bin-1.10.0.ebuild
+++ b/dev-lang/julia-bin/julia-bin-1.10.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -8,6 +8,8 @@ MY_P=${MY_PN}-${PV/_/-}
 MY_PV=$(ver_cut 1-2)
 BASE_SRC_URI="https://julialang-s3.julialang.org/bin";
 
+inherit edo
+
 DESCRIPTION="High-performance programming language for technical computing"
 HOMEPAGE="https://julialang.org/";
 SRC_URI="
@@ -27,7 +29,7 @@ KEYWORDS="-* ~amd64 ~arm64 ~x86"
 RESTRICT="strip"
 
 RDEPEND="app-arch/p7zip"
-DEPEND="${RDEPEND}"
+BDEPEND="dev-util/patchelf"
 
 QA_PREBUILT="*"
 QA_SONAME="*"
@@ -36,6 +38,18 @@ QA_SONAME="*"
 # at runtime...
 QA_DT_NEEDED="*"
 
+src_prepare() {
+       default
+
+       # Workaround for bug #956047. This can be dropped with >1.10.9.
+       edo patchelf --clear-execstack lib/julia/libopenlibm.so*
+}
+
+src_test() {
+       # Smoke test to catch issues like bug #956047
+       edo bin/julia --version
+}
+
 src_install() {
        insinto "/usr/$(get_libdir)/${MY_P}/"
        doins -r ./etc

diff --git a/dev-lang/julia-bin/julia-bin-1.7.3.ebuild 
b/dev-lang/julia-bin/julia-bin-1.7.3-r1.ebuild
similarity index 79%
rename from dev-lang/julia-bin/julia-bin-1.7.3.ebuild
rename to dev-lang/julia-bin/julia-bin-1.7.3-r1.ebuild
index a5facfea6337..d3cd90fa17a4 100644
--- a/dev-lang/julia-bin/julia-bin-1.7.3.ebuild
+++ b/dev-lang/julia-bin/julia-bin-1.7.3-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -8,6 +8,8 @@ MY_P=${MY_PN}-${PV/_/-}
 MY_PV=$(ver_cut 1-2)
 BASE_SRC_URI="https://julialang-s3.julialang.org/bin";
 
+inherit edo
+
 DESCRIPTION="High-performance programming language for technical computing"
 HOMEPAGE="https://julialang.org/";
 SRC_URI="
@@ -26,11 +28,23 @@ KEYWORDS="-* ~amd64 ~arm64 ~x86"
 RESTRICT="strip"
 
 RDEPEND="app-arch/p7zip"
-DEPEND="${RDEPEND}"
+BDEPEND="dev-util/patchelf"
 
 QA_PREBUILT="*"
 QA_SONAME="*"
 
+src_prepare() {
+       default
+
+       # Workaround for bug #956047. This can be dropped with >1.10.9.
+       edo patchelf --clear-execstack lib/julia/libopenlibm.so*
+}
+
+src_test() {
+       # Smoke test to catch issues like bug #956047
+       edo bin/julia --version
+}
+
 src_install() {
        insinto "/usr/$(get_libdir)/${MY_P}/"
        doins -r ./etc

diff --git a/dev-lang/julia-bin/julia-bin-1.9.4.ebuild 
b/dev-lang/julia-bin/julia-bin-1.8.3-r1.ebuild
similarity index 81%
rename from dev-lang/julia-bin/julia-bin-1.9.4.ebuild
rename to dev-lang/julia-bin/julia-bin-1.8.3-r1.ebuild
index 6d83b2b69e6a..45600a8a1b36 100644
--- a/dev-lang/julia-bin/julia-bin-1.9.4.ebuild
+++ b/dev-lang/julia-bin/julia-bin-1.8.3-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -8,6 +8,8 @@ MY_P=${MY_PN}-${PV/_/-}
 MY_PV=$(ver_cut 1-2)
 BASE_SRC_URI="https://julialang-s3.julialang.org/bin";
 
+inherit edo
+
 DESCRIPTION="High-performance programming language for technical computing"
 HOMEPAGE="https://julialang.org/";
 SRC_URI="
@@ -27,7 +29,7 @@ KEYWORDS="-* ~amd64 ~arm64 ~x86"
 RESTRICT="strip"
 
 RDEPEND="app-arch/p7zip"
-DEPEND="${RDEPEND}"
+BDEPEND="dev-util/patchelf"
 
 QA_PREBUILT="*"
 QA_SONAME="*"
@@ -36,6 +38,18 @@ QA_SONAME="*"
 # at runtime...
 QA_DT_NEEDED="*"
 
+src_prepare() {
+       default
+
+       # Workaround for bug #956047. This can be dropped with >1.10.9.
+       edo patchelf --clear-execstack lib/julia/libopenlibm.so*
+}
+
+src_test() {
+       # Smoke test to catch issues like bug #956047
+       edo bin/julia --version
+}
+
 src_install() {
        insinto "/usr/$(get_libdir)/${MY_P}/"
        doins -r ./etc

diff --git a/dev-lang/julia-bin/julia-bin-1.8.3.ebuild 
b/dev-lang/julia-bin/julia-bin-1.8.5-r1.ebuild
similarity index 81%
rename from dev-lang/julia-bin/julia-bin-1.8.3.ebuild
rename to dev-lang/julia-bin/julia-bin-1.8.5-r1.ebuild
index 364b1b88cb62..45600a8a1b36 100644
--- a/dev-lang/julia-bin/julia-bin-1.8.3.ebuild
+++ b/dev-lang/julia-bin/julia-bin-1.8.5-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -8,6 +8,8 @@ MY_P=${MY_PN}-${PV/_/-}
 MY_PV=$(ver_cut 1-2)
 BASE_SRC_URI="https://julialang-s3.julialang.org/bin";
 
+inherit edo
+
 DESCRIPTION="High-performance programming language for technical computing"
 HOMEPAGE="https://julialang.org/";
 SRC_URI="
@@ -27,7 +29,7 @@ KEYWORDS="-* ~amd64 ~arm64 ~x86"
 RESTRICT="strip"
 
 RDEPEND="app-arch/p7zip"
-DEPEND="${RDEPEND}"
+BDEPEND="dev-util/patchelf"
 
 QA_PREBUILT="*"
 QA_SONAME="*"
@@ -36,6 +38,18 @@ QA_SONAME="*"
 # at runtime...
 QA_DT_NEEDED="*"
 
+src_prepare() {
+       default
+
+       # Workaround for bug #956047. This can be dropped with >1.10.9.
+       edo patchelf --clear-execstack lib/julia/libopenlibm.so*
+}
+
+src_test() {
+       # Smoke test to catch issues like bug #956047
+       edo bin/julia --version
+}
+
 src_install() {
        insinto "/usr/$(get_libdir)/${MY_P}/"
        doins -r ./etc

diff --git a/dev-lang/julia-bin/julia-bin-1.8.5.ebuild 
b/dev-lang/julia-bin/julia-bin-1.9.4-r1.ebuild
similarity index 81%
rename from dev-lang/julia-bin/julia-bin-1.8.5.ebuild
rename to dev-lang/julia-bin/julia-bin-1.9.4-r1.ebuild
index 6d83b2b69e6a..45600a8a1b36 100644
--- a/dev-lang/julia-bin/julia-bin-1.8.5.ebuild
+++ b/dev-lang/julia-bin/julia-bin-1.9.4-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -8,6 +8,8 @@ MY_P=${MY_PN}-${PV/_/-}
 MY_PV=$(ver_cut 1-2)
 BASE_SRC_URI="https://julialang-s3.julialang.org/bin";
 
+inherit edo
+
 DESCRIPTION="High-performance programming language for technical computing"
 HOMEPAGE="https://julialang.org/";
 SRC_URI="
@@ -27,7 +29,7 @@ KEYWORDS="-* ~amd64 ~arm64 ~x86"
 RESTRICT="strip"
 
 RDEPEND="app-arch/p7zip"
-DEPEND="${RDEPEND}"
+BDEPEND="dev-util/patchelf"
 
 QA_PREBUILT="*"
 QA_SONAME="*"
@@ -36,6 +38,18 @@ QA_SONAME="*"
 # at runtime...
 QA_DT_NEEDED="*"
 
+src_prepare() {
+       default
+
+       # Workaround for bug #956047. This can be dropped with >1.10.9.
+       edo patchelf --clear-execstack lib/julia/libopenlibm.so*
+}
+
+src_test() {
+       # Smoke test to catch issues like bug #956047
+       edo bin/julia --version
+}
+
 src_install() {
        insinto "/usr/$(get_libdir)/${MY_P}/"
        doins -r ./etc

Reply via email to