/usr/src/gcc-4.7/debian/patches/ada-library-project-files-soname.diff is in gcc-4.7-source 4.7.3-12ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 | # DP: - in project files, use the exact Library_Version provided, if any, as
# DP: the soname of libraries; do not strip minor version numbers
# DP: (PR ada/40025).
Index: b/src/gcc/ada/mlib-tgt-specific-linux.adb
===================================================================
--- a/src/gcc/ada/mlib-tgt-specific-linux.adb
+++ b/src/gcc/ada/mlib-tgt-specific-linux.adb
@@ -50,6 +50,8 @@
function Is_Archive_Ext (Ext : String) return Boolean;
+ function Library_Major_Minor_Id_Supported return Boolean;
+
---------------------------
-- Build_Dynamic_Library --
---------------------------
@@ -142,7 +144,18 @@
return Ext = ".a" or else Ext = ".so";
end Is_Archive_Ext;
+ --------------------------------------
+ -- Library_Major_Minor_Id_Supported --
+ --------------------------------------
+
+ function Library_Major_Minor_Id_Supported return Boolean is
+ begin
+ return False;
+ end Library_Major_Minor_Id_Supported;
+
begin
Build_Dynamic_Library_Ptr := Build_Dynamic_Library'Access;
Is_Archive_Ext_Ptr := Is_Archive_Ext'Access;
+ Library_Major_Minor_Id_Supported_Ptr :=
+ Library_Major_Minor_Id_Supported'Access;
end MLib.Tgt.Specific;
Index: b/src/gcc/ada/mlib.adb
===================================================================
--- a/src/gcc/ada/mlib.adb
+++ b/src/gcc/ada/mlib.adb
@@ -31,6 +31,7 @@
with Opt;
with Output; use Output;
+with Mlib.Tgt;
with MLib.Utl; use MLib.Utl;
with Prj.Com;
@@ -384,7 +385,7 @@
-- Major_Id_Name --
-------------------
- function Major_Id_Name
+ function Major_Id_Name_If_Supported
(Lib_Filename : String;
Lib_Version : String)
return String
@@ -438,6 +439,19 @@
else
return "";
end if;
+ end Major_Id_Name_If_Supported;
+
+ function Major_Id_Name
+ (Lib_Filename : String;
+ Lib_Version : String)
+ return String
+ is
+ begin
+ if Mlib.Tgt.Library_Major_Minor_Id_Supported then
+ return Major_Id_Name_If_Supported (Lib_Filename, Lib_Version);
+ else
+ return "";
+ end if;
end Major_Id_Name;
-- Package elaboration
|