[multiple changes]
2015-11-25 Vincent Celier <celier@adacore.com> * gnatcmd.adb: When <target>-gnat is called with switch -P and a GPR tool is invoked, invoke the GPR tool with switch --target=<target>. 2015-11-25 Hristian Kirtchev <kirtchev@adacore.com> * opt.adb, bcheck.adb: Minor reformatting. From-SVN: r230876
This commit is contained in:
parent
ccaca7e9f0
commit
3429710e69
|
@ -1,3 +1,13 @@
|
|||
2015-11-25 Vincent Celier <celier@adacore.com>
|
||||
|
||||
* gnatcmd.adb: When <target>-gnat is called with switch -P
|
||||
and a GPR tool is invoked, invoke the GPR tool with switch
|
||||
--target=<target>.
|
||||
|
||||
2015-11-25 Hristian Kirtchev <kirtchev@adacore.com>
|
||||
|
||||
* opt.adb, bcheck.adb: Minor reformatting.
|
||||
|
||||
2015-11-25 Jerome Lambourg <lambourg@adacore.com>
|
||||
|
||||
* init.c: Enable the signal trampoline on x86_64-vx7
|
||||
|
|
|
@ -1176,16 +1176,17 @@ package body Bcheck is
|
|||
begin
|
||||
Check_Mechanism : for A1 in ALIs.First + 1 .. ALIs.Last loop
|
||||
if (ALIs.Table (A1).Zero_Cost_Exceptions /=
|
||||
ALIs.Table (ALIs.First).Zero_Cost_Exceptions)
|
||||
ALIs.Table (ALIs.First).Zero_Cost_Exceptions)
|
||||
or else
|
||||
(ALIs.Table (A1).Frontend_Exceptions /=
|
||||
ALIs.Table (ALIs.First).Frontend_Exceptions)
|
||||
ALIs.Table (ALIs.First).Frontend_Exceptions)
|
||||
then
|
||||
Error_Msg_File_1 := ALIs.Table (A1).Sfile;
|
||||
Error_Msg_File_2 := ALIs.Table (ALIs.First).Sfile;
|
||||
|
||||
Consistency_Error_Msg ("{ and { compiled with different "
|
||||
& "exception handling mechanisms");
|
||||
Consistency_Error_Msg
|
||||
("{ and { compiled with different exception handling "
|
||||
& "mechanisms");
|
||||
end if;
|
||||
end loop Check_Mechanism;
|
||||
end Check_Consistent_Exception_Handling;
|
||||
|
|
|
@ -58,13 +58,8 @@ with GNAT.OS_Lib; use GNAT.OS_Lib;
|
|||
|
||||
procedure GNATCmd is
|
||||
Gprbuild : constant String := "gprbuild";
|
||||
Gnatmake : constant String := "gnatmake";
|
||||
|
||||
Gprclean : constant String := "gprclean";
|
||||
Gnatclean : constant String := "gnatclean";
|
||||
|
||||
Gprclean : constant String := "gprclean";
|
||||
Gprname : constant String := "gprname";
|
||||
Gnatname : constant String := "gnatname";
|
||||
|
||||
Normal_Exit : exception;
|
||||
-- Raise this exception for normal program termination
|
||||
|
@ -1170,8 +1165,9 @@ begin
|
|||
end loop;
|
||||
|
||||
declare
|
||||
Program : String_Access;
|
||||
Exec_Path : String_Access;
|
||||
Program : String_Access;
|
||||
Exec_Path : String_Access;
|
||||
Get_Target : Boolean := False;
|
||||
|
||||
begin
|
||||
if The_Command = Stack then
|
||||
|
@ -1188,9 +1184,10 @@ begin
|
|||
-- instead of gnatmake/gnatclean.
|
||||
-- Ditto for gnatname -> gprname.
|
||||
|
||||
if Program.all = Gnatmake
|
||||
or else Program.all = Gnatclean
|
||||
or else Program.all = Gnatname
|
||||
if The_Command = Make
|
||||
or else The_Command = Compile
|
||||
or else The_Command = Clean
|
||||
or else The_Command = Name
|
||||
then
|
||||
declare
|
||||
Project_File_Used : Boolean := False;
|
||||
|
@ -1208,19 +1205,37 @@ begin
|
|||
end loop;
|
||||
|
||||
if Project_File_Used then
|
||||
if Program.all = Gnatmake
|
||||
and then Locate_Exec_On_Path (Gprbuild) /= null
|
||||
then
|
||||
Program := new String'(Gprbuild);
|
||||
elsif Program.all = Gnatclean
|
||||
and then Locate_Exec_On_Path (Gprclean) /= null
|
||||
then
|
||||
Program := new String'(Gprclean);
|
||||
case The_Command is
|
||||
when Make | Compile =>
|
||||
if Locate_Exec_On_Path (Gprbuild) /= null then
|
||||
Program := new String'(Gprbuild);
|
||||
Get_Target := True;
|
||||
end if;
|
||||
|
||||
elsif Program.all = Gnatname
|
||||
and then Locate_Exec_On_Path (Gprname) /= null
|
||||
then
|
||||
Program := new String'(Gprname);
|
||||
when Clean =>
|
||||
if Locate_Exec_On_Path (Gprclean) /= null then
|
||||
Program := new String'(Gprclean);
|
||||
Get_Target := True;
|
||||
end if;
|
||||
|
||||
when Name =>
|
||||
if Locate_Exec_On_Path (Gprname) /= null then
|
||||
Program := new String'(Gprname);
|
||||
Get_Target := True;
|
||||
end if;
|
||||
|
||||
when others =>
|
||||
null;
|
||||
end case;
|
||||
|
||||
if Get_Target then
|
||||
Find_Program_Name;
|
||||
|
||||
if Name_Len > 5 then
|
||||
First_Switches.Append
|
||||
(new String'
|
||||
("--target=" & Name_Buffer (1 .. Name_Len - 5)));
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
end;
|
||||
|
|
|
@ -44,8 +44,10 @@ package body Opt is
|
|||
|
||||
function Back_End_Exceptions return Boolean is
|
||||
begin
|
||||
return Exception_Mechanism = Back_End_SJLJ
|
||||
or else Exception_Mechanism = Back_End_ZCX;
|
||||
return
|
||||
Exception_Mechanism = Back_End_SJLJ
|
||||
or else
|
||||
Exception_Mechanism = Back_End_ZCX;
|
||||
end Back_End_Exceptions;
|
||||
|
||||
-------------------------
|
||||
|
@ -63,8 +65,10 @@ package body Opt is
|
|||
|
||||
function SJLJ_Exceptions return Boolean is
|
||||
begin
|
||||
return Exception_Mechanism = Back_End_SJLJ
|
||||
or else Exception_Mechanism = Front_End_SJLJ;
|
||||
return
|
||||
Exception_Mechanism = Back_End_SJLJ
|
||||
or else
|
||||
Exception_Mechanism = Front_End_SJLJ;
|
||||
end SJLJ_Exceptions;
|
||||
|
||||
--------------------
|
||||
|
|
Loading…
Reference in New Issue