Modular build: build.sh failing at libxcb, libX11 ...
Rémi Cardona
remi at gentoo.org
Thu Nov 8 01:00:48 PST 2007
Jamey Sharp a écrit :
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 11/6/07, Jens Stroebel <dr-xorg at bcsoft.de> wrote:
>> While the other parts have no problem with DESTDIR, the build of
>> xorg-libs has. It fails first in libxcb (which is pretty simple to fix
>> by giving an environment variable to the make of it)
>
> I don't understand. I routinely install libxcb using
> make DESTDIR=... install
> and it works for me. What are you doing that doesn't work?
>
>> then in libX11 (which gets caused by libtool trying to find *.la files
>> in $PREFIX/lib instead of $DESTDIR/$PREFIX/lib). We didn't continue at
>> that point and are using another method for xorg-libs ATM.
>
> Similarly, Debian packages of libX11 are being built with
> $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install
> and that seems to work for them.
Gentoo works the same way, using "make DESTDIR=" and then copying the
files to the root filesystem.
Jens, basically, I think you're bending DESTDIR for something it wasn't
really meant for.
If you use DESTDIR, you will still have to put them in the original
$prefix dir at some point if you want other libs/programs to find them
correctly. Trying to work around that is hacky at best.
Basically, I think one way out is to do what package managers do. Keep a
list of files/symlinks/permissions that are installed on the system when
they untar the content of a package onto the root filesystem (so for you
that would be whatever's inside $DESTDIR when you copy it to $prefix).
Do this for each xorg module, then merge the lists for your 4 master
packages and tar those files back together.
Since xorg (mostly) is now a model autotools citizen, it will require
some scripting skills but it shouldn't be too hard.
Hope that helps.
Rémi
More information about the xorg
mailing list