Multilib installation problem

Eric Botcazou ebotcazou@libertysurf.fr
Sun Apr 13 21:44:00 GMT 2003


Hello DJ,

There is a fair amount (more than 15) of GNATS PRs about installation 
problems of libstdc++ on native multilib Sparc platforms. A typical 
installation log is attached.

The problem is the following: the Makefile in

	$(objdir)/sparc-sun-solaris2.8/sparcv9/libstdc++-v3/include

contains a relative path to $(topsrcdir)/install.sh, which is correct (right 
number of ..). It is the same for the Makefile in

	$(objdir)/sparc-sun-solaris2.8/sparcv9/libstdc++-v3

and

	$(objdir)/sparc-sun-solaris2.8/libstdc++-v3

i.e relative path and right number of ..


Now, when installing, the 2nd makefile passes the INSTALL* variables down to 
the 1st makefile but the 3rd makefile does _not_ pass the INSTALL* variables 
down to the 2nd makefile. The 2nd makefile, therefore, passes its own 
INSTALL* variables (relative correct path) to the 1st one, which are of 
course not valid for the latter since they are relative.

Interesting factor: this does not happen when building the compiler with 
'make bootstrap' but only when building it with a bare 'make'. The reason is 
that, in the former case, the INSTALL* variables of the toplevel dir (which 
are absolute) are passed down to the configure script of libstdc++, which 
copies them in the Makefiles. In the latter case, the variables don't seem to 
be passed to the configure script which, therefore, has to re-discover it.

Is that a bug? I personally would say yes, in particular that the INSTALL* 
variables should be passed down along the whole chain of makefiles. I've 
attached a patch against config-ml.in to fix the problem. It generates a 
modified Makefile in $(objdir)/sparc-sun-solaris2.8/libstdc++-v3 that 
propagates the INSTALL* variables and correctly installs the library.

Thanks in advance for your answer.

-- 
Eric Botcazou


2003-04-13  Eric Botcazou  <ebotcazou@libertysurf.fr>

	* config-ml.in: Propagate INSTALL variables.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: install.log
Type: text/x-log
Size: 9281 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/gcc/attachments/20030413/571e410b/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: multilib.diff
Type: text/x-diff
Size: 615 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/gcc/attachments/20030413/571e410b/attachment-0001.bin>


More information about the Gcc mailing list