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]

[PATCH] I broke `make install' and `make dvi'


The patch to allow make-ing unselected languages broke `make install' and `make dvi'. The reason is that the install-info and dvi targets were overridden in the Make-lang.in files using double-colon rules, rather than using lang.target rules.

This patch fixes this problem, which got undetected because in my development machine I don't check out Ada and I do not run `make install', while on my testing machine I have an Ada compiler installed.

After this patch, we have:

~/cvs/gcc/gcc bonzinip$ grep '::' */Make-lang.in
~/cvs/gcc/gcc bonzinip$ grep '^[a-z0-9 ]*:' */Make-lang.in

Jan-Benedict Glaw reported the problem and is going to tell me if the patch fixes his problem (which I could reproduce). Ok for mainline?

Paolo
2006-02-20  Paolo Bonzini  <bonzini@gnu.org>

	* configure.ac (target_list): Add install-info, dvi, html.
	* ada/Make-lang.in, cp/Make-lang.in, fortran/Make-lang.in,
	java/Make-lang.in, objc/Make-lang.in, objcp/Make-lang.in,
	treelang/Make-lang.in: Do not use double-colon rules.

Index: configure.ac
===================================================================
--- configure.ac	(revision 111295)
+++ configure.ac	(working copy)
@@ -3359,7 +3359,7 @@ done
 rm -f Make-hooks
 touch Make-hooks
 target_list="all.cross start.encap rest.encap tags \
-	install-common install-man \
+	install-common install-man install-info dvi html \
 	uninstall info man srcextra srcman srcinfo \
 	mostlyclean clean distclean maintainer-clean \
 	stage1 stage2 stage3 stage4 stageprofile stagefeedback"
Index: ada/Make-lang.in
===================================================================
--- ada/Make-lang.in	(revision 111299)
+++ ada/Make-lang.in	(working copy)
@@ -23,7 +23,7 @@
 # Each language makefile fragment must provide the following targets:
 #
 # foo.all.cross, foo.start.encap, foo.rest.encap,
-# foo.install-common, foo.install-man,
+# foo.install-common, foo.install-man, foo.install-info, foo.dvi,
 # foo.uninstall, foo.mostlyclean, foo.clean, foo.distclean,
 # foo.maintainer-clean, foo.stage1, foo.stage2, foo.stage3, foo.stage4
 #
@@ -424,11 +424,11 @@ ada.info: $(ADA_INFOFILES)
 ada.srcinfo: $(ADA_INFOFILES)
 	-$(CP) $^ $(srcdir)/doc
 
-install-info:: $(DESTDIR)$(infodir)/gnat_ugn_unw.info \
+ada.install-info: $(DESTDIR)$(infodir)/gnat_ugn_unw.info \
 	$(DESTDIR)$(infodir)/gnat_rm.info \
 	$(DESTDIR)$(infodir)/gnat-style.info
 
-dvi:: doc/gnat_ugn_unw.dvi \
+ada.dvi: doc/gnat_ugn_unw.dvi \
       doc/gnat_rm.dvi doc/gnat-style.dvi
 
 doc/gnat_ugn_unw.dvi: doc/gnat_ugn_unw.texi $(docdir)/include/fdl.texi	\
Index: cp/Make-lang.in
===================================================================
--- cp/Make-lang.in	(revision 111294)
+++ cp/Make-lang.in	(working copy)
@@ -24,7 +24,7 @@
 # Each language makefile fragment must provide the following targets:
 #
 # foo.all.cross, foo.start.encap, foo.rest.encap,
-# foo.install-common, foo.install-man,
+# foo.install-common, foo.install-man, foo.install-info, foo.dvi,
 # foo.uninstall,
 # foo.mostlyclean, foo.clean, foo.distclean,
 # foo.maintainer-clean, foo.stage1, foo.stage2, foo.stage3, foo.stage4
Index: fortran/Make-lang.in
===================================================================
--- fortran/Make-lang.in	(revision 111294)
+++ fortran/Make-lang.in	(working copy)
@@ -27,7 +27,7 @@
 # foo.all.cross, foo.start.encap, foo.rest.encap,
 # foo.info
 # foo.install-common, foo.install-info, foo.install-man,
-# foo.uninstall,
+# foo.uninstall, foo.install-info, foo.dvi, foo.html,
 # foo.mostlyclean, foo.clean, foo.distclean, foo.extraclean,
 # foo.maintainer-clean, foo.stage1, foo.stage2, foo.stage3, foo.stage4
 #
@@ -126,8 +126,8 @@ fortran.tags: force
 	etags --include TAGS.sub --include ../TAGS.sub
 
 fortran.info: doc/gfortran.info
-dvi:: doc/gfortran.dvi
-html:: $(htmldir)/gfortran/index.html
+fortran.dvi: doc/gfortran.dvi
+fortran.html: $(htmldir)/gfortran/index.html
 
 F95_MANFILES = doc/gfortran.1
 
@@ -199,7 +199,7 @@ fortran.install-common: install-finclude
 	  fi ; \
 	fi
 
