blob: ec219b53eb149f79003db4ed0bd7f65b886f4a0a [file] [log] [blame]
------------------------------------------------------------------------------
-- --
-- GNAT COMPILER COMPONENTS --
-- --
-- M A K E U S G --
-- --
-- B o d y --
-- --
-- $Revision$
-- --
-- Copyright (C) 1992-2001 Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
-- ware Foundation; either version 2, or (at your option) any later ver- --
-- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
-- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
-- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License --
-- for more details. You should have received a copy of the GNU General --
-- Public License distributed with GNAT; see file COPYING. If not, write --
-- to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, --
-- MA 02111-1307, USA. --
-- --
-- GNAT was originally developed by the GNAT team at New York University. --
-- It is now maintained by Ada Core Technologies Inc (http://www.gnat.com). --
-- --
------------------------------------------------------------------------------
with Osint; use Osint;
with Output; use Output;
with Usage;
procedure Makeusg is
procedure Write_Switch_Char;
-- Write two spaces followed by appropriate switch character
procedure Write_Switch_Char is
begin
Write_Str (" ");
Write_Char (Switch_Character);
end Write_Switch_Char;
-- Start of processing for Makeusg
begin
-- Usage line
Write_Str ("Usage: ");
Osint.Write_Program_Name;
Write_Str (" opts name ");
Write_Str ("{[-cargs opts] [-bargs opts] [-largs opts]}");
Write_Eol;
Write_Eol;
Write_Str (" name is a file name from which you can omit the");
Write_Str (" .adb or .ads suffix");
Write_Eol;
Write_Eol;
-- GNATMAKE switches
Write_Str ("gnatmake switches:");
Write_Eol;
-- Line for -a
Write_Switch_Char;
Write_Str ("a Consider all files, even readonly ali files");
Write_Eol;
-- Line for -b
Write_Switch_Char;
Write_Str ("b Bind only");
Write_Eol;
-- Line for -c
Write_Switch_Char;
Write_Str ("c Compile only");
Write_Eol;
-- Line for -f
Write_Switch_Char;
Write_Str ("f Force recompilations of non predefined units");
Write_Eol;
-- Line for -i
Write_Switch_Char;
Write_Str ("i In place. Replace existing ali file, ");
Write_Str ("or put it with source");
Write_Eol;
-- Line for -jnnn
Write_Switch_Char;
Write_Str ("jnum Use nnn processes to compile");
Write_Eol;
-- Line for -k
Write_Switch_Char;
Write_Str ("k Keep going after compilation errors");
Write_Eol;
-- Line for -l
Write_Switch_Char;
Write_Str ("l Link only");
Write_Eol;
-- Line for -m
Write_Switch_Char;
Write_Str ("m Minimal recompilation");
Write_Eol;
-- Line for -M
Write_Switch_Char;
Write_Str ("M List object file dependences for Makefile");
Write_Eol;
-- Line for -n
Write_Switch_Char;
Write_Str ("n Check objects up to date, output next file ");
Write_Str ("to compile if not");
Write_Eol;
-- Line for -o
Write_Switch_Char;
Write_Str ("o name Choose an alternate executable name");
Write_Eol;
-- Line for -P
Write_Switch_Char;
Write_Str ("Pproj Use GNAT Project File proj");
Write_Eol;
-- Line for -q
Write_Switch_Char;
Write_Str ("q Be quiet/terse");
Write_Eol;
-- Line for -s
Write_Switch_Char;
Write_Str ("s Recompile if compiler switches have changed");
Write_Eol;
-- Line for -u
Write_Switch_Char;
Write_Str ("u Unique compilation. Only compile the given file.");
Write_Eol;
-- Line for -v
Write_Switch_Char;
Write_Str ("v Display reasons for all (re)compilations");
Write_Eol;
-- Line for -vPx
Write_Switch_Char;
Write_Str ("vPx Specify verbosity when parsing GNAT Project Files");
Write_Eol;
-- Line for -X
Write_Switch_Char;
Write_Str ("Xnm=val Specify an external reference for GNAT Project Files");
Write_Eol;
-- Line for -z
Write_Switch_Char;
Write_Str ("z No main subprogram (zero main)");
Write_Eol;
Write_Eol;
Write_Str (" --GCC=command Use this gcc command");
Write_Eol;
Write_Str (" --GNATBIND=command Use this gnatbind command");
Write_Eol;
Write_Str (" --GNATLINK=command Use this gnatlink command");
Write_Eol;
Write_Eol;
-- Source and Library search path switches
Write_Str ("Source and Library search path switches:");
Write_Eol;
-- Line for -aL
Write_Switch_Char;
Write_Str ("aLdir Skip missing library sources if ali in dir");
Write_Eol;
-- Line for -A
Write_Switch_Char;
Write_Str ("Adir like -aLdir -aIdir");
Write_Eol;
-- Line for -aO switch
Write_Switch_Char;
Write_Str ("aOdir Specify library/object files search path");
Write_Eol;
-- Line for -aI switch
Write_Switch_Char;
Write_Str ("aIdir Specify source files search path");
Write_Eol;
-- Line for -I switch
Write_Switch_Char;
Write_Str ("Idir Like -aIdir -aOdir");
Write_Eol;
-- Line for -I- switch
Write_Switch_Char;
Write_Str ("I- Don't look for sources & library files");
Write_Str (" in the default directory");
Write_Eol;
-- Line for -L
Write_Switch_Char;
Write_Str ("Ldir Look for program libraries also in dir");
Write_Eol;
-- Line for -nostdinc
Write_Switch_Char;
Write_Str ("nostdinc Don't look for sources");
Write_Str (" in the system default directory");
Write_Eol;
-- Line for -nostdlib
Write_Switch_Char;
Write_Str ("nostdlib Don't look for library files");
Write_Str (" in the system default directory");
Write_Eol;
Write_Eol;
-- General Compiler, Binder, Linker switches
Write_Str ("To pass an arbitrary switch to the Compiler, ");
Write_Str ("Binder or Linker:");
Write_Eol;
-- Line for -cargs
Write_Switch_Char;
Write_Str ("cargs opts opts are passed to the compiler");
Write_Eol;
-- Line for -bargs
Write_Switch_Char;
Write_Str ("bargs opts opts are passed to the binder");
Write_Eol;
-- Line for -largs
Write_Switch_Char;
Write_Str ("largs opts opts are passed to the linker");
Write_Eol;
-- Add usage information for gcc
Usage;
end Makeusg;