commit:     52b51f73609113386a4fceb5310262e1e96932d0
Author:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 13 01:47:27 2018 +0000
Commit:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
CommitDate: Sat Jan 13 01:47:56 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=52b51f73

dev-lang/spidermonkey:38 - don't hardcode libc soname

This patch attempts to fix issues linking to libc on platforms
whos libc is not libc.so.6 (ie, ia64 and others).

Bug: http://bugs.gentoo.org/631574
Package-Manager: Portage-2.3.13, Repoman-2.3.3

 .../files/moz38-dont-hardcode-libc-soname.patch           | 15 +++++++++++++++
 dev-lang/spidermonkey/spidermonkey-38.2.1_rc0.ebuild      |  3 ++-
 2 files changed, 17 insertions(+), 1 deletion(-)

diff --git a/dev-lang/spidermonkey/files/moz38-dont-hardcode-libc-soname.patch 
b/dev-lang/spidermonkey/files/moz38-dont-hardcode-libc-soname.patch
new file mode 100644
index 00000000000..708c7496975
--- /dev/null
+++ b/dev-lang/spidermonkey/files/moz38-dont-hardcode-libc-soname.patch
@@ -0,0 +1,15 @@
+--- a/testing/mozbase/mozinfo/mozinfo/mozinfo.py       2018-01-12 
12:21:16.764318254 -0500
++++ b/testing/mozbase/mozinfo/mozinfo/mozinfo.py       2018-01-12 
12:22:23.392069398 -0500
+@@ -93,10 +93,11 @@
+ 
+ if info['os'] == 'linux':
+     import ctypes
++    import ctypes.util
+     import errno
+     PR_SET_SECCOMP = 22
+     SECCOMP_MODE_FILTER = 2
+-    ctypes.CDLL("libc.so.6", use_errno=True).prctl(PR_SET_SECCOMP, 
SECCOMP_MODE_FILTER, 0)
++    ctypes.CDLL(ctypes.util.find_library('c'), 
use_errno=True).prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, 0)
+     info['has_sandbox'] = ctypes.get_errno() == errno.EFAULT
+ else:
+     info['has_sandbox'] = True

diff --git a/dev-lang/spidermonkey/spidermonkey-38.2.1_rc0.ebuild 
b/dev-lang/spidermonkey/spidermonkey-38.2.1_rc0.ebuild
index 476c5c40b78..6b3861a9c18 100644
--- a/dev-lang/spidermonkey/spidermonkey-38.2.1_rc0.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-38.2.1_rc0.ebuild
@@ -42,7 +42,8 @@ src_prepare() {
                "${WORKDIR}"/sm38/mozjs38-fix-tracelogger.patch \
                "${WORKDIR}"/sm38/mozjs38-copy-headers.patch \
                "${WORKDIR}"/sm38/mozjs38-pkg-config-version.patch \
-               "${WORKDIR}"/sm38/mozilla_configure_regexp_esr38.patch
+               "${WORKDIR}"/sm38/mozilla_configure_regexp_esr38.patch \
+               "${FILESDIR}"/moz38-dont-hardcode-libc-soname.patch
 
        eapply_user
 

Reply via email to