2009-04-09 Steve Ellcey <sje@cup.hp.com>
authorH.J. Lu <hjl.tools@gmail.com>
Thu, 9 Apr 2009 15:39:52 +0000 (15:39 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Thu, 9 Apr 2009 15:39:52 +0000 (15:39 +0000)
* Makefil.def (languages): New entries.
* Makefile.tpl (check-gcc-*): New generic target.
* Makefile.in: Regenerate.

ChangeLog
Makefile.def
Makefile.in
Makefile.tpl

index 85cc9df5ab8ee7907c2576860fc24bb150d92fcb..5a3509912c998ddc96008aae097e8d9aa40fdaf3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2009-04-09  Steve Ellcey  <sje@cup.hp.com>
+
+       * Makefil.def (languages): New entries.
+       * Makefile.tpl (check-gcc-*): New generic target.
+       * Makefile.in: Regenerate.
+
 2009-03-27  Eli Zaretskii  <eliz@gnu.org>
 
        * djunpack.bat: Use ".." quoting in Sed command, for the sake of
index a0a5266d21894b89cf2cbf0834063ff4a4e686e2..c6a9291358c27015fb494dd4d7831b8c8154e9bb 100644 (file)
@@ -541,6 +541,19 @@ dependencies = { module=all-target-libgloss; on=all-target-newlib; };
 dependencies = { module=all-target-winsup; on=all-target-libiberty; };
 dependencies = { module=all-target-winsup; on=all-target-libtermcap; };
 
+languages = { language=c;      gcc-check-target=check-gcc; };
+languages = { language=c++;    gcc-check-target=check-c++;
+                               lib-check-target=check-target-libstdc++-v3; };
+languages = { language=fortran;        gcc-check-target=check-fortran;
+                               lib-check-target=check-target-libgfortran; };
+languages = { language=java;   gcc-check-target=check-java;
+                               lib-check-target=check-target-libjava; };
+languages = { language=ada;    gcc-check-target=check-ada;
+                               lib-check-target=check-target-libada; };
+languages = { language=objc;   gcc-check-target=check-objc;
+                               lib-check-target=check-target-libobjc; };
+languages = { language=obj-c++;        gcc-check-target=check-obj-c++; };
+
 // Toplevel bootstrap
 bootstrap_stage = {
        id=1 ;
index 26d1d01b58430997ca80414c93cfab49ec1800a7..de33e1130a0b6e04513fb75f36ef0ea09b90fde1 100644 (file)
@@ -52921,19 +52921,63 @@ cross: all-build all-gas all-ld
 @endif gcc-no-bootstrap
 
 @if gcc
-.PHONY: check-gcc-c++
+
+.PHONY: check-gcc-c check-c
+check-gcc-c:
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-gcc);
+check-c: check-gcc-c
+
+.PHONY: check-gcc-c++ check-c++
 check-gcc-c++:
-       @if [ -f ./gcc/Makefile ] ; then \
-         r=`${PWD_COMMAND}`; export r; \
-         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-         $(HOST_EXPORTS) \
-         (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-c++); \
-       else \
-         true; \
-       fi
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-c++);
+check-c++: check-gcc-c++ check-target-libstdc++-v3
+
+.PHONY: check-gcc-fortran check-fortran
+check-gcc-fortran:
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-fortran);
+check-fortran: check-gcc-fortran check-target-libgfortran
+
+.PHONY: check-gcc-java check-java
+check-gcc-java:
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-java);
+check-java: check-gcc-java check-target-libjava
+
+.PHONY: check-gcc-ada check-ada
+check-gcc-ada:
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-ada);
+check-ada: check-gcc-ada check-target-libada
+
+.PHONY: check-gcc-objc check-objc
+check-gcc-objc:
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-objc);
+check-objc: check-gcc-objc check-target-libobjc
+
+.PHONY: check-gcc-obj-c++ check-obj-c++
+check-gcc-obj-c++:
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-obj-c++);
+check-obj-c++: check-gcc-obj-c++
 
-.PHONY: check-c++
-check-c++: check-target-libstdc++-v3 check-gcc-c++
 
 # Install the gcc headers files, but not the fixed include files,
 # which Cygnus is not allowed to distribute.  This rule is very
index acb349ff742f99107c4abeaf0847657616ed4587..1de3b0605cf60bf69c00d8c1f8ed01059c5305be 100644 (file)
@@ -1216,19 +1216,15 @@ cross: all-build all-gas all-ld
 @endif gcc-no-bootstrap
 
 @if gcc
-.PHONY: check-gcc-c++
-check-gcc-c++:
-       @if [ -f ./gcc/Makefile ] ; then \
-         r=`${PWD_COMMAND}`; export r; \
-         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-         $(HOST_EXPORTS) \
-         (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-c++); \
-       else \
-         true; \
-       fi
-
-.PHONY: check-c++
-check-c++: check-target-libstdc++-v3 check-gcc-c++
+[+ FOR languages +]
+.PHONY: check-gcc-[+language+] check-[+language+]
+check-gcc-[+language+]:
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) [+gcc-check-target+]);
+check-[+language+]: check-gcc-[+language+][+ IF lib-check-target +] [+ lib-check-target +][+ ENDIF lib-check-target +]
+[+ ENDFOR languages +]
 
 # Install the gcc headers files, but not the fixed include files,
 # which Cygnus is not allowed to distribute.  This rule is very