Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 20 Feb 2018 20:24:47 +0000 (UTC)
From:      Sunpoet Po-Chuan Hsieh <sunpoet@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r462426 - in head/devel: . p5-FFI-Platypus p5-FFI-Platypus/files
Message-ID:  <201802202024.w1KKOlcv049692@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: sunpoet
Date: Tue Feb 20 20:24:47 2018
New Revision: 462426
URL: https://svnweb.freebsd.org/changeset/ports/462426

Log:
  Add p5-FFI-Platypus 0.47
  
  Platypus is a library for creating interfaces to machine code libraries written
  in languages like C, C++, Fortran, Rust, Pascal. Essentially anything that gets
  compiled into machine code. This implementation uses libffi to accomplish this
  task. libffi is battle tested by a number of other scripting and virtual machine
  languages, such as Python and Ruby to serve a similar role.
  
  WWW: http://search.cpan.org/dist/FFI-Platypus/

Added:
  head/devel/p5-FFI-Platypus/
  head/devel/p5-FFI-Platypus/Makefile   (contents, props changed)
  head/devel/p5-FFI-Platypus/distinfo   (contents, props changed)
  head/devel/p5-FFI-Platypus/files/
  head/devel/p5-FFI-Platypus/files/patch-inc-My-ModuleBuild.pm   (contents, props changed)
  head/devel/p5-FFI-Platypus/pkg-descr   (contents, props changed)
  head/devel/p5-FFI-Platypus/pkg-plist   (contents, props changed)
Modified:
  head/devel/Makefile

Modified: head/devel/Makefile
==============================================================================
--- head/devel/Makefile	Tue Feb 20 20:24:19 2018	(r462425)
+++ head/devel/Makefile	Tue Feb 20 20:24:47 2018	(r462426)
@@ -2497,6 +2497,7 @@
     SUBDIR += p5-ExtUtils-XSBuilder
     SUBDIR += p5-ExtUtils-XSpp
     SUBDIR += p5-FFI-CheckLib
+    SUBDIR += p5-FFI-Platypus
     SUBDIR += p5-FSA-Rules
     SUBDIR += p5-Fennec-Lite
     SUBDIR += p5-File-Append-TempFile

Added: head/devel/p5-FFI-Platypus/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/p5-FFI-Platypus/Makefile	Tue Feb 20 20:24:47 2018	(r462426)
@@ -0,0 +1,32 @@
+# Created by: Po-Chuan Hsieh <sunpoet@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME=	FFI-Platypus
+PORTVERSION=	0.47
+CATEGORIES=	devel perl5
+MASTER_SITES=	CPAN
+PKGNAMEPREFIX=	p5-
+
+MAINTAINER=	sunpoet@FreeBSD.org
+COMMENT=	Write Perl bindings to non-Perl libraries with FFI
+
+LICENSE=	ART10 GPLv1+
+LICENSE_COMB=	dual
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	p5-Config-AutoConf>=0.309:devel/p5-Config-AutoConf \
+		p5-FFI-CheckLib>=0.05:devel/p5-FFI-CheckLib \
+		p5-File-ShareDir>=0:devel/p5-File-ShareDir
+LIB_DEPENDS=	libffi.so:devel/libffi
+RUN_DEPENDS=	p5-FFI-CheckLib>=0.05:devel/p5-FFI-CheckLib \
+		p5-File-ShareDir>=0:devel/p5-File-ShareDir
+
+MAKE_ARGS=	extra_compiler_flags="-I${LOCALBASE}/include" \
+		extra_linker_flags="-L${LOCALBASE}/lib -lffi"
+USE_PERL5=	modbuild
+USES=		localbase perl5
+
+post-install:
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}/auto/FFI/Platypus/Platypus.so
+
+.include <bsd.port.mk>

Added: head/devel/p5-FFI-Platypus/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/p5-FFI-Platypus/distinfo	Tue Feb 20 20:24:47 2018	(r462426)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1519142077
+SHA256 (FFI-Platypus-0.47.tar.gz) = d41560cdd6604e71bf74dd424131225c66e873ced2cabdce98f7470b1af84a90
+SIZE (FFI-Platypus-0.47.tar.gz) = 199520

