1 /* Definitions for specs for C++. 2 Copyright (C) 1995-2018 Free Software Foundation, Inc. 3 4 This file is part of GCC. 5 6 GCC is free software; you can redistribute it and/or modify 7 it under the terms of the GNU General Public License as published by 8 the Free Software Foundation; either version 3, or (at your option) 9 any later version. 10 11 GCC is distributed in the hope that it will be useful, 12 but WITHOUT ANY WARRANTY; without even the implied warranty of 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 GNU General Public License for more details. 15 16 You should have received a copy of the GNU General Public License 17 along with GCC; see the file COPYING3. If not see 18 <http://www.gnu.org/licenses/>. */ 19 20 /* This is the contribution to the `default_compilers' array in gcc.c for 21 g++. */ 22 23 #ifndef CPLUSPLUS_CPP_SPEC 24 #define CPLUSPLUS_CPP_SPEC 0 25 #endif 26 27 {".cc", "@c++", 0, 0, 0}, 28 {".cp", "@c++", 0, 0, 0}, 29 {".cxx", "@c++", 0, 0, 0}, 30 {".cpp", "@c++", 0, 0, 0}, 31 {".c++", "@c++", 0, 0, 0}, 32 {".C", "@c++", 0, 0, 0}, 33 {".CPP", "@c++", 0, 0, 0}, 34 {".H", "@c++-header", 0, 0, 0}, 35 {".hpp", "@c++-header", 0, 0, 0}, 36 {".hp", "@c++-header", 0, 0, 0}, 37 {".hxx", "@c++-header", 0, 0, 0}, 38 {".h++", "@c++-header", 0, 0, 0}, 39 {".HPP", "@c++-header", 0, 0, 0}, 40 {".tcc", "@c++-header", 0, 0, 0}, 41 {".hh", "@c++-header", 0, 0, 0}, 42 {"@c++-header", 43 "%{E|M|MM:cc1plus -E %(cpp_options) %2 %(cpp_debug_options)}\ 44 %{!E:%{!M:%{!MM:\ 45 %{save-temps*|no-integrated-cpp:cc1plus -E\ 46 %(cpp_options) %2 -o %{save-temps*:%b.ii} %{!save-temps*:%g.ii} \n}\ 47 cc1plus %{save-temps*|no-integrated-cpp:-fpreprocessed %{save-temps*:%b.ii} %{!save-temps*:%g.ii}}\ 48 %{!save-temps*:%{!no-integrated-cpp:%(cpp_unique_options)}}\ 49 %(cc1_options) %2\ 50 %{!fsyntax-only:%{!S:-o %g.s} \ 51 %{!fdump-ada-spec*:%{!o*:--output-pch=%i.gch}\ 52 %W{o*:--output-pch=%*}}%V}}}}", 53 CPLUSPLUS_CPP_SPEC, 0, 0}, 54 {"@c++", 55 "%{E|M|MM:cc1plus -E %(cpp_options) %2 %(cpp_debug_options)}\ 56 %{!E:%{!M:%{!MM:\ 57 %{save-temps*|no-integrated-cpp:cc1plus -E\ 58 %(cpp_options) %2 -o %{save-temps*:%b.ii} %{!save-temps*:%g.ii} \n}\ 59 cc1plus %{save-temps*|no-integrated-cpp:-fpreprocessed %{save-temps*:%b.ii} %{!save-temps*:%g.ii}}\ 60 %{!save-temps*:%{!no-integrated-cpp:%(cpp_unique_options)}}\ 61 %(cc1_options) %2\ 62 %{!fsyntax-only:%(invoke_as)}}}}", 63 CPLUSPLUS_CPP_SPEC, 0, 0}, 64 {".ii", "@c++-cpp-output", 0, 0, 0}, 65 {"@c++-cpp-output", 66 "%{!M:%{!MM:%{!E:\ 67 cc1plus -fpreprocessed %i %(cc1_options) %2\ 68 %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0}, 69