diff options
author | Richard Sandiford <richard@codesourcery.com> | 2006-06-02 19:46:52 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2006-06-02 19:46:52 +0000 |
commit | e0ad74664b10f7d396775f5db96dccb30861e895 (patch) | |
tree | 74bc52eb19743a15022553cbef25f51bef5f5831 | |
parent | ee8d47f847285557182db6b55b878e3c433034d4 (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: https://gcc.gnu.org/svn/gcc/branches/csl/wrs-linux-2006q1@114329 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | ChangeLog.csl | 6 | ||||
-rw-r--r-- | gcc/gcc.c | 37 |
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); |