You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/dev-ada/gprbuild/files/gprbuild-2018-gentoo.patch

99 lines
3.3 KiB

--- a/gpr/gpr.gpr 2017-05-27 20:59:07.061135892 +0200
+++ b/gpr/gpr.gpr 2017-05-27 20:59:38.022638398 +0200
@@ -67,6 +67,7 @@
for Switches ("gpr*.ad?") use
Compiler'Default_Switches ("Ada") & ("-g1");
end case;
+ for Driver ("C") use External ("CC", "gcc");
end Compiler;
end GPR;
--- a/gpr/src/gpr-names.ads 2017-11-19 13:09:18.947527738 +0100
+++ b/gpr/src/gpr-names.ads 2017-11-19 13:10:08.125654595 +0100
@@ -27,6 +27,8 @@
Name_Buffer : String (1 .. 1_000_000);
Name_Len : Natural := 0;
+ Last_Id : Name_Id := Name_Id'First;
+
procedure Get_Name_String (Id : Name_Id);
procedure Get_Name_String (Id : Unit_Name_Type);
procedure Get_Name_String (Id : File_Name_Type);
--- a/gpr/src/gpr-names.adb 2017-11-19 13:10:27.674316703 +0100
+++ b/gpr/src/gpr-names.adb 2017-11-19 13:14:38.360963627 +0100
@@ -354,6 +354,8 @@
Name_Chars.Append (ASCII.NUL);
+ Last_Id := Name_Entries.Last;
+
return Name_Entries.Last;
end Name_Enter;
@@ -427,6 +429,8 @@
Name_Chars.Append (ASCII.NUL);
+ Last_Id := Name_Entries.Last;
+
return Name_Entries.Last;
end Name_Find;
--- a/gpr/src/gpr-snames.adb 2017-11-19 13:12:41.592995718 +0100
+++ b/gpr/src/gpr-snames.adb 2017-11-19 13:16:31.980979696 +0100
@@ -53,6 +53,10 @@
return;
end if;
+ if Last_Id = Name_Id'First then
+ Add_Name ("");
+ end if;
+
Add_Name ("a");
Add_Name ("b");
Add_Name ("c");
--- a/src/gprlib.adb 2017-12-18 12:20:02.937317216 +0100
+++ b/src/gprlib.adb 2017-12-18 12:21:36.519604590 +0100
@@ -263,7 +263,9 @@
Driver_Name : Name_Id := No_Name;
- Gnatbind_Name : String_Access := new String'("gnatbind");
+ Gnatbind_Name : String_Access := new String'("@GNATBIND@");
+
+ Gnatbind_Path_Option : constant String := "--gnatbind_path=";
Compiler_Name : String_Access := new String'("gcc");
@@ -1944,13 +1946,13 @@
and then Line (Last - 2 .. Last) = "gcc"
then
Gnatbind_Name :=
- new String'(Line (1 .. Last - 3) & "gnatbind");
+ new String'(Line (1 .. Last - 3) & "@GNATBIND@");
elsif Last > 7
and then Line (Last - 6 .. Last) = "gcc.exe"
then
Gnatbind_Name :=
- new String'(Line (1 .. Last - 7) & "gnatbind");
+ new String'(Line (1 .. Last - 7) & "@GNATBIND@");
end if;
end if;
@@ -2100,7 +2102,13 @@
Mapping_File_Name := new String'(Line (1 .. Last));
when Binding_Options =>
- Binding_Options_Table.Append (Line (1 .. Last));
+ if Last > Gnatbind_Path_Option'Length
+ and then Line (1 .. Gnatbind_Path_Option'Length) =
+ Gnatbind_Path_Option then
+ null;
+ else
+ Binding_Options_Table.Append (Line (1 .. Last));
+ end if;
when Copy_Source_Dir =>
Copy_Source_Directory := new String'(Line (1 .. Last));