Files
nixpkgs/pkgs/development/perl-modules/generic/builder.sh
T

48 lines
1.2 KiB
Bash
Raw Normal View History

2005-12-05 14:11:09 +00:00
source $stdenv/setup
2005-01-22 00:19:27 +00:00
2009-04-22 23:04:18 +00:00
PERL5LIB="$PERL5LIB${PERL5LIB:+:}$out/lib/perl5/site_perl"
2005-01-22 00:19:27 +00:00
perlFlags=
2009-02-12 15:56:35 +00:00
for i in $(IFS=:; echo $PERL5LIB); do
2005-01-22 00:19:27 +00:00
perlFlags="$perlFlags -I$i"
done
2008-10-20 03:58:49 +00:00
oldPreConfigure="$preConfigure"
2005-01-22 00:19:27 +00:00
preConfigure() {
2008-10-20 03:58:49 +00:00
eval "$oldPreConfigure"
2005-01-22 00:19:27 +00:00
find . | while read fn; do
if test -f "$fn"; then
first=$(dd if="$fn" count=2 bs=1 2> /dev/null)
if test "$first" = "#!"; then
echo "patching $fn..."
sed -i "$fn" -e "s|^#\!\(.*[ /]perl.*\)$|#\!\1$perlFlags|"
2005-01-22 00:19:27 +00:00
fi
fi
done
2018-03-20 08:43:21 -04:00
perl Makefile.PL PREFIX=$out INSTALLDIRS=site $makeMakerFlags PERL=$(type -P perl) FULLPERL=\"$perl/bin/perl\"
2005-01-22 00:19:27 +00:00
}
postFixup() {
# If a user installs a Perl package, she probably also wants its
# dependencies in the user environment (since Perl modules don't
# have something like an RPATH, so the only way to find the
# dependencies is to have them in the PERL5LIB variable).
if test -e $out/nix-support/propagated-build-inputs; then
ln -s $out/nix-support/propagated-build-inputs $out/nix-support/propagated-user-env-packages
fi
}
if test -n "$perlPreHook"; then
eval "$perlPreHook"
fi
2005-01-22 00:19:27 +00:00
genericBuild
if test -n "$perlPostHook"; then
eval "$perlPostHook"
2005-12-05 14:11:09 +00:00
fi