This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Preinstall thoughts
- From: Nathanael Nerode <neroden at twcny dot rr dot com>
- To: gcc at gcc dot gnu dot org
- Date: Tue, 3 Dec 2002 23:51:27 -0500
- Subject: Preinstall thoughts
I'm mentally fiddling with the 'preinstall' concept and trying to figure
out what the gotchas are.
Suppose we create top-level targets
preinstall-foo:
$(MAKE) \
"prefix=${preinstall_prefix}" \
"exec_prefix=${preinstall_prefix}/bin" \
(etc.... I'm not sure how much would be needed, but we could have as
much as we needed)
install-foo
Now suppose that instead of the current:
raw_libstdcxx_flags=' -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src
-L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
we have:
raw_libstdcxx_flags=' -L${preinstall_prefix}/lib'
and this is used by libraries (such as libjava) which need to link to
libstdc++-v3.
>From the list archives way back in February, Alex seemed to indicate
that this might break something on some systems by leaving the
${preinstall_prefix} path encoded into libjava.
Is this correct? If so, would it make any difference if I changed
the line in the *preinstalled* foo.la to say "installed=no" ?
I'm certain I can find some way to make this work.
This preinstall scheme seems to have no problems with executables.
(Although, actually, I'm unsure about 'xgcc' itself, since it does the
odd thing of calling other programs; does it have hardcoded paths or
what?)
I'm not 100% sure about 'include' files either, but they appear to be
truly location-independent. So it's basically only the libraries I'm
wondering about.
Libtool experts?
(Note: the original scheme involved building directly into the
'preinstall' directory. This is still a good idea. But it was objected
to by a lot of people who wanted to build in-source from the gcc
subdirectory and have the executable show up there, so I'm fiddling
with alternate schemes. If there really is no way to make this one
work, we have to add a 'preinstall' target in *every subdirectory* and
make sure that it behaves properly. Which I'll do if needed, but it
would be much more tedious than getting a generic solution.)
--Nathanael