diff options
author | Vincent Celier <celier@adacore.com> | 2005-11-15 14:56:14 +0100 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2005-11-15 14:56:14 +0100 |
commit | 104e4daaa53212b718cc916a0a688c06dab6a5fb (patch) | |
tree | 670ec552e0e07e24221f4ff7c9afded0eb8cb6ed /gcc/ada/mlib.adb | |
parent | f9f7e1022c37e88c1fd0d622af84d25c7b0507bb (diff) | |
download | gcc-104e4daaa53212b718cc916a0a688c06dab6a5fb.zip gcc-104e4daaa53212b718cc916a0a688c06dab6a5fb.tar.gz gcc-104e4daaa53212b718cc916a0a688c06dab6a5fb.tar.bz2 |
clean.adb (Check_Project): Look for Ada code in extending project, even if Ada is not specified as a language.
2005-11-14 Vincent Celier <celier@adacore.com>
* clean.adb (Check_Project): Look for Ada code in extending project,
even if Ada is not specified as a language.
Use new function DLL_Prefix for DLL_Name
(Clean_Interface_Copy_Directory): New procedure
(Clean_Library_Directory): New procedure
(Clean_Directory): Remove procedure, no longer used
(Clean_Project): Do not delete any file in an externally built project
* prj-env.adb (Set_Ada_Paths.Add.Recursive_Add): Add the object
directory of an extending project, even when there are no Ada source
present.
(Ada_Objects_Path.Add): Add Library_ALI_Dir, not Library_Dir to the path
(Set_Ada_Paths.Add.Recursive_Add): Ditto
* mlib-prj.adb (Check_Library): For all library projects, get the
library file timestamp.
(Build_Library): Copy ALI files in Library_ALI_Dir, not in Library_Dir
(Build_Library): Use new function DLL_Prefix for the DLL_Name
(Clean): Remove procedure, no longer used
(Ultimate_Extension_Of): New function
(Build_Library): When cleaning the library directory, only remove an
existing library file and any ALI file of a source of the project.
When cleaning the interface copy directory, remove any source that
could be a source of the project.
* prj.ads, prj.adb (Project_Empty): Add values of new components
Library_TS and All_Imported_Projects.
(Project_Empty): Add values for new components of Project_Data:
Library_ALI_Dir and Display_Library_ALI_Dir
* prj-attr.adb: New project level attribute name Library_ALI_Dir
* prj-nmsc.adb (Check_Library_Attributes): Take into account new
attribute Library_ALI_Dir.
(Check_Library_Attributes): The library directory cannot be the same as
any source directory of the project tree.
(Check_Stand_Alone_Library): The interface copy directory cannot be
the same as any source directory of the project tree.
* mlib.adb: Use Prj.Com.Fail, instead of Osint.Fail directly, to delete
all temporary files.
From-SVN: r106967
Diffstat (limited to 'gcc/ada/mlib.adb')
-rw-r--r-- | gcc/ada/mlib.adb | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/gcc/ada/mlib.adb b/gcc/ada/mlib.adb index 338a304..549578a 100644 --- a/gcc/ada/mlib.adb +++ b/gcc/ada/mlib.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1999-2005, Ada Core Technologies, Inc. -- +-- Copyright (C) 1999-2005, AdaCore -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -34,6 +34,8 @@ with Namet; use Namet; with MLib.Utl; use MLib.Utl; +with Prj.Com; + with GNAT.Directory_Operations; use GNAT.Directory_Operations; package body MLib is @@ -67,24 +69,24 @@ package body MLib is procedure Check_Library_Name (Name : String) is begin if Name'Length = 0 then - Fail ("library name cannot be empty"); + Prj.Com.Fail ("library name cannot be empty"); end if; if Name'Length > Max_Characters_In_Library_Name then - Fail ("illegal library name """, Name, """: too long"); + Prj.Com.Fail ("illegal library name """, Name, """: too long"); end if; if not Is_Letter (Name (Name'First)) then - Fail ("illegal library name """, - Name, - """: should start with a letter"); + Prj.Com.Fail ("illegal library name """, + Name, + """: should start with a letter"); end if; for Index in Name'Range loop if not Is_Alphanumeric (Name (Index)) then - Fail ("illegal library name """, - Name, - """: should include only letters and digits"); + Prj.Com.Fail ("illegal library name """, + Name, + """: should include only letters and digits"); end if; end loop; end Check_Library_Name; @@ -273,7 +275,7 @@ package body MLib is end; if not Success then - Fail ("could not copy ALI files to library dir"); + Prj.Com.Fail ("could not copy ALI files to library dir"); end if; end loop; end if; |