OSDN Git Service

* gcc-interface/decl.c (make_type_from_size) <INTEGER_TYPE>: Just copy
[pf3gnuchains/gcc-fork.git] / gcc / ada / mlib-tgt-vms_common.adb
1 ------------------------------------------------------------------------------
2 --                                                                          --
3 --                         GNAT COMPILER COMPONENTS                         --
4 --                                                                          --
5 --                  M L I B . T G T . V M S _ C O M M O N                   --
6 --                                                                          --
7 --                                 B o d y                                  --
8 --                                                                          --
9 --          Copyright (C) 2003-2008, 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.  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 COPYING3.  If not, go to --
19 -- http://www.gnu.org/licenses for a complete copy of the license.          --
20 --                                                                          --
21 -- GNAT was originally developed  by the GNAT team at  New York University. --
22 -- Extensive contributions were provided by Ada Core Technologies Inc.      --
23 --                                                                          --
24 ------------------------------------------------------------------------------
25
26 --  This is the part of MLib.Tgt.Specific common to both VMS versions
27
28 package body MLib.Tgt.VMS_Common is
29
30    --  Non default subprograms. See comments in mlib-tgt.ads
31
32    function Archive_Ext return String;
33
34    function Default_Symbol_File_Name return String;
35
36    function DLL_Ext return String;
37
38    function Is_Object_Ext (Ext : String) return Boolean;
39
40    function Is_Archive_Ext (Ext : String) return Boolean;
41
42    function Libgnat return String;
43
44    function Object_Ext return String;
45
46    function Library_Major_Minor_Id_Supported return Boolean;
47
48    function PIC_Option return String;
49
50    -----------------
51    -- Archive_Ext --
52    -----------------
53
54    function Archive_Ext return String is
55    begin
56       return "olb";
57    end Archive_Ext;
58
59    ------------------------------
60    -- Default_Symbol_File_Name --
61    ------------------------------
62
63    function Default_Symbol_File_Name return String is
64    begin
65       return "symvec.opt";
66    end Default_Symbol_File_Name;
67
68    -------------
69    -- DLL_Ext --
70    -------------
71
72    function DLL_Ext return String is
73    begin
74       return "exe";
75    end DLL_Ext;
76
77    -------------------
78    -- Is_Object_Ext --
79    -------------------
80
81    function Is_Object_Ext (Ext : String) return Boolean is
82    begin
83       return Ext = ".obj";
84    end Is_Object_Ext;
85
86    --------------------
87    -- Is_Archive_Ext --
88    --------------------
89
90    function Is_Archive_Ext (Ext : String) return Boolean is
91    begin
92       return Ext = ".olb" or else Ext = ".exe";
93    end Is_Archive_Ext;
94
95    -------------
96    -- Libgnat --
97    -------------
98
99    function Libgnat return String is
100       Libgnat_A : constant String := "libgnat.a";
101       Libgnat_Olb : constant String := "libgnat.olb";
102
103    begin
104       Name_Len := Libgnat_A'Length;
105       Name_Buffer (1 .. Name_Len) := Libgnat_A;
106
107       if Osint.Find_File (Name_Enter, Osint.Library) /= No_File then
108          return Libgnat_A;
109       else
110          return Libgnat_Olb;
111       end if;
112    end Libgnat;
113
114    --------------------------------------
115    -- Library_Major_Minor_Id_Supported --
116    --------------------------------------
117
118    function Library_Major_Minor_Id_Supported return Boolean is
119    begin
120       return False;
121    end Library_Major_Minor_Id_Supported;
122
123    ----------------
124    -- Object_Ext --
125    ----------------
126
127    function Object_Ext return String is
128    begin
129       return "obj";
130    end Object_Ext;
131
132    ----------------
133    -- PIC_Option --
134    ----------------
135
136    function PIC_Option return String is
137    begin
138       return "";
139    end PIC_Option;
140
141 --  Package initialization
142
143 begin
144    Archive_Ext_Ptr              := Archive_Ext'Access;
145    Default_Symbol_File_Name_Ptr := Default_Symbol_File_Name'Access;
146    DLL_Ext_Ptr                  := DLL_Ext'Access;
147    Is_Object_Ext_Ptr            := Is_Object_Ext'Access;
148    Is_Archive_Ext_Ptr           := Is_Archive_Ext'Access;
149    Libgnat_Ptr                  := Libgnat'Access;
150    Object_Ext_Ptr               := Object_Ext'Access;
151    PIC_Option_Ptr               := PIC_Option'Access;
152    Library_Major_Minor_Id_Supported_Ptr :=
153                                    Library_Major_Minor_Id_Supported'Access;
154
155 end MLib.Tgt.VMS_Common;