summaryrefslogtreecommitdiff
path: root/recipes/gcc/gcc-4.4.0/debian/ada-default-project-path.dpatch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/gcc/gcc-4.4.0/debian/ada-default-project-path.dpatch')
-rw-r--r--recipes/gcc/gcc-4.4.0/debian/ada-default-project-path.dpatch147
1 files changed, 147 insertions, 0 deletions
diff --git a/recipes/gcc/gcc-4.4.0/debian/ada-default-project-path.dpatch b/recipes/gcc/gcc-4.4.0/debian/ada-default-project-path.dpatch
new file mode 100644
index 0000000000..b3283d75f3
--- /dev/null
+++ b/recipes/gcc/gcc-4.4.0/debian/ada-default-project-path.dpatch
@@ -0,0 +1,147 @@
+#! /bin/sh -e
+
+# DP: - Change the default search path for project files to the one specified
+# DP: by the Debian Policy for Ada: /usr/share/ada/adainclude.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+ pdir="-d $3"
+ dir="$3/"
+elif [ $# -ne 1 ]; then
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1
+fi
+case "$1" in
+ -patch)
+ patch $pdir -f --no-backup-if-mismatch -p0 < $0
+ ;;
+ -unpatch)
+ patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+ ;;
+ *)
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1
+esac
+exit 0
+
+Index: gcc/ada/Make-lang.in
+===================================================================
+--- gcc/ada/Make-lang.in.orig
++++ gcc/ada/Make-lang.in
+@@ -974,7 +974,7 @@
+ $(ECHO) " S1 : constant String := \"$(ADA_INCLUDE_DIR)/\";" >>tmp-sdefault.adb
+ $(ECHO) " S2 : constant String := \"$(ADA_RTL_OBJ_DIR)/\";" >>tmp-sdefault.adb
+ $(ECHO) " S3 : constant String := \"$(target)/\";" >>tmp-sdefault.adb
+- $(ECHO) " S4 : constant String := \"$(libsubdir)/\";" >>tmp-sdefault.adb
++ $(ECHO) " S4 : constant String := \"/usr/share/ada/adainclude/\";" >>tmp-sdefault.adb
+ $(ECHO) " function Include_Dir_Default_Name return String_Ptr is" >>tmp-sdefault.adb
+ $(ECHO) " begin" >>tmp-sdefault.adb
+ $(ECHO) " return Relocate_Path (S0, S1);" >>tmp-sdefault.adb
+Index: gcc/ada/prj-ext.adb
+===================================================================
+--- gcc/ada/prj-ext.adb.orig
++++ gcc/ada/prj-ext.adb
+@@ -24,7 +24,6 @@
+ ------------------------------------------------------------------------------
+
+ with Hostparm;
+-with Makeutl; use Makeutl;
+ with Output; use Output;
+ with Osint; use Osint;
+ with Sdefault;
+@@ -254,38 +253,10 @@
+
+ -- Set the initial value of Current_Project_Path
+
+- if Add_Default_Dir then
+- declare
+- Prefix : String_Ptr := Sdefault.Search_Dir_Prefix;
+- begin
+- if Prefix = null then
+- Prefix := new String'(Executable_Prefix_Path);
+-
+- if Prefix.all /= "" then
+- if Get_Mode = Ada_Only then
+- Current_Project_Path :=
+- new String'(Name_Buffer (1 .. Name_Len) &
+- Path_Separator &
+- Prefix.all & Directory_Separator & "gnat");
+-
+- else
+- Current_Project_Path :=
+- new String'(Name_Buffer (1 .. Name_Len) &
+- Path_Separator &
+- Prefix.all & Directory_Separator &
+- "share" & Directory_Separator & "gpr");
+- end if;
+- end if;
+-
+- else
+- Current_Project_Path :=
+- new String'(Name_Buffer (1 .. Name_Len) & Path_Separator &
+- Prefix.all &
+- ".." & Directory_Separator &
+- ".." & Directory_Separator &
+- ".." & Directory_Separator & "gnat");
+- end if;
+- end;
++ if Add_Default_Dir and Sdefault.Search_Dir_Prefix /= null then
++ Current_Project_Path :=
++ new String'(Name_Buffer (1 .. Name_Len) & Path_Separator &
++ Sdefault.Search_Dir_Prefix.all);
+ end if;
+
+ if Current_Project_Path = null then
+Index: gcc/ada/gnatls.adb
+===================================================================
+--- gcc/ada/gnatls.adb.orig
++++ gcc/ada/gnatls.adb
+@@ -1622,9 +1622,6 @@
+ declare
+ Project_Path : String_Access := Getenv (Gpr_Project_Path);
+
+- Lib : constant String :=
+- Directory_Separator & "lib" & Directory_Separator;
+-
+ First : Natural;
+ Last : Natural;
+
+@@ -1684,36 +1681,8 @@
+ if Add_Default_Dir then
+ Name_Len := 0;
+ Add_Str_To_Name_Buffer (Sdefault.Search_Dir_Prefix.all);
+-
+- -- On Windows, make sure that all directory separators are '\'
+-
+- if Directory_Separator /= '/' then
+- for J in 1 .. Name_Len loop
+- if Name_Buffer (J) = '/' then
+- Name_Buffer (J) := Directory_Separator;
+- end if;
+- end loop;
+- end if;
+-
+- -- Find the sequence "/lib/"
+-
+- while Name_Len >= Lib'Length
+- and then Name_Buffer (Name_Len - 4 .. Name_Len) /= Lib
+- loop
+- Name_Len := Name_Len - 1;
+- end loop;
+-
+- -- If the sequence "/lib"/ was found, display the default
+- -- directory <prefix>/lib/gnat/.
+-
+- if Name_Len >= 5 then
+- Name_Buffer (Name_Len + 1 .. Name_Len + 4) := "gnat";
+- Name_Buffer (Name_Len + 5) := Directory_Separator;
+- Name_Len := Name_Len + 5;
+- Write_Str (" ");
+- Write_Line
+- (To_Host_Dir_Spec (Name_Buffer (1 .. Name_Len), True).all);
+- end if;
++ Write_Str (" ");
++ Write_Line (Name_Buffer (1 .. Name_Len));
+ end if;
+ end;
+