aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2006-06-02 19:46:52 +0000
committerjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2006-06-02 19:46:52 +0000
commit938516d302b23a468764bc444d42b39c1508b7bd (patch)
tree74bc52eb19743a15022553cbef25f51bef5f5831
parent2465cc370e8abc530948f6eeca7a68f4c854e9e3 (diff)
2006-06-02 Richard Sandiford <richard@codesourcery.com>csl/wrs-linux/3.4.4-22
* gcc/gcc.c (feature_proxy_flag): New variable. (process_command): Handle -ffeature-proxy and -fno-feature-proxy. (main): Add "-p" if -ffeature-proxy. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/csl/wrs-linux-2006q1@114329 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--ChangeLog.csl6
-rw-r--r--gcc/gcc.c37
2 files changed, 33 insertions, 10 deletions
diff --git a/ChangeLog.csl b/ChangeLog.csl
index b1d58450f4d..637569ec3f2 100644
--- a/ChangeLog.csl
+++ b/ChangeLog.csl
@@ -1,3 +1,9 @@
+2006-06-02 Richard Sandiford <richard@codesourcery.com>
+
+ * gcc/gcc.c (feature_proxy_flag): New variable.
+ (process_command): Handle -ffeature-proxy and -fno-feature-proxy.
+ (main): Add "-p" if -ffeature-proxy.
+
2006-05-03 Joseph Myers <joseph@codesourcery.com>
* gcc/testsuite/gcc.c-torture/execute/20020720-1.x: XFAIL for
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 3e842422d5e..4a4f75c0116 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -228,6 +228,11 @@ static int use_pipes;
static int license_me_flag;
+/* WRS LOCAL
+ True if the -p option should be passed to the get_feature command. */
+
+static int feature_proxy_flag = 1;
+
/* The compiler version. */
static const char *compiler_version;
@@ -3569,6 +3574,10 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n"
}
else if (strcmp (argv[i], "-flicense-me") == 0)
license_me_flag = 1; /* WRS LOCAL */
+ else if (strcmp (argv[i], "-ffeature-proxy") == 0)
+ feature_proxy_flag = 1; /* WRS LOCAL */
+ else if (strcmp (argv[i], "-fno-feature-proxy") == 0)
+ feature_proxy_flag = 0; /* WRS LOCAL */
else if (argv[i][0] == '-' && argv[i][1] != 0)
{
const char *p = &argv[i][1];
@@ -3925,6 +3934,10 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n"
;
else if (! strcmp (argv[i], "-flicense-me"))
;
+ else if (! strcmp (argv[i], "-ffeature-proxy"))
+ ;
+ else if (! strcmp (argv[i], "-fno-feature-proxy"))
+ ;
else if (! strncmp (argv[i], "--sysroot=", strlen ("--sysroot=")))
{
target_system_root = argv[i] + strlen ("--sysroot=");
@@ -6465,19 +6478,23 @@ main (int argc, const char **argv)
must remain separate from the GPL, and this method
of doing so is explicitly blessed by the FSF's GPL
FAQ. */
- const char *argv[9];
+ const char *argv[10];
+ const char **p;
char *ptr;
char *err_fmt, *err_arg;
- argv[0] = "get_feature";
- argv[1] = "-co";
- argv[2] = xstrdup (DEFAULT_TARGET_MACHINE);
- argv[3] = "-v";
- argv[4] = "3.3";
- argv[5] = "gnu";
- argv[6] = infiles[i].language;
- argv[7] = (license_me_flag ? "-flicense-me" : "");
- argv[8] = 0;
+ p = argv;
+ *p++ = "get_feature";
+ if (feature_proxy_flag)
+ *p++ = "-p";
+ *p++ = "-co";
+ *p++ = xstrdup (DEFAULT_TARGET_MACHINE);
+ *p++ = "-v";
+ *p++ = "3.3";
+ *p++ = "gnu";
+ *p++ = infiles[i].language;
+ *p++ = (license_me_flag ? "-flicense-me" : "");
+ *p++ = 0;
ptr = find_a_file (&exec_prefixes, argv[0], X_OK, 0);