1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
11 -- Copyright (C) 1992-2000 Free Software Foundation, Inc. --
13 -- GNAT is free software; you can redistribute it and/or modify it under --
14 -- terms of the GNU General Public License as published by the Free Soft- --
15 -- ware Foundation; either version 2, or (at your option) any later ver- --
16 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
17 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
18 -- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License --
19 -- for more details. You should have received a copy of the GNU General --
20 -- Public License distributed with GNAT; see file COPYING. If not, write --
21 -- to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, --
22 -- MA 02111-1307, USA. --
24 -- GNAT was originally developed by the GNAT team at New York University. --
25 -- It is now maintained by Ada Core Technologies Inc (http://www.gnat.com). --
27 ------------------------------------------------------------------------------
29 with Osint
; use Osint
;
30 with Output
; use Output
;
35 procedure Write_Switch_Char
;
36 -- Write two spaces followed by appropriate switch character
38 procedure Write_Switch_Char
is
41 Write_Char
(Switch_Character
);
42 end Write_Switch_Char
;
44 -- Start of processing for Makeusg
49 Write_Str
("Usage: ");
50 Osint
.Write_Program_Name
;
51 Write_Str
(" opts name ");
52 Write_Str
("{[-cargs opts] [-bargs opts] [-largs opts]}");
55 Write_Str
(" name is a file name from which you can omit the");
56 Write_Str
(" .adb or .ads suffix");
62 Write_Str
("gnatmake switches:");
68 Write_Str
("a Consider all files, even readonly ali files");
74 Write_Str
("c Compile only, do not bind and link");
80 Write_Str
("f Force recompilations of non predefined units");
86 Write_Str
("i In place. Replace existing ali file, ");
87 Write_Str
("or put it with source");
93 Write_Str
("jnum Use nnn processes to compile");
99 Write_Str
("k Keep going after compilation errors");
105 Write_Str
("m Minimal recompilation");
111 Write_Str
("M List object file dependences for Makefile");
117 Write_Str
("n Check objects up to date, output next file ");
118 Write_Str
("to compile if not");
124 Write_Str
("o name Choose an alternate executable name");
130 Write_Str
("Pproj Use GNAT Project File proj");
136 Write_Str
("q Be quiet/terse");
142 Write_Str
("s Recompile if compiler switches have changed");
148 Write_Str
("u Unique compilation. Only compile the given file.");
154 Write_Str
("v Display reasons for all (re)compilations");
160 Write_Str
("vPx Specify verbosity when parsing GNAT Project Files");
166 Write_Str
("Xnm=val Specify an external reference for GNAT Project Files");
172 Write_Str
("z No main subprogram (zero main)");
176 Write_Str
(" --GCC=command Use this gcc command");
179 Write_Str
(" --GNATBIND=command Use this gnatbind command");
182 Write_Str
(" --GNATLINK=command Use this gnatlink command");
186 -- Source and Library search path switches
188 Write_Str
("Source and Library search path switches:");
194 Write_Str
("aLdir Skip missing library sources if ali in dir");
200 Write_Str
("Adir like -aLdir -aIdir");
203 -- Line for -aO switch
206 Write_Str
("aOdir Specify library/object files search path");
209 -- Line for -aI switch
212 Write_Str
("aIdir Specify source files search path");
215 -- Line for -I switch
218 Write_Str
("Idir Like -aIdir -aOdir");
221 -- Line for -I- switch
224 Write_Str
("I- Don't look for sources & library files");
225 Write_Str
(" in the default directory");
231 Write_Str
("Ldir Look for program libraries also in dir");
234 -- Line for -nostdinc
237 Write_Str
("nostdinc Don't look for sources");
238 Write_Str
(" in the system default directory");
241 -- Line for -nostdlib
244 Write_Str
("nostdlib Don't look for library files");
245 Write_Str
(" in the system default directory");
249 -- General Compiler, Binder, Linker switches
251 Write_Str
("To pass an arbitrary switch to the Compiler, ");
252 Write_Str
("Binder or Linker:");
258 Write_Str
("cargs opts opts are passed to the compiler");
264 Write_Str
("bargs opts opts are passed to the binder");
270 Write_Str
("largs opts opts are passed to the linker");
273 -- Add usage information for gcc