1 /****************************************************************************
2  *                                                                          *
3  *                         GNAT COMPILER COMPONENTS                         *
4  *                                                                          *
5  *                            L A N G - S P E C S                           *
6  *                                                                          *
7  *                              C Header File                               *
8  *                                                                          *
9  *           Copyright (C) 1992-2018, Free Software Foundation, Inc.        *
10  *                                                                          *
11  * GNAT is free software;  you can  redistribute it  and/or modify it under *
12  * terms of the  GNU General Public License as published  by the Free Soft- *
13  * ware  Foundation;  either version 3,  or (at your option) any later ver- *
14  * sion.  GNAT is distributed in the hope that it will be useful, but WITH- *
15  * OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY *
16  * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License *
17  * for  more details.  You should have received a copy of the GNU General   *
18  * Public License along with GCC; see the file COPYING3.  If not see        *
19  * <http://www.gnu.org/licenses/>.                                          *
20  *                                                                          *
21  * GNAT was originally developed  by the GNAT team at  New York University. *
22  * Extensive contributions were provided by Ada Core Technologies Inc.      *
23  *                                                                          *
24  ****************************************************************************/
25 
26 /* This is the contribution to the `default_compilers' array in gcc.c for
27    GNAT.  */
28 
29   {".ads", "@ada", 0, 0, 0},
30   {".adb", "@ada", 0, 0, 0},
31   {"@ada",
32    "\
33  %{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}}\
34  %{!S:%{!c:%e-c or -S required for Ada}}\
35  gnat1 %{I*} %{k8:-gnatk8} %{Wall:-gnatwa} %{w:-gnatws} %{!Q:-quiet}\
36     %{nostdinc*} %{nostdlib*}\
37     -dumpbase %{.adb:%b.adb}%{.ads:%b.ads}%{!.adb:%{!.ads:%b.ada}}\
38     %{fcompare-debug-second:%:compare-debug-auxbase-opt(%b) -gnatd_A} \
39     %{!fcompare-debug-second:%{c|S:%{o*:-auxbase-strip %*}%{!o*:-auxbase %b}}%{!c:%{!S:-auxbase %b}}} \
40     %{O*} %{W*} %{w} %{p} %{pg:-p} %{d*} \
41     %{coverage:-fprofile-arcs -ftest-coverage} "
42 #if defined(TARGET_VXWORKS_RTP)
43    "%{fRTS=rtp|fRTS=rtp-smp|fRTS=ravenscar-cert-rtp:-mrtp} "
44 #endif
45    "%{gnatea:-gnatez} %{g*&m*&f*} "
46    "%1 %{!S:%{o*:%w%*-gnatO}} \
47     %i %{S:%W{o*}%{!o*:-o %b.s}} \
48     %{gnatc*|gnats*: -o %j} %{-param*} \
49     %{!gnatc*:%{!gnats*:%(invoke_as)}}", 0, 0, 0},
50 
51   {"@adawhy",
52    "\
53  %{!c:%e-c required for gnat2why}\
54  gnat1why %{I*} %{k8:-gnatk8} %{!Q:-quiet}\
55     %{nostdinc*} %{nostdlib*}\
56     -dumpbase %{.adb:%b.adb}%{.ads:%b.ads}%{!.adb:%{!.ads:%b.ada}}\
57     %{o*:-auxbase-strip %*}%{!o*:-auxbase %b} \
58     %{a} %{d*} \
59     %{gnatea:-gnatez} %{g*&m*&f*} \
60     %1 %{o*:%w%*-gnatO} \
61     %i \
62     %{gnatc*|gnats*: -o %j} %{-param*} ", 0, 0, 0},
63 
64   {"@adascil",
65    "\
66  %{!c:%e-c required for gnat2scil}\
67  gnat1scil %{I*} %{k8:-gnatk8} %{!Q:-quiet}\
68     %{nostdinc*} %{nostdlib*}\
69     -dumpbase %{.adb:%b.adb}%{.ads:%b.ads}%{!.adb:%{!.ads:%b.ada}}\
70     %{o*:-auxbase-strip %*}%{!o*:-auxbase %b} \
71     %{a} %{d*} \
72     %{gnatea:-gnatez} %{g*&m*&f*} \
73     %1 %{o*:%w%*-gnatO} \
74     %i \
75     %{gnatc*|gnats*: -o %j} %{-param*} ", 0, 0, 0},
76