summaryrefslogtreecommitdiffstats
path: root/patches/01_allow-more-dirs-to-be-configured.patch
blob: 3605e54fa0353b61e749234d9455cf9a4332fee6 (plain)
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
78
79
80
81
82
83
84
Author: Patrick McDermott <patrick.mcdermott@libiquity.com>
Subject: Add another search directory to gcc driver

diff -Naurp src.orig/gcc/gcc.c src/gcc/gcc.c
--- src.orig/gcc/gcc.c	2018-02-09 01:44:06.000000000 -0500
+++ src/gcc/gcc.c	2019-05-02 19:28:55.475950656 -0400
@@ -1496,6 +1496,8 @@ static const char *const standard_libexe
 static const char *const standard_bindir_prefix = STANDARD_BINDIR_PREFIX;
 static const char *const standard_startfile_prefix = STANDARD_STARTFILE_PREFIX;
 
+static const char *const user_tooldir_prefix = USER_TOOLDIR_PREFIX;
+
 /* For native compilers, these are well-known paths containing
    components that may be provided by the system.  For cross
    compilers, these paths are not used.  */
@@ -4304,6 +4306,16 @@ process_command (unsigned int decoded_op
 		  PREFIX_PRIORITY_LAST, 0, 0);
     }
 
+  add_prefix (&exec_prefixes,
+	     concat (user_tooldir_prefix, dir_separator_str, NULL),
+	     0, PREFIX_PRIORITY_LAST, 0, 0);
+  add_prefix (&startfile_prefixes,
+	     concat (user_tooldir_prefix, dir_separator_str, NULL),
+	     0, PREFIX_PRIORITY_LAST, 0, 0);
+  add_prefix (&include_prefixes,
+	     concat (user_tooldir_prefix, dir_separator_str, NULL),
+	     0, PREFIX_PRIORITY_LAST, 0, 0);
+
   /* COMPILER_PATH and LIBRARY_PATH have values
      that are lists of directory names with colons.  */
 
diff -Naurp src.orig/gcc/Makefile.in src/gcc/Makefile.in
--- src.orig/gcc/Makefile.in	2018-03-09 10:24:44.000000000 -0500
+++ src/gcc/Makefile.in	2019-05-02 19:05:56.069075629 -0400
@@ -666,6 +666,7 @@ gcc_tooldir = @gcc_tooldir@
 build_tooldir = $(exec_prefix)/$(target_noncanonical)
 # Directory in which the compiler finds target-independent g++ includes.
 gcc_gxx_include_dir = @gcc_gxx_include_dir@
+gcc_gxx_tool_include_dir = $(gcc_gxx_include_dir)/$(target_noncanonical)
 gcc_gxx_include_dir_add_sysroot = @gcc_gxx_include_dir_add_sysroot@
 # Directory to search for site-specific includes.
 local_includedir = $(local_prefix)/include
@@ -2186,6 +2187,7 @@ DRIVER_DEFINES = \
   -DDEFAULT_TARGET_MACHINE=\"$(target_noncanonical)\" \
   -DSTANDARD_BINDIR_PREFIX=\"$(bindir)/\" \
   -DTOOLDIR_BASE_PREFIX=\"$(libsubdir_to_prefix)$(prefix_to_exec_prefix)\" \
+  -DUSER_TOOLDIR_PREFIX=\"$(user_tooldir_prefix)\" \
   -DACCEL_DIR_SUFFIX=\"$(accel_dir_suffix)\" \
   @TARGET_SYSTEM_ROOT_DEFINE@ \
   $(VALGRIND_DRIVER_DEFINES) \
@@ -2873,7 +2875,7 @@ PREPROCESSOR_DEFINES = \
   -DFIXED_INCLUDE_DIR=\"$(libsubdir)/include-fixed\" \
   -DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \
   -DGPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT=$(gcc_gxx_include_dir_add_sysroot) \
-  -DGPLUSPLUS_TOOL_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/$(target_noncanonical)\" \
+  -DGPLUSPLUS_TOOL_INCLUDE_DIR=\"$(gcc_gxx_tool_include_dir)\" \
   -DGPLUSPLUS_BACKWARD_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/backward\" \
   -DLOCAL_INCLUDE_DIR=\"$(local_includedir)\" \
   -DCROSS_INCLUDE_DIR=\"$(CROSS_SYSTEM_HEADER_DIR)\" \
diff -Naurp src.orig/Makefile.def src/Makefile.def
--- src.orig/Makefile.def	2017-11-28 05:35:37.000000000 -0500
+++ src/Makefile.def	2019-05-02 19:23:36.588174507 -0400
@@ -229,6 +229,8 @@ flags_to_pass = { flag= sysconfdir ; };
 flags_to_pass = { flag= tooldir ; };
 flags_to_pass = { flag= build_tooldir ; };
 flags_to_pass = { flag= target_alias ; };
+flags_to_pass = { flag= user_tooldir_prefix ; };
+flags_to_pass = { flag= gcc_gxx_tool_include_dir ; };
 
 // Build tools
 flags_to_pass = { flag= AWK ; };
diff -Naurp src.orig/Makefile.in src/Makefile.in
--- src.orig/Makefile.in	2017-11-28 05:35:37.000000000 -0500
+++ src/Makefile.in	2019-05-02 19:24:29.804137725 -0400
@@ -737,6 +737,8 @@ BASE_FLAGS_TO_PASS = \
 	"tooldir=$(tooldir)" \
 	"build_tooldir=$(build_tooldir)" \
 	"target_alias=$(target_alias)" \
+	"user_tooldir_prefix=$(user_tooldir_prefix)" \
+	"gcc_gxx_tool_include_dir=$(gcc_gxx_tool_include_dir)" \
 	"AWK=$(AWK)" \
 	"BISON=$(BISON)" \
 	"CC_FOR_BUILD=$(CC_FOR_BUILD)" \