OSDN Git Service

Daily bump.
[pf3gnuchains/gcc-fork.git] / gcc / cp / lang-specs.h
index 48a6ac5..a73aba3 100644 (file)
@@ -1,97 +1,68 @@
 /* Definitions for specs for C++.
-   Copyright (C) 1995, 96-98, 1999 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000,
+   2001, 2002, 2003, 2004, 2007, 2010, 2011 Free Software Foundation, Inc.
 
-This file is part of GNU CC.
+This file is part of GCC.
 
-GNU CC is free software; you can redistribute it and/or modify
+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 2, or (at your option)
+the Free Software Foundation; either version 3, or (at your option)
 any later version.
 
-GNU CC is distributed in the hope that it will be useful,
+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 GNU CC; see the file COPYING.  If not, write to
-the Free Software Foundation, 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA.  */
+along with GCC; see the file COPYING3.  If not see
+<http://www.gnu.org/licenses/>.  */
 
 /* This is the contribution to the `default_compilers' array in gcc.c for
    g++.  */
 
-  {".cc", {"@c++"}},
-  {".cp", {"@c++"}},
-  {".cxx", {"@c++"}},
-  {".cpp", {"@c++"}},
-  {".c++", {"@c++"}},
-  {".C", {"@c++"}},
+#ifndef CPLUSPLUS_CPP_SPEC
+#define CPLUSPLUS_CPP_SPEC 0
+#endif
+
+  {".cc",  "@c++", 0, 0, 0},
+  {".cp",  "@c++", 0, 0, 0},
+  {".cxx", "@c++", 0, 0, 0},
+  {".cpp", "@c++", 0, 0, 0},
+  {".c++", "@c++", 0, 0, 0},
+  {".C",   "@c++", 0, 0, 0},
+  {".CPP", "@c++", 0, 0, 0},
+  {".H",   "@c++-header", 0, 0, 0},
+  {".hpp", "@c++-header", 0, 0, 0},
+  {".hp",  "@c++-header", 0, 0, 0},
+  {".hxx", "@c++-header", 0, 0, 0},
+  {".h++", "@c++-header", 0, 0, 0},
+  {".HPP", "@c++-header", 0, 0, 0},
+  {".tcc", "@c++-header", 0, 0, 0},
+  {".hh",  "@c++-header", 0, 0, 0},
+  {"@c++-header",
+    "%{E|M|MM:cc1plus -E %(cpp_options) %2 %(cpp_debug_options)}\
+     %{!E:%{!M:%{!MM:\
+       %{save-temps*|no-integrated-cpp:cc1plus -E\
+               %(cpp_options) %2 -o %{save-temps*:%b.ii} %{!save-temps*:%g.ii} \n}\
+      cc1plus %{save-temps*|no-integrated-cpp:-fpreprocessed %{save-temps*:%b.ii} %{!save-temps*:%g.ii}}\
+             %{!save-temps*:%{!no-integrated-cpp:%(cpp_unique_options)}}\
+       %(cc1_options) %2\
+       %{!fsyntax-only:%{!fdump-ada-spec*:-o %g.s %{!o*:--output-pch=%i.gch}\
+        %W{o*:--output-pch=%*}}%V}}}}",
+     CPLUSPLUS_CPP_SPEC, 0, 0},
   {"@c++",
-#if USE_CPPLIB
-   {
-     "%{E|M|MM:cpp -lang-c++ %{nostdinc*} %{C} %{v} %{A*} %{I*} %{P} %{$} %I\
-       %{C:%{!E:%eGNU C++ does not support -C without using -E}}\
-       %{M} %{MM} %{MD:-MD %b.d} %{MMD:-MMD %b.d} %{MG}\
-       %{!no-gcc:-D__GNUC__=%v1 -D__GNUG__=%v1 -D__GNUC_MINOR__=%v2}\
-       -D__cplusplus\
-       %{ansi:-trigraphs -D__STRICT_ANSI__} %{!undef:%{!ansi:%p} %P}\
-       %{!fno-exceptions:-D__EXCEPTIONS}\
-        %c %{Os:-D__OPTIMIZE_SIZE__} %{O*:%{!O0:-D__OPTIMIZE__}} %{trigraphs}\
-       %{ffast-math:-D__FAST_MATH__}\
-       %{g*} %{W*} %{w} %{pedantic*} %{H} %{d*} %C %{D*} %{U*} %{i*} %Z\
-        %i %{E:%W{o*}}%{M:%W{o*}}%{MM:%W{o*}}\n}\
-      %{!E:%{!M:%{!MM:cc1plus %i %1 %2\
-                            -lang-c++ %{nostdinc*} %{C} %{A*} %{I*} %{P} %{$} %I\
-                            %{MD:-MD %b.d} %{MMD:-MMD %b.d} %{MG}\
-                            %{!no-gcc:-D__GNUC__=%v1 -D__GNUG__=%v1\
-                            -D__GNUC_MINOR__=%v2} -D__cplusplus\
-                            %{ansi:-trigraphs -D__STRICT_ANSI__} %{!undef:%{!ansi:%p} %P}\
-                            %{!fno-exceptions:-D__EXCEPTIONS}\
-                            %c %{Os:-D__OPTIMIZE_SIZE__} %{O*:%{!O0:-D__OPTIMIZE__}}\
-                           %{ffast-math:-D__FAST_MATH__}\
-                            %{trigraphs}\
-                           %{!Q:-quiet} -dumpbase %b.cc %{d*} %{m*} %{a}\
-                           %{g*} %{O*} %{W*} %{w} %{pedantic*} %{ansi}\
-                            %{H} %{d*} %C %{D*} %{U*} %{i*} %Z\
-                           %{v:-version} %{pg:-p} %{p}\
-                           %{f*} %{+e*} %{aux-info*} %{Qn:-fno-ident}\
-                           %{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}}\
-                           %{S:%W{o*}%{!o*:-o %b.s}}%{!S:-o %{|!pipe:%g.s}}|\n\
-              %{!S:as %a %Y\
-                     %{c:%W{o*}%{!o*:-o %w%b%O}}%{!c:-o %d%w%u%O}\
-                      %{!pipe:%g.s} %A\n }}}}"}},
-#else /* ! USE_CPPLIB */
-   {"cpp -lang-c++ %{nostdinc*} %{C} %{v} %{A*} %{I*} %{P} %{$} %I\
-       %{C:%{!E:%eGNU C++ does not support -C without using -E}}\
-       %{M} %{MM} %{MD:-MD %b.d} %{MMD:-MMD %b.d} %{MG}\
-       %{!no-gcc:-D__GNUC__=%v1 -D__GNUG__=%v1 -D__GNUC_MINOR__=%v2}\
-       -D__cplusplus\
-       %{ansi:-trigraphs -D__STRICT_ANSI__} %{!undef:%{!ansi:%p} %P}\
-       %{!fno-exceptions:-D__EXCEPTIONS}\
-        %c %{Os:-D__OPTIMIZE_SIZE__} %{O*:%{!O0:-D__OPTIMIZE__}} %{trigraphs}\
-       %{ffast-math:-D__FAST_MATH__}\
-       %{g*} %{W*} %{w} %{pedantic*} %{H} %{d*} %C %{D*} %{U*} %{i*} %Z\
-        %i %{!M:%{!MM:%{!E:%{!pipe:%g.ii}}}}%{E:%W{o*}}%{M:%W{o*}}%{MM:%W{o*}} |\n",
-    "%{!M:%{!MM:%{!E:cc1plus %{!pipe:%g.ii} %1 %2\
-                           %{!Q:-quiet} -dumpbase %b.cc %{d*} %{m*} %{a}\
-                           %{g*} %{O*} %{W*} %{w} %{pedantic*} %{ansi}\
-                           %{v:-version} %{pg:-p} %{p}\
-                           %{f*} %{+e*} %{aux-info*} %{Qn:-fno-ident}\
-                           %{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}}\
-                           %{S:%W{o*}%{!o*:-o %b.s}}%{!S:-o %{|!pipe:%g.s}}|\n\
-              %{!S:as %a %Y\
-                     %{c:%W{o*}%{!o*:-o %w%b%O}}%{!c:-o %d%w%u%O}\
-                      %{!pipe:%g.s} %A\n }}}}"}},
-#endif /* ! USE_CPPLIB */
-  {".ii", {"@c++-cpp-output"}},
+    "%{E|M|MM:cc1plus -E %(cpp_options) %2 %(cpp_debug_options)}\
+     %{!E:%{!M:%{!MM:\
+       %{save-temps*|no-integrated-cpp:cc1plus -E\
+               %(cpp_options) %2 -o %{save-temps*:%b.ii} %{!save-temps*:%g.ii} \n}\
+      cc1plus %{save-temps*|no-integrated-cpp:-fpreprocessed %{save-temps*:%b.ii} %{!save-temps*:%g.ii}}\
+             %{!save-temps*:%{!no-integrated-cpp:%(cpp_unique_options)}}\
+       %(cc1_options) %2\
+       %{!fsyntax-only:%(invoke_as)}}}}",
+     CPLUSPLUS_CPP_SPEC, 0, 0},
+  {".ii", "@c++-cpp-output", 0, 0, 0},
   {"@c++-cpp-output",
-   {"%{!M:%{!MM:%{!E:cc1plus %i %1 %2 %{!Q:-quiet} %{d*} %{m*} %{a}\
-                           %{g*} %{O*} %{W*} %{w} %{pedantic*} %{ansi}\
-                           %{v:-version} %{pg:-p} %{p} -fpreprocessed\
-                           %{f*} %{+e*} %{aux-info*} %{Qn:-fno-ident}\
-                           %{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}}\
-                           %{S:%W{o*}%{!o*:-o %b.s}}%{!S:-o %{|!pipe:%g.s}} |\n\
-                   %{!S:as %a %Y\
-                           %{c:%W{o*}%{!o*:-o %w%b%O}}%{!c:-o %d%w%u%O}\
-                           %{!pipe:%g.s} %A\n }}}}"}},
+   "%{!M:%{!MM:%{!E:\
+    cc1plus -fpreprocessed %i %(cc1_options) %2\
+    %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},