generic-poky/meta/packages/gcc/gcc-4.3.3/debian/ada-default-project-path.dp...

148 lines
5.2 KiB
Plaintext

#! /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;