From c3ed199275440686b6a35225d9b698c27b5bef24 Mon Sep 17 00:00:00 2001 From: Arnaud Charlet Date: Mon, 30 Nov 2009 14:36:29 +0100 Subject: [multiple changes] 2009-11-30 Emmanuel Briot * gnat_ugn.texi: Extend doc for -eL 2009-11-30 Vincent Celier * 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 * prj-part.adb (Project_Path_Name_Of): Resolve links for final result if -eL has been specified. From-SVN: r154798 --- gcc/ada/ChangeLog | 14 ++++++++++++++ gcc/ada/gnat_ugn.texi | 14 ++++++++++++++ gcc/ada/osint.adb | 4 ++-- gcc/ada/prj-part.adb | 2 +- 4 files changed, 31 insertions(+), 3 deletions(-) (limited to 'gcc/ada') diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 6aa41d9..2090693 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,17 @@ +2009-11-30 Emmanuel Briot + + * gnat_ugn.texi: Extend doc for -eL + +2009-11-30 Vincent Celier + + * 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 + + * prj-part.adb (Project_Path_Name_Of): Resolve links for final result + if -eL has been specified. + 2009-11-30 Vincent Celier * 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 4f21857..87faf97 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 fd42107..bf2b234 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 7702f54..c733f38 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); -- cgit v1.1