summaryrefslogtreecommitdiff
path: root/config/external
diff options
context:
space:
mode:
Diffstat (limited to 'config/external')
-rw-r--r--config/external/ffi/moz.build9
-rw-r--r--config/external/nspr/pr/moz.build1
2 files changed, 9 insertions, 1 deletions
diff --git a/config/external/ffi/moz.build b/config/external/ffi/moz.build
index 3a54789676..01ccd0547e 100644
--- a/config/external/ffi/moz.build
+++ b/config/external/ffi/moz.build
@@ -64,13 +64,20 @@ else:
if CONFIG['INTEL_ARCHITECTURE'] and CONFIG['OS_TARGET'] != 'SunOS':
DEFINES['HAVE_AS_X86_PCREL'] = True
+# Which is why they apparently don't do this anymore on amd64.
+
+ if CONFIG['FFI_TARGET'] == 'X86_64' and CONFIG['OS_TARGET'] == 'SunOS':
+ DEFINES['HAVE_AS_X86_PCREL'] = True
+
# Don't bother setting EH_FRAME_FLAGS on Windows.
# Quoted defines confuse msvcc.sh, and the value isn't used there.
if CONFIG['OS_TARGET'] != 'WINNT':
# Solaris seems to require EH_FRAME to be writable even on x86.
# It works fine most of the time and there's no rule against it,
# but it causes a lot of weird problems.
- if CONFIG['FFI_TARGET'] == 'ARM' or CONFIG['OS_ARCH'] == 'SunOS':
+ if CONFIG['FFI_TARGET'] == 'ARM':
+ DEFINES['EH_FRAME_FLAGS'] = '"aw"'
+ elif CONFIG['FFI_TARGET'] == 'X86' and CONFIG['OS_TARGET'] == 'SunOS':
DEFINES['EH_FRAME_FLAGS'] = '"aw"'
else:
DEFINES['EH_FRAME_FLAGS'] = '"a"'
diff --git a/config/external/nspr/pr/moz.build b/config/external/nspr/pr/moz.build
index 84d6e79039..1d2df30997 100644
--- a/config/external/nspr/pr/moz.build
+++ b/config/external/nspr/pr/moz.build
@@ -62,6 +62,7 @@ elif CONFIG['OS_TARGET'] == 'SunOS':
SOURCES += ['/nsprpub/pr/src/md/unix/solaris.c']
if CONFIG['CPU_ARCH'] == 'x86_64':
SOURCES += ['/nsprpub/pr/src/md/unix/os_SunOS_x86_64.s']
+ DEFINES['USE_64'] = True
elif CONFIG['CPU_ARCH'] == 'x86':
SOURCES += ['/nsprpub/pr/src/md/unix/os_SunOS_x86.s']
elif CONFIG['OS_TARGET'] == 'WINNT':