1 /* Definitions for specs for Objective-C.
2 Copyright (C) 1998-2016 Free Software Foundation, Inc.
4 This file is part of GCC.
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)
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.
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/>. */
21 /* This is the contribution to the `default_compilers' array in gcc.c
24 {".m", "@objective-c", 0, 0, 0},
26 "%{E|M|MM:cc1obj -E %{traditional|traditional-cpp:-traditional-cpp}\
27 %(cpp_options) %(cpp_debug_options)}\
29 %{traditional|traditional-cpp:\
30 %eGNU Objective C no longer supports traditional compilation}\
31 %{save-temps*|no-integrated-cpp:cc1obj -E %(cpp_options) -o %{save-temps*:%b.mi} %{!save-temps*:%g.mi} \n\
32 cc1obj -fpreprocessed %{save-temps*:%b.mi} %{!save-temps*:%g.mi} %(cc1_options) %{print-objc-runtime-info} %{gen-decls}}\
33 %{!save-temps*:%{!no-integrated-cpp:\
34 cc1obj %(cpp_unique_options) %(cc1_options) %{print-objc-runtime-info} %{gen-decls}}}\
35 %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
36 {"@objective-c-header",
37 "%{E|M|MM:cc1obj -E %{traditional|traditional-cpp:-traditional-cpp}\
38 %(cpp_options) %(cpp_debug_options)}\
40 %{traditional|traditional-cpp:\
41 %eGNU Objective C no longer supports traditional compilation}\
42 %{save-temps*|no-integrated-cpp:cc1obj -E %(cpp_options) -o %{save-temps*:%b.mi} %{!save-temps*:%g.mi} \n\
43 cc1obj -fpreprocessed %b.mi %(cc1_options) %{print-objc-runtime-info} %{gen-decls}\
44 -o %g.s %{!o*:--output-pch=%i.gch}\
45 %W{o*:--output-pch=%*}%V}\
46 %{!save-temps*:%{!no-integrated-cpp:\
47 cc1obj %(cpp_unique_options) %(cc1_options) %{print-objc-runtime-info} %{gen-decls}\
48 -o %g.s %{!o*:--output-pch=%i.gch}\
49 %W{o*:--output-pch=%*}%V}}}}}", 0, 0, 0},
50 {".mi", "@objective-c-cpp-output", 0, 0, 0},
51 {"@objective-c-cpp-output",
52 "%{!M:%{!MM:%{!E:cc1obj -fpreprocessed %i %(cc1_options) %{print-objc-runtime-info} %{gen-decls}\
53 %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
55 "%nobjc-cpp-output is deprecated; please use objective-c-cpp-output instead\n\
56 %{!M:%{!MM:%{!E:cc1obj -fpreprocessed %i %(cc1_options) %{print-objc-runtime-info} %{gen-decls}\
57 %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},