diff options
-rw-r--r-- | gcc/ada/ChangeLog | 14 | ||||
-rw-r--r-- | gcc/ada/gnat_ugn.texi | 14 | ||||
-rw-r--r-- | gcc/ada/osint.adb | 4 | ||||
-rw-r--r-- | gcc/ada/prj-part.adb | 2 |
4 files changed, 31 insertions, 3 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 6aa41d98aef..20906938aa3 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,17 @@ +2009-11-30 Emmanuel Briot <briot@adacore.com> + + * gnat_ugn.texi: Extend doc for -eL + +2009-11-30 Vincent Celier <celier@adacore.com> + + * osint.adb (Executable_Name (File_Name_Type)): Put the Name in the + Name_Buffer before testing for a dot in the Name. + +2009-11-30 Vincent Celier <celier@adacore.com> + + * prj-part.adb (Project_Path_Name_Of): Resolve links for final result + if -eL has been specified. + 2009-11-30 Vincent Celier <celier@adacore.com> * osint.adb (Executable_Name): Test the name instead of the name buffer diff --git a/gcc/ada/gnat_ugn.texi b/gcc/ada/gnat_ugn.texi index 4f218579dc9..87faf97d0ed 100644 --- a/gcc/ada/gnat_ugn.texi +++ b/gcc/ada/gnat_ugn.texi @@ -9326,7 +9326,21 @@ This switch cannot be used when using a project file. @ifclear vms @item -eL @cindex @option{-eL} (@command{gnatmake}) +@cindex symbolic links Follow all symbolic links when processing project files. +This should be used if your project uses symbolic links for files or +directories, but is not needed in other cases. + +@cindex naming scheme +This also assumes that no directory matches the naming scheme for files (for +instance that you do not have a directory called "sources.ads" when using the +default GNAT naming scheme). + +When you do not have to use this switch (ie by default), gnatmake is able to +save a lot of system calls (several per source file and object file), which +can result in a significant speed up to load and manipulate a project file, +especially when using source files from a remote system. + @end ifclear @item ^-eS^/STANDARD_OUTPUT_FOR_COMMANDS^ diff --git a/gcc/ada/osint.adb b/gcc/ada/osint.adb index fd4210744b2..bf2b234000b 100644 --- a/gcc/ada/osint.adb +++ b/gcc/ada/osint.adb @@ -813,6 +813,8 @@ package body Osint is end if; if Exec_Suffix'Length /= 0 then + Get_Name_String (Name); + Add_Suffix := True; if Only_If_No_Suffix then for J in reverse 1 .. Name_Len loop @@ -829,8 +831,6 @@ package body Osint is end if; if Add_Suffix then - Get_Name_String (Name); - declare Buffer : String := Name_Buffer (1 .. Name_Len); diff --git a/gcc/ada/prj-part.adb b/gcc/ada/prj-part.adb index 7702f540930..c733f38365c 100644 --- a/gcc/ada/prj-part.adb +++ b/gcc/ada/prj-part.adb @@ -2083,7 +2083,7 @@ package body Prj.Part is GNAT.OS_Lib.Normalize_Pathname (Result.all, Directory => Directory, - Resolve_Links => False, + Resolve_Links => Opt.Follow_Links_For_Files, Case_Sensitive => True); begin Free (Result); |