mlib-tgt-darwin.adb (Library_Exist_For, [...]): Add new parameter In_Tree to specify the project tree...

* mlib-tgt-darwin.adb (Library_Exist_For, Library_File_Name_For):
        Add new parameter In_Tree to specify the project tree: needed
        by the project manager. Adapt to changes in project manager
        using new parameter In_Tree.

From-SVN: r96545
This commit is contained in:
Vincent Celier 2005-03-16 01:32:38 +01:00 committed by Geert Bosch
parent c96a2f400d
commit 2532808d17
2 changed files with 29 additions and 11 deletions

View File

@ -1,3 +1,10 @@
2005-03-15 Vincent Celier <celier@adacore.com>
* mlib-tgt-darwin.adb (Library_Exist_For, Library_File_Name_For):
Add new parameter In_Tree to specify the project tree: needed
by the project manager. Adapt to changes in project manager
using new parameter In_Tree.
2005-03-15 Jakub Jelinek <jakub@redhat.com>
* Make-lang.in (ada/treeprs.ads, ada/einfo.h, ada/sinfo.h,
@ -806,8 +813,8 @@
2005-02-13 Andrew Pinski <pinskia@physics.uc.edu>
PR ada/19942
* utils.c (gnat_type_for_mode): Return null instead of ICE because we asked
for an unknown mode.
* utils.c (gnat_type_for_mode): Return null instead of ICE because
we asked for an unknown mode.
2005-02-12 Richard Henderson <rth@redhat.com>

View File

@ -266,9 +266,11 @@ package body MLib.Tgt is
-- Library_Exists_For --
------------------------
function Library_Exists_For (Project : Project_Id) return Boolean is
function Library_Exists_For
(Project : Project_Id; In_Tree : Project_Tree_Ref) return Boolean
is
begin
if not Projects.Table (Project).Library then
if not In_Tree.Projects.Table (Project).Library then
Prj.Com.Fail ("INTERNAL ERROR: Library_Exists_For called " &
"for non library project");
return False;
@ -276,12 +278,16 @@ package body MLib.Tgt is
else
declare
Lib_Dir : constant String :=
Get_Name_String (Projects.Table (Project).Library_Dir);
Get_Name_String
(In_Tree.Projects.Table (Project).Library_Dir);
Lib_Name : constant String :=
Get_Name_String (Projects.Table (Project).Library_Name);
Get_Name_String
(In_Tree.Projects.Table (Project).Library_Name);
begin
if Projects.Table (Project).Library_Kind = Static then
if In_Tree.Projects.Table (Project).Library_Kind =
Static
then
return Is_Regular_File
(Lib_Dir & Directory_Separator & "lib" &
Fil.Ext_To (Lib_Name, Archive_Ext));
@ -299,9 +305,12 @@ package body MLib.Tgt is
-- Library_File_Name_For --
---------------------------
function Library_File_Name_For (Project : Project_Id) return Name_Id is
function Library_File_Name_For
(Project : Project_Id;
In_Tree : Project_Tree_Ref) return Name_Id
is
begin
if not Projects.Table (Project).Library then
if not In_Tree.Projects.Table (Project).Library then
Prj.Com.Fail ("INTERNAL ERROR: Library_File_Name_For called " &
"for non library project");
return No_Name;
@ -309,13 +318,15 @@ package body MLib.Tgt is
else
declare
Lib_Name : constant String :=
Get_Name_String (Projects.Table (Project).Library_Name);
Get_Name_String
(In_Tree.Projects.Table (Project).Library_Name);
begin
Name_Len := 3;
Name_Buffer (1 .. Name_Len) := "lib";
if Projects.Table (Project).Library_Kind = Static then
if In_Tree.Projects.Table (Project).Library_Kind =
Static then
Add_Str_To_Name_Buffer (Fil.Ext_To (Lib_Name, Archive_Ext));
else