This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Fix more fallout from multilib shared libgcc rearrangement


This, I hope, is the last bit of fallout from all the libgcc build
changes.  As David Edelsohn discovered a couple weeks ago, it is now
necessary for SHLIB_INSTALL to create the directory it is installing
into, because that directory doesn't get created earlier.  He fixed it
for AIX, but there were a few other t-fragments that needed the same
fix.  Joseph Myers noticed this on HPUX.  I have preemptively fixed it
for alpha-osf4 and arm-netbsd also; all definitions of SHLIB_INSTALL
now invoke mkinstalldirs.

Tested on ia64-hpux11 and hppa64-hpux11.  I cannot test alpha-osf4 or
arm-netbsd; please let me know if I've missed a typo or something and
it breaks your build.  (Note that this only shows up on make install.)
Applied to mainline and 4.0 branch.

zw

        * config/alpha/t-osf4, config/arm/t-netbsd, config/ia64/t-hpux
        * config/pa/t-hpux-shlib (SHLIB_INSTALL): Create the
        installation directory first.

===================================================================
Index: config/alpha/t-osf4
--- config/alpha/t-osf4	16 Dec 2004 19:14:27 -0000	1.9
+++ config/alpha/t-osf4	28 Feb 2005 04:37:24 -0000
@@ -25,6 +25,8 @@ SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2
 	$(LN_S) $(SHLIB_NAME) $(SHLIB_SONAME)
 # $(slibdir) double quoted to protect it from expansion while building
 # libgcc.mk.  We want this delayed until actual install time.
-SHLIB_INSTALL = $(INSTALL_DATA) $(SHLIB_NAME) $$(DESTDIR)$$(slibdir)/$(SHLIB_SONAME); \
+SHLIB_INSTALL = \
+	$$(mkinstalldirs) $$(DESTDIR)$$(slibdir); \
+	$(INSTALL_DATA) $(SHLIB_NAME) $$(DESTDIR)$$(slibdir)/$(SHLIB_SONAME); \
 	rm -f $$(DESTDIR)$$(slibdir)/$(SHLIB_NAME); \
 	$(LN_S) $(SHLIB_SONAME) $$(DESTDIR)$$(slibdir)/$(SHLIB_NAME)
===================================================================
Index: config/arm/t-netbsd
--- config/arm/t-netbsd	16 Dec 2004 19:14:27 -0000	1.9
+++ config/arm/t-netbsd	28 Feb 2005 04:37:24 -0000
@@ -20,6 +20,8 @@ SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2
 	$(LN_S) $(SHLIB_NAME) $(SHLIB_SONAME)
 # $(slibdir) double quoted to protect it from expansion while building
 # libgcc.mk.  We want this delayed until actual install time.
-SHLIB_INSTALL = $(INSTALL_DATA) $(SHLIB_NAME) $$(DESTDIR)$$(slibdir)/$(SHLIB_SONAME); \
+SHLIB_INSTALL = \
+	$$(mkinstalldirs) $$(DESTDIR)$$(slibdir); \
+	$(INSTALL_DATA) $(SHLIB_NAME) $$(DESTDIR)$$(slibdir)/$(SHLIB_SONAME); \
 	rm -f $$(DESTDIR)$$(slibdir)/$(SHLIB_NAME); \
 	$(LN_S) $(SHLIB_SONAME) $$(DESTDIR)$$(slibdir)/$(SHLIB_NAME)
===================================================================
Index: config/ia64/t-hpux
--- config/ia64/t-hpux	19 Feb 2005 11:44:07 -0000	1.10
+++ config/ia64/t-hpux	28 Feb 2005 04:37:25 -0000
@@ -38,7 +38,9 @@ SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2
 	$(LN_S) @shlib_base_name@.so @multilib_dir@/@shlib_base_name@.so.0
 # $(slibdir) double quoted to protect it from expansion while building
 # libgcc.mk.  We want this delayed until actual install time.
-SHLIB_INSTALL = $(INSTALL_DATA) @multilib_dir@/@shlib_base_name@.so \
+SHLIB_INSTALL = \
+        $$(mkinstalldirs) $$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@; \
+	$(INSTALL_DATA) @multilib_dir@/@shlib_base_name@.so \
 	$$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@/@shlib_base_name@.so.0; \
 	rm -f $$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@/@shlib_base_name@.so; \
 	$(LN_S) @shlib_base_name@.so.0 \
===================================================================
Index: config/pa/t-hpux-shlib
--- config/pa/t-hpux-shlib	19 Feb 2005 11:44:08 -0000	1.5
+++ config/pa/t-hpux-shlib	28 Feb 2005 04:37:25 -0000
@@ -19,9 +19,10 @@ SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2
 
 # $(slibdir) double quoted to protect it from expansion while building
 # libgcc.mk.  We want this delayed until actual install time.
-SHLIB_INSTALL = $(INSTALL_DATA) -m 555 $(SHLIB_DIR)/$(SHLIB_NAME) \
+SHLIB_INSTALL = \
+        $$(mkinstalldirs) $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL); \
+	$(INSTALL_DATA) -m 555 $(SHLIB_DIR)/$(SHLIB_NAME) \
 	$$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SONAME); \
         rm -f $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_NAME); \
         $(LN_S) $(SHLIB_SONAME) \
 	$$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_NAME)
-


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]