This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Patch: move lang_specific_driver after setup of cc_libexec_prefix
- From: Andrew Haley <aph at redhat dot com>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Cc: java at gcc dot gnu dot org
- Date: Wed, 06 Jan 2010 15:06:16 +0000
- Subject: Patch: move lang_specific_driver after setup of cc_libexec_prefix
gcj is not relocatable because the libexec prefix is set *after*
lang_specific_driver is called. Unfortunately, lang_specific_driver
needs to know the libexec prefix to pass it to ecj1. I can't see any
reason why lang_specific_driver needs to be called before the libexec
prefix is set, and it doesn't seem to break anything.
Fixed thusly, bootstrapped x86_64 GNU/Linux.
OK?
Andrew.
2010-01-06 Andrew Haley <aph@redhat.com>
* gcc.c (process_command): Move lang_specific_driver before
setting cc_libexec_prefix.
Index: gcc/gcc.c
===================================================================
--- gcc/gcc.c (revision 155475)
+++ gcc/gcc.c (working copy)
@@ -3599,12 +3599,6 @@
CONST_CAST2 (const char *const **, const char ***,
&argv));
- /* Do language-specific adjustment/addition of flags. */
- lang_specific_driver (&argc,
- CONST_CAST2 (const char *const **, const char ***,
- &argv),
- &added_libraries);
-
/* Handle any -no-canonical-prefixes flag early, to assign the function
that builds relative prefixes. This function creates default search
paths that are needed later in normal option handling. */
@@ -3660,6 +3654,12 @@
is relocated. The toolchain was either relocated using GCC_EXEC_PREFIX
or an automatically created GCC_EXEC_PREFIX from argv[0]. */
+ /* Do language-specific adjustment/addition of flags. */
+ lang_specific_driver (&argc,
+ CONST_CAST2 (const char *const **, const char ***,
+ &argv),
+ &added_libraries);
+
if (gcc_exec_prefix)
{
int len = strlen (gcc_exec_prefix);