Update of /cvsroot/fink/dists/10.4/stable/main/finkinfo/libs In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv7647
Modified Files: libffi.info Added Files: libffi.patch libffi6.info Removed Files: libffi-3.0.5.info Log Message: Sync with 10.7. --- NEW FILE: libffi.patch --- >From 603fb6250816307fc668534a253daa99c90b22fa Mon Sep 17 00:00:00 2001 From: Masami HIRATA <msm...@gmail.com> Date: Sat, 4 Aug 2012 23:30:46 +0900 Subject: [PATCH 1/2] fixed: Clang for x86_64 zero-extend or sign-extend function parameters in registers to 32-bit if the types are less than 32-bit --- src/x86/ffi64.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/x86/ffi64.c b/src/x86/ffi64.c index 1daa1c0..abe6450 100644 --- a/src/x86/ffi64.c +++ b/src/x86/ffi64.c @@ -472,7 +472,17 @@ classify_argument (ffi_type *type, enum x86_64_reg_class classes[], case X86_64_INTEGER_CLASS: case X86_64_INTEGERSI_CLASS: reg_args->gpr[gprcount] = 0; - memcpy (®_args->gpr[gprcount], a, size < 8 ? size : 8); + switch (arg_types[i]->type) + { + case FFI_TYPE_SINT8: + reg_args->gpr[gprcount] = (SINT32) *(SINT8 *) a; + break; + case FFI_TYPE_SINT16: + reg_args->gpr[gprcount] = (SINT32) *(SINT16 *) a; + break; + default: + memcpy (®_args->gpr[gprcount], a, size < 8 ? size : 8); + } gprcount++; break; case X86_64_SSE_CLASS: -- 1.7.10 >From 805a523c6521c5b9be51a8797508459512b0f482 Mon Sep 17 00:00:00 2001 From: Masami HIRATA <msm...@gmail.com> Date: Sat, 4 Aug 2012 23:31:59 +0900 Subject: [PATCH 2/2] fixed: Clang warning: comparison of integers of different signs: 'ffi_arg' (aka 'unsigned long') and 'int' [-Wsign-compare] --- testsuite/libffi.call/return_uc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/testsuite/libffi.call/return_uc.c b/testsuite/libffi.call/return_uc.c index 07c45de..b124203 100644 --- a/testsuite/libffi.call/return_uc.c +++ b/testsuite/libffi.call/return_uc.c @@ -32,7 +32,7 @@ int main (void) uc < (unsigned char) '\xff'; uc++) { ffi_call(&cif, FFI_FN(return_uc), &rint, values); - CHECK(rint == (signed int) uc); + CHECK(rint == (ffi_arg) uc); } exit(0); } -- 1.7.10 Index: libffi.info =================================================================== RCS file: /cvsroot/fink/dists/10.4/stable/main/finkinfo/libs/libffi.info,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- libffi.info 23 Jan 2012 21:26:57 -0000 1.4 +++ libffi.info 6 Sep 2013 22:52:40 -0000 1.5 @@ -3,16 +3,22 @@ # 3.0.9 fails self-tests on 10.4 Version: 3.0.9 -Distribution: 10.5, 10.6 +Distribution: 10.6, 10.7, 10.8 -Revision: 3 +Revision: 7 Source: ftp://sourceware.org/pub/%N/%N-%v.tar.gz Source-MD5: 1f300a7a7f975d4046f51c3022fa5ff1 Depends: %N-shlibs (>= %v-%r) +Conflicts: libffi, libffi6 +Replaces: libffi, libffi6 BuildDependsOnly: true +PatchFile: %n.patch +PatchFile-MD5: 4941e5a587c6c7926827647c0e48f337 PatchScript: << #!/bin/sh -ev + %{default_script} perl -pi -e 's;-dynamiclib;$& -single_module -Wl,-x -dead_strip;' configure + perl -pi -e 's;darwin10;darwin1[0-9]*;' configure # Install headers in %p/include (and deal with Apple's stupid sed ..) sed -i.bak -e '/^includesdir/,0{ s,/.*,, s,libdir,includedir, @@ -29,11 +35,12 @@ InfoTest: << TestDepends: dejagnu TestSuiteSize: medium +# clang correctly builds libffi but clang/llvm-gcc cause make check failures. +# The clang build will pass make check against gcc-4.2. TestScript: make -k check || exit 2 << InstallScript: << make install DESTDIR=%d - cd %I/share/man/man3; for f in *; do mv $f %N_$f; done << SplitOff: << Package: %N-shlibs @@ -42,16 +49,6 @@ << InfoDocs: %p/share/info/libffi.info DocFiles: ChangeLog* LICENSE README -PostInstScript: << - update-alternatives --install %p/share/man/man3/ffi.3 ffi %p/share/man/man3/%N_ffi.3 60 \ - --slave %p/share/man/man3/ffi_call.3 ffi_call %p/share/man/man3/%N_ffi_call.3 \ - --slave %p/share/man/man3/ffi_prep_cif.3 ffi_prep_cif %p/share/man/man3/%N_ffi_prep_cif.3 -<< -PreRmScript: << - if [ $1 != "upgrade" ]; then - update-alternatives --remove ffi %p/share/man/man3/%N_ffi.3 - fi -<< Description: Foreign Function Interface License: Public Domain HomePage: http://sourceware.org/libffi/ --- libffi-3.0.5.info DELETED --- --- NEW FILE: libffi6.info --- Package: libffi6 Version: 3.0.13 Revision: 2 Source: ftp://sourceware.org/pub/libffi/libffi-%v.tar.gz Source-MD5: 45f3b6dbc9ee7c7dfbbbc5feba571529 Depends: %N-shlibs (>= %v-%r) Conflicts: libffi, libffi6 Replaces: libffi, libffi6 BuildDependsOnly: true PatchScript: << #!/bin/sh -ev perl -pi -e 's;-dynamiclib -Wl,-single_module;$& -Wl,-x -dead_strip;' configure # Install headers in %p/include (and deal with Apple's stupid sed ..) sed -i.bak -e '/^includesdir/,0{ s,/.*,, s,libdir,includedir, }' include/Makefile.in sed -i.bak -e 's,libdir.*VERSION@,exec_prefix},' libffi.pc.in perl -pi -e 's/\(abort\(\), 1\)/abort()/' testsuite/libffi.call/ffitest.h << # pure precaution : NoSetCPPFLAGS: true # If only to remove useless (and harmful) -L%p/lib flag in the .la file : NoSetLDFLAGS: true SetCFLAGS: -Os -fstrict-aliasing InfoTest: << TestDepends: dejagnu TestSuiteSize: medium # clang correctly builds libffi but clang/llvm-gcc cause make check failures. # The clang build will pass make check against gcc-4.2. TestScript: make -k check || exit 2 << InstallScript: << make install DESTDIR=%d << SplitOff: << Package: %N-shlibs Files: lib/libffi.6*.dylib Shlibs: %p/lib/libffi.6.dylib 7.0.0 %n (>= 3.0.13-1) << InfoDocs: %p/share/info/libffi.info DocFiles: ChangeLog* LICENSE README Description: Foreign Function Interface License: BSD HomePage: http://sourceware.org/libffi/ Maintainer: Daniel Johnson <dan...@daniel-johnson.org> ------------------------------------------------------------------------------ Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more! Discover the easy way to master current and previous Microsoft technologies and advance your career. Get an incredible 1,500+ hours of step-by-step tutorial videos with LearnDevNow. Subscribe today and save! http://pubads.g.doubleclick.net/gampad/clk?id=58041391&iu=/4140/ostg.clktrk _______________________________________________ Fink-commits mailing list Fink-commits@lists.sourceforge.net http://news.gmane.org/gmane.os.apple.fink.cvs