aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2002-04-23 22:58:09 +0000
committerTom Tromey <tromey@gcc.gnu.org>2002-04-23 22:58:09 +0000
commit3d3707c1d5fd3d1351d9d916dc54697d93686e89 (patch)
treea290d78eabcb06c5952f53f57339a82ba9d5ef93
parent50cb21547b32f994d673d568a4ce1e4ed87fec52 (diff)
downloadgcc-3d3707c1d5fd3d1351d9d916dc54697d93686e89.zip
gcc-3d3707c1d5fd3d1351d9d916dc54697d93686e89.tar.gz
gcc-3d3707c1d5fd3d1351d9d916dc54697d93686e89.tar.bz2
For PR java/6314:
* jvspec.c (lang_specific_driver): Use --resource, not -R. Also recognize `-fcompile-resource='. * gcj.texi (Invoking gcj): Use --resource, not -R. Expanded text a bit. From-SVN: r52690
-rw-r--r--gcc/java/ChangeLog8
-rw-r--r--gcc/java/gcj.texi12
-rw-r--r--gcc/java/jvspec.c26
3 files changed, 24 insertions, 22 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 0446a67..b1d06e0 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,11 @@
+2002-04-23 Tom Tromey <tromey@redhat.com>
+
+ For PR java/6314:
+ * jvspec.c (lang_specific_driver): Use --resource, not -R. Also
+ recognize `-fcompile-resource='.
+ * gcj.texi (Invoking gcj): Use --resource, not -R. Expanded text
+ a bit.
+
2002-04-22 Alexandre Petit-Bianco <apbianco@redhat.com>
* jcf-parse.c: (yyparse): Don't prepend "./" to relative
diff --git a/gcc/java/gcj.texi b/gcc/java/gcj.texi
index 814c182..e8b913c 100644
--- a/gcc/java/gcj.texi
+++ b/gcc/java/gcj.texi
@@ -150,7 +150,7 @@ gcj [@option{-I}@var{dir}@dots{}] [@option{-d} @var{dir}@dots{}]
[@option{--CLASSPATH}=@var{path}] [@option{--classpath}=@var{path}]
[@option{-f}@var{option}@dots{}] [@option{--encoding}=@var{name}]
[@option{--main}=@var{classname}] [@option{-D}@var{name}[=@var{value}]@dots{}]
- [@option{-C}] [@option{-R} @var{resource-name}] [@option{-d} @var{directory}]
+ [@option{-C}] [@option{--resource} @var{resource-name}] [@option{-d} @var{directory}]
[@option{-W}@var{warn}@dots{}]
@var{sourcefile}@dots{}
@c man end
@@ -213,7 +213,7 @@ in which case they will all be compiled. If you specify a
option, all the input files will be compiled together, producing a
single output file, named @var{FILENAME}.
This is allowed even when using @code{-S} or @code{-c},
-but not when using @code{-C} or @code{-R}.
+but not when using @code{-C} or @code{--resource}.
(This is an extension beyond the what plain @command{gcc} allows.)
(If more than one input file is specified, all must currently
be @code{.java} files, though we hope to fix this.)
@@ -387,10 +387,14 @@ using the @code{java.lang.System.getProperty} method.
This option is used to tell @command{gcj} to generate bytecode
(@file{.class} files) rather than object code.
-@item -R @var{resource-name}
+@item --resource @var{resource-name}
This option is used to tell @command{gcj} to compile the contents of a
given file to object code so it may be accessed at runtime with the core
-protocol handler as @var{core:/resource-name}.
+protocol handler as @samp{core:/@var{resource-name}}. Note that
+@var{resource-name} is the name of the resource as found at runtime; for
+instance, it could be used in a call to @code{ResourceBundle.getBundle}.
+The actual file name to be compiled this way must be specified
+separately.
@item -d @var{directory}
When used with @code{-C}, this causes all generated @file{.class} files
diff --git a/gcc/java/jvspec.c b/gcc/java/jvspec.c
index 74ca9d4..aad21e1 100644
--- a/gcc/java/jvspec.c
+++ b/gcc/java/jvspec.c
@@ -210,8 +210,8 @@ lang_specific_driver (in_argc, in_argv, in_added_libraries)
int saw_libgcj ATTRIBUTE_UNUSED = 0;
#endif
- /* Saw -R, -C or -o options, respectively. */
- int saw_R = 0;
+ /* Saw --resource, -C or -o options, respectively. */
+ int saw_resource = 0;
int saw_C = 0;
int saw_o = 0;
@@ -303,13 +303,12 @@ lang_specific_driver (in_argc, in_argv, in_added_libraries)
library = 0;
will_link = 0;
}
- else if (strcmp (argv[i], "-R") == 0)
+ else if (strncmp (argv[i], "-fcompile-resource=", 19) == 0)
{
- saw_R = 1;
- quote = argv[i];
+ saw_resource = 1;
want_spec_file = 0;
if (library != 0)
- added -= 2;
+ --added;
library = 0;
will_link = 0;
}
@@ -382,7 +381,7 @@ lang_specific_driver (in_argc, in_argv, in_added_libraries)
continue;
}
- if (saw_R)
+ if (saw_resource)
{
args[i] |= RESOURCE_FILE_ARG;
last_input_index = i;
@@ -430,10 +429,10 @@ lang_specific_driver (in_argc, in_argv, in_added_libraries)
fatal ("`%s' is not a valid class name", main_class_name);
num_args = argc + added;
- if (saw_R)
+ if (saw_resource)
{
if (! saw_o)
- fatal ("-R requires -o");
+ fatal ("--resource requires -o");
}
if (saw_C)
{
@@ -514,15 +513,6 @@ lang_specific_driver (in_argc, in_argv, in_added_libraries)
arglist[j] = "-xnone";
}
- if (strcmp (argv[i], "-R") == 0)
- {
- arglist[j] = concat ("-fcompile-resource=",
- *argv[i+1] == '/' ? "" : "/",
- argv[i+1], NULL);
- i++;
- continue;
- }
-
if (strcmp (argv[i], "-classpath") == 0
|| strcmp (argv[i], "-bootclasspath") == 0
|| strcmp (argv[i], "-CLASSPATH") == 0)