* Provide a wrapper around `aclocal' (in Automake) that automatically

adds all directories specified in `ACLOCAL_PATH' to the `aclocal'
  command line as `-I' flags.  Also, it provides a setup hook that
  adds the `.../share/aclocal' directory of every build input to
  `ACLOCAL_PATH'.

* Upgraded Libtool.

* Graphviz requires the X Athena widgets, which in turn requires the X
  miscellaneous utilities library; added those.  However it doesn't
  work yet since libXt is broken.
  

svn path=/nixpkgs/trunk/; revision=888
This commit is contained in:
Eelco Dolstra 2004-03-31 22:47:06 +00:00
parent cbdf9a0408
commit 817d1b27ef
15 changed files with 102 additions and 119 deletions

View File

@ -1 +1,7 @@
* Bump freetype to 2.1.7 (but it breaks Pango 1.2.5).
* In setup.sh, remove " -a -f ./ltmain.sh" (and then remove ltmain stuff from Subversion)
* Patch development/tools/misc/libtool not to search standard
directories for libraries (like setup.sh does now). [do we want
this?]

View File

@ -23,6 +23,15 @@ fi
installFlags="$makeFlags"
preConfigure() {
for i in $(find . -name "ltmain.sh"); do
echo "fixing libtool script $i"
fixLibtool $i
done
}
preConfigure=preConfigure
postInstall() {
if test "$swigBindings"; then
make swig-py

View File

@ -1,14 +1,13 @@
#! /bin/sh
buildinputs="$aterm $sdf $make $automake $autoconf $libtool $which"
. $stdenv/setup || exit 1
. $stdenv/setup
echo "pwd = `pwd`"
echo "PATH = $PATH"
cp -r $src strategoxt || exit 1
echo "ACLOCAL_PATH = $ACLOCAL_PATH"
cp -r $src strategoxt
chmod -R +w strategoxt
cd strategoxt || exit 1
./bootstrap || exit 1
./configure --prefix=$out --with-aterm=$aterm --with-sdf=$sdf || exit 1
make install || exit 1
cd strategoxt
./bootstrap
./configure --prefix=$out --with-aterm=$aterm --with-sdf=$sdf
make install

View File

@ -1,19 +1,14 @@
{stdenv, fetchsvn, autotools, which, aterm, sdf}: derivation {
{stdenv, fetchsvn, autoconf, automake, libtool, which, aterm, sdf}:
stdenv.mkDerivation {
name = "strategoxt-0.9.4-4792";
system = stdenv.system;
builder = ./svnbuilder.sh;
src = fetchsvn {
url = https://svn.cs.uu.nl:12443/repos/StrategoXT/trunk/StrategoXT;
rev = "4792";
};
stdenv = stdenv;
make = autotools.make;
automake = autotools.automake;
autoconf = autotools.autoconf;
libtool = autotools.libtool;
which = which;
aterm = aterm;
sdf = sdf;
buildInputs = [autoconf automake libtool which aterm sdf];
inherit aterm sdf libtool;
}

View File

@ -1,22 +0,0 @@
{stdenv, fetchurl, m4, perl}:
derivation {
name = "autoconf-2.58-automake-1.7.9-libtool-1.5";
system = stdenv.system;
builder = ./libtoolbuilder.sh;
autoconfsrc = fetchurl {
url = ftp://ftp.nluug.nl/pub/gnu/autoconf/autoconf-2.58.tar.bz2;
md5 = "db3fa3069c6554b3505799c7e1022e2b";
};
automakesrc = fetchurl {
url = ftp://ftp.nluug.nl/pub/gnu/automake/automake-1.7.9.tar.bz2;
md5 = "571fd0b0598eb2a27dcf68adcfddfacb";
};
libtoolsrc = fetchurl {
url = http://ftp.gnu.org/gnu/libtool/libtool-1.5.tar.gz;
md5 = "0e1844f25e2ad74c3715b5776d017545";
};
stdenv = stdenv;
m4 = m4;
perl = perl;
}

View File

@ -1,8 +0,0 @@
buildinputs="$m4 $perl"
. $stdenv/setup || exit 1
tar xvfj $src || exit 1
cd autoconf-* || exit 1
./configure --prefix=$out || exit 1
make || exit 1
make install || exit 1

View File

@ -1,11 +1,10 @@
{stdenv, fetchurl, m4, perl}:
stdenv.mkDerivation {
name = "autoconf-2.58";
builder = ./builder.sh;
src = fetchurl {
url = ftp://ftp.nluug.nl/pub/gnu/autoconf/autoconf-2.58.tar.bz2;
md5 = "db3fa3069c6554b3505799c7e1022e2b";
};
m4 = m4;
perl = perl;
buildInputs = [m4 perl];
}

View File

@ -1,28 +0,0 @@
#! /bin/sh
buildinputs="$m4 $perl $out"
. $stdenv/setup || exit 1
tar xvfj $autoconfsrc || exit 1
cd autoconf-* || exit 1
./configure --prefix=$out || exit 1
make || exit 1
make install || exit 1
buildinputs="$m4 $perl $out"
. $stdenv/setup || exit 1
tar xvfj $automakesrc || exit 1
cd automake-* || exit 1
./configure --prefix=$out || exit 1
make || exit 1
make install || exit 1
buildinputs="$m4 $perl $out"
. $stdenv/setup || exit 1
tar xvfz $libtoolsrc || exit 1
cd libtool-* || exit 1
./configure --prefix=$out || exit 1
make || exit 1
make install || exit 1

View File

@ -1,8 +1,47 @@
buildinputs="$perl $autoconf"
. $stdenv/setup || exit 1
. $stdenv/setup
tar xvfj $src || exit 1
cd automake-* || exit 1
./configure --prefix=$out || exit 1
make || exit 1
make install || exit 1
postInstall() {
# Create a wrapper around `aclocal' that converts every element in
# `ACLOCAL_PATH' into a `-I dir' option. This way `aclocal'
# becomes modular; M4 macros do not need to be stored in a single
# global directory, while callers of `aclocal' do not need to pass
# `-I' options explicitly.
mv $out/bin/aclocal $out/bin/_tmp
for i in $out/bin/aclocal*; do
rm $i
ln -s aclocal $i
done
cat > $out/bin/aclocal <<EOF
#! $SHELL -e
oldIFS=\$IFS
IFS=:
extra=
for i in \$ACLOCAL_PATH; do
if test -n "\$i"; then
extra="\$extra -I \$i"
fi
done
IFS=\$oldIFS
exec $out/bin/aclocal-orig \${extra[@]} "\$@"
EOF
chmod +x $out/bin/aclocal
mv $out/bin/_tmp $out/bin/aclocal-orig
# Automatically let `ACLOCAL_PATH' include all build inputs that
# have a `.../share/aclocal' directory.
test -x $out/nix-support || mkdir $out/nix-support
cp -p $setupHook $out/nix-support/setup-hook
}
postInstall=postInstall
genericBuild

