README #1

  • //
  • guest/
  • tony_smith/
  • perforce/
  • API/
  • Perl/
  • P4-Client/
  • README
  • View
  • Commits
  • Open Download .zip Download (1 KB)
			README
			======

This extension implements an object-oriented Perl interface to the Perforce
SCM System using the API supplied by Perforce software. It's a straight
port of the Perforce API so not very Perl-like. The P4 module (also available
from the Perforce public depot under //guest/tony_smith/perforce/API/P4/...
provides a much more perl-like wrapper on top of this interface. Most people
will want to install that too.

You must download and install the API before you can build this extension.

Get yer API from ftp://ftp.perforce.com/pub/perforce/rNN.n/bin.XXXXXX

Where NN.n is the release number ( currently 00.2 ) and XXXXX is your
platform.


Build as usual:

	perl Makefile.PL
	make
	make test
	make install

If you have problems, see the PORTING file for likely reasons and what
you should do about it.

The file example.pl has a simple example of how to use the modules to
get you started.

NOTE FOR LINUX USERS
--------------------

Users of recent Linux distributions who are using the linux52x86/p4api.tar 
from the Perforce FTP site may get "undefined symbol __eh_pc" when running
"make test".  The problem is caused by changes in the gcc compiler made 
since the version shipped with Red Hat 5.2 which is used for Perforce builds.

If you get this problem, you should use the following API build instead:

	ftp://ftp.perforce.com/pub/perforce/r00.1/bin.linux60x86/p4api.tar
# Change User Description Committed
#1 1011 Tony Smith Moved Perl API stuff one level down to make way for upcoming
Ruby interface.
//guest/tony_smith/perforce/API/P4-Client/README
#4 929 Tony Smith Add support for form parsing to Perl API.
Allows Perforce
specs (change, client, user etc.) to be parsed by the API
and returned as Perl hashes rather than strings which must
be parsed by the user.

P4 module also has some new methods which make it easy to use
this feature. Sample code:

-------------------
use P4;

my $p4 = new P4;
$p4->ParseForms();
$p4->Init() or die( "Can't connect to Perforce" );

$p4->Edit( "filename" );
my $change = p4->GetChange();
$change->{ 'Description' } = "Some text";
$p4->SubmitSpec( $change );
print( $p4->ErrorCount() ? "Submit failed\n" : "Submit OK\n" );
-------------------
#3 638 Tony Smith Add a note on the __eh_pc problem to the README file
#2 576 Tony Smith Add an example script showing how to use the Perl API.
#1 549 Tony Smith Renamed the working directory to P4-Client as I've discovered
that MakeMaker is quite happy with that and doesn't require a
version number in the directory name.
//guest/tony_smith/perforce/API/P4-Client-0.51/README
#1 527 Tony Smith Release P4::Client version 0.51 with Win32 support
//guest/tony_smith/perforce/API/P4-Client-0.50/README
#2 511 Tony Smith Completed the process of renaming P4::ClientApi to P4::Client
#1 509 Tony Smith Renamed P4::ClientApi to P4::Client as it's more friendly and
that's what it's called on CPAN.  Subsequent changes include
the actual renaming inside the code, this just creates the
branch
//guest/tony_smith/perforce/API/P4-ClientApi-0.05/README
#1 501 Tony Smith First publicly released version of the Perl interface to the
Perforce API.