1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2003 Free Software Foundation, Inc. --
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 2, 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 distributed with GNAT; see file COPYING. If not, write --
19 -- to the Free Software Foundation, 51 Franklin Street, Fifth Floor, --
20 -- Boston, MA 02110-1301, USA. --
22 -- As a special exception, if other files instantiate generics from this --
23 -- unit, or you link this unit with other files to produce an executable, --
24 -- this unit does not by itself cause the resulting executable to be --
25 -- covered by the GNU General Public License. This exception does not --
26 -- however invalidate any other reasons why the executable file might be --
27 -- covered by the GNU Public License. --
29 -- GNAT was originally developed by the GNAT team at New York University. --
30 -- Extensive contributions were provided by Ada Core Technologies Inc. --
32 ------------------------------------------------------------------------------
34 -- This package defines some system dependent parameters for GNAT. These
35 -- are parameters that are relevant to the host machine on which the
36 -- compiler is running, and thus this package is part of the compiler.
40 -----------------------
41 -- TARGET Parameters --
42 -----------------------
44 -- ??? The following should really be moved to a Target package
46 Java_VM
: constant Boolean := False;
47 -- Set true when compiling the JGNAT tool chain (compiler, gnatmake, etc)
54 pragma Import
(C
, Gnat_VMSp
, "__gnat_vmsp");
56 OpenVMS
: Boolean := Gnat_VMSp
/= 0;
57 -- Set True for OpenVMS host. See also OpenVMS target boolean in
58 -- 5vsystem.ads and OpenVMS_On_Target boolean in Targparm. This is
59 -- not a constant, because it can be modified by -gnatdm.
61 Normalized_CWD
: constant String := "./";
62 -- Normalized string to access current directory
64 Max_Line_Length
: constant := 255;
65 -- Maximum source line length. This can be set to any value up to
66 -- 2**15 - 1, a limit imposed by the assumption that column numbers
67 -- can be stored in 16 bits (see Types.Column_Number). A value of
68 -- 200 is the minimum value required (RM 2.2(15)), but we use 255
69 -- for most GNAT targets since this is DEC Ada compatible. The value
70 -- set here can be overridden by the explicit use of -gnatyM.
72 Max_Name_Length
: constant := 1024;
73 -- Maximum length of unit name (including all dots, and " (spec)") and
74 -- of file names in the library, must be at least Max_Line_Length, but
77 Max_Instantiations
: constant := 4000;
78 -- Maximum number of instantiations permitted (to stop runaway cases
79 -- of nested instantiations). These situations probably only occur in
80 -- specially concocted test cases.
82 Tag_Errors
: constant Boolean := False;
83 -- If set to true, then brief form error messages will be prefaced by
84 -- the string "error:". Used as default for Opt.Unique_Error_Tag.
86 Exclude_Missing_Objects
: constant Boolean := True;
87 -- If set to true, gnatbind will exclude from consideration all
88 -- non-existent .o files.
90 Max_Debug_Name_Length
: constant := 256;
91 -- If a generated qualified debug name exceeds this length, then it
92 -- is automatically compressed, regardless of the setting of the
93 -- Compress_Debug_Names switch controlled by -gnatC.