View File

@ -1,11 +1,12 @@
{stdenv, fetchurl, perl, autoconf}:
stdenv.mkDerivation {
name = "automake-1.7.9";
builder = ./builder.sh;
setupHook = ./setup-hook.sh;
src = fetchurl {
url = ftp://ftp.nluug.nl/pub/gnu/automake/automake-1.7.9.tar.bz2;
md5 = "571fd0b0598eb2a27dcf68adcfddfacb";
};
perl = perl;
autoconf = autoconf;
buildInputs = [perl autoconf];
}

View File

@ -0,0 +1,7 @@
addAclocals () {
if test -d $1/share/aclocal; then
export ACLOCAL_PATH="$ACLOCAL_PATH${ACLOCAL_PATH:+:}$1/share/aclocal"
fi
}
envHooks=(${envHooks[@]} addAclocals)

View File

@ -1,8 +0,0 @@
buildinputs="$m4 $perl"
. $stdenv/setup || exit 1
tar xvfz $src || exit 1
cd libtool-* || exit 1
./configure --prefix=$out || exit 1
make || exit 1
make install || exit 1

View File

@ -1,11 +1,10 @@
{stdenv, fetchurl, m4, perl}:
stdenv.mkDerivation {
name = "libtool-1.5";
builder = ./builder.sh;
name = "libtool-1.5.2";
src = fetchurl {
url = http://ftp.gnu.org/gnu/libtool/libtool-1.5.tar.gz;
md5 = "0e1844f25e2ad74c3715b5776d017545";
url = http://ftp.gnu.org/gnu/libtool/libtool-1.5.2.tar.gz;
md5 = "db66ba05502f533ad0cfd84dc0e03bd5";
};
m4 = m4;
perl = perl;
buildInputs = [m4 perl];
}

View File

@ -135,11 +135,6 @@ rec {
m4 = gnum4;
};
autoconflibtool = (import ../development/tools/misc/autoconf/autoconf-libtool.nix) {
inherit fetchurl stdenv perl;
m4 = gnum4;
};
automake = (import ../development/tools/misc/automake) {
inherit fetchurl stdenv perl autoconf;
};
@ -149,13 +144,6 @@ rec {
m4 = gnum4;
};
autotools = {
automake = autoconflibtool;
autoconf = autoconflibtool;
make = gnumake;
libtool = autoconflibtool;
};
pkgconfig = (import ../development/tools/misc/pkgconfig) {
inherit fetchurl stdenv;
};
@ -241,7 +229,7 @@ rec {
};
strategoxtsvn = (import ../development/compilers/strategoxt/trunk.nix) {
inherit fetchsvn stdenv autotools which aterm;
inherit fetchsvn stdenv autoconf automake libtool which aterm;
sdf = sdf2;
};
@ -608,6 +596,14 @@ rec {
inherit fetchurl stdenv pkgconfig libX11 libXrender freetype fontconfig;
};
libXmu = (import ../development/libraries/freedesktop/libXmu) {
inherit fetchurl stdenv pkgconfig xproto libX11 libXt;
};
libXaw = (import ../development/libraries/freedesktop/libXaw) {
inherit fetchurl stdenv pkgconfig xproto libX11 libXt;
};
xlibs = (import ../development/libraries/freedesktop/xlibs) {
inherit stdenv libX11 libXt freetype fontconfig libXft libXext;
};

View File

@ -10,8 +10,7 @@ mkdir $out/bin
for i in $(cd $out/bin-orig && ls); do
cat > $out/bin/$i <<EOF
#! /bin/sh
IFS=
PYTHONPATH=$out/lib/python2.3/site-packages:$wxPython/lib/python2.3/site-packages exec $out/bin-orig/$i \$@
PYTHONPATH=$out/lib/python2.3/site-packages:$wxPython/lib/python2.3/site-packages exec $out/bin-orig/$i "\$@"
EOF
chmod +x $out/bin/$i
done