t-uclinux (generated_files): Add sysroot-suffix.h.
authorTom Tromey <tromey@redhat.com>
Thu, 3 Apr 2008 06:12:27 +0000 (06:12 +0000)
committerRalf Wildenhues <rwild@gcc.gnu.org>
Thu, 3 Apr 2008 06:12:27 +0000 (06:12 +0000)
gcc/
2008-04-03  Tom Tromey  <tromey@redhat.com>
    Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

* config/m68k/t-uclinux (generated_files): Add sysroot-suffix.h.
* config/bfin/t-bfin-linux (generated_files): Add
linux-sysroot-suffix.h.
* doc/install.texi (Prerequisites): Require make 3.80.
* doc/sourcebuild.texi (Front End Directory): Document new
variable.
* Makefile.in (generated_files): New variable.
(ALL_HOST_OBJS): New variable.
($(ALL_HOST_OBJS)): New target.

gcc/java/
2008-04-03  Tom Tromey  <tromey@redhat.com>

* Make-lang.in (java_OBJS): New variable.

gcc/objc/
2008-04-03  Tom Tromey  <tromey@redhat.com>

* Make-lang.in (objc_OBJS): New variable.

gcc/objcp/
2008-04-03  Tom Tromey  <tromey@redhat.com>

* Make-lang.in (obj-c++_OBJS): New variable.

gcc/cp/
2008-04-03  Tom Tromey  <tromey@redhat.com>

* Make-lang.in (c++_OBJS): New variable.

gcc/fortran/
2008-04-03  Tom Tromey  <tromey@redhat.com>

* Make-lang.in (fortran_OBJS): New variable.

Co-Authored-By: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
From-SVN: r133862

16 files changed:
gcc/ChangeLog
gcc/Makefile.in
gcc/config/bfin/t-bfin-linux
gcc/config/m68k/t-uclinux
gcc/cp/ChangeLog
gcc/cp/Make-lang.in
gcc/doc/install.texi
gcc/doc/sourcebuild.texi
gcc/fortran/ChangeLog
gcc/fortran/Make-lang.in
gcc/java/ChangeLog
gcc/java/Make-lang.in
gcc/objc/ChangeLog
gcc/objc/Make-lang.in
gcc/objcp/ChangeLog
gcc/objcp/Make-lang.in

index 9d27cccb10911b8289bd96708f66e2ee7c00e2ca..e874ac4000cc03739183e0ec9cb5b3589ffc06ca 100644 (file)
@@ -1,3 +1,16 @@
+2008-04-03  Tom Tromey  <tromey@redhat.com>
+           Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * config/m68k/t-uclinux (generated_files): Add sysroot-suffix.h.
+       * config/bfin/t-bfin-linux (generated_files): Add
+       linux-sysroot-suffix.h.
+       * doc/install.texi (Prerequisites): Require make 3.80.
+       * doc/sourcebuild.texi (Front End Directory): Document new
+       variable.
+       * Makefile.in (generated_files): New variable.
+       (ALL_HOST_OBJS): New variable.
+       ($(ALL_HOST_OBJS)): New target.
+
 2008-04-03  Paolo Bonzini  <bonzini@gnu.org>
 
         * tree-inline.c (copy_generic_body, copy_decl_no_change): Export.
index c39aa469fb0dd9364d0fdfa90a358004ada59693..eca3497e4ba7b550024aa927f6003e5c1da6d88f 100644 (file)
@@ -1246,6 +1246,15 @@ OBJS = $(OBJS-common) $(OBJS-md) $(OBJS-archive)
 
 OBJS-onestep = libbackend.o $(OBJS-archive)
 
+# This lists all host object files, whether they are included in this
+# compilation or not.
+ALL_HOST_OBJS = $(GCC_OBJS) $(C_OBJS) $(OBJS) libbackend.o \
+  @TREEBROWSER@ main.o gccspec.o version.o intl.o prefix.o cppspec.o \
+  $(foreach v,$(CONFIG_LANGUAGES),$($(v)_OBJS)) \
+  $(COLLECT2_OBJS) $(EXTRA_GCC_OBJS) \
+  mips-tfile.o mips-tdump.o \
+  $(PROTO_OBJS) $(GCOV_OBJS) $(GCOV_DUMP_OBJS)
+
 BACKEND = main.o @TREEBROWSER@ libbackend.a $(CPPLIB) $(LIBDECNUMBER)
 
 MOSTLYCLEANFILES = insn-flags.h insn-config.h insn-codes.h \
@@ -2999,6 +3008,16 @@ $(simple_generated_c:insn-%.c=s-%): s-%: build/gen%$(build_exeext) \
        $(SHELL) $(srcdir)/../move-if-change tmp-$*.c insn-$*.c
        $(STAMP) s-$*
 
