summaryrefslogtreecommitdiffstats
path: root/js/src/ctypes/libffi-patches/02-clang-cl.patch
diff options
context:
space:
mode:
authorMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
committerMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
commit5f8de423f190bbb79a62f804151bc24824fa32d8 (patch)
tree10027f336435511475e392454359edea8e25895d /js/src/ctypes/libffi-patches/02-clang-cl.patch
parent49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff)
downloadUXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip
Add m-esr52 at 52.6.0
Diffstat (limited to 'js/src/ctypes/libffi-patches/02-clang-cl.patch')
-rw-r--r--js/src/ctypes/libffi-patches/02-clang-cl.patch63
1 files changed, 63 insertions, 0 deletions
diff --git a/js/src/ctypes/libffi-patches/02-clang-cl.patch b/js/src/ctypes/libffi-patches/02-clang-cl.patch
new file mode 100644
index 000000000..6f0b6a5ea
--- /dev/null
+++ b/js/src/ctypes/libffi-patches/02-clang-cl.patch
@@ -0,0 +1,63 @@
+commit fb25cd08ed5a87640b02f0feeb10a09b37cfddbe (HEAD, origin/clang-cl, clang-cl)
+Author: Ehsan Akhgari <ehsan@mozilla.com>
+Date: Wed Jun 11 12:07:24 2014 -0400
+
+ Add support for building with clang-cl
+
+diff --git a/README b/README
+index 7aee5b4..9cba257 100644
+--- a/README
++++ b/README
+@@ -146,12 +146,17 @@ It's also possible to build libffi on Windows platforms with
+ Microsoft's Visual C++ compiler. In this case, use the msvcc.sh
+ wrapper script during configuration like so:
+
+-path/to/configure CC=path/to/msvcc.sh CXX=path/to/msvcc.sh LD=link CPP=\"cl -nologo -EP\"
++path/to/configure CC=path/to/msvcc.sh CXX=path/to/msvcc.sh LD=link CPP="cl -nologo -EP"
+
+ For 64-bit Windows builds, use CC="path/to/msvcc.sh -m64" and
+ CXX="path/to/msvcc.sh -m64". You may also need to specify --build
+ appropriately.
+
++It is also possible to build libffi on Windows platforms with the LLVM
++project's clang-cl compiler, like below:
++
++path/to/configure CC="path/to/msvcc.sh -clang-cl" CXX="path/to/msvcc.sh -clang-cl" LD=link CPP="clang-cl -EP"
++
+ When building with MSVC under a MingW environment, you may need to
+ remove the line in configure that sets 'fix_srcfile_path' to a 'cygpath'
+ command. ('cygpath' is not present in MingW, and is not required when
+diff --git a/include/ffi.h.in b/include/ffi.h.in
+index 70c6179..ebed0aa 100644
+--- a/include/ffi.h.in
++++ b/include/ffi.h.in
+@@ -68,7 +68,7 @@ extern "C" {
+
+ #ifndef LIBFFI_ASM
+
+-#ifdef _MSC_VER
++#if defined(_MSC_VER) && !defined(__clang__)
+ #define __attribute__(X)
+ #endif
+
+diff --git a/msvcc.sh b/msvcc.sh
+index 9208076..4a65b0b 100755
+--- a/msvcc.sh
++++ b/msvcc.sh
+@@ -63,11 +63,15 @@ do
+ shift 1
+ ;;
+ -m64)
+- cl="cl" # "$MSVC/x86_amd64/cl"
+ ml="ml64" # "$MSVC/x86_amd64/ml64"
+ safeseh=
+ shift 1
+ ;;
++ -clang-cl)
++ cl="clang-cl"
++ safeseh=
++ shift 1
++ ;;
+ -O0)
+ args="$args -Od"
+ shift 1