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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@106967
138bc75d-0d04-0410-961f-
82ee72b054a4