An interesting complication is that we have to change the ELF type
of the executable from `Linux' to `SVR4', otherwise the
`ld-linux.so.2' trick to override the glibc used doesn't work
(apparently `Linux' is not a recognised ELF type!).
UT doesn't work with software Mesa, so right now we impurily use
`/usr/lib/libGL.so'. I cannot really test whether it works with
hardware Mesa, since it barfs with an error about missing OpenGL
extensions. But that's probably because I'm testing this on an
iBook over an SSH connection to a Linux machine.
svn path=/nixpkgs/trunk/; revision=1047
to deploy existing binary-only components.
We use the `ld-linux.so.2 PROGRAM' trick to force the use of our own
glibc, and set LD_LIBRARY_PATH to point to the required libraries
(X11, Mesa).
Since Mesa is software-only, Q3A is rather slow. I'll have to
figure out how to use the Mesa from XFree86 (X.Org), since it knows
how to use DRI (or at least speak the GLX protocol). Unfortunately
the xlibs people haven't modularised that part of XFree86 yet.
Also, the flag `+set s_initsound 0' has to be passed to Quake to
disable sound, otherwise it segfaults on startup. It doesn't do
this with the normal glibc, which is strange. Maybe it tries to
dynamically load some sound library or something.
svn path=/nixpkgs/trunk/; revision=1046
* Zapping/VLC/MPlayer: use libXv.
* MPlayer: upgrade to 1.0pre4.
* Zapping: add libXext to the rpath. I don't understand why this is
necessary. Zapping doesn't itself link against libXext, though some
of its dependencies do. (Maybe this is due to `--export-dynamic'?)
svn path=/nixpkgs/trunk/; revision=990
the tree being fetched from a Subversion repository. The revision
number is now optional (and defaults to HEAD).
This makes `fetchsvn' more pure. First, a URL/revision tuple does
not uniquely identify a file resource, since the repository itself
might change. Second, `svn:external' attributes can cause arbitrary
resources to be exported.
A script `nix-prefetch-svn' has been provided to determine the hash
of a URL.
svn path=/nixpkgs/trunk/; revision=938
libgcc of the gcc being built, not the gcc building it.
* Only include a directory in the rpath of an executable/library if it
is actually used. Before, the `/lib' directory of every build input
was added to the rpath, causing many unnecessary retained
dependencies. For instance, Perl has a `/lib' directory, but most
applications whose build process uses Perl don't actually link
against Perl. (Also added a test for this.)
* After building glibc, remove glibcbug, to prevent a retained
dependency on gcc.
* Add a newline after `building X' in GNU Make.
svn path=/nixpkgs/trunk/; revision=911