This is the mail archive of the
mailing list for the GCC project.
Re: RFA: Fix copying of libgcc multilibs
- From: David Daney <ddaney at avtrex dot com>
- To: gcc-patches at gcc dot gnu dot org, rsandifo at nildram dot co dot uk
- Date: Thu, 20 Dec 2007 10:06:52 -0800
- Subject: Re: RFA: Fix copying of libgcc multilibs
- References: <firstname.lastname@example.org>
Richard Sandiford wrote:
"all-multi" therefore installs each multilib's files into
"$objdir/gcc/$mlib/...", as expected. But the default multilib's
"install" rule is itself recursive, so "all" recurses again, this time
installing with DESTDIR="../../gcc". For non-default multilibs, this
means installing in "$objdir/$target_alias/$mlib/libgcc/../../gcc/".
I noticed this because libjava's testsuite was finding
"$objdir/$target_alias/gcc" instead of "$objdir/gcc", and was then
trying to run "$objdir/$target_alias/gcc/xgcc --print-multi-lib".
I wasn't sure whether we should add an "install-leaf" rule,
override MULTIDIRS, override MULTIDO, or something else,
but Dan voted for the first.
Bootstrapped & regression-tested x86_64-linux-gnu. Also regression-tested
on mips64-linux-gnu. OK to install?
* Makefile.in (all): Use install-leaf rather than install.
(install): Split most of the rule into...
(install-leaf): ...this new one.
Thanks Richard. This one was really bothering me.
FWIW, I can confirm that this is a real problem.