]>
Commit | Line | Data |
---|---|---|
b2e61dde | 1 | /* Definitions for specs for Objective-C++. |
a5544970 | 2 | Copyright (C) 2005-2019 Free Software Foundation, Inc. |
b2e61dde MS |
3 | Contributed by Ziemowit Laski <zlaski@apple.com> |
4 | ||
5 | This file is part of GCC. | |
6 | ||
7 | GCC is free software; you can redistribute it and/or modify | |
8 | it under the terms of the GNU General Public License as published by | |
af84f9c5 | 9 | the Free Software Foundation; either version 3, or (at your option) |
b2e61dde MS |
10 | any later version. |
11 | ||
12 | GCC is distributed in the hope that it will be useful, | |
13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | GNU General Public License for more details. | |
16 | ||
17 | You should have received a copy of the GNU General Public License | |
af84f9c5 NC |
18 | along with GCC; see the file COPYING3. If not see |
19 | <http://www.gnu.org/licenses/>. */ | |
20 | ||
b2e61dde MS |
21 | |
22 | /* This is the contribution to the `default_compilers' array in gcc.c for | |
23 | obj-c++. It is based on -- and should be kept in sync with -- the g++ | |
24 | spec (found in cp/lang-specs.h). */ | |
25 | ||
26 | #ifndef CPLUSPLUS_CPP_SPEC | |
27 | #define CPLUSPLUS_CPP_SPEC 0 | |
28 | #endif | |
29 | ||
30 | {".mm", "@objective-c++", 0, 0, 0}, | |
31 | {".M", "@objective-c++", 0, 0, 0}, | |
32 | {"@objective-c++-header", | |
33 | "%{E|M|MM:cc1objplus -E %(cpp_options) %2 %(cpp_debug_options)}\ | |
34 | %{!E:%{!M:%{!MM:\ | |
787a8c0f JM |
35 | %{save-temps*|no-integrated-cpp:cc1objplus -E\ |
36 | %(cpp_options) %2 -o %{save-temps*:%b.mii} %{!save-temps*:%g.mii} \n}\ | |
37 | cc1objplus %{save-temps*|no-integrated-cpp:-fpreprocessed %{save-temps*:%b.mii} %{!save-temps*:%g.mii}}\ | |
38 | %{!save-temps*:%{!no-integrated-cpp:%(cpp_unique_options)}}\ | |
418f840c | 39 | %(cc1_options) %2\ |
b2e61dde MS |
40 | -o %g.s %{!o*:--output-pch=%i.gch} %W{o*:--output-pch=%*}%V}}}", |
41 | CPLUSPLUS_CPP_SPEC, 0, 0}, | |
42 | {"@objective-c++", | |
43 | "%{E|M|MM:cc1objplus -E %(cpp_options) %2 %(cpp_debug_options)}\ | |
44 | %{!E:%{!M:%{!MM:\ | |
787a8c0f JM |
45 | %{save-temps*|no-integrated-cpp:cc1objplus -E\ |
46 | %(cpp_options) %2 -o %{save-temps*:%b.mii} %{!save-temps*:%g.mii} \n}\ | |
47 | cc1objplus %{save-temps*|no-integrated-cpp:-fpreprocessed %{save-temps*:%b.mii} %{!save-temps*:%g.mii}}\ | |
48 | %{!save-temps*:%{!no-integrated-cpp:%(cpp_unique_options)}}\ | |
418f840c | 49 | %(cc1_options) %2\ |
b2e61dde MS |
50 | %{!fsyntax-only:%(invoke_as)}}}}", |
51 | CPLUSPLUS_CPP_SPEC, 0, 0}, | |
52 | {".mii", "@objective-c++-cpp-output", 0, 0, 0}, | |
53 | {"@objective-c++-cpp-output", | |
54 | "%{!M:%{!MM:%{!E:\ | |
418f840c | 55 | cc1objplus -fpreprocessed %i %(cc1_options) %2\ |
b2e61dde MS |
56 | %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0}, |
57 | {"@objc++-cpp-output", | |
59a09598 NP |
58 | "%nobjc++-cpp-output is deprecated; please use objective-c++-cpp-output instead\n\ |
59 | %{!M:%{!MM:%{!E:\ | |
418f840c | 60 | cc1objplus -fpreprocessed %i %(cc1_options) %2\ |
b2e61dde | 61 | %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0}, |