File : gnatvsn.ads
1 ------------------------------------------------------------------------------
2 -- --
3 -- GNAT COMPILER COMPONENTS --
4 -- --
5 -- G N A T V S N --
6 -- --
7 -- S p e c --
8 -- --
9 -- Copyright (C) 1992-2016, Free Software Foundation, Inc. --
10 -- --
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. --
17 -- --
18 -- --
19 -- --
20 -- --
21 -- --
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/>. --
26 -- --
27 -- GNAT was originally developed by the GNAT team at New York University. --
28 -- Extensive contributions were provided by Ada Core Technologies Inc. --
29 -- --
30 ------------------------------------------------------------------------------
31
32 -- This package spec holds version information for the GNAT tools.
33 -- It is updated whenever the release number is changed.
34
35 package Gnatvsn is
36
37 Gnat_Static_Version_String : constant String := "2016 (20160515)";
38 -- Static string identifying this version, that can be used as an argument
39 -- to e.g. pragma Ident. Note that the date (founding date of AdaCore) is
40 -- a dummy value that gets reset to the actual build date by the scripts.
41 --
42 -- WARNING: some scripts rely on the format of this string. Any change
43 -- must be coordinated with the scripts requirements. Furthermore, no
44 -- other variable in this package may have a name starting with
45 -- Gnat_Static_Version.
46
47 Library_Version : constant String := "2016";
48 -- Library version. It needs to be updated whenever the major or
49 -- minor version number is changed.
50 --
51 -- Note: Makefile.in uses the library version string to construct the
52 -- soname value. Some tools assume that the Library_Version is equal
53 -- to the first two digits of the GNAT_Static_Version_String.
54
55 Current_Year : constant String := "2016";
56 -- Used in printing copyright messages
57
58 Verbose_Library_Version : constant String := "GNAT Lib v" & Library_Version;
59 -- Version string stored in e.g. ALI files
60
61 function Gnat_Version_String return String;
62 -- Version output when GNAT (compiler), or its related tools, including
63 -- GNATBIND, GNATCHOP, GNATFIND, GNATLINK, GNATMAKE, GNATXREF, are run
64 -- (with appropriate verbose option switch set).
65
66 type Gnat_Build_Type is (Gnatpro, FSF, GPL);
67 -- See Get_Gnat_Build_Type below for the meaning of these values
68
69 Build_Type : constant Gnat_Build_Type := GPL;
70 -- Kind of GNAT Build:
71 --
72 -- FSF
73 -- GNAT FSF version. This version of GNAT is part of a Free Software
74 -- Foundation release of the GNU Compiler Collection (GCC). The bug
75 -- box generated by Comperr gives information on how to report bugs
76 -- and list the "no warranty" information.
77 --
78 -- Gnatpro
79 -- GNAT Professional version. This version of GNAT is supported by Ada
80 -- Core Technologies. The bug box generated by package Comperr gives
81 -- instructions on bug submission that include references to customer
82 -- number, gnattracker site etc.
83 --
84 -- GPL
85 -- GNAT GPL Edition. This is a special version of GNAT, released by
86 -- Ada Core Technologies and intended for academic users, and free
87 -- software developers. The bug box generated by the package Comperr
88 -- gives appropriate bug submission instructions that do not reference
89 -- customer number etc.
90
91 function Gnat_Free_Software return String;
92 -- Text to be displayed by the different GNAT tools when switch --version
93 -- is used. This text depends on the GNAT build type.
94
95 function Copyright_Holder return String;
96 -- Return the name of the Copyright holder to be displayed by the different
97 -- GNAT tools when switch --version is used.
98
99 Ver_Len_Max : constant := 64;
100 -- Longest possible length for Gnat_Version_String in this or any
101 -- other version of GNAT. This is used by the binder to establish
102 -- space to store any possible version string value for checks. This
103 -- value should never be decreased in the future, but it would be
104 -- OK to increase it if absolutely necessary. If it is increased,
105 -- be sure to increase GNAT.Compiler.Version.Ver_Len_Max as well.
106
107 Ver_Prefix : constant String := "GNAT Version: ";
108 -- Prefix generated by binder. If it is changed, be sure to change
109 -- GNAT.Compiler_Version.Ver_Prefix as well.
110
111 end Gnatvsn;