1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2017, 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 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. --
18 -- As a special exception under Section 7 of GPL version 3, you are granted --
19 -- additional permissions described in the GCC Runtime Library Exception, --
20 -- version 3.1, as published by the Free Software Foundation. --
22 -- You should have received a copy of the GNU General Public License and --
23 -- a copy of the GCC Runtime Library Exception along with this program; --
24 -- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see --
25 -- <http://www.gnu.org/licenses/>. --
27 -- GNAT was originally developed by the GNAT team at New York University. --
28 -- Extensive contributions were provided by Ada Core Technologies Inc. --
30 ------------------------------------------------------------------------------
32 -- This package spec holds version information for the GNAT tools.
33 -- It is updated whenever the release number is changed.
37 Gnat_Static_Version_String
: constant String := "GNU Ada";
38 -- Static string identifying this version, that can be used as an argument
39 -- to e.g. pragma Ident.
41 Library_Version
: constant String := "8";
42 -- Library version. It needs to be updated whenever the major version
45 -- Note: Makefile.in uses the library version string to construct the
48 Current_Year
: constant String := "2017";
49 -- Used in printing copyright messages
51 Verbose_Library_Version
: constant String := "GNAT Lib v" & Library_Version
;
52 -- Version string stored in e.g. ALI files
54 function Gnat_Version_String
return String;
55 -- Version output when GNAT (compiler), or its related tools, including
56 -- GNATBIND, GNATCHOP, GNATFIND, GNATLINK, GNATMAKE, GNATXREF, are run
57 -- (with appropriate verbose option switch set).
59 type Gnat_Build_Type
is (FSF
, GPL
);
60 -- See Build_Type below for the meaning of these values.
62 Build_Type
: constant Gnat_Build_Type
:= FSF
;
63 -- Kind of GNAT build:
66 -- GNAT FSF version. This version of GNAT is part of a Free Software
67 -- Foundation release of the GNU Compiler Collection (GCC). The bug
68 -- box generated by Comperr gives information on how to report bugs
69 -- and list the "no warranty" information.
72 -- GNAT GPL Edition. This is a special version of GNAT, released by
73 -- Ada Core Technologies and intended for academic users, and free
74 -- software developers. The bug box generated by the package Comperr
75 -- gives appropriate bug submission instructions that do not reference
76 -- customer number etc.
78 function Gnat_Free_Software
return String;
79 -- Text to be displayed by the different GNAT tools when switch --version
80 -- is used. This text depends on the GNAT build type.
82 function Copyright_Holder
return String;
83 -- Return the name of the Copyright holder to be displayed by the different
84 -- GNAT tools when switch --version is used.
86 Ver_Len_Max
: constant := 256;
87 -- Longest possible length for Gnat_Version_String in this or any
88 -- other version of GNAT. This is used by the binder to establish
89 -- space to store any possible version string value for checks. This
90 -- value should never be decreased in the future, but it would be
91 -- OK to increase it if absolutely necessary. If it is increased,
92 -- be sure to increase GNAT.Compiler.Version.Ver_Len_Max as well.
94 Ver_Prefix
: constant String := "GNAT Version: ";
95 -- Prefix generated by binder. If it is changed, be sure to change
96 -- GNAT.Compiler_Version.Ver_Prefix as well.