diff options
author | jperkin <jperkin@pkgsrc.org> | 2012-05-30 09:13:16 +0000 |
---|---|---|
committer | jperkin <jperkin@pkgsrc.org> | 2012-05-30 09:13:16 +0000 |
commit | 736efc7b7372add431a218a3e7148d76757d389f (patch) | |
tree | 2a53d95af38813e3123e13e85d3556266485ced6 /devel/libffi | |
parent | a9b7982b8a727fd8541d0dbf68f32173964d1bf0 (diff) | |
download | pkgsrc-736efc7b7372add431a218a3e7148d76757d389f.tar.gz |
Apply fix from http://gcc.gnu.org/ml/java-patches/2010-q1/msg00058.html
Fixes Solaris/64bit, tested on NetBSD/amd64.
Diffstat (limited to 'devel/libffi')
-rw-r--r-- | devel/libffi/distinfo | 6 | ||||
-rw-r--r-- | devel/libffi/patches/patch-aa | 34 | ||||
-rw-r--r-- | devel/libffi/patches/patch-fficonfig.h.in | 14 | ||||
-rw-r--r-- | devel/libffi/patches/patch-src_x86_unix64.S | 18 |
4 files changed, 69 insertions, 3 deletions
diff --git a/devel/libffi/distinfo b/devel/libffi/distinfo index f02f5f9e0a5..da98ab10161 100644 --- a/devel/libffi/distinfo +++ b/devel/libffi/distinfo @@ -1,9 +1,9 @@ -$NetBSD: distinfo,v 1.20 2011/12/31 09:58:22 tsutsui Exp $ +$NetBSD: distinfo,v 1.21 2012/05/30 09:13:16 jperkin Exp $ SHA1 (libffi-3.0.9.tar.gz) = 56e41f87780e09d06d279690e53d4ea2c371ea88 RMD160 (libffi-3.0.9.tar.gz) = 11ff9aeb62f4fbe1fecf09e6f9814a72bfedb37a Size (libffi-3.0.9.tar.gz) = 731719 bytes -SHA1 (patch-aa) = 9339c1051f5300ad8a145f1fcdfe73981cb746c0 +SHA1 (patch-aa) = b8b056489723a0df18785ba61aeb1ff76d5d50a4 SHA1 (patch-ab) = a63e2fa11c16410f280de19c1ef47e6c7884c2b8 SHA1 (patch-ac) = f3c6324f4334d23e684b4eca25173a13be5d37eb SHA1 (patch-ad) = 8901a00abe25422e3e35f321a5fb89311185fc0b @@ -13,4 +13,6 @@ SHA1 (patch-ag) = 6333317170f6e92f89db966315276dcd8e3484f2 SHA1 (patch-ah) = e9580069ede90cd616da7bc230b28acbf5d204a6 SHA1 (patch-ai) = f85a6cb64d4a9d7c3e56b47b7092fce10a744b5b SHA1 (patch-aj) = cd8369bef0149ed044ef16c0eae7b537b4090f1f +SHA1 (patch-fficonfig.h.in) = fd85fa767bc057c843ff71cc61bedfcff84def43 SHA1 (patch-src_arm_sysv.S) = b4a4a1641e116df8dd9bd3896e6bfaa759489cb3 +SHA1 (patch-src_x86_unix64.S) = 7d5229c59ff29d77cf2cc3aa3238affb09208c44 diff --git a/devel/libffi/patches/patch-aa b/devel/libffi/patches/patch-aa index a16f3237328..6cdcd1dbfa6 100644 --- a/devel/libffi/patches/patch-aa +++ b/devel/libffi/patches/patch-aa @@ -1,4 +1,4 @@ -$NetBSD: patch-aa,v 1.11 2011/01/21 09:21:58 tnn Exp $ +$NetBSD: patch-aa,v 1.12 2012/05/30 09:13:16 jperkin Exp $ Extend which ports we accept to deal with. @@ -40,3 +40,35 @@ Extend which ports we accept to deal with. TARGET=SH; TARGETDIR=sh ;; sh64-*-* | sh5*-*-*) +@@ -14510,6 +14510,31 @@ + ;; + esac + ++if test x$TARGET = xX86_64; then ++ { $as_echo "$as_me:$LINENO: checking assembler supports unwind section type" >&5 ++$as_echo_n "checking assembler supports unwind section type... " >&6; } ++if test "${libffi_cv_as_x86_64_unwind_section_type+set}" = set; then ++ $as_echo_n "(cached) " >&6 ++else ++ ++ libffi_cv_as_x86_64_unwind_section_type=yes ++ echo '.section .eh_frame,"a",@unwind' > conftest.s ++ if $CC $CFLAGS -c conftest.s 2>&1 | grep -i warning > /dev/null; then ++ libffi_cv_as_x86_64_unwind_section_type=no ++ fi ++ ++fi ++{ $as_echo "$as_me:$LINENO: result: $libffi_cv_as_x86_64_unwind_section_type" >&5 ++$as_echo "$libffi_cv_as_x86_64_unwind_section_type" >&6; } ++ if test "x$libffi_cv_as_x86_64_unwind_section_type" = xyes; then ++ ++cat >>confdefs.h <<\_ACEOF ++#define HAVE_AS_X86_64_UNWIND_SECTION_TYPE 1 ++_ACEOF ++ ++ fi ++fi ++ + { $as_echo "$as_me:$LINENO: checking whether .eh_frame section should be read-only" >&5 + $as_echo_n "checking whether .eh_frame section should be read-only... " >&6; } + if test "${libffi_cv_ro_eh_frame+set}" = set; then diff --git a/devel/libffi/patches/patch-fficonfig.h.in b/devel/libffi/patches/patch-fficonfig.h.in new file mode 100644 index 00000000000..2285977d795 --- /dev/null +++ b/devel/libffi/patches/patch-fficonfig.h.in @@ -0,0 +1,14 @@ +$NetBSD: patch-fficonfig.h.in,v 1.1 2012/05/30 09:13:16 jperkin Exp $ + +--- fficonfig.h.in.orig Wed May 30 08:53:33 2012 ++++ fficonfig.h.in Wed May 30 08:54:03 2012 +@@ -46,6 +46,9 @@ + /* Define if your assembler supports PC relative relocs. */ + #undef HAVE_AS_X86_PCREL + ++/* Define if your assembler supports unwind section type. */ ++#undef HAVE_AS_X86_64_UNWIND_SECTION_TYPE ++ + /* Define to 1 if you have the <dlfcn.h> header file. */ + #undef HAVE_DLFCN_H + diff --git a/devel/libffi/patches/patch-src_x86_unix64.S b/devel/libffi/patches/patch-src_x86_unix64.S new file mode 100644 index 00000000000..9bc6bd7359e --- /dev/null +++ b/devel/libffi/patches/patch-src_x86_unix64.S @@ -0,0 +1,18 @@ +$NetBSD: patch-src_x86_unix64.S,v 1.1 2012/05/30 09:13:16 jperkin Exp $ + +Apply fix from http://gcc.gnu.org/ml/java-patches/2010-q1/msg00058.html + +--- src/x86/unix64.S.orig Wed May 30 08:50:05 2012 ++++ src/x86/unix64.S Wed May 30 08:50:41 2012 +@@ -324,7 +324,11 @@ + .LUW9: + .size ffi_closure_unix64,.-ffi_closure_unix64 + ++#ifdef HAVE_AS_X86_64_UNWIND_SECTION_TYPE ++ .section .eh_frame,"a",@unwind ++#else + .section .eh_frame,"a",@progbits ++#endif + .Lframe1: + .long .LECIE1-.LSCIE1 /* CIE Length */ + .LSCIE1: |