[packages/perl-FFI-Raw] - initial, version 0.32

adwol adwol at pld-linux.org
Mon Oct 10 23:48:15 CEST 2016


commit 6b6d35f720794b71bbc9052e9faa4e5337c5dfc3
Author: Adam Osuchowski <adwol at pld-linux.org>
Date:   Mon Oct 10 23:47:54 2016 +0200

    - initial, version 0.32

 perl-FFI-Raw-makefile.patch |  32 +++++
 perl-FFI-Raw-manifest.patch | 321 ++++++++++++++++++++++++++++++++++++++++++++
 perl-FFI-Raw.spec           |  68 ++++++++++
 3 files changed, 421 insertions(+)
---
diff --git a/perl-FFI-Raw.spec b/perl-FFI-Raw.spec
new file mode 100644
index 0000000..700015f
--- /dev/null
+++ b/perl-FFI-Raw.spec
@@ -0,0 +1,68 @@
+#
+# Conditional build:
+%bcond_without	tests	# do not perform "make test"
+#
+%include	/usr/lib/rpm/macros.perl
+%define		pdir	FFI
+%define		pnam	Raw
+Summary:	FFI::Raw - Perl bindings to the portable FFI library (libffi)
+Name:		perl-FFI-Raw
+Version:	0.32
+Release:	1
+# sae as perl
+License:	GPL v1+ or Artistic
+Group:		Development/Languages/Perl
+Source0:	http://www.cpan.org/modules/by-module/FFI/%{pdir}-%{pnam}-%{version}.tar.gz
+# Source0-md5:	a2fa68728f71f17fc869f7d56592de87
+Patch0:		%{name}-makefile.patch
+Patch1:		%{name}-manifest.patch
+URL:		http://search.cpan.org/dist/FFI-Raw/
+BuildRequires:	libffi
+BuildRequires:	perl-devel >= 1:5.8.0
+BuildRequires:	rpm-perlprov >= 4.1-13
+BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+FFI::Raw provides a low-level foreign function interface (FFI) for
+Perl based on libffi. In essence, it can access and call functions
+exported by shared libraries without the need to write C/XS code.
+
+Dynamic symbols can be automatically resolved at runtime so that the
+only information needed to use FFI::Raw is the name (or path) of the
+target library, the name of the function to call and its signature
+(though it is also possible to pass a function pointer obtained, for
+example, using DynaLoader).
+
+%prep
+%setup -q -n %{pdir}-%{pnam}-%{version}
+%patch0 -p1
+%patch1 -p1
+
+%{__rm} -r deps/libffi
+
+%build
+%{__perl} Makefile.PL \
+	INSTALLDIRS=vendor
+%{__make} \
+	CC="%{__cc}" \
+	OPTIMIZE="%{rpmcflags}"
+
+%{?with_tests:%{__make} test}
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+%{__make} install \
+	DESTDIR=$RPM_BUILD_ROOT
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%files
+%defattr(644,root,root,755)
+%doc Change* README
+%{perl_vendorarch}/FFI/Raw.pm
+%{perl_vendorarch}/FFI/Raw
+%dir %{perl_vendorarch}/auto/FFI/Raw
+%attr(755,root,root) %{perl_vendorarch}/auto/FFI/Raw/Raw.so
+%{_mandir}/man3/*
diff --git a/perl-FFI-Raw-makefile.patch b/perl-FFI-Raw-makefile.patch
new file mode 100644
index 0000000..4e094d8
--- /dev/null
+++ b/perl-FFI-Raw-makefile.patch
@@ -0,0 +1,32 @@
+diff -ruN FFI-Raw-0.32.orig/Makefile.PL FFI-Raw-0.32/Makefile.PL
+--- FFI-Raw-0.32.orig/Makefile.PL	2014-06-02 15:11:45.000000000 +0200
++++ FFI-Raw-0.32/Makefile.PL	2016-10-10 23:29:24.401413605 +0200
+@@ -39,13 +39,7 @@
+     return "\t$^X -MAlien::MSYS=msys_run -Minc::MSYSConfigure -e \"configure(); msys_run 'make'\"\n\n";
+   }
+ 
+-  return <<'MAKE_LIBFFI';
+-$(MYEXTLIB):
+-	cd deps/libffi && ./configure MAKEINFO=true --disable-builddir --with-pic && $(MAKE)
+-
+-.NOTPARALLEL:
+-
+-MAKE_LIBFFI
++  return '';
+ }
+ 
+ # This Makefile.PL for FFI-Raw was generated by
+@@ -72,11 +66,10 @@
+   },
+   "DISTNAME" => "FFI-Raw",
+   "EXE_FILES" => [],
+-  "INC" => "-I. -Ixs -Ideps -Ideps/libffi/include",
++  "INC" => "-I. -Ixs -Ideps",
+   "LICENSE" => "perl",
+-  "MYEXTLIB" => "deps/libffi/.libs/libffi.a",
+   "NAME" => "FFI::Raw",
+-  "OBJECT" => "\$(O_FILES) deps/libffi/.libs/libffi.a",
++  "OBJECT" => "\$(O_FILES)",
+   "PREREQ_PM" => {
+     "XSLoader" => 0,
+     "overload" => 0,
diff --git a/perl-FFI-Raw-manifest.patch b/perl-FFI-Raw-manifest.patch
new file mode 100644
index 0000000..ab35a5f
--- /dev/null
+++ b/perl-FFI-Raw-manifest.patch
@@ -0,0 +1,321 @@
+diff -ruN FFI-Raw-0.32.orig/MANIFEST FFI-Raw-0.32/MANIFEST
+--- FFI-Raw-0.32.orig/MANIFEST	2014-06-02 15:11:45.000000000 +0200
++++ FFI-Raw-0.32/MANIFEST	2016-10-10 23:32:44.043657447 +0200
+@@ -8,317 +8,6 @@
+ Makefile.PL
+ README
+ Raw.xs
+-deps/libffi/ChangeLog
+-deps/libffi/ChangeLog.libffi
+-deps/libffi/ChangeLog.libffi-3.1
+-deps/libffi/ChangeLog.libgcj
+-deps/libffi/ChangeLog.v1
+-deps/libffi/LICENSE
+-deps/libffi/Makefile.in
+-deps/libffi/README
+-deps/libffi/acinclude.m4
+-deps/libffi/aclocal.m4
+-deps/libffi/compile
+-deps/libffi/config.guess
+-deps/libffi/config.sub
+-deps/libffi/configure
+-deps/libffi/depcomp
+-deps/libffi/doc/libffi.texi
+-deps/libffi/doc/stamp-vti
+-deps/libffi/doc/version.texi
+-deps/libffi/fficonfig.h.in
+-deps/libffi/generate-darwin-source-and-headers.py
+-deps/libffi/include/Makefile.in
+-deps/libffi/include/ffi.h.in
+-deps/libffi/include/ffi_common.h
+-deps/libffi/install-sh
+-deps/libffi/libffi.pc.in
+-deps/libffi/libffi.xcodeproj/project.pbxproj
+-deps/libffi/libtool-ldflags
+-deps/libffi/libtool-version
+-deps/libffi/ltmain.sh
+-deps/libffi/m4/asmcfi.m4
+-deps/libffi/m4/ax_append_flag.m4
+-deps/libffi/m4/ax_cc_maxopt.m4
+-deps/libffi/m4/ax_cflags_warn_all.m4
+-deps/libffi/m4/ax_check_compile_flag.m4
+-deps/libffi/m4/ax_compiler_vendor.m4
+-deps/libffi/m4/ax_configure_args.m4
+-deps/libffi/m4/ax_enable_builddir.m4
+-deps/libffi/m4/ax_gcc_archflag.m4
+-deps/libffi/m4/ax_gcc_x86_cpuid.m4
+-deps/libffi/m4/libtool.m4
+-deps/libffi/m4/ltoptions.m4
+-deps/libffi/m4/ltsugar.m4
+-deps/libffi/m4/ltversion.m4
+-deps/libffi/m4/lt~obsolete.m4
+-deps/libffi/man/Makefile.in
+-deps/libffi/man/ffi.3
+-deps/libffi/man/ffi_call.3
+-deps/libffi/man/ffi_prep_cif.3
+-deps/libffi/man/ffi_prep_cif_var.3
+-deps/libffi/mdate-sh
+-deps/libffi/missing
+-deps/libffi/msvcc.sh
+-deps/libffi/src/aarch64/ffi.c
+-deps/libffi/src/aarch64/ffitarget.h
+-deps/libffi/src/aarch64/sysv.S
+-deps/libffi/src/alpha/ffi.c
+-deps/libffi/src/alpha/ffitarget.h
+-deps/libffi/src/alpha/osf.S
+-deps/libffi/src/arc/arcompact.S
+-deps/libffi/src/arc/ffi.c
+-deps/libffi/src/arc/ffitarget.h
+-deps/libffi/src/arm/ffi.c
+-deps/libffi/src/arm/ffitarget.h
+-deps/libffi/src/arm/gentramp.sh
+-deps/libffi/src/arm/sysv.S
+-deps/libffi/src/arm/trampoline.S
+-deps/libffi/src/avr32/ffi.c
+-deps/libffi/src/avr32/ffitarget.h
+-deps/libffi/src/avr32/sysv.S
+-deps/libffi/src/bfin/ffi.c
+-deps/libffi/src/bfin/ffitarget.h
+-deps/libffi/src/bfin/sysv.S
+-deps/libffi/src/closures.c
+-deps/libffi/src/cris/ffi.c
+-deps/libffi/src/cris/ffitarget.h
+-deps/libffi/src/cris/sysv.S
+-deps/libffi/src/debug.c
+-deps/libffi/src/dlmalloc.c
+-deps/libffi/src/frv/eabi.S
+-deps/libffi/src/frv/ffi.c
+-deps/libffi/src/frv/ffitarget.h
+-deps/libffi/src/ia64/ffi.c
+-deps/libffi/src/ia64/ffitarget.h
+-deps/libffi/src/ia64/ia64_flags.h
+-deps/libffi/src/ia64/unix.S
+-deps/libffi/src/java_raw_api.c
+-deps/libffi/src/m32r/ffi.c
+-deps/libffi/src/m32r/ffitarget.h
+-deps/libffi/src/m32r/sysv.S
+-deps/libffi/src/m68k/ffi.c
+-deps/libffi/src/m68k/ffitarget.h
+-deps/libffi/src/m68k/sysv.S
+-deps/libffi/src/m88k/ffi.c
+-deps/libffi/src/m88k/ffitarget.h
+-deps/libffi/src/m88k/obsd.S
+-deps/libffi/src/metag/ffi.c
+-deps/libffi/src/metag/ffitarget.h
+-deps/libffi/src/metag/sysv.S
+-deps/libffi/src/microblaze/ffi.c
+-deps/libffi/src/microblaze/ffitarget.h
+-deps/libffi/src/microblaze/sysv.S
+-deps/libffi/src/mips/ffi.c
+-deps/libffi/src/mips/ffitarget.h
+-deps/libffi/src/mips/n32.S
+-deps/libffi/src/mips/o32.S
+-deps/libffi/src/moxie/eabi.S
+-deps/libffi/src/moxie/ffi.c
+-deps/libffi/src/moxie/ffitarget.h
+-deps/libffi/src/nios2/ffi.c
+-deps/libffi/src/nios2/ffitarget.h
+-deps/libffi/src/nios2/sysv.S
+-deps/libffi/src/pa/ffi.c
+-deps/libffi/src/pa/ffitarget.h
+-deps/libffi/src/pa/hpux32.S
+-deps/libffi/src/pa/linux.S
+-deps/libffi/src/powerpc/aix.S
+-deps/libffi/src/powerpc/aix_closure.S
+-deps/libffi/src/powerpc/asm.h
+-deps/libffi/src/powerpc/darwin.S
+-deps/libffi/src/powerpc/darwin_closure.S
+-deps/libffi/src/powerpc/ffi.c
+-deps/libffi/src/powerpc/ffi_darwin.c
+-deps/libffi/src/powerpc/ffi_linux64.c
+-deps/libffi/src/powerpc/ffi_powerpc.h
+-deps/libffi/src/powerpc/ffi_sysv.c
+-deps/libffi/src/powerpc/ffitarget.h
+-deps/libffi/src/powerpc/linux64.S
+-deps/libffi/src/powerpc/linux64_closure.S
+-deps/libffi/src/powerpc/ppc_closure.S
+-deps/libffi/src/powerpc/sysv.S
+-deps/libffi/src/prep_cif.c
+-deps/libffi/src/raw_api.c
+-deps/libffi/src/s390/ffi.c
+-deps/libffi/src/s390/ffitarget.h
+-deps/libffi/src/s390/sysv.S
+-deps/libffi/src/sh/ffi.c
+-deps/libffi/src/sh/ffitarget.h
+-deps/libffi/src/sh/sysv.S
+-deps/libffi/src/sh64/ffi.c
+-deps/libffi/src/sh64/ffitarget.h
+-deps/libffi/src/sh64/sysv.S
+-deps/libffi/src/sparc/ffi.c
+-deps/libffi/src/sparc/ffitarget.h
+-deps/libffi/src/sparc/v8.S
+-deps/libffi/src/sparc/v9.S
+-deps/libffi/src/tile/ffi.c
+-deps/libffi/src/tile/ffitarget.h
+-deps/libffi/src/tile/tile.S
+-deps/libffi/src/types.c
+-deps/libffi/src/vax/elfbsd.S
+-deps/libffi/src/vax/ffi.c
+-deps/libffi/src/vax/ffitarget.h
+-deps/libffi/src/x86/darwin.S
+-deps/libffi/src/x86/darwin64.S
+-deps/libffi/src/x86/ffi.c
+-deps/libffi/src/x86/ffi64.c
+-deps/libffi/src/x86/ffitarget.h
+-deps/libffi/src/x86/freebsd.S
+-deps/libffi/src/x86/sysv.S
+-deps/libffi/src/x86/unix64.S
+-deps/libffi/src/x86/win32.S
+-deps/libffi/src/x86/win64.S
+-deps/libffi/src/xtensa/ffi.c
+-deps/libffi/src/xtensa/ffitarget.h
+-deps/libffi/src/xtensa/sysv.S
+-deps/libffi/testsuite/Makefile.in
+-deps/libffi/testsuite/config/default.exp
+-deps/libffi/testsuite/lib/libffi.exp
+-deps/libffi/testsuite/lib/target-libpath.exp
+-deps/libffi/testsuite/lib/wrapper.exp
+-deps/libffi/testsuite/libffi.call/call.exp
+-deps/libffi/testsuite/libffi.call/closure_fn0.c
+-deps/libffi/testsuite/libffi.call/closure_fn1.c
+-deps/libffi/testsuite/libffi.call/closure_fn2.c
+-deps/libffi/testsuite/libffi.call/closure_fn3.c
+-deps/libffi/testsuite/libffi.call/closure_fn4.c
+-deps/libffi/testsuite/libffi.call/closure_fn5.c
+-deps/libffi/testsuite/libffi.call/closure_fn6.c
+-deps/libffi/testsuite/libffi.call/closure_loc_fn0.c
+-deps/libffi/testsuite/libffi.call/closure_stdcall.c
+-deps/libffi/testsuite/libffi.call/closure_thiscall.c
+-deps/libffi/testsuite/libffi.call/cls_12byte.c
+-deps/libffi/testsuite/libffi.call/cls_16byte.c
+-deps/libffi/testsuite/libffi.call/cls_18byte.c
+-deps/libffi/testsuite/libffi.call/cls_19byte.c
+-deps/libffi/testsuite/libffi.call/cls_1_1byte.c
+-deps/libffi/testsuite/libffi.call/cls_20byte.c
+-deps/libffi/testsuite/libffi.call/cls_20byte1.c
+-deps/libffi/testsuite/libffi.call/cls_24byte.c
+-deps/libffi/testsuite/libffi.call/cls_2byte.c
+-deps/libffi/testsuite/libffi.call/cls_3_1byte.c
+-deps/libffi/testsuite/libffi.call/cls_3byte1.c
+-deps/libffi/testsuite/libffi.call/cls_3byte2.c
+-deps/libffi/testsuite/libffi.call/cls_4_1byte.c
+-deps/libffi/testsuite/libffi.call/cls_4byte.c
+-deps/libffi/testsuite/libffi.call/cls_5_1_byte.c
+-deps/libffi/testsuite/libffi.call/cls_5byte.c
+-deps/libffi/testsuite/libffi.call/cls_64byte.c
+-deps/libffi/testsuite/libffi.call/cls_6_1_byte.c
+-deps/libffi/testsuite/libffi.call/cls_6byte.c
+-deps/libffi/testsuite/libffi.call/cls_7_1_byte.c
+-deps/libffi/testsuite/libffi.call/cls_7byte.c
+-deps/libffi/testsuite/libffi.call/cls_8byte.c
+-deps/libffi/testsuite/libffi.call/cls_9byte1.c
+-deps/libffi/testsuite/libffi.call/cls_9byte2.c
+-deps/libffi/testsuite/libffi.call/cls_align_double.c
+-deps/libffi/testsuite/libffi.call/cls_align_float.c
+-deps/libffi/testsuite/libffi.call/cls_align_longdouble.c
+-deps/libffi/testsuite/libffi.call/cls_align_longdouble_split.c
+-deps/libffi/testsuite/libffi.call/cls_align_longdouble_split2.c
+-deps/libffi/testsuite/libffi.call/cls_align_pointer.c
+-deps/libffi/testsuite/libffi.call/cls_align_sint16.c
+-deps/libffi/testsuite/libffi.call/cls_align_sint32.c
+-deps/libffi/testsuite/libffi.call/cls_align_sint64.c
+-deps/libffi/testsuite/libffi.call/cls_align_uint16.c
+-deps/libffi/testsuite/libffi.call/cls_align_uint32.c
+-deps/libffi/testsuite/libffi.call/cls_align_uint64.c
+-deps/libffi/testsuite/libffi.call/cls_dbls_struct.c
+-deps/libffi/testsuite/libffi.call/cls_double.c
+-deps/libffi/testsuite/libffi.call/cls_double_va.c
+-deps/libffi/testsuite/libffi.call/cls_float.c
+-deps/libffi/testsuite/libffi.call/cls_longdouble.c
+-deps/libffi/testsuite/libffi.call/cls_longdouble_va.c
+-deps/libffi/testsuite/libffi.call/cls_multi_schar.c
+-deps/libffi/testsuite/libffi.call/cls_multi_sshort.c
+-deps/libffi/testsuite/libffi.call/cls_multi_sshortchar.c
+-deps/libffi/testsuite/libffi.call/cls_multi_uchar.c
+-deps/libffi/testsuite/libffi.call/cls_multi_ushort.c
+-deps/libffi/testsuite/libffi.call/cls_multi_ushortchar.c
+-deps/libffi/testsuite/libffi.call/cls_pointer.c
+-deps/libffi/testsuite/libffi.call/cls_pointer_stack.c
+-deps/libffi/testsuite/libffi.call/cls_schar.c
+-deps/libffi/testsuite/libffi.call/cls_sint.c
+-deps/libffi/testsuite/libffi.call/cls_sshort.c
+-deps/libffi/testsuite/libffi.call/cls_struct_va1.c
+-deps/libffi/testsuite/libffi.call/cls_uchar.c
+-deps/libffi/testsuite/libffi.call/cls_uchar_va.c
+-deps/libffi/testsuite/libffi.call/cls_uint.c
+-deps/libffi/testsuite/libffi.call/cls_uint_va.c
+-deps/libffi/testsuite/libffi.call/cls_ulong_va.c
+-deps/libffi/testsuite/libffi.call/cls_ulonglong.c
+-deps/libffi/testsuite/libffi.call/cls_ushort.c
+-deps/libffi/testsuite/libffi.call/cls_ushort_va.c
+-deps/libffi/testsuite/libffi.call/err_bad_abi.c
+-deps/libffi/testsuite/libffi.call/err_bad_typedef.c
+-deps/libffi/testsuite/libffi.call/ffitest.h
+-deps/libffi/testsuite/libffi.call/float.c
+-deps/libffi/testsuite/libffi.call/float1.c
+-deps/libffi/testsuite/libffi.call/float2.c
+-deps/libffi/testsuite/libffi.call/float3.c
+-deps/libffi/testsuite/libffi.call/float4.c
+-deps/libffi/testsuite/libffi.call/float_va.c
+-deps/libffi/testsuite/libffi.call/huge_struct.c
+-deps/libffi/testsuite/libffi.call/many.c
+-deps/libffi/testsuite/libffi.call/many2.c
+-deps/libffi/testsuite/libffi.call/negint.c
+-deps/libffi/testsuite/libffi.call/nested_struct.c
+-deps/libffi/testsuite/libffi.call/nested_struct1.c
+-deps/libffi/testsuite/libffi.call/nested_struct10.c
+-deps/libffi/testsuite/libffi.call/nested_struct11.c
+-deps/libffi/testsuite/libffi.call/nested_struct2.c
+-deps/libffi/testsuite/libffi.call/nested_struct3.c
+-deps/libffi/testsuite/libffi.call/nested_struct4.c
+-deps/libffi/testsuite/libffi.call/nested_struct5.c
+-deps/libffi/testsuite/libffi.call/nested_struct6.c
+-deps/libffi/testsuite/libffi.call/nested_struct7.c
+-deps/libffi/testsuite/libffi.call/nested_struct8.c
+-deps/libffi/testsuite/libffi.call/nested_struct9.c
+-deps/libffi/testsuite/libffi.call/problem1.c
+-deps/libffi/testsuite/libffi.call/promotion.c
+-deps/libffi/testsuite/libffi.call/pyobjc-tc.c
+-deps/libffi/testsuite/libffi.call/return_dbl.c
+-deps/libffi/testsuite/libffi.call/return_dbl1.c
+-deps/libffi/testsuite/libffi.call/return_dbl2.c
+-deps/libffi/testsuite/libffi.call/return_fl.c
+-deps/libffi/testsuite/libffi.call/return_fl1.c
+-deps/libffi/testsuite/libffi.call/return_fl2.c
+-deps/libffi/testsuite/libffi.call/return_fl3.c
+-deps/libffi/testsuite/libffi.call/return_ldl.c
+-deps/libffi/testsuite/libffi.call/return_ll.c
+-deps/libffi/testsuite/libffi.call/return_ll1.c
+-deps/libffi/testsuite/libffi.call/return_sc.c
+-deps/libffi/testsuite/libffi.call/return_sl.c
+-deps/libffi/testsuite/libffi.call/return_uc.c
+-deps/libffi/testsuite/libffi.call/return_ul.c
+-deps/libffi/testsuite/libffi.call/stret_large.c
+-deps/libffi/testsuite/libffi.call/stret_large2.c
+-deps/libffi/testsuite/libffi.call/stret_medium.c
+-deps/libffi/testsuite/libffi.call/stret_medium2.c
+-deps/libffi/testsuite/libffi.call/strlen.c
+-deps/libffi/testsuite/libffi.call/strlen2.c
+-deps/libffi/testsuite/libffi.call/strlen3.c
+-deps/libffi/testsuite/libffi.call/strlen4.c
+-deps/libffi/testsuite/libffi.call/struct1.c
+-deps/libffi/testsuite/libffi.call/struct2.c
+-deps/libffi/testsuite/libffi.call/struct3.c
+-deps/libffi/testsuite/libffi.call/struct4.c
+-deps/libffi/testsuite/libffi.call/struct5.c
+-deps/libffi/testsuite/libffi.call/struct6.c
+-deps/libffi/testsuite/libffi.call/struct7.c
+-deps/libffi/testsuite/libffi.call/struct8.c
+-deps/libffi/testsuite/libffi.call/struct9.c
+-deps/libffi/testsuite/libffi.call/testclosure.c
+-deps/libffi/testsuite/libffi.call/uninitialized.c
+-deps/libffi/testsuite/libffi.call/unwindtest.cc
+-deps/libffi/testsuite/libffi.call/unwindtest_ffi_call.cc
+-deps/libffi/testsuite/libffi.call/va_1.c
+-deps/libffi/testsuite/libffi.call/va_struct1.c
+-deps/libffi/testsuite/libffi.call/va_struct2.c
+-deps/libffi/testsuite/libffi.call/va_struct3.c
+-deps/libffi/texinfo.tex
+ deps/math_int64/perl_math_int64.c
+ deps/math_int64/perl_math_int64.h
+ dist.ini
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/perl-FFI-Raw.git/commitdiff/6b6d35f720794b71bbc9052e9faa4e5337c5dfc3



More information about the pld-cvs-commit mailing list