diff options
author | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2005-03-10 12:49:37 +0000 |
---|---|---|
committer | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2005-03-10 12:49:37 +0000 |
commit | 8a282aa46c1671252adc0c19ac40d453f743ff7d (patch) | |
tree | d90e10b042b22de4661a92d0bf436f8d3fc6a180 /pkgs | |
parent | 93e16516a7211cf8123bfc968d9db71163381896 (diff) | |
download | nixpkgs-8a282aa46c1671252adc0c19ac40d453f743ff7d.tar nixpkgs-8a282aa46c1671252adc0c19ac40d453f743ff7d.tar.gz nixpkgs-8a282aa46c1671252adc0c19ac40d453f743ff7d.tar.bz2 nixpkgs-8a282aa46c1671252adc0c19ac40d453f743ff7d.tar.lz nixpkgs-8a282aa46c1671252adc0c19ac40d453f743ff7d.tar.xz nixpkgs-8a282aa46c1671252adc0c19ac40d453f743ff7d.tar.zst nixpkgs-8a282aa46c1671252adc0c19ac40d453f743ff7d.zip |
* Set PERL5LIB automatically in the Perl setup hook.
* Remove explicit setting of PERL5LIB. * Use the generic Perl builder for the BerkeleyDB and XML::Parser modules. * Prefix all names of Perl modules with `perl-' (in the generic Perl builder). svn path=/nixpkgs/trunk/; revision=2365
Diffstat (limited to 'pkgs')
33 files changed, 91 insertions, 138 deletions
diff --git a/pkgs/applications/editors/monodevelop/builder.sh b/pkgs/applications/editors/monodevelop/builder.sh index eb42bc54f4c..930cc475aa8 100644 --- a/pkgs/applications/editors/monodevelop/builder.sh +++ b/pkgs/applications/editors/monodevelop/builder.sh @@ -1,8 +1,6 @@ . $stdenv/setup . $makeWrapper -export PERL5LIB=$perlXMLParser/lib/site_perl:$PERL5LIB - export MONO_GAC_PREFIX=$monodoc:$gtksharp postInstall=postInstall diff --git a/pkgs/applications/editors/monodevelop/default.nix b/pkgs/applications/editors/monodevelop/default.nix index 63a996e1972..c7400b5cf43 100644 --- a/pkgs/applications/editors/monodevelop/default.nix +++ b/pkgs/applications/editors/monodevelop/default.nix @@ -19,11 +19,10 @@ stdenv.mkDerivation { patches = [./prefix.patch]; buildInputs = [ - file mono gtksharp gtksourceviewsharp perl pkgconfig + file mono gtksharp gtksourceviewsharp perl perlXMLParser pkgconfig glib gtk gconf gnomevfs libbonobo libglade libgnome gtkmozembedsharp monodoc ]; - inherit perlXMLParser mozilla monodoc - gtksharp gtkmozembedsharp gtksourceviewsharp; + inherit mozilla monodoc gtksharp gtkmozembedsharp gtksourceviewsharp; } diff --git a/pkgs/applications/video/zapping/builder.sh b/pkgs/applications/video/zapping/builder.sh index 6b4790788d3..3114f86eda3 100644 --- a/pkgs/applications/video/zapping/builder.sh +++ b/pkgs/applications/video/zapping/builder.sh @@ -1,7 +1,5 @@ . $stdenv/setup -export PERL5LIB=$perlXMLParser/lib/site_perl:$PERL5LIB - # !!! hack NIX_LDFLAGS="$NIX_LDFLAGS -rpath $libXext/lib" diff --git a/pkgs/applications/video/zapping/default.nix b/pkgs/applications/video/zapping/default.nix index e5e68d6d557..e704d7ff7ee 100644 --- a/pkgs/applications/video/zapping/default.nix +++ b/pkgs/applications/video/zapping/default.nix @@ -29,10 +29,10 @@ stdenv.mkDerivation { md5 = "dd7b3d920509709692c41c9c6c767746"; }; - inherit teletextSupport jpegSupport pngSupport libXext perlXMLParser; + inherit teletextSupport jpegSupport pngSupport libXext; buildInputs = [ - pkgconfig perl python x11 libXv libXmu libgnomeui + pkgconfig perl perlXMLParser python x11 libXv libXmu libgnomeui libglade scrollkeeper esound gettext (if teletextSupport then zvbi else null) (if jpegSupport then libjpeg else null) diff --git a/pkgs/development/interpreters/perl/builder.sh b/pkgs/development/interpreters/perl/builder.sh index ba84d8a254b..a4756197b79 100644 --- a/pkgs/development/interpreters/perl/builder.sh +++ b/pkgs/development/interpreters/perl/builder.sh @@ -9,4 +9,10 @@ configureScript=./Configure configureFlags="-de -Dcc=gcc -Dprefix=$out -Uinstallusrbinperl $extraflags" dontAddPrefix=1 +postInstall() { + ensureDir "$out/nix-support" + cp $setupHook $out/nix-support/setup-hook +} +postInstall=postInstall + genericBuild \ No newline at end of file diff --git a/pkgs/development/interpreters/perl/default.nix b/pkgs/development/interpreters/perl/default.nix index 800430d216f..93e6d71614c 100644 --- a/pkgs/development/interpreters/perl/default.nix +++ b/pkgs/development/interpreters/perl/default.nix @@ -1,12 +1,12 @@ {stdenv, fetchurl}: stdenv.mkDerivation { - name = "perl-5.8.5"; + name = "perl-5.8.6"; builder = ./builder.sh; src = fetchurl { - url = ftp://ftp.cs.uu.nl/mirror/CPAN/src/5.0/perl-5.8.5.tar.gz; - md5 = "49baa8d7d29b4a9713c06edeb81e6b1b"; + url = ftp://ftp.cpan.org/pub/CPAN/src/5.0/perl-5.8.6.tar.bz2; + md5 = "3d030b6ff2a433840edb1a407d18dc0a"; }; # This patch does the following: @@ -16,4 +16,6 @@ stdenv.mkDerivation { # 2) Force the use of <errno.h>, not /usr/include/errno.h, on Linux # systems. (This actually appears to be due to a bug in Perl.) patches = [./no-sys-dirs.patch]; + + setupHook = ./setup-hook.sh; } diff --git a/pkgs/development/interpreters/perl/no-sys-dirs.patch b/pkgs/development/interpreters/perl/no-sys-dirs.patch index e563ba94884..76cd82e697a 100644 --- a/pkgs/development/interpreters/perl/no-sys-dirs.patch +++ b/pkgs/development/interpreters/perl/no-sys-dirs.patch @@ -1,6 +1,6 @@ -diff -rc perl-orig/Configure perl-5.8.5/Configure -*** perl-orig/Configure 2004-05-12 13:00:41.000000000 +0200 ---- perl-5.8.5/Configure 2004-10-04 12:38:29.000000000 +0200 +diff -rc perl-orig/Configure perl-5.8.6/Configure +*** perl-orig/Configure 2004-09-10 08:25:52.000000000 +0200 +--- perl-5.8.6/Configure 2005-03-10 12:53:28.000000000 +0100 *************** *** 86,100 **** fi @@ -11,7 +11,7 @@ diff -rc perl-orig/Configure perl-5.8.5/Configure ! paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin" ! paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin" ! paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb" -! paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /usr/ccs/bin" +! paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /opt/ansic/bin /usr/ccs/bin" ! paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib" ! paths="$paths /sbin /usr/sbin /usr/libexec" ! paths="$paths /system/gnu_library/bin" @@ -97,7 +97,7 @@ diff -rc perl-orig/Configure perl-5.8.5/Configure case "$xxx" in --- 2252,2257 ---- *************** -*** 7908,7920 **** +*** 7910,7922 **** echo " " case "$sysman" in '') @@ -111,7 +111,7 @@ diff -rc perl-orig/Configure perl-5.8.5/Configure ;; esac if $test -d "$sysman"; then ---- 7892,7899 ---- +--- 7894,7901 ---- echo " " case "$sysman" in '') @@ -121,7 +121,7 @@ diff -rc perl-orig/Configure perl-5.8.5/Configure esac if $test -d "$sysman"; then *************** -*** 17947,17955 **** +*** 17949,17957 **** case "$full_ar" in '') full_ar=$ar ;; esac @@ -131,7 +131,7 @@ diff -rc perl-orig/Configure perl-5.8.5/Configure : see what type gids are declared as in the kernel echo " " ---- 17926,17935 ---- +--- 17928,17937 ---- case "$full_ar" in '') full_ar=$ar ;; esac @@ -142,9 +142,9 @@ diff -rc perl-orig/Configure perl-5.8.5/Configure : see what type gids are declared as in the kernel echo " " -diff -rc perl-orig/ext/Errno/Errno_pm.PL perl-5.8.5/ext/Errno/Errno_pm.PL -*** perl-orig/ext/Errno/Errno_pm.PL 2004-03-31 00:01:25.000000000 +0200 ---- perl-5.8.5/ext/Errno/Errno_pm.PL 2004-10-04 10:53:59.000000000 +0200 +diff -rc perl-orig/ext/Errno/Errno_pm.PL perl-5.8.6/ext/Errno/Errno_pm.PL +*** perl-orig/ext/Errno/Errno_pm.PL 2004-11-01 15:31:59.000000000 +0100 +--- perl-5.8.6/ext/Errno/Errno_pm.PL 2005-03-10 12:52:31.000000000 +0100 *************** *** 105,111 **** # Watch out for cross compiling for EPOC (usually done on linux) @@ -162,9 +162,9 @@ diff -rc perl-orig/ext/Errno/Errno_pm.PL perl-5.8.5/ext/Errno/Errno_pm.PL ) { # Some Linuxes have weird errno.hs which generate # no #file or #line directives -diff -rc perl-orig/lib/Cwd.pm perl-5.8.5/lib/Cwd.pm -*** perl-orig/lib/Cwd.pm 2004-07-15 18:49:22.000000000 +0200 ---- perl-5.8.5/lib/Cwd.pm 2004-10-04 10:53:59.000000000 +0200 +diff -rc perl-orig/lib/Cwd.pm perl-5.8.6/lib/Cwd.pm +*** perl-orig/lib/Cwd.pm 2004-11-01 16:42:41.000000000 +0100 +--- perl-5.8.6/lib/Cwd.pm 2005-03-10 12:52:31.000000000 +0100 *************** *** 292,298 **** diff --git a/pkgs/development/interpreters/perl/setup-hook.sh b/pkgs/development/interpreters/perl/setup-hook.sh new file mode 100644 index 00000000000..1f05581df97 --- /dev/null +++ b/pkgs/development/interpreters/perl/setup-hook.sh @@ -0,0 +1,7 @@ +addPerlLibPath () { + if test -d $1/lib/site_perl; then + export PERL5LIB="${PERL5LIB}${PERL5LIB:+:}$1/lib/site_perl" + fi +} + +envHooks=(${envHooks[@]} addPerlLibPath) diff --git a/pkgs/development/libraries/gnome/gnome-desktop/default.nix b/pkgs/development/libraries/gnome/gnome-desktop/default.nix index 36df72311b2..ecd575cfd3d 100644 --- a/pkgs/development/libraries/gnome/gnome-desktop/default.nix +++ b/pkgs/development/libraries/gnome/gnome-desktop/default.nix @@ -4,6 +4,5 @@ stdenv.mkDerivation { inherit (input) name src; - buildInputs = [pkgconfig perl gtk glib libgnomeui scrollkeeper libjpeg]; - PERL5LIB = perlXMLParser ~ "/lib/site_perl"; # !!! + buildInputs = [pkgconfig perl perlXMLParser gtk glib libgnomeui scrollkeeper libjpeg]; } diff --git a/pkgs/development/libraries/gnome/gnome-icon-theme/default.nix b/pkgs/development/libraries/gnome/gnome-icon-theme/default.nix index b96da831b84..b043a122562 100644 --- a/pkgs/development/libraries/gnome/gnome-icon-theme/default.nix +++ b/pkgs/development/libraries/gnome/gnome-icon-theme/default.nix @@ -8,6 +8,4 @@ stdenv.mkDerivation { # TODO: maybe this package as dependency on gnome-themes? configureFlags = "--disable-hicolor-check"; - - PERL5LIB = perlXMLParser ~ "/lib/site_perl"; } diff --git a/pkgs/development/libraries/gnome/gnome-mime-data/default.nix b/pkgs/development/libraries/gnome/gnome-mime-data/default.nix index 1b423283e13..90012a62075 100644 --- a/pkgs/development/libraries/gnome/gnome-mime-data/default.nix +++ b/pkgs/development/libraries/gnome/gnome-mime-data/default.nix @@ -5,7 +5,4 @@ assert pkgconfig != null && perl != null; stdenv.mkDerivation { inherit (input) name src; buildInputs = [pkgconfig perl perlXMLParser]; - - PERL5LIB = perlXMLParser ~ "/lib/site_perl"; } - diff --git a/pkgs/development/libraries/gnome/gnome-panel/default.nix b/pkgs/development/libraries/gnome/gnome-panel/default.nix index bb7cf542275..49ef9203f31 100644 --- a/pkgs/development/libraries/gnome/gnome-panel/default.nix +++ b/pkgs/development/libraries/gnome/gnome-panel/default.nix @@ -6,9 +6,8 @@ stdenv.mkDerivation { inherit (input) name src; buildInputs = [ - pkgconfig perl gtk glib ORBit2 libgnome libgnomeui + pkgconfig perl perlXMLParser gtk glib ORBit2 libgnome libgnomeui gnomedesktop libglade libwnck libjpeg libpng scrollkeeper libXmu ]; - PERL5LIB = perlXMLParser ~ "/lib/site_perl"; # !!! } diff --git a/pkgs/development/libraries/gnome/gnome-vfs/default.nix b/pkgs/development/libraries/gnome/gnome-vfs/default.nix index 831a2e663cd..7ef197e0051 100644 --- a/pkgs/development/libraries/gnome/gnome-vfs/default.nix +++ b/pkgs/development/libraries/gnome/gnome-vfs/default.nix @@ -11,6 +11,5 @@ stdenv.mkDerivation { pkgconfig perl glib libxml2 gconf libbonobo gnomemimedata popt bzip2 perlXMLParser ]; - PERL5LIB = perlXMLParser ~ "/lib/site_perl"; patches = [./no-kerberos.patch]; } diff --git a/pkgs/development/libraries/gnome/gtkhtml/default.nix b/pkgs/development/libraries/gnome/gtkhtml/default.nix index 0ec09f86c24..f11e847b1be 100644 --- a/pkgs/development/libraries/gnome/gtkhtml/default.nix +++ b/pkgs/development/libraries/gnome/gtkhtml/default.nix @@ -3,26 +3,14 @@ # TODO build complains about missing libsoup and soup. Optional dependency? -assert - null != pkgconfig - && null != perl - && null != perlXMLParser - && null != pkgconfig - && null != atk - && null != gail - && null != gtk - ; - stdenv.mkDerivation { inherit (input) name src; buildInputs = [ - perl perlXMLParser pkgconfig libjpeg - atk gail gtk - libglade libgnomeprint libgnomeprintui libgnomeui - gnomeicontheme - ]; - - PERL5LIB = perlXMLParser ~ "/lib/site_perl"; + perl perlXMLParser pkgconfig libjpeg + atk gail gtk + libglade libgnomeprint libgnomeprintui libgnomeui + gnomeicontheme + ]; } diff --git a/pkgs/development/libraries/gnome/gtksourceview/default.nix b/pkgs/development/libraries/gnome/gtksourceview/default.nix index 978a63ed7a1..3b138077528 100644 --- a/pkgs/development/libraries/gnome/gtksourceview/default.nix +++ b/pkgs/development/libraries/gnome/gtksourceview/default.nix @@ -10,5 +10,4 @@ stdenv.mkDerivation { libbonobo gconf libgnomeprintui libgnomecanvas ]; propagatedBuildInputs = [gtk libxml2 libgnomeprint]; - PERL5LIB = perlXMLParser ~ "/lib/site_perl"; # !!! } diff --git a/pkgs/development/libraries/gnome/intltool/default.nix b/pkgs/development/libraries/gnome/intltool/default.nix index c7be6593c07..8807f7ab897 100644 --- a/pkgs/development/libraries/gnome/intltool/default.nix +++ b/pkgs/development/libraries/gnome/intltool/default.nix @@ -3,5 +3,4 @@ stdenv.mkDerivation { inherit (input) name src; buildInputs = [pkgconfig perl perlXMLParser]; - PERL5LIB = perlXMLParser ~ "/lib/site_perl"; } diff --git a/pkgs/development/libraries/gnome/libbonobo/default.nix b/pkgs/development/libraries/gnome/libbonobo/default.nix index d50e505b2b7..03b4cd55625 100644 --- a/pkgs/development/libraries/gnome/libbonobo/default.nix +++ b/pkgs/development/libraries/gnome/libbonobo/default.nix @@ -6,7 +6,6 @@ assert pkgconfig != null && perl != null && ORBit2 != null # todo 2.8.1 doesn;t work stdenv.mkDerivation { inherit (input) name src; - buildInputs = [pkgconfig perl libxml2 yacc flex]; + buildInputs = [pkgconfig perl perlXMLParser libxml2 yacc flex]; propagatedBuildInputs = [ORBit2 popt]; - PERL5LIB = perlXMLParser ~ "/lib/site_perl"; } diff --git a/pkgs/development/libraries/gnome/libbonoboui/default.nix b/pkgs/development/libraries/gnome/libbonoboui/default.nix index 2cc8527ade1..ba0b3aee0ad 100644 --- a/pkgs/development/libraries/gnome/libbonoboui/default.nix +++ b/pkgs/development/libraries/gnome/libbonoboui/default.nix @@ -4,13 +4,11 @@ assert pkgconfig != null && perl != null && libxml2 != null && libglade != null && libgnome != null && libgnomecanvas != null; -# todo 2.8.1 doesn;t work +# TODO 2.8.1 doesn't work stdenv.mkDerivation { inherit (input) name src; - buildInputs = [pkgconfig perl libglade gettext]; + buildInputs = [pkgconfig perl perlXMLParser libglade gettext]; propagatedBuildInputs = [libxml2 libgnome libgnomecanvas]; - PERL5LIB = perlXMLParser ~ "/lib/site_perl"; - - LDFLAGS="-lglib-2.0"; + LDFLAGS="-lglib-2.0"; # !!! why? } diff --git a/pkgs/development/libraries/gnome/libgnome/default.nix b/pkgs/development/libraries/gnome/libgnome/default.nix index 34a1ff8a339..da58dc7232d 100644 --- a/pkgs/development/libraries/gnome/libgnome/default.nix +++ b/pkgs/development/libraries/gnome/libgnome/default.nix @@ -14,6 +14,4 @@ stdenv.mkDerivation { inherit (input) name src; buildInputs = [pkgconfig perl perlXMLParser popt zlib]; propagatedBuildInputs = [glib gnomevfs libbonobo gconf]; - - PERL5LIB = perlXMLParser ~ "/lib/site_perl"; } diff --git a/pkgs/development/libraries/gnome/libgnomeprint/default.nix b/pkgs/development/libraries/gnome/libgnomeprint/default.nix index 16777e37d2b..ef4f94fe966 100644 --- a/pkgs/development/libraries/gnome/libgnomeprint/default.nix +++ b/pkgs/development/libraries/gnome/libgnomeprint/default.nix @@ -4,11 +4,9 @@ stdenv.mkDerivation { inherit (input) name src; buildInputs = [ - perl perlXMLParser pkgconfig popt libxml2 - glib pango - ]; + perl perlXMLParser pkgconfig popt libxml2 + glib pango + ]; propagatedBuildInputs = [libxml2 libart]; - - PERL5LIB = perlXMLParser ~ "/lib/site_perl"; } diff --git a/pkgs/development/libraries/gnome/libgnomeprintui/default.nix b/pkgs/development/libraries/gnome/libgnomeprintui/default.nix index 5ae7a59c206..34f2b799498 100644 --- a/pkgs/development/libraries/gnome/libgnomeprintui/default.nix +++ b/pkgs/development/libraries/gnome/libgnomeprintui/default.nix @@ -4,9 +4,7 @@ stdenv.mkDerivation { inherit (input) name src; buildInputs = [ - perl perlXMLParser pkgconfig - gtk libgnomeprint libgnomecanvas gnomeicontheme - ]; - - PERL5LIB = perlXMLParser ~ "/lib/site_perl"; + perl perlXMLParser pkgconfig + gtk libgnomeprint libgnomecanvas gnomeicontheme + ]; } diff --git a/pkgs/development/libraries/gnome/libgtkhtml/default.nix b/pkgs/development/libraries/gnome/libgtkhtml/default.nix index f34ea0d5810..839ce401471 100644 --- a/pkgs/development/libraries/gnome/libgtkhtml/default.nix +++ b/pkgs/development/libraries/gnome/libgtkhtml/default.nix @@ -10,9 +10,7 @@ stdenv.mkDerivation { inherit (input) name src; buildInputs = [ - perl perlXMLParser pkgconfig gtk libxml2 gail - ]; - - PERL5LIB = perlXMLParser ~ "/lib/site_perl"; + perl perlXMLParser pkgconfig gtk libxml2 gail + ]; } diff --git a/pkgs/development/libraries/gnome/libwnck/default.nix b/pkgs/development/libraries/gnome/libwnck/default.nix index 9615348def4..30fb217d4fa 100644 --- a/pkgs/development/libraries/gnome/libwnck/default.nix +++ b/pkgs/development/libraries/gnome/libwnck/default.nix @@ -3,5 +3,4 @@ stdenv.mkDerivation { inherit (input) name src; buildInputs = [pkgconfig gtk]; -# PERL5LIB = perlXMLParser ~ "/lib/site_perl"; # !!! } diff --git a/pkgs/development/libraries/gnome/scrollkeeper/default.nix b/pkgs/development/libraries/gnome/scrollkeeper/default.nix index 1efd056b8b3..49761ad2e11 100644 --- a/pkgs/development/libraries/gnome/scrollkeeper/default.nix +++ b/pkgs/development/libraries/gnome/scrollkeeper/default.nix @@ -5,8 +5,7 @@ stdenv.mkDerivation { inherit (input) name src; patches = [./xmlcatalog.patch]; - buildInputs = [pkgconfig perl libxml2 libxslt]; - PERL5LIB = perlXMLParser ~ "/lib/site_perl"; # !!! + buildInputs = [pkgconfig perl perlXMLParser libxml2 libxslt]; inherit docbook_xml_dtd_42; builder = ./builder.sh; } diff --git a/pkgs/development/perl-modules/BerkeleyDB/builder.sh b/pkgs/development/perl-modules/BerkeleyDB/builder.sh deleted file mode 100644 index e14e8c4311a..00000000000 --- a/pkgs/development/perl-modules/BerkeleyDB/builder.sh +++ /dev/null @@ -1,12 +0,0 @@ -buildinputs="$perl $db4" -. $stdenv/setup || exit 1 - -tar xvfz $src || exit 1 -cd BerkeleyDB-* || exit 1 - -echo "LIB = $db4/lib" > config.in -echo "INCLUDE = $db4/include" >> config.in - -perl Makefile.PL || exit 1 -make || exit 1 -make install SITEPREFIX=$out PERLPREFIX=$out || exit 1 diff --git a/pkgs/development/perl-modules/BerkeleyDB/default.nix b/pkgs/development/perl-modules/BerkeleyDB/default.nix index b4cf9f10438..0c50977f8e3 100644 --- a/pkgs/development/perl-modules/BerkeleyDB/default.nix +++ b/pkgs/development/perl-modules/BerkeleyDB/default.nix @@ -1,14 +1,12 @@ -{stdenv, fetchurl, perl, db4}: +{fetchurl, perl, db4}: -assert perl != null && db4 != null; - -stdenv.mkDerivation { - name = "perl-BerkeleyDB-0.25"; - builder = ./builder.sh; +import ../generic perl { + name = "BerkeleyDB-0.26"; src = fetchurl { - url = ftp://ftp.cs.uu.nl/mirror/CPAN/authors/id/P/PM/PMQS/BerkeleyDB-0.25.tar.gz; - md5 = "fcef06232d1ccd6c2a9cd114e388ea3d"; + url = ftp://ftp.cs.uu.nl/mirror/CPAN/authors/id/P/PM/PMQS/BerkeleyDB-0.26.tar.gz; + md5 = "6e9882f4e4bac48b24079d082af30e6c"; }; - perl = perl; - db4 = db4; + perlPreHook = ./hook.sh; + buildInputs = [db4]; +# inherit db4; } diff --git a/pkgs/development/perl-modules/BerkeleyDB/hook.sh b/pkgs/development/perl-modules/BerkeleyDB/hook.sh new file mode 100644 index 00000000000..c0735d27e9f --- /dev/null +++ b/pkgs/development/perl-modules/BerkeleyDB/hook.sh @@ -0,0 +1,7 @@ +oldPreConfigure=$preConfigure +preConfigure=myPreConfigure +myPreConfigure() { + echo "LIB = $db4/lib" > config.in + echo "INCLUDE = $db4/include" >> config.in + $oldPreConfigure +} diff --git a/pkgs/development/perl-modules/XML-Parser/builder.sh b/pkgs/development/perl-modules/XML-Parser/builder.sh deleted file mode 100644 index b6409cd8765..00000000000 --- a/pkgs/development/perl-modules/XML-Parser/builder.sh +++ /dev/null @@ -1,10 +0,0 @@ -buildinputs="$perl $expat" -. $stdenv/setup || exit 1 - -tar xvfz $src || exit 1 -cd XML-Parser-* || exit 1 - -perl Makefile.PL EXPATLIBPATH=$expat/lib EXPATINCPATH=$expat/include \ - SITEPREFIX=$out PERLPREFIX=$out || exit 1 -make || exit 1 -make install || exit 1 diff --git a/pkgs/development/perl-modules/XML-Parser/default.nix b/pkgs/development/perl-modules/XML-Parser/default.nix index 7d8a4bbb7c4..b9adcaab706 100644 --- a/pkgs/development/perl-modules/XML-Parser/default.nix +++ b/pkgs/development/perl-modules/XML-Parser/default.nix @@ -1,14 +1,11 @@ -{stdenv, fetchurl, perl, expat}: +{fetchurl, perl, expat}: -assert perl != null && expat != null; - -stdenv.mkDerivation { - name = "perl-XML-Parser-2.34"; - builder = ./builder.sh; +import ../generic perl { + name = "XML-Parser-2.34"; src = fetchurl { url = http://catamaran.labs.cs.uu.nl/dist/tarballs/XML-Parser-2.34.tar.gz; md5 = "84d9e0001fe01c14867256c3fe115899"; }; - perl = perl; - expat = expat; + perlPreHook = ./hook.sh; + inherit expat; } diff --git a/pkgs/development/perl-modules/XML-Parser/hook.sh b/pkgs/development/perl-modules/XML-Parser/hook.sh new file mode 100644 index 00000000000..44df351a222 --- /dev/null +++ b/pkgs/development/perl-modules/XML-Parser/hook.sh @@ -0,0 +1 @@ +makeMakerFlags="EXPATLIBPATH=$expat/lib EXPATINCPATH=$expat/include" diff --git a/pkgs/development/perl-modules/generic/builder.sh b/pkgs/development/perl-modules/generic/builder.sh index 389858bcfcf..3a61ba7f67d 100644 --- a/pkgs/development/perl-modules/generic/builder.sh +++ b/pkgs/development/perl-modules/generic/builder.sh @@ -1,19 +1,7 @@ -addInputsHook=addInputsHook -addInputsHook() { - # Should be in a Perl setup hook. - envHooks=(${envHooks[@]} addPerlLibs) -} - -addPerlLibs() { - PERL5LIB="$PERL5LIB${PERL5LIB:+:}$1/lib/site_perl" -} - . $stdenv/setup PERL5LIB="$PERL5LIB${PERL5LIB:+:}$out/lib/site_perl" -export PERL5LIB - oldIFS=$IFS IFS=: perlFlags= @@ -21,7 +9,7 @@ for i in $PERL5LIB; do perlFlags="$perlFlags -I$i" done IFS=$oldIFS -echo "$perlFlags" +echo "Perl flags: $perlFlags" preConfigure=preConfigure preConfigure() { @@ -42,4 +30,12 @@ preConfigure() { perl Makefile.PL PREFIX=$out $makeMakerFlags } +if test -n "$perlPreHook"; then + . $perlPreHook +fi + genericBuild + +if test -n "$perlPostHook"; then + . $perlPostHook +fi \ No newline at end of file diff --git a/pkgs/development/perl-modules/generic/default.nix b/pkgs/development/perl-modules/generic/default.nix index 26cc365d9bd..2909664bf87 100644 --- a/pkgs/development/perl-modules/generic/default.nix +++ b/pkgs/development/perl-modules/generic/default.nix @@ -3,6 +3,7 @@ perl: attrs: perl.stdenv.mkDerivation (attrs // { + name = "perl-" + attrs.name; builder = ./builder.sh; buildInputs = [(if attrs ? buildInputs then attrs.buildInputs else []) perl]; }) diff --git a/pkgs/system/all-packages-generic.nix b/pkgs/system/all-packages-generic.nix index b69d8d743f9..f99f4f87a59 100644 --- a/pkgs/system/all-packages-generic.nix +++ b/pkgs/system/all-packages-generic.nix @@ -743,12 +743,12 @@ rec { inherit fetchurl stdenv libtool; }; - perlBerkeleyDB = (import ../development/perl-modules/BerkeleyDB) { - inherit fetchurl stdenv perl db4; + perlBerkeleyDB = import ../development/perl-modules/BerkeleyDB { + inherit fetchurl perl db4; }; - perlXMLParser = (import ../development/perl-modules/XML-Parser) { - inherit fetchurl stdenv perl expat; + perlXMLParser = import ../development/perl-modules/XML-Parser { + inherit fetchurl perl expat; }; perlXMLLibXML = import ../development/perl-modules/generic perl { |