aboutsummaryrefslogtreecommitdiff
blob: 7f5a5d4e21a7aa0cd58ed5c02776f3857aeeb29a (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
2012-06-22	Magnus Granberg		<zorry@gentoo.org>

		* gcc/gcc.c								include esp.h
		static const char *cc1_spec 			We set that in esp.h if ENABLE_ESP.
		#ifdef EXTRA_SPECS:						Add ESP_EXTRA_SPECS

--- gcc/gcc.c	2010-01-21 10:29:30.000000000 -0500
+++ gcc/gcc.c	2010-01-29 23:29:16.000000000 -0500
@@ -44,6 +44,7 @@
 #include "opts.h"
 #include "params.h"
 #include "vec.h"
+#include "config/esp.h" /* for --enable-esp support */
 #include "filenames.h"
 
 /* By default there is no special suffix for target executables.  */
@@ -822,7 +823,9 @@
 
 static const char *asm_debug;
 static const char *cpp_spec = CPP_SPEC;
+#ifndef ENABLE_ESP
 static const char *cc1_spec = CC1_SPEC;
+#endif
 static const char *cc1plus_spec = CC1PLUS_SPEC;
 static const char *link_gcc_c_sequence_spec = LINK_GCC_C_SEQUENCE_SPEC;
 static const char *link_ssp_spec = LINK_SSP_SPEC;
@@ -1699,18 +1705,23 @@
   INIT_STATIC_SPEC ("sysroot_hdrs_suffix_spec",	&sysroot_hdrs_suffix_spec),
 };
 
-#ifdef EXTRA_SPECS		/* additional specs needed */
+/* EXTRA_SPECS needs to be defined  */
+#ifndef EXTRA_SPECS
+#define EXTRA_SPECS
+#endif
+
+/* EXTRA_SPECS and ESP_EXTRA_SPECS add additional specs */
 /* Structure to keep track of just the first two args of a spec_list.
-   That is all that the EXTRA_SPECS macro gives us.  */
+   That is all that the EXTRA_SPECS and ESP_EXTRA_SPECS macro gives us.  */
 struct spec_list_1
 {
   const char *const name;
   const char *const ptr;
 };
 
-static const struct spec_list_1 extra_specs_1[] = { EXTRA_SPECS };
+/* ESP_EXTRA_SPECS before EXTRA_SPECS  */
+static const struct spec_list_1 extra_specs_1[] = { ESP_EXTRA_SPECS, EXTRA_SPECS };
 static struct spec_list *extra_specs = (struct spec_list *) 0;
-#endif
 
 /* List of dynamically allocates specs that have been defined so far.  */
 
@@ -1798,7 +1809,6 @@
   if (verbose_flag)
     notice ("Using built-in specs.\n");
 
-#ifdef EXTRA_SPECS
   extra_specs = XCNEWVEC (struct spec_list, ARRAY_SIZE (extra_specs_1));
 
   for (i = ARRAY_SIZE (extra_specs_1) - 1; i >= 0; i--)
@@ -1811,7 +1821,6 @@
       sl->ptr_spec = &sl->ptr;
       next = sl;
     }
-#endif
 
   for (i = ARRAY_SIZE (static_specs) - 1; i >= 0; i--)
     {