This is the mail archive of the gcc-bugs@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]

PATCH for Re: Makefile problems with gcc 3.0.4/Soalris 7


On Sat, Mar 30, 2002 at 10:42:01AM -0700, Ric Anderson wrote:
> 
> gcc 3.0.4 installation balks when processing "gmake install" in the
>         sparc-sun-solaris2.7/libstdc++-v3/include
> directory.  The Makefile contains directives of the form
>         $(INSTALL) -d ...

Oops.  I should have caught that.  Mea culpa.

The proper, portable solution is to not depend on /any/ install program
understanding '-d' or anything else; instead we use a script written
specifially for the purpose.  It's always been there; we just forgot to
make use of it in this case.

Tested on i686-linux, applied to trunk and 3.1 branch.  It's a 3.0
regression, so just on the off chance that a 3.0.5 will be released,
I'll be testing and applying the patch on that branch shortly.


2002-04-02  Phil Edwards  <pme@gcc.gnu.org>

	* include/Makefile.am (install-data-local):  Use mkinstalldirs.
	* include/Makefile.in:  Regenerate.


Index: include/Makefile.am
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/include/Makefile.am,v
retrieving revision 1.33
diff -u -3 -p -r1.33 Makefile.am
--- Makefile.am	2002/03/27 04:29:30	1.33
+++ Makefile.am	2002/04/02 12:55:30
@@ -417,33 +417,33 @@ ${target_builddir}/gthr-default.h: ${top
 # tree using only the human-maintained file lists and directory
 # components.  Yes, with minor differences, this is sheer duplication
 # of the staging rules above using $(INSTALL_DATA) instead of LN_S and
-# `$(INSTALL) -d' instead of `mkdir -p'.  In particular,
+# `$(mkinstalldirs)' instead of `mkdir -p'.  In particular,
 # extra_target_headers are taken out of the build tree staging area;
 # the rest are taken from the original source tree.
 gxx_include_dir = @gxx_include_dir@
 install-data-local:
-	$(INSTALL) -d ${gxx_include_dir}
-	$(INSTALL) -d ${gxx_include_dir}/${bits_builddir}
+	$(mkinstalldirs) ${gxx_include_dir}
+	$(mkinstalldirs) ${gxx_include_dir}/${bits_builddir}
 	for file in ${bits_headers}; do \
 	  $(INSTALL_DATA) $${file} ${gxx_include_dir}/${bits_builddir}; done
-	$(INSTALL) -d ${gxx_include_dir}/${backward_builddir}
+	$(mkinstalldirs) ${gxx_include_dir}/${backward_builddir}
 	for file in ${backward_headers}; do \
 	  $(INSTALL_DATA) $${file} ${gxx_include_dir}/${backward_builddir}; done
-	$(INSTALL) -d ${gxx_include_dir}/${ext_builddir}
+	$(mkinstalldirs) ${gxx_include_dir}/${ext_builddir}
 	for file in ${ext_headers}; do \
 	  $(INSTALL_DATA) $${file} ${gxx_include_dir}/${ext_builddir}; done
-	$(INSTALL) -d ${gxx_include_dir}/${c_base_builddir}
+	$(mkinstalldirs) ${gxx_include_dir}/${c_base_builddir}
 	for file in ${c_base_headers_rename}; do \
 	  $(INSTALL_DATA) ${c_base_builddir}/$${file} \
 	    ${gxx_include_dir}/${c_base_builddir}; done
 	c_base_headers_extra_install=${c_base_headers_extra};\
 	for file in $$c_base_headers_extra_install; do \
 	  $(INSTALL_DATA) $$file ${gxx_include_dir}/${bits_builddir}; done
-	$(INSTALL) -d ${gxx_include_dir}/${std_builddir}
+	$(mkinstalldirs) ${gxx_include_dir}/${std_builddir}
 	for file in ${std_headers_rename}; do \
 	  $(INSTALL_DATA) ${std_builddir}/$${file} \
 	    ${gxx_include_dir}/${std_builddir}; done
-	$(INSTALL) -d ${gxx_include_dir}/${target_builddir}
+	$(mkinstalldirs) ${gxx_include_dir}/${target_builddir}
 	for file in ${target_headers} ${extra_target_headers} \
 	 ${thread_target_headers}; do \
 	  $(INSTALL_DATA) $${file} ${gxx_include_dir}/${target_builddir}; done


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