+generated_files = config.h tm.h $(TM_P_H) $(TM_H) multilib.h \
+       $(simple_generated_h) $(simple_generated_c) specs.h \
+       tree-check.h genrtl.h insn-modes.h tm-preds.h tm-constrs.h \
+       $(ALL_GTFILES_H) gtype-desc.c gtype-desc.h gcov-iov.h
+
+# In order for parallel make to really start compiling the expensive
+# objects from $(OBJS-common) as early as possible, build all their
+# prerequisites strictly before all objects.
+$(ALL_HOST_OBJS) : | $(generated_files)
+
 # genconstants needs to run before insn-conditions.md is available
 # (because the constants may be used in the conditions).
 insn-constants.h: s-constants; @true
index f79ccacfbab435903a264721a3e4c6d5c50e5669..849dceed483c4e0b79a0e48ffb4e73d6537aa5fb 100644 (file)
@@ -33,3 +33,5 @@ linux-sysroot-suffix.h: $(srcdir)/config/bfin/print-sysroot-suffix.sh
        $(SHELL) $(srcdir)/config/bfin/print-sysroot-suffix.sh \
          "$(SYSTEM_HEADER_DIR)/../.." "$(MULTILIB_MATCHES)" \
          "$(MULTILIB_OPTIONS)" > $@
+
+generated_files += linux-sysroot-suffix.h
index 3ee359d790f7689b89648cc855317ef9293e0055..f8606723303642cfb34963ccc80a1fa980ffca7e 100644 (file)
@@ -14,3 +14,5 @@ sysroot-suffix.h: $(srcdir)/config/m68k/print-sysroot-suffix.sh
        $(SHELL) $(srcdir)/config/m68k/print-sysroot-suffix.sh \
          "$(SYSTEM_HEADER_DIR)/../.." "$(MULTILIB_MATCHES)" \
          "$(MULTILIB_OPTIONS)" > $@
+
+generated_files += sysroot-suffix.h
index 5b6c4981eb1ecfb4d99b17b61e37a5a725052947..c7600ecb0e2ab14513dc8ad700e3b30e4080fb0f 100644 (file)
@@ -1,3 +1,7 @@
+2008-04-03  Tom Tromey  <tromey@redhat.com>
+
+       * Make-lang.in (c++_OBJS): New variable.
+
 2008-04-03  Paolo Bonzini  <bonzini@gnu.org>
     
        * optimize.c (clone_body): New, from tree-inline.c.
index 6207ed13dd67178515dfa9a93551efdbc9010226..e1447b02e1e6b7a2e2b6af4367641992962c6553 100644 (file)
@@ -86,6 +86,8 @@ CXX_AND_OBJCXX_OBJS = cp/call.o cp/decl.o cp/expr.o cp/pt.o cp/typeck2.o \
 # Language-specific object files for C++.
 CXX_OBJS = cp/cp-lang.o stub-objc.o $(CXX_AND_OBJCXX_OBJS)
 
+c++_OBJS = $(CXX_OBJS) dummy-checksum.o cc1plus-checksum.o cp/g++spec.o
+
 # Use strict warnings for this front end.
 cp-warn = $(STRICT_WARN) $(CXX_COMPAT_WARN)
 
index 45d982c52ebfb826a2a217fd0038a8503cbb6c70..027b1692bd93fa2127a2c98748c135fe3473350d 100644 (file)
@@ -285,7 +285,7 @@ requirements.
 Necessary to uncompress GCC @command{tar} files when source code is
 obtained via FTP mirror sites.
 
-@item GNU make version 3.79.1 (or later)
+@item GNU make version 3.80 (or later)
 
 You must have GNU make installed to build GCC@.
 
index 7db367453fd8ff6d877f40be14ae728bd23a137d..896190cd536345dd8903742d1cfe02190eee96b3 100644 (file)
@@ -643,6 +643,9 @@ all generated files in the source directory that are not checked into
 CVS, but should not delete anything checked into CVS@.
 @end table
 
+@file{Make-lang.in} must also define a variable @code{@var{lang}_OBJS}
+to a list of host object files that are used by that language.
+
 @item lang.opt
 This file registers the set of switches that the front end accepts on
 the command line, and their @option{--help} text.  @xref{Options}.
index bc622efc95601335b465d950839444d78c484c86..5a6971fa5bb287b0f2e6b66c2200cc3e04dadda3 100644 (file)
@@ -1,3 +1,7 @@
+2008-04-03  Tom Tromey  <tromey@redhat.com>
+
+       * Make-lang.in (fortran_OBJS): New variable.
+
 2008-04-03  Paolo Bonzini  <bonzini@gnu.org>
 
         * f95-lang.c (insert_block): Kill.
index 378e394bbf9ac902eb47f130aeffd0e89694c749..bc9947b3942beab19f1103007bf21aaccd2ff8d5 100644 (file)
@@ -1,6 +1,7 @@
 # -*- makefile -*-
 # Top level makefile fragment for GNU gfortran, the GNU Fortran 95 compiler.
-# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software
+# Foundation, Inc.
 # Contributed by Paul Brook <paul@nowt.org
 # and Steven Bosscher <s.bosscher@student.tudelft.nl>
 
@@ -67,6 +68,8 @@ F95_OBJS = $(F95_PARSER_OBJS) \
     fortran/trans-intrinsic.o fortran/trans-io.o fortran/trans-openmp.o \
     fortran/trans-stmt.o fortran/trans-types.o
 
