diff options
author | tobez <tobez@FreeBSD.org> | 2003-09-02 16:55:46 +0800 |
---|---|---|
committer | tobez <tobez@FreeBSD.org> | 2003-09-02 16:55:46 +0800 |
commit | 7b51c6be999de269f51310fa5e3329964e773a0a (patch) | |
tree | a5cf5b6b44a78c0eb2539a7ab61f04e74974b935 /devel/p5-P4-Client | |
parent | 36953d5157984243dd6c21131fe4e70be0e4c7ae (diff) | |
download | freebsd-ports-gnome-7b51c6be999de269f51310fa5e3329964e773a0a.tar.gz freebsd-ports-gnome-7b51c6be999de269f51310fa5e3329964e773a0a.tar.zst freebsd-ports-gnome-7b51c6be999de269f51310fa5e3329964e773a0a.zip |
Add P4::Client, a Perl extension for the Perforce API.
Diffstat (limited to 'devel/p5-P4-Client')
-rw-r--r-- | devel/p5-P4-Client/Makefile | 28 | ||||
-rw-r--r-- | devel/p5-P4-Client/distinfo | 1 | ||||
-rw-r--r-- | devel/p5-P4-Client/files/patch-Client.xs | 11 | ||||
-rw-r--r-- | devel/p5-P4-Client/files/patch-Makefile.PL | 55 | ||||
-rw-r--r-- | devel/p5-P4-Client/pkg-descr | 14 | ||||
-rw-r--r-- | devel/p5-P4-Client/pkg-plist | 10 |
6 files changed, 119 insertions, 0 deletions
diff --git a/devel/p5-P4-Client/Makefile b/devel/p5-P4-Client/Makefile new file mode 100644 index 000000000000..3ce3d8c467c8 --- /dev/null +++ b/devel/p5-P4-Client/Makefile @@ -0,0 +1,28 @@ +# New ports collection makefile for: devel/p5-P4-Client +# Date created: 02 Sep 2003 +# Whom: Anton Berezin <tobez@FreeBSD.org> +# +# $FreeBSD$ +# + +PORTNAME= P4-Client +PORTVERSION= 2.2596 +CATEGORIES= devel perl5 +MASTER_SITES= ${MASTER_SITE_PERL_CPAN} +MASTER_SITE_SUBDIR= P4 +PKGNAMEPREFIX= p5- + +MAINTAINER= tobez@FreeBSD.org +COMMENT= P4::Client - Perl extension for the Perforce API + +BUILD_DEPENDS= ${LOCALBASE}/lib/perforce/libclient.a:${PORTSDIR}/devel/p4api + +PERL_CONFIGURE= yes +CC= ${CXX} + +MAN3= P4::Client.3 P4::UI.3 + +post-patch: + ${PERL} -pi -e 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/Makefile.PL + +.include <bsd.port.mk> diff --git a/devel/p5-P4-Client/distinfo b/devel/p5-P4-Client/distinfo new file mode 100644 index 000000000000..ba2257405e10 --- /dev/null +++ b/devel/p5-P4-Client/distinfo @@ -0,0 +1 @@ +MD5 (P4-Client-2.2596.tar.gz) = b13d457f140363fa31b05cde8c22ddbe diff --git a/devel/p5-P4-Client/files/patch-Client.xs b/devel/p5-P4-Client/files/patch-Client.xs new file mode 100644 index 000000000000..6326f96b0dcb --- /dev/null +++ b/devel/p5-P4-Client/files/patch-Client.xs @@ -0,0 +1,11 @@ +--- ../P4-Client-2.2596/Client.xs Tue Oct 15 16:22:15 2002 ++++ Client.xs Tue Sep 2 09:45:09 2003 +@@ -131,7 +131,7 @@ static int GetFlag( const char *flag, SV + warn( "Can't dereference object!!!" ); + return 0; + } +- tmp = hv_fetch( (HV *)SvRV(obj), flag, strlen( flag ), 0 ); ++ tmp = hv_fetch( (HV *)SvRV(obj), (char *)flag, strlen( flag ), 0 ); + if ( ! tmp ) return 0; + return SvIV( *tmp ); + } diff --git a/devel/p5-P4-Client/files/patch-Makefile.PL b/devel/p5-P4-Client/files/patch-Makefile.PL new file mode 100644 index 000000000000..d2b57a9c06ef --- /dev/null +++ b/devel/p5-P4-Client/files/patch-Makefile.PL @@ -0,0 +1,55 @@ +--- ../P4-Client-2.2596/Makefile.PL Wed Apr 24 17:56:37 2002 ++++ Makefile.PL Tue Sep 2 10:17:51 2003 +@@ -68,14 +68,16 @@ before continuing. + EOF + + # Get the path to the Perforce API +- my $apipath = ""; +- print( "Where is the Perforce API to be found: " ); +- $apipath = <STDIN>; +- $apipath =~ s/\n//; +- +- # Filthy support for ~/ type paths ( NOT ~user/ though! ) +- $apipath =~ s#\~/#$ENV{HOME}/#; +- $apipath = abs_path( $apipath ); ++ my $apiinc = "%%LOCALBASE%%/include/perforce"; ++ my $apilib = "%%LOCALBASE%%/lib/perforce"; ++ # my $apipath = ""; ++ # print( "Where is the Perforce API to be found: " ); ++ # $apipath = <STDIN>; ++ # $apipath =~ s/\n//; ++ ++ # # Filthy support for ~/ type paths ( NOT ~user/ though! ) ++ # $apipath =~ s#\~/#$ENV{HOME}/#; ++ # $apipath = abs_path( $apipath ); + + # These two aren't in the hints file because some variant of them is + # needed on every OS so it's better to have it visible. +@@ -86,15 +88,15 @@ EOF + foreach my $libset (@$libs ) + { + push( @{$flags->{LIBS}}, +- "-L$apipath -lclient -lrpc -lsupp $libset" ); ++ "-L$apilib -lclient -lrpc -lsupp $libset" ); + print("Added P4 libs to $libset\n" ); + } + } + else + { +- push( @{$flags->{LIBS}}, "-L$apipath -lclient -lrpc -lsupp" ); ++ push( @{$flags->{LIBS}}, "-L$apilib -lclient -lrpc -lsupp" ); + } +- $flags->{ 'INC' } = "-I$apipath -Ilib"; ++ $flags->{ 'INC' } = "-I$apiinc -Ilib"; + + + # Last thing to do is to get the address of their perforce +@@ -107,7 +109,7 @@ the tests + + EOF + print( "Enter the address of your Perforce server: [localhost:1666]: "); +- my $p4port = <STDIN>; ++ my $p4port = ""; #<STDIN>; + $p4port =~ s/\n//; + $p4port = "localhost:1666" if ( $p4port =~ /^$/ ); + diff --git a/devel/p5-P4-Client/pkg-descr b/devel/p5-P4-Client/pkg-descr new file mode 100644 index 000000000000..5b2f726260b1 --- /dev/null +++ b/devel/p5-P4-Client/pkg-descr @@ -0,0 +1,14 @@ +This module provides a Perl interface to the Perforce API allowing you +to write Perl scripts which communicate directly with a Perforce server. + +P4::Client is the main interface through which all commands are issued. +The Perforce API is callback based though, and all interaction with the +user interface takes place through callbacks to methods of the P4::UI +object passed to the Run() method. + +To customise the behaviour of the Perforce client, you should derive +your own class from P4::UI and override the relevant methods therein. + +WWW: http://public.perforce.com//guest/tony_smith/perforce/API/Perl/index.html + +\Anton diff --git a/devel/p5-P4-Client/pkg-plist b/devel/p5-P4-Client/pkg-plist new file mode 100644 index 000000000000..ce94d273339c --- /dev/null +++ b/devel/p5-P4-Client/pkg-plist @@ -0,0 +1,10 @@ +%%SITE_PERL%%/%%PERL_ARCH%%/P4/Client.pm +%%SITE_PERL%%/%%PERL_ARCH%%/P4/UI.pm +%%SITE_PERL%%/%%PERL_ARCH%%/P4/example.pl +%%SITE_PERL%%/%%PERL_ARCH%%/auto/P4/Client/.packlist +%%SITE_PERL%%/%%PERL_ARCH%%/auto/P4/Client/Client.bs +%%SITE_PERL%%/%%PERL_ARCH%%/auto/P4/Client/Client.so +%%SITE_PERL%%/%%PERL_ARCH%%/auto/P4/Client/autosplit.ix +@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/P4/Client +@unexec rmdir %%SITE_PERL%%/%%PERL_ARCH%%/auto/P4 2>/dev/null || true +@unexec rmdir %%SITE_PERL%%/%%PERL_ARCH%%/P4 2>/dev/null || true |