Added: head/devel/p5-FFI-Platypus/files/patch-inc-My-ModuleBuild.pm
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/p5-FFI-Platypus/files/patch-inc-My-ModuleBuild.pm	Tue Feb 20 20:24:47 2018	(r462426)
@@ -0,0 +1,35 @@
+--- inc/My/ModuleBuild.pm.orig	2017-03-23 22:26:13 UTC
++++ inc/My/ModuleBuild.pm
+@@ -3,7 +3,6 @@ package My::ModuleBuild;
+ use strict;
+ use warnings;
+ use 5.008001;
+-use Alien::FFI;
+ use My::LibTest;
+ use My::AutoConf;
+ use My::Dev;
+@@ -23,8 +22,6 @@ sub new
+ 
+   $args{c_source}             = 'xs';  
+   $args{include_dirs}         = 'include';
+-  $args{extra_compiler_flags} = Alien::FFI->cflags;
+-  $args{extra_linker_flags}   = Alien::FFI->libs;
+   $args{requires}->{'Math::Int64'} = '0.34' if $ENV{FFI_PLATYPUS_DEBUG_FAKE32} || $Config{uvsize} < 8;
+ 
+   if($^O eq 'MSWin32' && $Config{cc} =~ /cl(\.exe)?$/i)
+@@ -94,15 +91,6 @@ sub new
+     $ccflags = "@ccflags";
+   }
+ 
+-  # on some configurations (eg. Solaris 64 bit, Strawberry Perl)
+-  # -L flags are included in the lddlflags configuration, but we
+-  # need to make sure OUR -L comes first
+-  my @libdirflags = grep /^-L/, shellwords(Alien::FFI->libs);
+-  if(@libdirflags)
+-  {
+-    $lddlflags = join ' ', @libdirflags, $lddlflags;
+-  }
+-  
+   if($^O eq 'MSWin32')
+   {
+     # needed by My/Probe.pm on any MSWin32 platform

Added: head/devel/p5-FFI-Platypus/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/p5-FFI-Platypus/pkg-descr	Tue Feb 20 20:24:47 2018	(r462426)
@@ -0,0 +1,7 @@
+Platypus is a library for creating interfaces to machine code libraries written
+in languages like C, C++, Fortran, Rust, Pascal. Essentially anything that gets
+compiled into machine code. This implementation uses libffi to accomplish this
+task. libffi is battle tested by a number of other scripting and virtual machine
+languages, such as Python and Ruby to serve a similar role.
+
+WWW: http://search.cpan.org/dist/FFI-Platypus/

Added: head/devel/p5-FFI-Platypus/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/p5-FFI-Platypus/pkg-plist	Tue Feb 20 20:24:47 2018	(r462426)
@@ -0,0 +1,31 @@
+%%SITE_ARCH%%/FFI/Platypus.pm
+%%SITE_ARCH%%/FFI/Platypus/API.pm
+%%SITE_ARCH%%/FFI/Platypus/Buffer.pm
+%%SITE_ARCH%%/FFI/Platypus/Declare.pm
+%%SITE_ARCH%%/FFI/Platypus/Lang/ASM.pm
+%%SITE_ARCH%%/FFI/Platypus/Lang/C.pm
+%%SITE_ARCH%%/FFI/Platypus/Lang/Win32.pm
+%%SITE_ARCH%%/FFI/Platypus/Memory.pm
+%%SITE_ARCH%%/FFI/Platypus/Record.pm
+%%SITE_ARCH%%/FFI/Platypus/Record/TieArray.pm
+%%SITE_ARCH%%/FFI/Platypus/ShareConfig.pm
+%%SITE_ARCH%%/FFI/Platypus/Type.pod
+%%SITE_ARCH%%/FFI/Platypus/Type/PointerSizeBuffer.pm
+%%SITE_ARCH%%/FFI/Platypus/Type/StringPointer.pm
+%%SITE_ARCH%%/auto/FFI/Platypus/Platypus.so
+%%SITE_ARCH%%/auto/share/dist/FFI-Platypus/README.txt
+%%SITE_ARCH%%/auto/share/dist/FFI-Platypus/config.json
+%%PERL5_MAN3%%/FFI::Platypus.3.gz
+%%PERL5_MAN3%%/FFI::Platypus::API.3.gz
+%%PERL5_MAN3%%/FFI::Platypus::Buffer.3.gz
+%%PERL5_MAN3%%/FFI::Platypus::Declare.3.gz
+%%PERL5_MAN3%%/FFI::Platypus::Lang::ASM.3.gz
+%%PERL5_MAN3%%/FFI::Platypus::Lang::C.3.gz
+%%PERL5_MAN3%%/FFI::Platypus::Lang::Win32.3.gz
+%%PERL5_MAN3%%/FFI::Platypus::Memory.3.gz
+%%PERL5_MAN3%%/FFI::Platypus::Record.3.gz
+%%PERL5_MAN3%%/FFI::Platypus::Record::TieArray.3.gz
+%%PERL5_MAN3%%/FFI::Platypus::ShareConfig.3.gz
+%%PERL5_MAN3%%/FFI::Platypus::Type.3.gz
+%%PERL5_MAN3%%/FFI::Platypus::Type::PointerSizeBuffer.3.gz
+%%PERL5_MAN3%%/FFI::Platypus::Type::StringPointer.3.gz



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201802202024.w1KKOlcv049692>