FreeBSD Bugzilla – Attachment 86032 Details for
Bug 122398
[maintainer update] Update devel/libffi to 3.0.4
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
devel-libffi.diff
devel-libffi.diff (text/plain), 18.13 KB, created by
Björn König
on 2008-04-03 09:20:01 UTC
(
hide
)
Description:
devel-libffi.diff
Filename:
MIME Type:
Creator:
Björn König
Created:
2008-04-03 09:20:01 UTC
Size:
18.13 KB
patch
obsolete
>diff --git a/devel/libffi/Makefile b/devel/libffi/Makefile >index 28f10f1..528dd36 100644 >--- a/devel/libffi/Makefile >+++ b/devel/libffi/Makefile >@@ -6,7 +6,7 @@ > # > > PORTNAME= libffi >-PORTVERSION= 3.0.1 >+PORTVERSION= 3.0.4 > CATEGORIES= devel > MASTER_SITES= ftp://sourceware.org/pub/libffi/ > >@@ -15,18 +15,11 @@ COMMENT= Foreign Function Interface > > GNU_CONFIGURE= yes > USE_LDCONFIG= yes >-USE_AUTOTOOLS= automake:110 autoconf:261 >+USE_GNOME= gnomehack gnometarget >+PLIST_SUB= PORTVERSION=${PORTVERSION} > > INFO= libffi > > MAN3= ffi.3 ffi_call.3 ffi_prep_cif.3 > >-pre-configure: >- @${REINPLACE_CMD} -e 's,^\(includesdir = \).*,\1$$(includedir),' \ >- ${WRKSRC}/include/Makefile.am >- >-post-configure: >- @${REINPLACE_CMD} -e 's,^\(transform = \).*,\1,' \ >- ${WRKSRC}/man/Makefile >- > .include <bsd.port.mk> >diff --git a/devel/libffi/distinfo b/devel/libffi/distinfo >index 20048f9..1a12f48 100644 >--- a/devel/libffi/distinfo >+++ b/devel/libffi/distinfo >@@ -1,3 +1,3 @@ >-MD5 (libffi-3.0.1.tar.gz) = 6f6cea82a8dfe6126d207fd6113ad632 >-SHA256 (libffi-3.0.1.tar.gz) = f68e16619b9eb67b1a0fbfcb4ae827f9154fece03ab35366f6896417bd021292 >-SIZE (libffi-3.0.1.tar.gz) = 719044 >+MD5 (libffi-3.0.4.tar.gz) = eea52a0f7929182da1f393d43ed231c5 >+SHA256 (libffi-3.0.4.tar.gz) = 2f3ca5852a89115846eeff53e3cc26a1e298d2698e54c4f0671984791ab14d8a >+SIZE (libffi-3.0.4.tar.gz) = 722782 >diff --git a/devel/libffi/files/patch-Makefile.am-new b/devel/libffi/files/patch-Makefile.am-new >deleted file mode 100644 >index 1e60b9b..0000000 >--- a/devel/libffi/files/patch-Makefile.am-new >+++ /dev/null >@@ -1,29 +0,0 @@ >---- Makefile.am 2008-02-15 00:42:33.000000000 +0000 >-+++ Makefile.am 2008-02-21 01:50:41.000000000 +0000 >-@@ -26,6 +26,7 @@ >- src/sparc/v8.S src/sparc/v9.S src/sparc/ffitarget.h \ >- src/sparc/ffi.c src/x86/darwin64.S \ >- src/x86/ffi.c src/x86/sysv.S src/x86/win32.S src/x86/darwin.S \ >-+ src/x86/freebsd.S \ >- src/x86/ffi64.c src/x86/unix64.S src/x86/ffitarget.h \ >- src/pa/ffitarget.h src/pa/ffi.c src/pa/linux.S src/pa/hpux32.S \ >- src/frv/ffi.c src/frv/eabi.S src/frv/ffitarget.h src/dlmalloc.c \ >-@@ -84,7 +85,7 @@ >- libffi_la_SOURCES = src/debug.c src/prep_cif.c src/types.c \ >- src/raw_api.c src/java_raw_api.c src/closures.c >- >--pkgconfigdir = $(libdir)/pkgconfig >-+pkgconfigdir = $(prefix)/libdata/pkgconfig >- pkgconfig_DATA = libffi.pc >- >- nodist_libffi_la_SOURCES = >-@@ -95,6 +96,9 @@ >- if X86 >- nodist_libffi_la_SOURCES += src/x86/ffi.c src/x86/sysv.S >- endif >-+if X86_FREEBSD >-+nodist_libffi_la_SOURCES += src/x86/ffi.c src/x86/freebsd.S >-+endif >- if X86_WIN32 >- nodist_libffi_la_SOURCES += src/x86/ffi.c src/x86/win32.S >- endif >diff --git a/devel/libffi/files/patch-configure.ac b/devel/libffi/files/patch-configure.ac >deleted file mode 100644 >index 24d3245..0000000 >--- a/devel/libffi/files/patch-configure.ac >+++ /dev/null >@@ -1,31 +0,0 @@ >---- configure.ac 2008-02-16 01:51:30.000000000 +0100 >-+++ configure.ac 2008-02-21 02:03:35.000000000 +0100 >-@@ -45,6 +45,10 @@ >- HAVE_LONG_DOUBLE='defined(__LONG_DOUBLE_128__)' >- ;; >- >-+ amd64-*-freebsd*) >-+ TARGET=X86_64; TARGETDIR=x86 >-+ ;; >-+ >- arm*-*-*) >- TARGET=ARM; TARGETDIR=arm >- ;; >-@@ -67,6 +71,9 @@ >- TARGET=PA_HPUX; TARGETDIR=pa >- ;; >- >-+ i386-*-freebsd*) >-+ TARGET=X86_FREEBSD; TARGETDIR=x86 >-+ ;; >- i?86-win32* | i?86-*-cygwin* | i?86-*-mingw*) >- TARGET=X86_WIN32; TARGETDIR=x86 >- ;; >-@@ -152,6 +159,7 @@ >- AM_CONDITIONAL(MIPS, test x$TARGET = xMIPS) >- AM_CONDITIONAL(SPARC, test x$TARGET = xSPARC) >- AM_CONDITIONAL(X86, test x$TARGET = xX86) >-+AM_CONDITIONAL(X86_FREEBSD, test x$TARGET = xX86_FREEBSD) >- AM_CONDITIONAL(X86_WIN32, test x$TARGET = xX86_WIN32) >- AM_CONDITIONAL(X86_DARWIN, test x$TARGET = xX86_DARWIN) >- AM_CONDITIONAL(ALPHA, test x$TARGET = xALPHA) >diff --git a/devel/libffi/files/patch-src-x86-freebsd.S b/devel/libffi/files/patch-src-x86-freebsd.S >deleted file mode 100644 >index 1452f5a..0000000 >--- a/devel/libffi/files/patch-src-x86-freebsd.S >+++ /dev/null >@@ -1,460 +0,0 @@ >---- src/x86/freebsd.S 1970-01-01 01:00:00.000000000 +0100 >-+++ src/x86/freebsd.S 2008-02-21 02:01:27.000000000 +0100 >-@@ -0,0 +1,457 @@ >-+/* ----------------------------------------------------------------------- >-+ freebsd.S - Copyright (c) 1996, 1998, 2001, 2002, 2003, 2005 Red Hat, Inc. >-+ >-+ X86 Foreign Function Interface >-+ >-+ Permission is hereby granted, free of charge, to any person obtaining >-+ a copy of this software and associated documentation files (the >-+ ``Software''), to deal in the Software without restriction, including >-+ without limitation the rights to use, copy, modify, merge, publish, >-+ distribute, sublicense, and/or sell copies of the Software, and to >-+ permit persons to whom the Software is furnished to do so, subject to >-+ the following conditions: >-+ >-+ The above copyright notice and this permission notice shall be included >-+ in all copies or substantial portions of the Software. >-+ >-+ THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS >-+ OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF >-+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. >-+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR >-+ ANY CLAIM, DAMAGES OR >-+ OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, >-+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR >-+ OTHER DEALINGS IN THE SOFTWARE. >-+ ----------------------------------------------------------------------- */ >-+ >-+#ifndef __x86_64__ >-+ >-+#define LIBFFI_ASM >-+#include <fficonfig.h> >-+#include <ffi.h> >-+ >-+.text >-+ >-+.globl ffi_prep_args >-+ >-+ .align 4 >-+.globl ffi_call_SYSV >-+ .type ffi_call_SYSV,@function >-+ >-+ffi_call_SYSV: >-+.LFB1: >-+ pushl %ebp >-+.LCFI0: >-+ movl %esp,%ebp >-+.LCFI1: >-+ /* Make room for all of the new args. */ >-+ movl 16(%ebp),%ecx >-+ subl %ecx,%esp >-+ >-+ movl %esp,%eax >-+ >-+ /* Place all of the ffi_prep_args in position */ >-+ pushl 12(%ebp) >-+ pushl %eax >-+ call *8(%ebp) >-+ >-+ /* Return stack to previous state and call the function */ >-+ addl $8,%esp >-+ >-+ call *28(%ebp) >-+ >-+ /* Load %ecx with the return type code */ >-+ movl 20(%ebp),%ecx >-+ >-+ /* Protect %esi. We're going to pop it in the epilogue. */ >-+ pushl %esi >-+ >-+ /* If the return value pointer is NULL, assume no return value. */ >-+ cmpl $0,24(%ebp) >-+ jne 0f >-+ >-+ /* Even if there is no space for the return value, we are >-+ obliged to handle floating-point values. */ >-+ cmpl $FFI_TYPE_FLOAT,%ecx >-+ jne noretval >-+ fstp %st(0) >-+ >-+ jmp epilogue >-+ >-+0: >-+ call 1f >-+ >-+.Lstore_table: >-+ .long noretval-.Lstore_table /* FFI_TYPE_VOID */ >-+ .long retint-.Lstore_table /* FFI_TYPE_INT */ >-+ .long retfloat-.Lstore_table /* FFI_TYPE_FLOAT */ >-+ .long retdouble-.Lstore_table /* FFI_TYPE_DOUBLE */ >-+ .long retlongdouble-.Lstore_table /* FFI_TYPE_LONGDOUBLE */ >-+ .long retuint8-.Lstore_table /* FFI_TYPE_UINT8 */ >-+ .long retsint8-.Lstore_table /* FFI_TYPE_SINT8 */ >-+ .long retuint16-.Lstore_table /* FFI_TYPE_UINT16 */ >-+ .long retsint16-.Lstore_table /* FFI_TYPE_SINT16 */ >-+ .long retint-.Lstore_table /* FFI_TYPE_UINT32 */ >-+ .long retint-.Lstore_table /* FFI_TYPE_SINT32 */ >-+ .long retint64-.Lstore_table /* FFI_TYPE_UINT64 */ >-+ .long retint64-.Lstore_table /* FFI_TYPE_SINT64 */ >-+ .long retstruct-.Lstore_table /* FFI_TYPE_STRUCT */ >-+ .long retint-.Lstore_table /* FFI_TYPE_POINTER */ >-+ .long retstruct1b-.Lstore_table /* FFI_TYPE_SMALL_STRUCT_1B */ >-+ .long retstruct2b-.Lstore_table /* FFI_TYPE_SMALL_STRUCT_2B */ >-+ >-+1: >-+ pop %esi >-+ add (%esi, %ecx, 4), %esi >-+ jmp *%esi >-+ >-+ /* Sign/zero extend as appropriate. */ >-+retsint8: >-+ movsbl %al, %eax >-+ jmp retint >-+ >-+retsint16: >-+ movswl %ax, %eax >-+ jmp retint >-+ >-+retuint8: >-+ movzbl %al, %eax >-+ jmp retint >-+ >-+retuint16: >-+ movzwl %ax, %eax >-+ jmp retint >-+ >-+retfloat: >-+ /* Load %ecx with the pointer to storage for the return value */ >-+ movl 24(%ebp),%ecx >-+ fstps (%ecx) >-+ jmp epilogue >-+ >-+retdouble: >-+ /* Load %ecx with the pointer to storage for the return value */ >-+ movl 24(%ebp),%ecx >-+ fstpl (%ecx) >-+ jmp epilogue >-+ >-+retlongdouble: >-+ /* Load %ecx with the pointer to storage for the return value */ >-+ movl 24(%ebp),%ecx >-+ fstpt (%ecx) >-+ jmp epilogue >-+ >-+retint64: >-+ /* Load %ecx with the pointer to storage for the return value */ >-+ movl 24(%ebp),%ecx >-+ movl %eax,0(%ecx) >-+ movl %edx,4(%ecx) >-+ jmp epilogue >-+ >-+retstruct1b: >-+ /* Load %ecx with the pointer to storage for the return value */ >-+ movl 24(%ebp),%ecx >-+ movb %al,0(%ecx) >-+ jmp epilogue >-+ >-+retstruct2b: >-+ /* Load %ecx with the pointer to storage for the return value */ >-+ movl 24(%ebp),%ecx >-+ movw %ax,0(%ecx) >-+ jmp epilogue >-+ >-+retint: >-+ /* Load %ecx with the pointer to storage for the return value */ >-+ movl 24(%ebp),%ecx >-+ movl %eax,0(%ecx) >-+ >-+retstruct: >-+ /* Nothing to do! */ >-+ >-+noretval: >-+epilogue: >-+ popl %esi >-+ movl %ebp,%esp >-+ popl %ebp >-+ ret >-+.LFE1: >-+.ffi_call_SYSV_end: >-+ .size ffi_call_SYSV,.ffi_call_SYSV_end-ffi_call_SYSV >-+ >-+ .align 4 >-+FFI_HIDDEN (ffi_closure_SYSV) >-+.globl ffi_closure_SYSV >-+ .type ffi_closure_SYSV, @function >-+ >-+ffi_closure_SYSV: >-+.LFB2: >-+ pushl %ebp >-+.LCFI2: >-+ movl %esp, %ebp >-+.LCFI3: >-+ subl $40, %esp >-+ leal -24(%ebp), %edx >-+ movl %edx, -12(%ebp) /* resp */ >-+ leal 8(%ebp), %edx >-+ movl %edx, 4(%esp) /* args = __builtin_dwarf_cfa () */ >-+ leal -12(%ebp), %edx >-+ movl %edx, (%esp) /* &resp */ >-+#if defined HAVE_HIDDEN_VISIBILITY_ATTRIBUTE || !defined __PIC__ >-+ call ffi_closure_SYSV_inner >-+#else >-+ movl %ebx, 8(%esp) >-+.LCFI7: >-+ call 1f >-+1: popl %ebx >-+ addl $_GLOBAL_OFFSET_TABLE_+[.-1b], %ebx >-+ call ffi_closure_SYSV_inner@PLT >-+ movl 8(%esp), %ebx >-+#endif >-+ movl -12(%ebp), %ecx >-+ cmpl $FFI_TYPE_INT, %eax >-+ je .Lcls_retint >-+ >-+ /* Handle FFI_TYPE_UINT8, FFI_TYPE_SINT8, FFI_TYPE_UINT16, >-+ FFI_TYPE_SINT16, FFI_TYPE_UINT32, FFI_TYPE_SINT32. */ >-+ cmpl $FFI_TYPE_UINT64, %eax >-+ jge 0f >-+ cmpl $FFI_TYPE_UINT8, %eax >-+ jge .Lcls_retint >-+ >-+0: cmpl $FFI_TYPE_FLOAT, %eax >-+ je .Lcls_retfloat >-+ cmpl $FFI_TYPE_DOUBLE, %eax >-+ je .Lcls_retdouble >-+ cmpl $FFI_TYPE_LONGDOUBLE, %eax >-+ je .Lcls_retldouble >-+ cmpl $FFI_TYPE_SINT64, %eax >-+ je .Lcls_retllong >-+ cmpl $FFI_TYPE_SMALL_STRUCT_1B, %eax >-+ je .Lcls_retstruct1b >-+ cmpl $FFI_TYPE_SMALL_STRUCT_2B, %eax >-+ je .Lcls_retstruct2b >-+ cmpl $FFI_TYPE_STRUCT, %eax >-+ je .Lcls_retstruct >-+.Lcls_epilogue: >-+ movl %ebp, %esp >-+ popl %ebp >-+ ret >-+.Lcls_retint: >-+ movl (%ecx), %eax >-+ jmp .Lcls_epilogue >-+.Lcls_retfloat: >-+ flds (%ecx) >-+ jmp .Lcls_epilogue >-+.Lcls_retdouble: >-+ fldl (%ecx) >-+ jmp .Lcls_epilogue >-+.Lcls_retldouble: >-+ fldt (%ecx) >-+ jmp .Lcls_epilogue >-+.Lcls_retllong: >-+ movl (%ecx), %eax >-+ movl 4(%ecx), %edx >-+ jmp .Lcls_epilogue >-+.Lcls_retstruct1b: >-+ movsbl (%ecx), %eax >-+ jmp .Lcls_epilogue >-+.Lcls_retstruct2b: >-+ movswl (%ecx), %eax >-+ jmp .Lcls_epilogue >-+.Lcls_retstruct: >-+ movl %ebp, %esp >-+ popl %ebp >-+ ret $4 >-+.LFE2: >-+ .size ffi_closure_SYSV, .-ffi_closure_SYSV >-+ >-+#if !FFI_NO_RAW_API >-+ >-+#define RAW_CLOSURE_CIF_OFFSET ((FFI_TRAMPOLINE_SIZE + 3) & ~3) >-+#define RAW_CLOSURE_FUN_OFFSET (RAW_CLOSURE_CIF_OFFSET + 4) >-+#define RAW_CLOSURE_USER_DATA_OFFSET (RAW_CLOSURE_FUN_OFFSET + 4) >-+#define CIF_FLAGS_OFFSET 20 >-+ >-+ .align 4 >-+FFI_HIDDEN (ffi_closure_raw_SYSV) >-+.globl ffi_closure_raw_SYSV >-+ .type ffi_closure_raw_SYSV, @function >-+ >-+ffi_closure_raw_SYSV: >-+.LFB3: >-+ pushl %ebp >-+.LCFI4: >-+ movl %esp, %ebp >-+.LCFI5: >-+ pushl %esi >-+.LCFI6: >-+ subl $36, %esp >-+ movl RAW_CLOSURE_CIF_OFFSET(%eax), %esi /* closure->cif */ >-+ movl RAW_CLOSURE_USER_DATA_OFFSET(%eax), %edx /* closure->user_data */ >-+ movl %edx, 12(%esp) /* user_data */ >-+ leal 8(%ebp), %edx /* __builtin_dwarf_cfa () */ >-+ movl %edx, 8(%esp) /* raw_args */ >-+ leal -24(%ebp), %edx >-+ movl %edx, 4(%esp) /* &res */ >-+ movl %esi, (%esp) /* cif */ >-+ call *RAW_CLOSURE_FUN_OFFSET(%eax) /* closure->fun */ >-+ movl CIF_FLAGS_OFFSET(%esi), %eax /* rtype */ >-+ cmpl $FFI_TYPE_INT, %eax >-+ je .Lrcls_retint >-+ >-+ /* Handle FFI_TYPE_UINT8, FFI_TYPE_SINT8, FFI_TYPE_UINT16, >-+ FFI_TYPE_SINT16, FFI_TYPE_UINT32, FFI_TYPE_SINT32. */ >-+ cmpl $FFI_TYPE_UINT64, %eax >-+ jge 0f >-+ cmpl $FFI_TYPE_UINT8, %eax >-+ jge .Lrcls_retint >-+0: >-+ cmpl $FFI_TYPE_FLOAT, %eax >-+ je .Lrcls_retfloat >-+ cmpl $FFI_TYPE_DOUBLE, %eax >-+ je .Lrcls_retdouble >-+ cmpl $FFI_TYPE_LONGDOUBLE, %eax >-+ je .Lrcls_retldouble >-+ cmpl $FFI_TYPE_SINT64, %eax >-+ je .Lrcls_retllong >-+.Lrcls_epilogue: >-+ addl $36, %esp >-+ popl %esi >-+ popl %ebp >-+ ret >-+.Lrcls_retint: >-+ movl -24(%ebp), %eax >-+ jmp .Lrcls_epilogue >-+.Lrcls_retfloat: >-+ flds -24(%ebp) >-+ jmp .Lrcls_epilogue >-+.Lrcls_retdouble: >-+ fldl -24(%ebp) >-+ jmp .Lrcls_epilogue >-+.Lrcls_retldouble: >-+ fldt -24(%ebp) >-+ jmp .Lrcls_epilogue >-+.Lrcls_retllong: >-+ movl -24(%ebp), %eax >-+ movl -20(%ebp), %edx >-+ jmp .Lrcls_epilogue >-+.LFE3: >-+ .size ffi_closure_raw_SYSV, .-ffi_closure_raw_SYSV >-+#endif >-+ >-+ .section .eh_frame,EH_FRAME_FLAGS,@progbits >-+.Lframe1: >-+ .long .LECIE1-.LSCIE1 /* Length of Common Information Entry */ >-+.LSCIE1: >-+ .long 0x0 /* CIE Identifier Tag */ >-+ .byte 0x1 /* CIE Version */ >-+#ifdef __PIC__ >-+ .ascii "zR\0" /* CIE Augmentation */ >-+#else >-+ .ascii "\0" /* CIE Augmentation */ >-+#endif >-+ .byte 0x1 /* .uleb128 0x1; CIE Code Alignment Factor */ >-+ .byte 0x7c /* .sleb128 -4; CIE Data Alignment Factor */ >-+ .byte 0x8 /* CIE RA Column */ >-+#ifdef __PIC__ >-+ .byte 0x1 /* .uleb128 0x1; Augmentation size */ >-+ .byte 0x1b /* FDE Encoding (pcrel sdata4) */ >-+#endif >-+ .byte 0xc /* DW_CFA_def_cfa */ >-+ .byte 0x4 /* .uleb128 0x4 */ >-+ .byte 0x4 /* .uleb128 0x4 */ >-+ .byte 0x88 /* DW_CFA_offset, column 0x8 */ >-+ .byte 0x1 /* .uleb128 0x1 */ >-+ .align 4 >-+.LECIE1: >-+.LSFDE1: >-+ .long .LEFDE1-.LASFDE1 /* FDE Length */ >-+.LASFDE1: >-+ .long .LASFDE1-.Lframe1 /* FDE CIE offset */ >-+#ifdef __PIC__ >-+ .long .LFB1-. /* FDE initial location */ >-+#else >-+ .long .LFB1 /* FDE initial location */ >-+#endif >-+ .long .LFE1-.LFB1 /* FDE address range */ >-+#ifdef __PIC__ >-+ .byte 0x0 /* .uleb128 0x0; Augmentation size */ >-+#endif >-+ .byte 0x4 /* DW_CFA_advance_loc4 */ >-+ .long .LCFI0-.LFB1 >-+ .byte 0xe /* DW_CFA_def_cfa_offset */ >-+ .byte 0x8 /* .uleb128 0x8 */ >-+ .byte 0x85 /* DW_CFA_offset, column 0x5 */ >-+ .byte 0x2 /* .uleb128 0x2 */ >-+ .byte 0x4 /* DW_CFA_advance_loc4 */ >-+ .long .LCFI1-.LCFI0 >-+ .byte 0xd /* DW_CFA_def_cfa_register */ >-+ .byte 0x5 /* .uleb128 0x5 */ >-+ .align 4 >-+.LEFDE1: >-+.LSFDE2: >-+ .long .LEFDE2-.LASFDE2 /* FDE Length */ >-+.LASFDE2: >-+ .long .LASFDE2-.Lframe1 /* FDE CIE offset */ >-+#ifdef __PIC__ >-+ .long .LFB2-. /* FDE initial location */ >-+#else >-+ .long .LFB2 >-+#endif >-+ .long .LFE2-.LFB2 /* FDE address range */ >-+#ifdef __PIC__ >-+ .byte 0x0 /* .uleb128 0x0; Augmentation size */ >-+#endif >-+ .byte 0x4 /* DW_CFA_advance_loc4 */ >-+ .long .LCFI2-.LFB2 >-+ .byte 0xe /* DW_CFA_def_cfa_offset */ >-+ .byte 0x8 /* .uleb128 0x8 */ >-+ .byte 0x85 /* DW_CFA_offset, column 0x5 */ >-+ .byte 0x2 /* .uleb128 0x2 */ >-+ .byte 0x4 /* DW_CFA_advance_loc4 */ >-+ .long .LCFI3-.LCFI2 >-+ .byte 0xd /* DW_CFA_def_cfa_register */ >-+ .byte 0x5 /* .uleb128 0x5 */ >-+#if !defined HAVE_HIDDEN_VISIBILITY_ATTRIBUTE && defined __PIC__ >-+ .byte 0x4 /* DW_CFA_advance_loc4 */ >-+ .long .LCFI7-.LCFI3 >-+ .byte 0x83 /* DW_CFA_offset, column 0x3 */ >-+ .byte 0xa /* .uleb128 0xa */ >-+#endif >-+ .align 4 >-+.LEFDE2: >-+ >-+#if !FFI_NO_RAW_API >-+ >-+.LSFDE3: >-+ .long .LEFDE3-.LASFDE3 /* FDE Length */ >-+.LASFDE3: >-+ .long .LASFDE3-.Lframe1 /* FDE CIE offset */ >-+#ifdef __PIC__ >-+ .long .LFB3-. /* FDE initial location */ >-+#else >-+ .long .LFB3 >-+#endif >-+ .long .LFE3-.LFB3 /* FDE address range */ >-+#ifdef __PIC__ >-+ .byte 0x0 /* .uleb128 0x0; Augmentation size */ >-+#endif >-+ .byte 0x4 /* DW_CFA_advance_loc4 */ >-+ .long .LCFI4-.LFB3 >-+ .byte 0xe /* DW_CFA_def_cfa_offset */ >-+ .byte 0x8 /* .uleb128 0x8 */ >-+ .byte 0x85 /* DW_CFA_offset, column 0x5 */ >-+ .byte 0x2 /* .uleb128 0x2 */ >-+ .byte 0x4 /* DW_CFA_advance_loc4 */ >-+ .long .LCFI5-.LCFI4 >-+ .byte 0xd /* DW_CFA_def_cfa_register */ >-+ .byte 0x5 /* .uleb128 0x5 */ >-+ .byte 0x4 /* DW_CFA_advance_loc4 */ >-+ .long .LCFI6-.LCFI5 >-+ .byte 0x86 /* DW_CFA_offset, column 0x6 */ >-+ .byte 0x3 /* .uleb128 0x3 */ >-+ .align 4 >-+.LEFDE3: >-+ >-+#endif >-+ >-+#endif /* ifndef __x86_64__ */ >diff --git a/devel/libffi/files/patch-src_arm_sysv.S b/devel/libffi/files/patch-src_arm_sysv.S >new file mode 100644 >index 0000000..ebdd681 >--- /dev/null >+++ b/devel/libffi/files/patch-src_arm_sysv.S >@@ -0,0 +1,73 @@ >+--- src/arm/sysv.S.orig 2008-02-15 02:15:41.000000000 +0100 >++++ src/arm/sysv.S 2008-04-01 13:25:02.000000000 +0200 >+@@ -83,14 +83,6 @@ >+ # define call_reg(x) mov lr, pc ; mov pc, x >+ #endif >+ >+-/* Conditionally compile unwinder directives. */ >+-#ifdef __ARM_EABI__ >+-#define UNWIND >+-#else >+-#define UNWIND @ >+-#endif >+- >+- >+ #if defined(__thumb__) && !defined(__THUMB_INTERWORK__) >+ .macro ARM_FUNC_START name >+ .text >+@@ -101,7 +93,6 @@ >+ bx pc >+ nop >+ .arm >+- UNWIND .fnstart >+ /* A hook to tell gdb that we've switched to ARM mode. Also used to call >+ directly from other local arm routines. */ >+ _L__\name: >+@@ -112,7 +103,6 @@ >+ .align 0 >+ .arm >+ ENTRY(\name) >+- UNWIND .fnstart >+ .endm >+ #endif >+ >+@@ -145,11 +135,8 @@ >+ ARM_FUNC_START ffi_call_SYSV >+ @ Save registers >+ stmfd sp!, {r0-r3, fp, lr} >+- UNWIND .save {r0-r3, fp, lr} >+ mov fp, sp >+ >+- UNWIND .setfp fp, sp >+- >+ @ Make room for all of the new args. >+ sub sp, fp, r2 >+ >+@@ -219,7 +206,6 @@ >+ RETLDM "r0-r3,fp" >+ >+ .ffi_call_SYSV_end: >+- UNWIND .fnend >+ .size CNAME(ffi_call_SYSV),.ffi_call_SYSV_end-CNAME(ffi_call_SYSV) >+ >+ /* >+@@ -231,12 +217,9 @@ >+ */ >+ >+ ARM_FUNC_START ffi_closure_SYSV >+- UNWIND .pad #16 >+ add ip, sp, #16 >+ stmfd sp!, {ip, lr} >+- UNWIND .save {r0, lr} >+ add r2, sp, #8 >+- .pad #16 >+ sub sp, sp, #16 >+ str sp, [sp, #8] >+ add r1, sp, #8 >+@@ -291,6 +274,5 @@ >+ #endif >+ >+ .ffi_closure_SYSV_end: >+- UNWIND .fnend >+ .size CNAME(ffi_closure_SYSV),.ffi_closure_SYSV_end-CNAME(ffi_closure_SYSV) >+ >diff --git a/devel/libffi/pkg-plist b/devel/libffi/pkg-plist >index e7fca45..f006989 100644 >--- a/devel/libffi/pkg-plist >+++ b/devel/libffi/pkg-plist >@@ -1,5 +1,5 @@ >-include/ffi.h >-include/ffitarget.h >+lib/libffi-%%PORTVERSION%%/include/ffi.h >+lib/libffi-%%PORTVERSION%%/include/ffitarget.h > lib/libffi.a > lib/libffi.la > lib/libffi.so
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 122398
: 86032 |
86033