]> git.pld-linux.org Git - packages/mozjs68.git/blobdiff - x32.patch
- fix building on x32
[packages/mozjs68.git] / x32.patch
diff --git a/x32.patch b/x32.patch
new file mode 100644 (file)
index 0000000..7d86f33
--- /dev/null
+++ b/x32.patch
@@ -0,0 +1,45 @@
+diff -ur mozjs-60.1.0/build/moz.configure/init.configure mozjs-60.1.0-x32/build/moz.configure/init.configure
+--- mozjs-60.1.0/build/moz.configure/init.configure    2018-06-19 00:23:55.000000000 +0200
++++ mozjs-60.1.0-x32/build/moz.configure/init.configure        2019-03-31 10:40:40.743730317 +0200
+@@ -630,6 +630,8 @@
+         endianness = 'little'
+     elif cpu in ('x86_64', 'ia64'):
+         canonical_cpu = cpu
++        if os.endswith('gnux32'):
++            canonical_cpu = 'x32'
+         endianness = 'little'
+     elif cpu in ('s390', 's390x'):
+         canonical_cpu = cpu
+diff -ur mozjs-60.1.0/js/src/jsmath.cpp mozjs-60.1.0-x32/js/src/jsmath.cpp
+--- mozjs-60.1.0/js/src/jsmath.cpp     2018-06-19 00:23:59.000000000 +0200
++++ mozjs-60.1.0-x32/js/src/jsmath.cpp 2019-03-31 11:02:09.300861938 +0200
+@@ -58,7 +58,9 @@
+ // Older glibc versions don't define SYS_getrandom, so we define it here if
+ // it's not available. See bug 995069.
+-# if defined(__x86_64__)
++# if defined(__x86_64__) && defined(__ILP32__)
++#  define GETRANDOM_NR (__X32_SYSCALL_BIT + 318)
++# elif defined(__x86_64__)
+ #  define GETRANDOM_NR 318
+ # elif defined(__i386__)
+ #  define GETRANDOM_NR 355
+diff -ur mozjs-60.1.0/python/mozbuild/mozbuild/configure/constants.py mozjs-60.1.0-x32/python/mozbuild/mozbuild/configure/constants.py
+--- mozjs-60.1.0/python/mozbuild/mozbuild/configure/constants.py       2018-06-19 00:24:03.000000000 +0200
++++ mozjs-60.1.0-x32/python/mozbuild/mozbuild/configure/constants.py   2019-03-31 10:39:21.792681467 +0200
+@@ -57,6 +57,7 @@
+     'sparc64': 64,
+     'x86': 32,
+     'x86_64': 64,
++    'x32': 32,
+ }
+ CPU = EnumString.subclass(*CPU_bitness.keys())
+@@ -73,6 +74,7 @@
+ # The order of those checks matter
+ CPU_preprocessor_checks = OrderedDict((
++    ('x32', '__x86_64__ && __ILP32__'),
+     ('x86', '__i386__ || _M_IX86'),
+     ('x86_64', '__x86_64__ || _M_X64'),
+     ('arm', '__arm__ || _M_ARM'),
This page took 0.09783 seconds and 4 git commands to generate.