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, 59 Temple Place - Suite 330, Boston, --
20 -- MA 02111-1307, 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 spec exports version information for GNAT, GNATBIND and
39 function Gnat_Version_String
return String;
40 -- Version output when GNAT (compiler), or its related tools, including
41 -- GNATBIND, GNATCHOP, GNATFIND, GNATLINK, GNATMAKE, GNATXREF, are run
42 -- (with appropriate verbose option switch set).
44 Gnat_Static_Version_String
: constant String := "GNU Ada";
45 -- Static string identifying this version, that can be used as an argument
46 -- to e.g. pragma Ident.
48 type Gnat_Build_Type
is (FSF
, Public
, GAP
);
49 -- See Get_Gnat_Build_Type below for the meaning of these values.
51 function Get_Gnat_Build_Type
return Gnat_Build_Type
;
52 -- This function returns one of the following values of Gnat_Build_Type:
55 -- GNAT FSF version. This version of GNAT is part of a Free Software
56 -- Foundation release of the GNU Compiler Collection (GCC). The binder
57 -- will not output informational messages regarding intended use,
58 -- and the bug box generated by Comperr will give information on
59 -- how to report bugs and list the "no warranty" information.
62 -- GNAT Public version.
63 -- The binder will output informational messages, and the bug box
64 -- generated by the package Comperr will give appropriate bug
65 -- submission instructions.
68 -- GNAT Academic Program, similar to Public.
70 Ver_Len_Max
: constant := 32;
71 -- Longest possible length for Gnat_Version_String in this or any
72 -- other version of GNAT. This is used by the binder to establish
73 -- space to store any possible version string value for checks. This
74 -- value should never be decreased in the future, but it would be
75 -- OK to increase it if absolutely necessary.
77 Library_Version
: constant String := "4.0";
78 -- Library version. This value must be updated whenever any change to the
79 -- compiler affects the library formats in such a way as to obsolete
80 -- previously compiled library modules.
82 -- Note: Makefile.in relies on the precise format of the library version
83 -- string in order to correctly construct the soname value.
85 Verbose_Library_Version
: constant String := "GNAT Lib v" & Library_Version
;
86 -- Version string stored in e.g. ALI files.
88 ASIS_Version_Number
: constant := 4;
89 -- ASIS Version. This is used to check for consistency between the compiler
90 -- used to generate trees, and an ASIS application that is reading the
91 -- trees. It must be updated (incremented) whenever a change is made to
92 -- the tree format that would result in a compiler being incompatible with
93 -- an older version of ASIS, or vice versa.