+fortran_OBJS = $(F95_OBJS) gfortranspec.o
+
 #\f
 # Define the names for selecting gfortran in LANGUAGES.
 fortran: f951$(exeext)
index ee1790b841a19705f095e0778397efc5e3508fe9..b77812d291f846c9ea7c3f7aaed9fe0e2fee3da3 100644 (file)
@@ -1,3 +1,7 @@
+2008-04-03  Tom Tromey  <tromey@redhat.com>
+
+       * Make-lang.in (java_OBJS): New variable.
+
 2008-04-03  Paolo Bonzini  <bonzini@gnu.org>
 
         * java-tree.h (insert_block): Kill.
index 8c6ce3e204f43d0fb0513844cdeab0050610ee1b..e96ca14d868431c00338e24f350f6b9ab9997ef6 100644 (file)
@@ -1,7 +1,7 @@
 # Top level -*- makefile -*- fragment for the GNU compiler for the Java(TM)
 # language.
 #   Copyright (C) 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-#   2005, 2006, 2007 Free Software Foundation, Inc.
+#   2005, 2006, 2007, 2008 Free Software Foundation, Inc.
 
 #This file is part of GCC.
 
@@ -90,6 +90,8 @@ JCFDUMP_OBJS = java/jcf-dump.o java/jcf-io.o java/jcf-depend.o java/jcf-path.o \
 
 JVGENMAIN_OBJS = java/jvgenmain.o java/mangle_name.o errors.o intl.o
 
+java_OBJS = $(sort $(JAVA_OBJS) $(JCFDUMP_OBJS) $(JVGENMAIN_OBJS)) jvspec.o
+
 # Use strict warnings for this front end.
 java-warn = $(STRICT_WARN)
 
index 25780c638512d2ab81691cf41d7b7bd42e7c78bc..6c32bb2211cd6040b533da0c990b832ce31f13b7 100644 (file)
@@ -1,3 +1,7 @@
+2008-04-03  Tom Tromey  <tromey@redhat.com>
+
+       * Make-lang.in (objc_OBJS): New variable.
+
 2008-03-27  Tom Tromey  <tromey@redhat.com>
 
        * Make-lang.in: Revert automatic dependency patch.
index af68816c58ee269770c4a4f6a07396a9758ed3cd..93a0042a8609b65578b4ac7bdecfb8f8685228ef 100644 (file)
@@ -1,6 +1,6 @@
 # Top level -*- makefile -*- fragment for GNU Objective-C
-#   Copyright (C) 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2007
-#   Free Software Foundation, Inc.
+#   Copyright (C) 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2007,
+#   2008 Free Software Foundation, Inc.
 
 #This file is part of GCC.
 
@@ -49,6 +49,8 @@ objc-warn = $(STRICT_WARN)
 # Language-specific object files for Objective C.
 OBJC_OBJS = objc/objc-lang.o objc/objc-act.o
 
+objc_OBJS = $(OBJC_OBJS) cc1obj-checksum.o
+
 cc1obj-dummy$(exeext): $(OBJC_OBJS) $(C_AND_OBJC_OBJS) dummy-checksum.o $(BACKEND) $(LIBDEPS)
        $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ \
              $(OBJC_OBJS) $(C_AND_OBJC_OBJS) dummy-checksum.o \
index 4a5cb75d6238824a531e61cb822f8ecfa4699839..5a7f73e58d07b563af9fb2a3dbe36f09067581a0 100644 (file)
@@ -1,3 +1,7 @@
+2008-04-03  Tom Tromey  <tromey@redhat.com>
+
+       * Make-lang.in (obj-c++_OBJS): New variable.
+
 2008-03-27  Tom Tromey  <tromey@redhat.com>
 
        * Make-lang.in: Revert automatic dependency patch.
index 97b79c2732ca25b523607f5c23e45b0d62c0434c..695df4d2f61a7327d42a4129c488758dd816d327 100644 (file)
@@ -1,5 +1,5 @@
 # Top level -*- makefile -*- fragment for GNU Objective-C++
-#   Copyright (C) 2005, 2007 Free Software Foundation, Inc.
+#   Copyright (C) 2005, 2007, 2008 Free Software Foundation, Inc.
 #   Contributed by Ziemowit Laski  <zlaski@apple.com>
 
 #This file is part of GCC.
@@ -51,6 +51,8 @@ objcp-warn = $(STRICT_WARN) -DOBJCPLUS -I$(srcdir)/objc -I$(srcdir)/cp
 OBJCXX_OBJS = objcp/objcp-act.o objcp/objcp-lang.o objcp/objcp-decl.o \
    $(CXX_AND_OBJCXX_OBJS)
 
+obj-c++_OBJS = $(OBJCXX_OBJS) cc1objplus-checksum.o
+
 cc1objplus-dummy$(exeext): $(OBJCXX_OBJS) dummy-checksum.o $(BACKEND) \
                $(LIBDEPS)
        $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ \