summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2012-06-29 16:12:35 +0000
committersteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2012-06-29 16:12:35 +0000
commite53d55e7b556f38b546938e3a16cf2f8ed1e27d8 (patch)
treef78869254e81452ccc6da3411b5dc9dd8cc02315
parent22d29d94535f12c8f3f6a0f2441137f1256a988d (diff)
downloadgcc-e53d55e7b556f38b546938e3a16cf2f8ed1e27d8.tar.gz
toplevel/
* configure.ac: Skip C if explicitly selected. * configure: Regenerate. gcc/ * configure.ac: Remove special gtfiles case for C. * configure: Regenerate. * Makefile.in: Remove C front-end hooks and build hooks that will be picked up from c/Make-lang.in now. Add tree-mudflap to C_COMMON_OBJS. * gengtype.c (files_rules): Adjust gt-files for c/c-decl.c. * config/vms/vms.c: Look for c-tree.h in c/. * doc/gty.texi: Remove reference to c-config-lang.in. * doc/sourcebuild.texi: Document the c/ subdirectory. c/ * Make-lang.in: New file, rules migrated from gcc/Makefile.in and add language Makefile hooks. * config-lang.in: New file. * c-config-lang.in: Moved from gcc/config-lang.in to here, and add the required "normal" config-lang.in rules. * c-lang.h: Moved from gcc/ to here. * c-tree.h: Likewise. * c-objc-common.c: Likewise. * c-objc-common.h: Likewise. * c-typeck.c: Likewise. * c-convert.c: Likewise. * c-lang.c: Likewise. * c-aux-info.c: Likewise. * c-errors.c: Likewise. * gccspec.c: Likewise. * c-decl.c: Likewise. Include gt-c-c-decl.h, not gt-c-decl.h. * c-parser.c: Likewise. Include gt-c-c-parser.h, not gt-c-parser.h. c-family/ * cppspec.c: Moved from gcc/ to here. objc/ * Make-ang.in: Adjust for move of C front-end files. * config-lang.in: Likewise. * objc-encoding.c: Look for cp-tree.h in cp/, and for c-tree.h and c-lang.h in c/. * objc-runtime-shared-support.c: Likewise. * objc-next-runtime-abi-01.c: Likewise. * objc-next-runtime-abi-02.c: Likewise. * objc-gnu-runtime-abi-01.c: Likewise. * objc-act.c: Likewise. * objc-lang.c: Likewise. cp/ * Make-lang.in: Remove tree-mudflap.o from CXX_AND_OBJCXX_OBJS. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189080 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--ChangeLog5
-rwxr-xr-xconfigure7
-rw-r--r--configure.ac7
-rw-r--r--gcc/ChangeLog12
-rw-r--r--gcc/Makefile.in126
-rw-r--r--gcc/c-family/ChangeLog4
-rw-r--r--gcc/c-family/cppspec.c (renamed from gcc/cppspec.c)0
-rw-r--r--gcc/c/ChangeLog25
-rw-r--r--gcc/c/Make-lang.in196
-rw-r--r--gcc/c/c-aux-info.c (renamed from gcc/c-aux-info.c)0
-rw-r--r--gcc/c/c-convert.c (renamed from gcc/c-convert.c)0
-rw-r--r--gcc/c/c-decl.c (renamed from gcc/c-decl.c)2
-rw-r--r--gcc/c/c-errors.c (renamed from gcc/c-errors.c)0
-rw-r--r--gcc/c/c-lang.c (renamed from gcc/c-lang.c)0
-rw-r--r--gcc/c/c-lang.h (renamed from gcc/c-lang.h)0
-rw-r--r--gcc/c/c-objc-common.c (renamed from gcc/c-objc-common.c)0
-rw-r--r--gcc/c/c-objc-common.h (renamed from gcc/c-objc-common.h)0
-rw-r--r--gcc/c/c-parser.c (renamed from gcc/c-parser.c)2
-rw-r--r--gcc/c/c-tree.h (renamed from gcc/c-tree.h)0
-rw-r--r--gcc/c/c-typeck.c (renamed from gcc/c-typeck.c)0
-rw-r--r--gcc/c/config-lang.in (renamed from gcc/c-config-lang.in)20
-rw-r--r--gcc/c/gccspec.c (renamed from gcc/gccspec.c)0
-rw-r--r--gcc/config/vms/vms-c.c2
-rwxr-xr-xgcc/configure5
-rw-r--r--gcc/configure.ac5
-rw-r--r--gcc/cp/ChangeLog4
-rw-r--r--gcc/cp/Make-lang.in3
-rw-r--r--gcc/doc/gty.texi2
-rw-r--r--gcc/doc/sourcebuild.texi18
-rw-r--r--gcc/gengtype.c10
-rw-r--r--gcc/objc/ChangeLog13
-rw-r--r--gcc/objc/Make-lang.in4
-rw-r--r--gcc/objc/config-lang.in2
-rw-r--r--gcc/objc/objc-act.c6
-rw-r--r--gcc/objc/objc-encoding.c6
-rw-r--r--gcc/objc/objc-gnu-runtime-abi-01.c6
-rw-r--r--gcc/objc/objc-lang.c6
-rw-r--r--gcc/objc/objc-next-runtime-abi-01.c6
-rw-r--r--gcc/objc/objc-next-runtime-abi-02.c6
-rw-r--r--gcc/objc/objc-runtime-shared-support.c6
40 files changed, 351 insertions, 165 deletions
diff --git a/ChangeLog b/ChangeLog
index ecdf0f7aefc..493ef682577 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2012-06-29 Steven Bosscher <steven@gcc.gnu.org>
+
+ * configure.ac: Skip C if explicitly selected.
+ * configure: Regenerate.
+
2012-06-28 Christophe Lyon <christophe.lyon@st.com>
* configure.ac (CFLAGS_FOR_TARGET, CXXFLAGS_FOR_TARGET): Make sure
diff --git a/configure b/configure
index 1ab12dba8a4..5eba95c0739 100755
--- a/configure
+++ b/configure
@@ -6310,8 +6310,11 @@ if test -d ${srcdir}/gcc; then
case ,${enable_languages}, in
*,${language},*)
- # Language was explicitly selected; include it.
- add_this_lang=yes
+ # Language was explicitly selected; include it
+ # unless it is C, which is enabled by default.
+ if test "$language" != "c"; then
+ add_this_lang=yes
+ fi
;;
*,all,*)
# 'all' was selected, select it if it is a default language
diff --git a/configure.ac b/configure.ac
index 82dbe4ce50c..2ddd040d0e9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1816,8 +1816,11 @@ if test -d ${srcdir}/gcc; then
case ,${enable_languages}, in
*,${language},*)
- # Language was explicitly selected; include it.
- add_this_lang=yes
+ # Language was explicitly selected; include it
+ # unless it is C, which is enabled by default.
+ if test "$language" != "c"; then
+ add_this_lang=yes
+ fi
;;
*,all,*)
# 'all' was selected, select it if it is a default language
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b45840fda7e..7a1c4cc9b84 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,17 @@
2012-06-29 Steven Bosscher <steven@gcc.gnu.org>
+ * configure.ac: Remove special gtfiles case for C.
+ * configure: Regenerate.
+ * Makefile.in: Remove C front-end hooks and build hooks that
+ will be picked up from c/Make-lang.in now.
+ Add tree-mudflap to C_COMMON_OBJS.
+ * gengtype.c (files_rules): Adjust gt-files for c/c-decl.c.
+ * config/vms/vms.c: Look for c-tree.h in c/.
+ * doc/gty.texi: Remove reference to c-config-lang.in.
+ * doc/sourcebuild.texi: Document the c/ subdirectory.
+
+2012-06-29 Steven Bosscher <steven@gcc.gnu.org>
+
* system.h (CASE_USE_BIT_TESTS): Poison.
* stmt.c (CASE_USE_BIT_TESTS): Fold away into its only user ...
(expand_switch_using_bit_tests_p): ...here.
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index c400e02b1c9..afea4f38622 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -502,8 +502,8 @@ host_xm_defines=@host_xm_defines@
xm_file_list=@xm_file_list@
xm_include_list=@xm_include_list@
xm_defines=@xm_defines@
-lang_checks=check-gcc
-lang_checks_parallelized=check-gcc
+lang_checks=
+lang_checks_parallelized=
dg_target_exps:=alpha.exp,arm.exp,avr.exp,bfin.exp,cris.exp,frv.exp
dg_target_exps:=$(dg_target_exps),i386.exp,ia64.exp,m68k.exp,microblaze.exp
dg_target_exps:=$(dg_target_exps),mips.exp,powerpc.exp,rx.exp,s390.exp,sh.exp
@@ -717,11 +717,11 @@ GENERATED_MANPAGES = @GENERATED_MANPAGES@
OTHER_FIXINCLUDES_DIRS=
# A list of all the language-specific executables.
-COMPILERS = cc1$(exeext) @all_compilers@
+COMPILERS = @all_compilers@
# List of things which should already be built whenever we try to use xgcc
# to compile anything (without linking).
-GCC_PASSES=xgcc$(exeext) cc1$(exeext) specs
+GCC_PASSES=xgcc$(exeext) specs
# Directory to link to, when using the target `maketest'.
DIR = ../gcc
@@ -1133,23 +1133,18 @@ CXX_TARGET_OBJS=@cxx_target_objs@
# Target specific, Fortran specific object file
FORTRAN_TARGET_OBJS=@fortran_target_objs@
-# Object files for gcc driver.
+# Object files for gcc many-languages driver.
GCC_OBJS = gcc.o ggc-none.o
# Language-specific object files shared by all C-family front ends.
+# FIXME: tree-mudflap is C-family only, but it is also part of the middle-end.
+# The mudflap machinery should be properly separated from the front ends, and
+# perhaps turned into a plugin.
C_COMMON_OBJS = c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o \
c-family/c-format.o c-family/c-gimplify.o c-family/c-lex.o \
c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o \
c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o \
- c-family/c-semantics.o c-family/c-ada-spec.o
-
-# Language-specific object files for C and Objective C.
-C_AND_OBJC_OBJS = attribs.o c-errors.o c-decl.o c-typeck.o \
- c-convert.o c-aux-info.o c-objc-common.o c-parser.o tree-mudflap.o \
- $(C_COMMON_OBJS) $(C_TARGET_OBJS)
-
-# Language-specific object files for C.
-C_OBJS = c-lang.o c-family/stub-objc.o $(C_AND_OBJC_OBJS)
+ c-family/c-semantics.o c-family/c-ada-spec.o tree-mudflap.o
# Language-independent object files.
# We put the insn-*.o files first so that a parallel make will build
@@ -1475,11 +1470,10 @@ OBJS-libcommon-target = $(common_out_object_file) prefix.o params.o \
opts.o opts-common.o options.o vec.o hooks.o common/common-targhooks.o
# This lists all host objects for the front ends.
-ALL_HOST_FRONTEND_OBJS = $(C_OBJS) \
- $(foreach v,$(CONFIG_LANGUAGES),$($(v)_OBJS))
+ALL_HOST_FRONTEND_OBJS = $(foreach v,$(CONFIG_LANGUAGES),$($(v)_OBJS))
ALL_HOST_BACKEND_OBJS = $(GCC_OBJS) $(OBJS) $(OBJS-libcommon) \
- $(OBJS-libcommon-target) @TREEBROWSER@ main.o gccspec.o cppspec.o \
+ $(OBJS-libcommon-target) @TREEBROWSER@ main.o c-family/cppspec.o \
$(COLLECT2_OBJS) $(EXTRA_GCC_OBJS) $(GCOV_OBJS) $(GCOV_DUMP_OBJS)
# This lists all host object files, whether they are included in this
@@ -1496,7 +1490,7 @@ MOSTLYCLEANFILES = insn-flags.h insn-config.h insn-codes.h \
tm-preds.h tm-constrs.h checksum-options \
tree-check.h min-insn-modes.c insn-modes.c insn-modes.h \
genrtl.h gt-*.h gtype-*.h gtype-desc.c gtyp-input.list \
- xgcc$(exeext) cpp$(exeext) cc1$(exeext) \
+ xgcc$(exeext) cpp$(exeext) \
$(EXTRA_PROGRAMS) gcc-cross$(exeext) \
$(SPECS) collect2$(exeext) gcc-ar$(exeext) gcc-nm$(exeext) \
gcc-ranlib$(exeext) \
@@ -1740,12 +1734,6 @@ ifeq ($(enable_plugin),yes)
native: gengtype$(exeext)
endif
-# Define the names for selecting languages in LANGUAGES.
-c: cc1$(exeext)
-
-# Tell GNU make these are phony targets.
-.PHONY: c
-
# On the target machine, finish building a cross compiler.
# This does the things that can't be done on the host machine.
rest.cross: specs
@@ -1773,19 +1761,19 @@ libcommon.a: $(OBJS-libcommon)
# We call this executable `xgcc' rather than `gcc'
# to avoid confusion if the current directory is in the path
# and CC is `gcc'. It is renamed to `gcc' when it is installed.
-xgcc$(exeext): $(GCC_OBJS) gccspec.o libcommon-target.a $(LIBDEPS) \
+xgcc$(exeext): $(GCC_OBJS) c/gccspec.o libcommon-target.a $(LIBDEPS) \
$(EXTRA_GCC_OBJS)
+$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ $(GCC_OBJS) \
- gccspec.o $(EXTRA_GCC_OBJS) libcommon-target.a \
+ c/gccspec.o $(EXTRA_GCC_OBJS) libcommon-target.a \
$(EXTRA_GCC_LIBS) $(LIBS)
-# cpp is to cpp0 as gcc is to cc1.
-# The only difference from xgcc is that it's linked with cppspec.o
-# instead of gccspec.o.
-cpp$(exeext): $(GCC_OBJS) cppspec.o libcommon-target.a $(LIBDEPS) \
+# cpp is to cpp0 as e.g. g++ is to cc1plus: Just another driver.
+# It is part of c-family because the handled extensions are hard-coded
+# and only contain c-family extensions (see known_suffixes).
+cpp$(exeext): $(GCC_OBJS) c-family/cppspec.o libcommon-target.a $(LIBDEPS) \
$(EXTRA_GCC_OBJS)
+$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ $(GCC_OBJS) \
- cppspec.o $(EXTRA_GCC_OBJS) libcommon-target.a \
+ c-family/cppspec.o $(EXTRA_GCC_OBJS) libcommon-target.a \
$(EXTRA_GCC_LIBS) $(LIBS)
# Dump a specs file to make -B./ read these specs over installed ones.
@@ -1803,19 +1791,6 @@ checksum-options:
echo "$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS)" > checksum-options.tmp \
&& $(srcdir)/../move-if-change checksum-options.tmp checksum-options
-# compute checksum over all object files and the options
-cc1-checksum.c : build/genchecksum$(build_exeext) checksum-options \
- $(C_OBJS) $(BACKEND) $(LIBDEPS)
- build/genchecksum$(build_exeext) $(C_OBJS) $(BACKEND) $(LIBDEPS) \
- checksum-options > cc1-checksum.c.tmp && \
- $(srcdir)/../move-if-change cc1-checksum.c.tmp cc1-checksum.c
-
-cc1-checksum.o : cc1-checksum.c $(CONFIG_H) $(SYSTEM_H)
-
-cc1$(exeext): $(C_OBJS) cc1-checksum.o $(BACKEND) $(LIBDEPS)
- +$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ $(C_OBJS) \
- cc1-checksum.o $(BACKEND) $(LIBS) $(BACKENDLIBS)
-
#
# Build libgcc.a.
@@ -1865,52 +1840,6 @@ srcextra: gcc.srcextra lang.srcextra
gcc.srcextra: gengtype-lex.c
-cp -p $^ $(srcdir)
-# C language specific files.
-c-aux-info.o : c-aux-info.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
- $(C_TREE_H) $(TREE_H) $(FLAGS_H)
-
-c-convert.o : c-convert.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
- $(TREE_H) $(C_TREE_H) $(FLAGS_H) $(C_COMMON_H) convert.h \
- langhooks.h $(TARGET_H)
-
-c-decl.o : c-decl.c c-lang.h $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
- $(TREE_H) $(C_TREE_H) $(GGC_H) $(TARGET_H) $(FLAGS_H) $(FUNCTION_H) \
- output.h debug.h toplev.h intl.h $(TM_P_H) $(TREE_INLINE_H) \
- $(TIMEVAR_H) $(OPTS_H) $(C_PRAGMA_H) gt-c-decl.h $(CGRAPH_H) \
- $(HASHTAB_H) $(LANGHOOKS_DEF_H) \
- $(TREE_DUMP_H) $(C_COMMON_H) $(CPPLIB_H) $(DIAGNOSTIC_CORE_H) \
- $(INPUT_H) langhooks.h pointer-set.h tree-iterator.h \
- $(PLUGIN_H) c-family/c-ada-spec.h c-family/c-objc.h
-
-c-errors.o: c-errors.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
- $(C_TREE_H) $(FLAGS_H) $(DIAGNOSTIC_H) $(TM_P_H)
-
-c-lang.o : c-lang.c c-objc-common.h \
- $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
- $(C_TREE_H) $(DIAGNOSTIC_CORE_H) \
- langhooks.h $(LANGHOOKS_DEF_H) $(C_COMMON_H) gtype-c.h \
- $(C_PRAGMA_H) $(TREE_INLINE_H)
-
-c-objc-common.o : c-objc-common.c c-objc-common.h \
- $(CONFIG_H) $(SYSTEM_H) coretypes.h \
- $(TREE_H) $(C_TREE_H) $(FLAGS_H) $(DIAGNOSTIC_H) \
- langhooks.h $(GGC_H) $(C_PRETTY_PRINT_H) intl.h \
- $(TREE_PRETTY_PRINT_H)
-
-c-parser.o : c-parser.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
- $(TM_H) $(TREE_H) $(C_TREE_H) $(C_COMMON_H) $(C_PRAGMA_H) $(CPPLIB_H) \
- $(GGC_H) $(TIMEVAR_H) $(INPUT_H) $(FLAGS_H) \
- gt-c-parser.h langhooks.h \
- $(VEC_H) $(TARGET_H) $(CGRAPH_H) $(PLUGIN_H) \
- c-family/c-objc.h
-
-c-typeck.o : c-typeck.c c-lang.h $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
- $(TREE_H) $(C_TREE_H) $(TARGET_H) $(FLAGS_H) intl.h \
- langhooks.h tree-iterator.h $(BITMAP_H) $(GIMPLE_H) \
- c-family/c-objc.h
-
-
-
graph.o: graph.c $(SYSTEM_H) coretypes.h $(TM_H) toplev.h $(DIAGNOSTIC_CORE_H) $(FLAGS_H) \
$(RTL_H) $(FUNCTION_H) hard-reg-set.h $(BASIC_BLOCK_H) graph.h $(OBSTACK_H) \
$(CONFIG_H) $(EMIT_RTL_H)
@@ -1987,7 +1916,10 @@ lto-wrapper$(exeext): lto-wrapper.o ggc-none.o libcommon-target.a $(LIBDEPS)
lto-wrapper.o: lto-wrapper.c $(CONFIG_H) $(SYSTEM_H) coretypes.h intl.h \
$(OBSTACK_H) $(DIAGNOSTIC_H) $(OPTS_H) $(OPTIONS_H)
-# Files used by all variants of C.
+# Files used by all variants of C or by the stand-alone pre-processor.
+c-family/cppspec.o: c-family/cppspec.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
+ $(TM_H) $(GCC_H) $(OPTS_H)
+
c-family/c-common.o : c-family/c-common.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(TM_H) $(TREE_H) \
$(OBSTACK_H) $(C_COMMON_H) $(FLAGS_H) toplev.h output.h $(C_PRAGMA_H) \
@@ -2107,16 +2039,6 @@ gcc.o: gcc.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) intl.h multilib.h \
$(DRIVER_DEFINES) \
-c $(srcdir)/gcc.c $(OUTPUT_OPTION))
-gccspec.o: gccspec.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(GCC_H) \
- $(OPTS_H)
- (SHLIB='$(SHLIB)'; \
- $(COMPILER) $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \
- $(DRIVER_DEFINES) \
- -c $(srcdir)/gccspec.c $(OUTPUT_OPTION))
-
-cppspec.o: cppspec.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(GCC_H) \
- $(OPTS_H)
-
specs.h : s-specs ; @true
s-specs : Makefile
lsf="$(lang_specs_files)"; for f in $$lsf; do \
@@ -4999,7 +4921,7 @@ site.exp: ./config.status Makefile
-e '1,/^## All variables above are.*##/ d' >> site.exp
-@rm -f ./site.tmp
-CHECK_TARGETS = check-gcc @check_languages@
+CHECK_TARGETS = @check_languages@
check: $(CHECK_TARGETS)
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index dbab100bbf3..297439bae9a 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,7 @@
+2012-06-29 Steven Bosscher <steven@gcc.gnu.org>
+
+ * cppspec.c: Moved from gcc/ to here.
+
2012-06-27 Kai Tietz <ktietz@redhat.com>
PR preprocessor/37215
diff --git a/gcc/cppspec.c b/gcc/c-family/cppspec.c
index c9ff70e5544..c9ff70e5544 100644
--- a/gcc/cppspec.c
+++ b/gcc/c-family/cppspec.c
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
new file mode 100644
index 00000000000..f8572aaa13f
--- /dev/null
+++ b/gcc/c/ChangeLog
@@ -0,0 +1,25 @@
+2012-06-29 Steven Bosscher <steven@gcc.gnu.org>
+
+ * Make-lang.in: New file, rules migrated from gcc/Makefile.in
+ and add language Makefile hooks.
+ * config-lang.in: New file.
+ * c-config-lang.in: Moved from gcc/config-lang.in to here, and
+ add the required "normal" config-lang.in rules.
+ * c-lang.h: Moved from gcc/ to here.
+ * c-tree.h: Likewise.
+ * c-objc-common.c: Likewise.
+ * c-objc-common.h: Likewise.
+ * c-typeck.c: Likewise.
+ * c-convert.c: Likewise.
+ * c-lang.c: Likewise.
+ * c-aux-info.c: Likewise.
+ * c-errors.c: Likewise.
+ * gccspec.c: Likewise.
+ * c-decl.c: Likewise. Include gt-c-c-decl.h, not gt-c-decl.h.
+ * c-parser.c: Likewise. Include gt-c-c-parser.h, not gt-c-parser.h.
+
+Copyright (C) 2012 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
diff --git a/gcc/c/Make-lang.in b/gcc/c/Make-lang.in
new file mode 100644
index 00000000000..08b1ba1a919
--- /dev/null
+++ b/gcc/c/Make-lang.in
@@ -0,0 +1,196 @@
+# Top level -*- makefile -*- fragment for GNU C - C language.
+# Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+# 2005, 2007, 2008, 2009, 2010, 2011, 2012
+# Free Software Foundation, Inc.
+
+#This file is part of GCC.
+
+#GCC is free software; you can redistribute it and/or modify
+#it under the terms of the GNU General Public License as published by
+#the Free Software Foundation; either version 3, or (at your option)
+#any later version.
+
+#GCC is distributed in the hope that it will be useful,
+#but WITHOUT ANY WARRANTY; without even the implied warranty of
+#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+#GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with GCC; see the file COPYING3. If not see
+# <http://www.gnu.org/licenses/>.
+
+# This file provides the language dependent support in the main Makefile.
+# 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-info, foo.install-pdf,
+# foo.install-html, foo.info, foo.dvi, foo.pdf, foo.html, foo.uninstall,
+# foo.mostlyclean, foo.clean, foo.distclean,
+# foo.maintainer-clean, foo.stage1, foo.stage2, foo.stage3, foo.stage4
+#
+# where `foo' is the name of the language.
+#
+# It should also provide rules for:
+#
+# - making any compiler driver (eg: gcc)
+# - the compiler proper (eg: cc1)
+# - define the names for selecting the language in LANGUAGES.
+
+#
+# Define the names for selecting c in LANGUAGES.
+c: cc1$(exeext)
+
+# Tell GNU make to ignore these if they exist.
+.PHONY: c gcc
+
+# The C front end driver. This is different from the drivers for other
+# front ends, because there is no C language specific driver (i.e. nothing
+# is to cc1 as e.g. g++ is to cc1plus, or gfortran is to f951).
+c/gccspec.o: c/gccspec.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(GCC_H) \
+ $(OPTS_H)
+ (SHLIB='$(SHLIB)'; \
+ $(COMPILER) $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \
+ $(DRIVER_DEFINES) \
+ -c $(srcdir)/c/gccspec.c $(OUTPUT_OPTION))
+
+# The C compiler itself.
+
+# Language-specific object files for C and Objective C.
+C_AND_OBJC_OBJS = attribs.o c/c-errors.o c/c-decl.o c/c-typeck.o \
+ c/c-convert.o c/c-aux-info.o c/c-objc-common.o c/c-parser.o \
+ $(C_COMMON_OBJS) $(C_TARGET_OBJS)
+
+# Language-specific object files for C.
+C_OBJS = c/c-lang.o c-family/stub-objc.o $(C_AND_OBJC_OBJS)
+c_OBJS = $(C_OBJS) cc1-checksum.o c/gccspec.o
+
+# Use strict warnings for this front end.
+c-warn = $(STRICT_WARN)
+
+# compute checksum over all object files and the options
+cc1-checksum.c : build/genchecksum$(build_exeext) checksum-options \
+ $(C_OBJS) $(BACKEND) $(LIBDEPS)
+ build/genchecksum$(build_exeext) $(C_OBJS) $(BACKEND) $(LIBDEPS) \
+ checksum-options > cc1-checksum.c.tmp && \
+ $(srcdir)/../move-if-change cc1-checksum.c.tmp cc1-checksum.c
+
+cc1-checksum.o : cc1-checksum.c $(CONFIG_H) $(SYSTEM_H)
+
+cc1$(exeext): $(C_OBJS) cc1-checksum.o $(BACKEND) $(LIBDEPS)
+ +$(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ $(C_OBJS) \
+ cc1-checksum.o $(BACKEND) $(LIBS) $(BACKENDLIBS)
+#
+# Build hooks:
+
+c.info:
+c.dvi:
+c.pdf:
+c.html:
+c.install-info:
+c.install-pdf:
+c.install-html:
+c.all.cross:
+c.start.encap:
+c.rest.encap:
+c.srcinfo:
+c.srcextra: gengtype-lex.c
+ -cp -p $^ $(srcdir)
+c.tags: force
+ cd $(srcdir)/c; etags -o TAGS.sub *.c *.h; \
+ etags --include TAGS.sub --include ../TAGS.sub
+c.man:
+c.srcman:
+
+# List of targets that can use the generic check- rule and its // variant.
+lang_checks += check-gcc
+lang_checks_parallelized += check-gcc
+
+# 'make check' in gcc/ looks for check-c. Redirect it to check-gcc.
+check-c : check-gcc
+
+#
+# Install hooks:
+# cc1 is installed elsewhere as part of $(COMPILERS).
+
+c.install-common:
+c.install-man:
+c.install-plugin:
+c.uninstall:
+
+#
+# Clean hooks:
+# A lot of the ancillary files are deleted by the main makefile.
+# We just have to delete files specific to us.
+
+c.mostlyclean:
+ -rm -f cc1$(exeext)
+ -rm -f c/*$(objext)
+ -rm -f c/*$(coverageexts)
+c.clean:
+c.distclean:
+ -rm -f c/config.status c/Makefile
+c.maintainer-clean:
+#
+# Stage hooks:
+# The main makefile has already created stage?/cp.
+
+c.stage1: stage1-start
+ -mv c/*$(objext) stage1/c
+c.stage2: stage2-start
+ -mv c/*$(objext) stage2/c
+c.stage3: stage3-start
+ -mv c/*$(objext) stage3/c
+c.stage4: stage4-start
+ -mv c/*$(objext) stage4/c
+c.stageprofile: stageprofile-start
+ -mv c/*$(objext) stageprofile/c
+c.stagefeedback: stagefeedback-start
+ -mv c/*$(objext) stagefeedback/c
+
+#
+# .o: .h dependencies.
+# C language specific files.
+C_TREE_H = c/c-tree.h $(C_COMMON_H) $(DIAGNOSTIC_H)
+c/c-aux-info.o : c/c-aux-info.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
+ $(C_TREE_H) $(TREE_H) $(FLAGS_H)
+
+c/c-convert.o : c/c-convert.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
+ $(TREE_H) $(C_TREE_H) $(FLAGS_H) $(C_COMMON_H) convert.h \
+ langhooks.h $(TARGET_H)
+
+c/c-decl.o : c/c-decl.c c/c-lang.h $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
+ $(TREE_H) $(C_TREE_H) $(GGC_H) $(TARGET_H) $(FLAGS_H) $(FUNCTION_H) \
+ output.h debug.h toplev.h intl.h $(TM_P_H) $(TREE_INLINE_H) \
+ $(TIMEVAR_H) $(OPTS_H) $(C_PRAGMA_H) gt-c-c-decl.h $(CGRAPH_H) \
+ $(HASHTAB_H) $(LANGHOOKS_DEF_H) \
+ $(TREE_DUMP_H) $(C_COMMON_H) $(CPPLIB_H) $(DIAGNOSTIC_CORE_H) \
+ $(INPUT_H) langhooks.h pointer-set.h tree-iterator.h \
+ $(PLUGIN_H) c-family/c-ada-spec.h c-family/c-objc.h
+
+c/c-errors.o: c/c-errors.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
+ $(C_TREE_H) $(FLAGS_H) $(DIAGNOSTIC_H) $(TM_P_H)
+
+c/c-lang.o : c/c-lang.c c/c-objc-common.h \
+ $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
+ $(C_TREE_H) $(DIAGNOSTIC_CORE_H) \
+ langhooks.h $(LANGHOOKS_DEF_H) $(C_COMMON_H) gtype-c.h \
+ $(C_PRAGMA_H) $(TREE_INLINE_H)
+
+c/c-objc-common.o : c/c-objc-common.c c/c-objc-common.h \
+ $(CONFIG_H) $(SYSTEM_H) coretypes.h \
+ $(TREE_H) $(C_TREE_H) $(FLAGS_H) $(DIAGNOSTIC_H) \
+ langhooks.h $(GGC_H) $(C_PRETTY_PRINT_H) intl.h \
+ $(TREE_PRETTY_PRINT_H)
+
+c/c-parser.o : c/c-parser.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
+ $(TM_H) $(TREE_H) $(C_TREE_H) $(C_COMMON_H) $(C_PRAGMA_H) $(CPPLIB_H) \
+ $(GGC_H) $(TIMEVAR_H) $(INPUT_H) $(FLAGS_H) \
+ gt-c-c-parser.h langhooks.h \
+ $(VEC_H) $(TARGET_H) $(CGRAPH_H) $(PLUGIN_H) \
+ c-family/c-objc.h
+
+c/c-typeck.o : c/c-typeck.c c/c-lang.h $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
+ $(TREE_H) $(C_TREE_H) $(TARGET_H) $(FLAGS_H) intl.h \
+ langhooks.h tree-iterator.h $(BITMAP_H) $(GIMPLE_H) \
+ c-family/c-objc.h
+
diff --git a/gcc/c-aux-info.c b/gcc/c/c-aux-info.c
index 694f9c1f59e..694f9c1f59e 100644
--- a/gcc/c-aux-info.c
+++ b/gcc/c/c-aux-info.c
diff --git a/gcc/c-convert.c b/gcc/c/c-convert.c
index f4583c549c9..f4583c549c9 100644
--- a/gcc/c-convert.c
+++ b/gcc/c/c-convert.c
diff --git a/gcc/c-decl.c b/gcc/c/c-decl.c
index bbb437d8231..711b2dd1750 100644
--- a/gcc/c-decl.c
+++ b/gcc/c/c-decl.c
@@ -10152,4 +10152,4 @@ c_register_addr_space (const char *word, addr_space_t as)
ridpointers [rid] = id;
}
-#include "gt-c-decl.h"
+#include "gt-c-c-decl.h"
diff --git a/gcc/c-errors.c b/gcc/c/c-errors.c
index bee534c44fe..bee534c44fe 100644
--- a/gcc/c-errors.c
+++ b/gcc/c/c-errors.c
diff --git a/gcc/c-lang.c b/gcc/c/c-lang.c
index ae1b08139e7..ae1b08139e7 100644
--- a/gcc/c-lang.c
+++ b/gcc/c/c-lang.c
diff --git a/gcc/c-lang.h b/gcc/c/c-lang.h
index 256a269fe0b..256a269fe0b 100644
--- a/gcc/c-lang.h
+++ b/gcc/c/c-lang.h
diff --git a/gcc/c-objc-common.c b/gcc/c/c-objc-common.c
index 9351cd5a539..9351cd5a539 100644
--- a/gcc/c-objc-common.c
+++ b/gcc/c/c-objc-common.c
diff --git a/gcc/c-objc-common.h b/gcc/c/c-objc-common.h
index dbbd50a729d..dbbd50a729d 100644
--- a/gcc/c-objc-common.h
+++ b/gcc/c/c-objc-common.h
diff --git a/gcc/c-parser.c b/gcc/c/c-parser.c
index b4135eedea5..2237749e4a3 100644
--- a/gcc/c-parser.c
+++ b/gcc/c/c-parser.c
@@ -10837,4 +10837,4 @@ c_parse_file (void)
the_parser = NULL;
}
-#include "gt-c-parser.h"
+#include "gt-c-c-parser.h"
diff --git a/gcc/c-tree.h b/gcc/c/c-tree.h
index 145df357af9..145df357af9 100644
--- a/gcc/c-tree.h
+++ b/gcc/c/c-tree.h
diff --git a/gcc/c-typeck.c b/gcc/c/c-typeck.c
index c2f713eb02d..c2f713eb02d 100644
--- a/gcc/c-typeck.c
+++ b/gcc/c/c-typeck.c
diff --git a/gcc/c-config-lang.in b/gcc/c/config-lang.in
index 5e14002bed8..46c7e477471 100644
--- a/gcc/c-config-lang.in
+++ b/gcc/c/config-lang.in
@@ -1,5 +1,6 @@
# Top level configure fragment for GNU C - C language.
-# Copyright (C) 1994, 1995, 1997, 1998, 2000, 2001, 2002, 2005, 2007, 2010
+# Copyright (C) 1994, 1995, 1997, 1998, 2000, 2001, 2002, 2005, 2007,
+# 2010, 2012
# Free Software Foundation, Inc.
#This file is part of GCC.
@@ -18,9 +19,16 @@
#along with GCC; see the file COPYING3. If not see
#<http://www.gnu.org/licenses/>.
-# This file c-config-lang.c is a special pseudo config-lang.in file
-# for the language C. It has limited use, specifically to record the
-# files used by C that have garbage collection GTY macros in them
-# which therefore need to be scanned by gengtype.c.
+# Configure looks for the existence of this file to auto-config each language.
+# We define several parameters used by configure:
+#
+# language - name of language as it would appear in $(LANGUAGES)
+# compilers - value to add to $(COMPILERS)
-gtfiles="\$(srcdir)/c-lang.c \$(srcdir)/c-tree.h \$(srcdir)/c-decl.c \$(srcdir)/c-family/c-common.c \$(srcdir)/c-family/c-common.h \$(srcdir)/c-family/c-objc.h \$(srcdir)/c-family/c-cppbuiltin.c \$(srcdir)/c-family/c-pragma.h \$(srcdir)/c-family/c-pragma.c \$(srcdir)/c-objc-common.c \$(srcdir)/c-parser.c \$(srcdir)/c-lang.h"
+language="c"
+
+compilers="cc1\$(exeext)"
+
+target_libs=
+
+gtfiles="\$(srcdir)/c/c-lang.c \$(srcdir)/c/c-tree.h \$(srcdir)/c/c-decl.c \$(srcdir)/c-family/c-common.c \$(srcdir)/c-family/c-common.h \$(srcdir)/c-family/c-objc.h \$(srcdir)/c-family/c-cppbuiltin.c \$(srcdir)/c-family/c-pragma.h \$(srcdir)/c-family/c-pragma.c \$(srcdir)/c/c-objc-common.c \$(srcdir)/c/c-parser.c \$(srcdir)/c/c-lang.h"
diff --git a/gcc/gccspec.c b/gcc/c/gccspec.c
index e1613594fc4..e1613594fc4 100644
--- a/gcc/gccspec.c
+++ b/gcc/c/gccspec.c
diff --git a/gcc/config/vms/vms-c.c b/gcc/config/vms/vms-c.c
index 09172b261ab..733932336a9 100644
--- a/gcc/config/vms/vms-c.c
+++ b/gcc/config/vms/vms-c.c
@@ -27,7 +27,7 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "c-family/c-pragma.h"
#include "c-family/c-common.h"
-#include "c-tree.h"
+#include "c/c-tree.h"
#include "toplev.h"
#include "ggc.h"
#include "tm_p.h"
diff --git a/gcc/configure b/gcc/configure
index 1fdf0af80ca..0bdbece6ae8 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -26964,11 +26964,6 @@ $as_echo "#define ENABLE_LTO 1" >>confdefs.h
esac
done
-# Pick up gtfiles for c
-gtfiles=
-. ${srcdir}/c-config-lang.in
-all_gtfiles="$all_gtfiles [c] $gtfiles"
-
check_languages=
for language in $all_selected_languages
do
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 22dab55a24a..7891fcc39da 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -4838,11 +4838,6 @@ changequote([,])dnl
esac
done
-# Pick up gtfiles for c
-gtfiles=
-. ${srcdir}/c-config-lang.in
-all_gtfiles="$all_gtfiles [[c]] $gtfiles"
-
check_languages=
for language in $all_selected_languages
do
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 00e9ca07cf8..9b5b7c163d6 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,7 @@
+2012-06-29 Steven Bosscher <steven@gcc.gnu.org>
+
+ * Make-lang.in: Remove tree-mudflap.o from CXX_AND_OBJCXX_OBJS.
+
2012-06-27 Jason Merrill <jason@redhat.com>
* parser.c (cp_parser_check_for_invalid_template_id): tag_type parm.
diff --git a/gcc/cp/Make-lang.in b/gcc/cp/Make-lang.in
index af355f05079..f09ff36a743 100644
--- a/gcc/cp/Make-lang.in
+++ b/gcc/cp/Make-lang.in
@@ -82,7 +82,7 @@ CXX_AND_OBJCXX_OBJS = cp/call.o cp/decl.o cp/expr.o cp/pt.o cp/typeck2.o \
cp/typeck.o cp/cvt.o cp/except.o cp/friend.o cp/init.o cp/method.o \
cp/search.o cp/semantics.o cp/tree.o cp/repo.o cp/dump.o cp/optimize.o \
cp/mangle.o cp/cp-objcp-common.o cp/name-lookup.o cp/cxx-pretty-print.o \
- cp/cp-gimplify.o tree-mudflap.o $(CXX_C_OBJS)
+ cp/cp-gimplify.o $(CXX_C_OBJS)
# Language-specific object files for C++.
CXX_OBJS = cp/cp-lang.o c-family/stub-objc.o $(CXX_AND_OBJCXX_OBJS)
@@ -237,6 +237,7 @@ c++.mostlyclean:
c++.clean:
c++.distclean:
-rm -f cp/config.status cp/Makefile
+ -rm -f cxxmain.c
c++.maintainer-clean:
#
# Stage hooks:
diff --git a/gcc/doc/gty.texi b/gcc/doc/gty.texi
index 03bcbf813cd..cff3ffdfc5d 100644
--- a/gcc/doc/gty.texi
+++ b/gcc/doc/gty.texi
@@ -491,7 +491,7 @@ For files shared by all front ends, add the filename to the
@item
For files that are part of one front end, add the filename to the
@code{gtfiles} variable defined in the appropriate
-@file{config-lang.in}. For C, the file is @file{c-config-lang.in}.
+@file{config-lang.in}.
Headers should appear before non-headers in this list.
@item
diff --git a/gcc/doc/sourcebuild.texi b/gcc/doc/sourcebuild.texi
index dc5cc47c33a..84fcc23e55a 100644
--- a/gcc/doc/sourcebuild.texi
+++ b/gcc/doc/sourcebuild.texi
@@ -168,10 +168,11 @@ The @file{gcc} directory contains the following subdirectories:
@item @var{language}
Subdirectories for various languages. Directories containing a file
@file{config-lang.in} are language subdirectories. The contents of
-the subdirectories @file{cp} (for C++), @file{lto} (for LTO),
-@file{objc} (for Objective-C) and @file{objcp} (for Objective-C++) are
-documented in this manual (@pxref{Passes, , Passes and Files of the
-Compiler}); those for other languages are not. @xref{Front End, ,
+the subdirectories @file{c} (for C), @file{cp} (for C++),
+@file{objc} (for Objective-C), @file{objcp} (for Objective-C++),
+and @file{lto} (for LTO) are documented in this
+manual (@pxref{Passes, , Passes and Files of the Compiler});
+those for other languages are not. @xref{Front End, ,
Anatomy of a Language Front End}, for details of the files in these
directories.
@@ -483,7 +484,7 @@ why isn't this part of this manual or of the GCC Coding Conventions?
@end table
FIXME: document such files in subdirectories, at least @file{config},
-@file{cp}, @file{objc}, @file{testsuite}.
+@file{c}, @file{cp}, @file{objc}, @file{testsuite}.
@node Front End
@subsection Anatomy of a Language Front End
@@ -615,10 +616,9 @@ codes.
@node Front End Config
@subsubsection The Front End @file{config-lang.in} File
-Each language subdirectory contains a @file{config-lang.in} file. In
-addition the main directory contains @file{c-config-lang.in}, which
-contains limited information for the C language. This file is a shell
-script that may define some variables describing the language:
+Each language subdirectory contains a @file{config-lang.in} file.
+This file is a shell script that may define some variables describing
+the language:
@table @code
@item language
diff --git a/gcc/gengtype.c b/gcc/gengtype.c
index cd1a32c27e7..96c75b3ebb2 100644
--- a/gcc/gengtype.c
+++ b/gcc/gengtype.c
@@ -1786,12 +1786,12 @@ struct file_rule_st files_rules[] = {
REG_EXTENDED, NULL_REGEX,
"gt-c-family-$3.h", "c-family/$3.h", NULL_FRULACT},
- /* Both c-lang.h & c-tree.h gives gt-c-decl.h for c-decl.c ! */
- { DIR_PREFIX_REGEX "c-lang\\.h$",
- REG_EXTENDED, NULL_REGEX, "gt-c-decl.h", "c-decl.c", NULL_FRULACT},
+ /* Both c-lang.h & c-tree.h gives gt-c-c-decl.h for c-decl.c ! */
+ { DIR_PREFIX_REGEX "c/c-lang\\.h$",
+ REG_EXTENDED, NULL_REGEX, "gt-c-c-decl.h", "c/c-decl.c", NULL_FRULACT},
- { DIR_PREFIX_REGEX "c-tree\\.h$",
- REG_EXTENDED, NULL_REGEX, "gt-c-decl.h", "c-decl.c", NULL_FRULACT},
+ { DIR_PREFIX_REGEX "c/c-tree\\.h$",
+ REG_EXTENDED, NULL_REGEX, "gt-c-c-decl.h", "c/c-decl.c", NULL_FRULACT},
/* cp/cp-tree.h gives gt-cp-tree.h for cp/tree.c ! */
{ DIR_PREFIX_REGEX "cp/cp-tree\\.h$",
diff --git a/gcc/objc/ChangeLog b/gcc/objc/ChangeLog
index 5ca44c36dfd..e8ef7bb347d 100644
--- a/gcc/objc/ChangeLog
+++ b/gcc/objc/ChangeLog
@@ -1,3 +1,16 @@
+2012-06-29 Steven Bosscher <steven@gcc.gnu.org>
+
+ * Make-ang.in: Adjust for move of C front-end files.
+ * config-lang.in: Likewise.
+ * objc-encoding.c: Look for cp-tree.h in cp/, and for c-tree.h
+ and c-lang.h in c/.
+ * objc-runtime-shared-support.c: Likewise.
+ * objc-next-runtime-abi-01.c: Likewise.
+ * objc-next-runtime-abi-02.c: Likewise.
+ * objc-gnu-runtime-abi-01.c: Likewise.
+ * objc-act.c: Likewise.
+ * objc-lang.c: Likewise.
+
2012-06-19 Steven Bosscher <steven@gcc.gnu.org>
* objc-next-runtime-abi-01.c: Do not include tm.h and output.h.
diff --git a/gcc/objc/Make-lang.in b/gcc/objc/Make-lang.in
index 94a462b00aa..05ddec639ff 100644
--- a/gcc/objc/Make-lang.in
+++ b/gcc/objc/Make-lang.in
@@ -44,7 +44,7 @@ objc: cc1obj$(exeext)
.PHONY: objc
START_HDRS = $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) $(C_TREE_H) \
- c-lang.h langhooks.h c-family/c-objc.h objc/objc-act.h
+ c/c-lang.h langhooks.h c-family/c-objc.h objc/objc-act.h
# Use maximal warnings for this front end.
objc-warn = $(STRICT_WARN)
@@ -83,7 +83,7 @@ objc/objc-lang.o : objc/objc-lang.c \
$(START_HDRS) \
$(GGC_H) \
$(LANGHOOKS_DEF_H) $(C_COMMON_H) gtype-objc.h \
- c-objc-common.h
+ c/c-objc-common.h
objc/objc-runtime-shared-support.o : objc/objc-runtime-shared-support.c \
gt-objc-objc-runtime-shared-support.h \
diff --git a/gcc/objc/config-lang.in b/gcc/objc/config-lang.in
index 48f8582d74c..9a4ede65318 100644
--- a/gcc/objc/config-lang.in
+++ b/gcc/objc/config-lang.in
@@ -36,4 +36,4 @@ lang_requires="c"
# Order is important. If you change this list, make sure you test
# building without C++ as well; that is, remove the gcc/cp directory,
# and build with --enable-languages=c,objc.
-gtfiles="\$(srcdir)/objc/objc-map.h \$(srcdir)/c-family/c-objc.h \$(srcdir)/objc/objc-act.h \$(srcdir)/objc/objc-act.c \$(srcdir)/objc/objc-runtime-shared-support.c \$(srcdir)/objc/objc-gnu-runtime-abi-01.c \$(srcdir)/objc/objc-next-runtime-abi-01.c \$(srcdir)/objc/objc-next-runtime-abi-02.c \$(srcdir)/c-parser.c \$(srcdir)/c-tree.h \$(srcdir)/c-decl.c \$(srcdir)/c-lang.h \$(srcdir)/c-objc-common.c \$(srcdir)/c-family/c-common.c \$(srcdir)/c-family/c-common.h \$(srcdir)/c-family/c-cppbuiltin.c \$(srcdir)/c-family/c-pragma.h \$(srcdir)/c-family/c-pragma.c"
+gtfiles="\$(srcdir)/objc/objc-map.h \$(srcdir)/c-family/c-objc.h \$(srcdir)/objc/objc-act.h \$(srcdir)/objc/objc-act.c \$(srcdir)/objc/objc-runtime-shared-support.c \$(srcdir)/objc/objc-gnu-runtime-abi-01.c \$(srcdir)/objc/objc-next-runtime-abi-01.c \$(srcdir)/objc/objc-next-runtime-abi-02.c \$(srcdir)/c/c-parser.c \$(srcdir)/c/c-tree.h \$(srcdir)/c/c-decl.c \$(srcdir)/c/c-lang.h \$(srcdir)/c/c-objc-common.c \$(srcdir)/c-family/c-common.c \$(srcdir)/c-family/c-common.h \$(srcdir)/c-family/c-cppbuiltin.c \$(srcdir)/c-family/c-pragma.h \$(srcdir)/c-family/c-pragma.c"
diff --git a/gcc/objc/objc-act.c b/gcc/objc/objc-act.c
index 14e1d5f0599..5c924bf736c 100644
--- a/gcc/objc/objc-act.c
+++ b/gcc/objc/objc-act.c
@@ -27,10 +27,10 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#ifdef OBJCPLUS
-#include "cp-tree.h"
+#include "cp/cp-tree.h"
#else
-#include "c-tree.h"
-#include "c-lang.h"
+#include "c/c-tree.h"
+#include "c/c-lang.h"
#endif
#include "c-family/c-common.h"
diff --git a/gcc/objc/objc-encoding.c b/gcc/objc/objc-encoding.c
index 10171fdd2c5..8d4a9c758b7 100644
--- a/gcc/objc/objc-encoding.c
+++ b/gcc/objc/objc-encoding.c
@@ -25,10 +25,10 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#ifdef OBJCPLUS
-#include "cp-tree.h"
+#include "cp/cp-tree.h"
#else
-#include "c-tree.h"
-#include "c-lang.h"
+#include "c/c-tree.h"
+#include "c/c-lang.h"
#endif
#include "c-family/c-common.h"
diff --git a/gcc/objc/objc-gnu-runtime-abi-01.c b/gcc/objc/objc-gnu-runtime-abi-01.c
index 63a8c5b2e31..6bdffac10e7 100644
--- a/gcc/objc/objc-gnu-runtime-abi-01.c
+++ b/gcc/objc/objc-gnu-runtime-abi-01.c
@@ -24,10 +24,10 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#ifdef OBJCPLUS
-#include "cp-tree.h"
+#include "cp/cp-tree.h"
#else
-#include "c-tree.h"
-#include "c-lang.h"
+#include "c/c-tree.h"
+#include "c/c-lang.h"
#endif
#include "langhooks.h"
diff --git a/gcc/objc/objc-lang.c b/gcc/objc/objc-lang.c
index b1bbb9e1fc0..9aa9bb3731c 100644
--- a/gcc/objc/objc-lang.c
+++ b/gcc/objc/objc-lang.c
@@ -25,15 +25,15 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tm.h"
#include "tree.h"
-#include "c-tree.h"
+#include "c/c-tree.h"
#include "c-family/c-common.h"
#include "c-family/c-objc.h"
#include "ggc.h"
#include "objc-act.h"
#include "langhooks.h"
#include "langhooks-def.h"
-#include "c-objc-common.h"
-#include "c-lang.h"
+#include "c/c-objc-common.h"
+#include "c/c-lang.h"
enum c_language_kind c_language = clk_objc;
diff --git a/gcc/objc/objc-next-runtime-abi-01.c b/gcc/objc/objc-next-runtime-abi-01.c
index b60bd468000..cf245911b90 100644
--- a/gcc/objc/objc-next-runtime-abi-01.c
+++ b/gcc/objc/objc-next-runtime-abi-01.c
@@ -29,10 +29,10 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#ifdef OBJCPLUS
-#include "cp-tree.h"
+#include "cp/cp-tree.h"
#else
-#include "c-tree.h"
-#include "c-lang.h"
+#include "c/c-tree.h"
+#include "c/c-lang.h"
#endif
#include "langhooks.h"
#include "c-family/c-objc.h"
diff --git a/gcc/objc/objc-next-runtime-abi-02.c b/gcc/objc/objc-next-runtime-abi-02.c
index ee6a0a3fbf7..4f47a579087 100644
--- a/gcc/objc/objc-next-runtime-abi-02.c
+++ b/gcc/objc/objc-next-runtime-abi-02.c
@@ -32,10 +32,10 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#ifdef OBJCPLUS
-#include "cp-tree.h"
+#include "cp/cp-tree.h"
#else
-#include "c-tree.h"
-#include "c-lang.h"
+#include "c/c-tree.h"
+#include "c/c-lang.h"
#endif
#include "langhooks.h"
#include "c-family/c-objc.h"
diff --git a/gcc/objc/objc-runtime-shared-support.c b/gcc/objc/objc-runtime-shared-support.c
index 7d478d97bea..0b6f93716b8 100644
--- a/gcc/objc/objc-runtime-shared-support.c
+++ b/gcc/objc/objc-runtime-shared-support.c
@@ -25,10 +25,10 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#ifdef OBJCPLUS
-#include "cp-tree.h"
+#include "cp/cp-tree.h"
#else
-#include "c-tree.h"
-#include "c-lang.h"
+#include "c/c-tree.h"
+#include "c/c-lang.h"
#endif
#include "langhooks.h"
#include "c-family/c-objc.h"