-install-info:: $(DESTDIR)$(infodir)/gfortran.info
+fortran.install-info: $(DESTDIR)$(infodir)/gfortran.info
 
 fortran.install-man: $(DESTDIR)$(man1dir)/$(GFORTRAN_INSTALL_NAME)$(man1ext)
 
Index: java/Make-lang.in
===================================================================
--- java/Make-lang.in	(revision 111294)
+++ java/Make-lang.in	(working copy)
@@ -27,7 +27,7 @@
 # Each language makefile fragment must provide the following targets:
 #
 # foo.all.cross, foo.start.encap, foo.rest.encap,
-# foo.install-common, foo.install-man,
+# foo.install-common, foo.install-man, foo.install-info, foo.dvi, foo.html,
 # foo.uninstall,
 # foo.mostlyclean, foo.clean, foo.distclean,
 # foo.maintainer-clean, foo.stage1, foo.stage2, foo.stage3, foo.stage4
@@ -176,8 +176,8 @@ java.info: doc/gcj.info
 java.srcinfo: doc/gcj.info
 	-cp -p $^ $(srcdir)/doc
 
-dvi:: doc/gcj.dvi
-html:: $(htmldir)/java/index.html
+java.dvi: doc/gcj.dvi
+java.html: $(htmldir)/java/index.html
 JAVA_MANFILES = doc/gcj.1 doc/gcjh.1 doc/jv-scan.1 doc/jcf-dump.1 doc/gij.1 \
                 doc/jv-convert.1 doc/grmic.1 doc/grmiregistry.1 \
 		doc/gcj-dbtool.1 doc/gjnih.1
@@ -240,7 +240,7 @@ java.uninstall:
 	-rm -rf $(DESTDIR)$(man1dir)/jv-convert$(man1ext)
 	-rm -rf $(DESTDIR)$(man1dir)/gcj-dbtool$(man1ext)
 
-install-info:: $(DESTDIR)$(infodir)/gcj.info
+java.install-info: $(DESTDIR)$(infodir)/gcj.info
 
 #
 # Clean hooks:
Index: objc/Make-lang.in
===================================================================
--- objc/Make-lang.in	(revision 111294)
+++ objc/Make-lang.in	(working copy)
@@ -23,7 +23,7 @@
 # Each language makefile fragment must provide the following targets:
 #
 # foo.all.cross, foo.start.encap, foo.rest.encap,
-# foo.install-common, foo.install-man,
+# foo.install-common, foo.install-man, foo.install-info, foo.dvi,
 # foo.uninstall,
 # foo.mostlyclean, foo.clean, foo.distclean,
 # foo.maintainer-clean, foo.stage1, foo.stage2, foo.stage3, foo.stage4
Index: objcp/Make-lang.in
===================================================================
--- objcp/Make-lang.in	(revision 111294)
+++ objcp/Make-lang.in	(working copy)
@@ -23,7 +23,7 @@
 # Each language makefile fragment must provide the following targets:
 #
 # foo.all.cross, foo.start.encap, foo.rest.encap,
-# foo.install-common, foo.install-man,
+# foo.install-common, foo.install-man, foo.install-info, foo.dvi,
 # foo.uninstall,
 # foo.mostlyclean, foo.clean, foo.distclean,
 # foo.maintainer-clean, foo.stage1, foo.stage2, foo.stage3, foo.stage4
Index: treelang/Make-lang.in
===================================================================
--- treelang/Make-lang.in	(revision 111294)
+++ treelang/Make-lang.in	(working copy)
@@ -24,7 +24,7 @@
 # Each language makefile fragment must provide the following targets:
 #
 # foo.all.cross, foo.start.encap, foo.rest.encap,
-# foo.install-common, foo.install-man,
+# foo.install-common, foo.install-man, foo.install-info, foo.dvi, foo.html,
 # foo.uninstall,
 # foo.mostlyclean, foo.clean, foo.distclean,
 # foo.maintainer-clean, foo.stage1, foo.stage2, foo.stage3, foo.stage4
@@ -158,7 +158,7 @@ treelang.info: doc/treelang.info
 treelang.srcinfo: doc/treelang.info
 	-cp -p $^ $(srcdir)/doc
 
-dvi:: doc/treelang.dvi
+treelang.dvi: doc/treelang.dvi
 
 TEXI_TREELANG_FILES = treelang/treelang.texi \
 	 $(docdir)/include/gcc-common.texi \
@@ -173,7 +173,7 @@ doc/treelang.info: $(TEXI_TREELANG_FILES
 doc/treelang.dvi: $(TEXI_TREELANG_FILES)
 	$(TEXI2DVI) -I $(abs_docdir)/include -o $@ $<
 
-html:: $(htmldir)/treelang/index.html
+treelang.html: $(htmldir)/treelang/index.html
 
 $(htmldir)/treelang/index.html: $(TEXI_TREELANG_FILES)
 	$(mkinstalldirs) $(@D)
@@ -203,7 +203,7 @@ treelang.install.common.done:  installdi
 	$(STAMP) treelang.install.common.done
 
 # We might not be able to build the info files
-install-info:: $(DESTDIR)$(infodir)/treelang.info
+treelang.install-info: $(DESTDIR)$(infodir)/treelang.info
 
 treelang.install-man:
 

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