This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
[patch] fix install dependencies for target libraries
- From: Matthias Klose <doko at ubuntu dot com>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Cc: "libstdc++ at gcc dot gnu dot org" <libstdc++ at gcc dot gnu dot org>, gfortran <fortran at gcc dot gnu dot org>, GCJ-patches <java-patches at gcc dot gnu dot org>
- Date: Thu, 20 Dec 2012 19:22:58 +0100
- Subject: [patch] fix install dependencies for target libraries
This was seen with the libgo installation [1], but from my point of view can
happen when the install target is called with -j >1, libtool seems to fall back
to the system libraries if the library in the install location is not available
(which is always the case if you install into an empty dir set with DESTDIR).
Currently it just works for a non-parallel install because the dependencies in
Makefile.def are created in the right order.
Ok for the trunk?
Matthias
[1] http://gcc.gnu.org/ml/gcc-patches/2012-12/msg01192.html
2012-12-20 Matthias Klose <doko@ubuntu.com>
* Makefile.def (install-target-libgfortran): Depend on
install-target-libquadmath, install-target-libgcc.
(install-target-libsanitizer): Depend on install-target-libgcc.
(install-target-libjava): Depend on install-target-libgcc.
(install-target-libitm): Depend on install-target-libgcc.
(install-target-libobjc): Depend on install-target-libgcc.
(install-target-libstdc++-v3): Depend on install-target-libgcc.
* Makefile.in: Regenerate.
Index: Makefile.def
===================================================================
--- Makefile.def (Revision 194635)
+++ Makefile.def (Arbeitskopie)
@@ -515,6 +515,13 @@
dependencies = { module=all-target-libstdc++-v3; on=configure-target-libgomp; };
dependencies = { module=install-target-libgo; on=install-target-libatomic; };
+dependencies = { module=install-target-libgfortran; on=install-target-libquadmath; };
+dependencies = { module=install-target-libgfortran; on=install-target-libgcc; };
+dependencies = { module=install-target-libsanitizer; on=install-target-libgcc; };
+dependencies = { module=install-target-libjava; on=install-target-libgcc; };
+dependencies = { module=install-target-libitm; on=install-target-libgcc; };
+dependencies = { module=install-target-libobjc; on=install-target-libgcc; };
+dependencies = { module=install-target-libstdc++-v3; on=install-target-libgcc; };
// Target modules in the 'src' repository.
lang_env_dependencies = { module=libtermcap; };