diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2016-06-20 14:25:44 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2016-06-20 14:25:44 +0200 |
commit | 2f8d7dfe21740d1066912f2f99b83096ebf2962b (patch) | |
tree | b5fde2e52c699b7ea7fe5aefa2230ad7902ef393 /gcc/ada/make.adb | |
parent | 61f17a5c5a8565c5ebfcdbe78f16b56c52b285dd (diff) | |
download | gcc-2f8d7dfe21740d1066912f2f99b83096ebf2962b.zip gcc-2f8d7dfe21740d1066912f2f99b83096ebf2962b.tar.gz gcc-2f8d7dfe21740d1066912f2f99b83096ebf2962b.tar.bz2 |
[multiple changes]
2016-06-20 Hristian Kirtchev <kirtchev@adacore.com>
* s-regpat.adb, sem_prag.adb, pprint.adb, sem_ch13.adb: Minor
reformatting.
2016-06-20 Tristan Gingold <gingold@adacore.com>
* make.adb (Check_Standard_Library): Consider system.ads
if s-stalib.adb is not available.
* gnatbind.adb (Add_Artificial_ALI_File): New procedure extracted from
gnatbind.
2016-06-20 Thomas Quinot <quinot@adacore.com>
* g-socket.adb (Is_IP_Address): A string consisting in digits only is
not a dotted quad.
2016-06-20 Arnaud Charlet <charlet@adacore.com>
* exp_ch7.adb (Build_Invariant_Procedure_Body):
decorate invariant procedure body with typical properties of
procedure entityes.
2016-06-20 Arnaud Charlet <charlet@adacore.com>
* a-exetim-darwin.adb: New file.
From-SVN: r237598
Diffstat (limited to 'gcc/ada/make.adb')
-rw-r--r-- | gcc/ada/make.adb | 63 |
1 files changed, 35 insertions, 28 deletions
diff --git a/gcc/ada/make.adb b/gcc/ada/make.adb index 4449ef1..c0bde73 100644 --- a/gcc/ada/make.adb +++ b/gcc/ada/make.adb @@ -84,8 +84,11 @@ package body Make is -- Make control characters visible Standard_Library_Package_Body_Name : constant String := "s-stalib.adb"; - -- Every program depends on this package, that must then be checked, - -- especially when -f and -a are used. + System_Package_Spec_Name : constant String := "system.ads"; + -- Every program depends on one of these packages: usually the first one, + -- or if Supress_Standard_Library is true on the second one. The dependency + -- is not always explicit and considering it is important when -f and -a + -- are used. type Sigint_Handler is access procedure; pragma Convention (C, Sigint_Handler); @@ -2701,39 +2704,43 @@ package body Make is begin Need_To_Check_Standard_Library := False; + Name_Len := 0; + if not Targparm.Suppress_Standard_Library_On_Target then - declare - Sfile : File_Name_Type; - Add_It : Boolean := True; + Add_Str_To_Name_Buffer (Standard_Library_Package_Body_Name); + else + Add_Str_To_Name_Buffer (System_Package_Spec_Name); + end if; - begin - Name_Len := 0; - Add_Str_To_Name_Buffer (Standard_Library_Package_Body_Name); - Sfile := Name_Enter; + declare + Sfile : File_Name_Type; + Add_It : Boolean := True; - -- If we have a special runtime, we add the standard - -- library only if we can find it. + begin + Sfile := Name_Enter; - if RTS_Switch then - Add_It := Full_Source_Name (Sfile) /= No_File; - end if; + -- If we have a special runtime, we add the standard library only + -- if we can find it. - if Add_It then - if not Queue.Insert - ((Format => Format_Gnatmake, - File => Sfile, - Unit => No_Unit_Name, - Project => No_Project, - Index => 0, - Sid => No_Source)) - then - if Is_In_Obsoleted (Sfile) then - Executable_Obsolete := True; - end if; + if RTS_Switch then + Add_It := Full_Source_Name (Sfile) /= No_File; + end if; + + if Add_It then + if not Queue.Insert + ((Format => Format_Gnatmake, + File => Sfile, + Unit => No_Unit_Name, + Project => No_Project, + Index => 0, + Sid => No_Source)) + then + if Is_In_Obsoleted (Sfile) then + Executable_Obsolete := True; end if; end if; - end; - end if; + end if; + end; end Check_Standard_Library; ----------------------------------- |