freebsd-ports/mail/p5-Mail-CClient/files/patch-aa
Vanilla I. Shu 8b93872c36 Upgrade to 1.1, Fix library link problem.
Approved by:	maintainer
2001-05-20 02:19:10 +00:00

51 lines
1.8 KiB
Text

--- Makefile.PL.orig Mon Jun 7 19:59:14 1999
+++ Makefile.PL Thu May 10 06:53:52 2001
@@ -1,45 +1,10 @@
use ExtUtils::MakeMaker;
-if (shift(@ARGV) =~ /CCLIENT_DIR=(.*)/) {
- $CCLIENT_DIR = $1;
-} else {
- die "You need to specify the CCLIENT_DIR directory--read README\n";
-}
-
-if (! -r "$CCLIENT_DIR/c-client.a") {
- die "CCLIENT_DIR $CCLIENT_DIR does not contain c-client.a\n";
-}
-#
-# We want to turn Cclient.o (ours) plus the object files in the
-# $CCLIENT_DIR/c-client.a archive into a shared object. Simply
-# including both in the MakeMaker OBJECT list works fine for Linux
-# but under Digital UNIX, the combination of its ar and "ld -shared"
-# can't cope with simply "ar cr tmp.a Cclient.o .../c-client.a".
-# To get around that look at the contents of the c-client.a archive
-# and extract all .o files from it into the current directory. Then
-# we set OBJECT to be our Cclient.o plus all of those. Blech.
-#
-
-print "Examining archive file $CCLIENT_DIR/c-client.a...\n";
-chomp(@contents = `ar t $CCLIENT_DIR/c-client.a`);
-@objects = grep(/\.o$/, @contents);
-print "Extracting object files from archive: ", join(", ", @objects), "\n";
-system("ar", "x", "$CCLIENT_DIR/c-client.a", @objects);
-my $err = $? >> 8;
-if ($err) {
- print "Extraction failed: ar returned exit code $err\n",
- "Please extract them manually into the current directory\n",
- "edit Makefile.PL to remove this section of code and then rerun\n",
- " perl Makefile.PL\n";
- exit 1;
-}
-print "Extraction was apparently successful\n";
-
WriteMakefile(
NAME => "Mail::Cclient",
VERSION_FROM => "Cclient.pm",
- INC => "-I$CCLIENT_DIR",
- LIBS => ["-lc"],
- OBJECT => "Cclient.o @objects"
+ INC => "-I\${PREFIX}/include/c-client",
+ LIBS => "-L\${PREFIX}/lib -lc-client4",
+ OBJECT => "Cclient.o"
);