Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 10 Jan 2002 21:05:32 +0000
From:      Peter Lowe <pgl@plig.net>
To:        ports@freebsd.org
Subject:   MakeMaker not creating a full Makefile with PERL_CONFIGURE
Message-ID:  <20020110210532.A21052@plig.net>

next in thread | raw e-mail | index | archive | help
Hello,

I'm trying to create My First Port, and am a bit stuck. I've followed the
instructions in the Porter's Handbook, and I think I'm almost finished
(portlint tells me everything looks ok), except for some strange behaviour
when trying to build. The port is for an irc stats generator called pisg,
which is written in perl and doesn't really need any compilation as such,
more just copying to the right place in the perl modules tree. This only
really involves creating a Makefile.PL for MakeMaker and doing a "make
install".

The tarball isn't really any standard format and doesn't include a
Makefile.PL of its own, so I put a post-extract script in scripts/ to
create something that should work OK:

--8<--

[mini:pgl]:~/public_html/pisg/port $ cat scripts/post-extract 
#!/bin/sh

cd $WRKSRC

cat <<EOMAKEFILE>>Makefile.PL
use ExtUtils::MakeMaker;
WriteMakefile(
        NAME    => 'Pisg',
        VERSION => '0.34',
        );
EOMAKEFILE

ln -s modules lib
mv pisg.pl pisg

--8<--

Now, if I try and make install, this happens:

--8<--

[mini:root]:/home/pgl/public_html/pisg/port # make clean; 
===>  Cleaning for pisg-0.34
make[mini:root]:/home/pgl/public_html/pisg/port # make 
===>  Extracting for pisg-0.34
>> Checksum OK for pisg-0.34.tar.gz.
===>  Patching for pisg-0.34
===>  Configuring for pisg-0.34
Writing Makefile for Pisg
===>  Building for pisg-0.34
mkdir blib
mkdir blib/lib
mkdir blib/arch
mkdir blib/arch/auto
mkdir blib/arch/auto/Pisg
mkdir blib/lib/auto/Pisg

--8<--

Which shouldn't happen - MakeMaker should generate a bigger list of files
for installation. It behaves correctly if I create the Makefile manually,
however:

--8<--

[ after uninstalling the files and doing a "make clean", but leaving the
  rename of pisg.pl -> pisg and the symlink of modules/ -> lib/ ]

[mini:root]:/home/pgl/public_html/pisg/port/work/pisg-0.34 # cat <<EOMAKEFILE>>M
akefile.PL
> use ExtUtils::MakeMaker;
> WriteMakefile(
>         NAME    => 'Pisg',
>         VERSION => '0.34',
>         );
> EOMAKEFILE
[mini:root]:/home/pgl/public_html/pisg/port/work/pisg-0.34 # perl Makefile.PL
Writing Makefile for Pisg
Writing Makefile for Pisg
[mini:root]:/home/pgl/public_html/pisg/port/work/pisg-0.34 # make
cp lib/Pisg.pm blib/lib/Pisg.pm
cp lib/Pisg/Parser/Format/axur.pm blib/lib/Pisg/Parser/Format/axur.pm
cp lib/Pisg/Parser/Format/zcbot.pm blib/lib/Pisg/Parser/Format/zcbot.pm
cp lib/Pisg/Parser/Format/grufti.pm blib/lib/Pisg/Parser/Format/grufti.pm
... etc...

--8<--

Why does it work if I do it manually, but not with the port?

regards,

Peter Lowe.

-- 
This is not the signature you are looking for. Move along.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




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