diff options
author | Thomas Fitzsimmons <fitzsim@redhat.com> | 2006-05-27 21:10:46 +0000 |
---|---|---|
committer | Thomas Fitzsimmons <fitzsim@redhat.com> | 2006-05-27 21:10:46 +0000 |
commit | 8688ded04094bfc01be2b4bae3bb4cf2c638f5e0 (patch) | |
tree | fde600d35f38e8d709c2461218010e61796e2a77 /tools | |
parent | 6b3a4220ff51c40bb2bc217c275bc9cf7742a031 (diff) | |
download | classpath-8688ded04094bfc01be2b4bae3bb4cf2c638f5e0.tar.gz |
2006-05-27 Thomas Fitzsimmons <fitzsim@redhat.com>
* configure.ac (FOUND_CACAO): New automake conditional.
Add --enable-tool-wrappers.
* NEWS: Introduce the --enable-tool-wrappers option.
* tools/Makefile.am[CREATE_WRAPPERS]: Build wrapper binaries.
* tools/appletviewer.c: Remove file. Make tool-indepedent and
rename ...
* tools/toolwrapper.c: New file.
Diffstat (limited to 'tools')
-rwxr-xr-x | tools/Makefile.am | 40 | ||||
-rw-r--r-- | tools/toolwrapper.c (renamed from tools/appletviewer.c) | 51 |
2 files changed, 57 insertions, 34 deletions
diff --git a/tools/Makefile.am b/tools/Makefile.am index 11aac4d30..ba5ed755e 100755 --- a/tools/Makefile.am +++ b/tools/Makefile.am @@ -21,8 +21,46 @@ endif endif endif +if CREATE_WRAPPERS +bin_SCRIPTS = +bin_PROGRAMS = appletviewer jarsigner keytool + +if FOUND_GCJ +LIBJVM = -lgcj +else +if FOUND_CACAO +LIBJVM = -lcacaovm +else +LIBJVM = +endif +endif + +appletviewer_SOURCES = toolwrapper.c +appletviewer_CFLAGS = -Wall \ + -DDATA_DIR="\"$(datadir)\"" \ + -DPACKAGE="\"$(PACKAGE)\"" \ + -DTOOLNAME="\"appletviewer\"" +appletviewer_LDFLAGS = $(LIBJVM) + +jarsigner_SOURCES = toolwrapper.c +jarsigner_CFLAGS = -Wall \ + -DDATA_DIR="\"$(datadir)\"" \ + -DPACKAGE="\"$(PACKAGE)\"" \ + -DTOOLNAME="\"jarsigner\"" +jarsigner_LDFLAGS = $(LIBJVM) + +keytool_SOURCES = toolwrapper.c +keytool_CFLAGS = -Wall \ + -DDATA_DIR="\"$(datadir)\"" \ + -DPACKAGE="\"$(PACKAGE)\"" \ + -DTOOLNAME="\"keytool\"" +keytool_LDFLAGS = $(LIBJVM) + +else bin_SCRIPTS = appletviewer jarsigner keytool -EXTRA_DIST = appletviewer.in appletviewer.c jarsigner.in keytool.in +bin_PROGRAMS = +endif +EXTRA_DIST = toolwrapper.c appletviewer.in jarsigner.in keytool.in # All our example java source files TOOLS_JAVA_FILES = $(srcdir)/gnu/classpath/tools/*.java $(srcdir)/gnu/classpath/tools/*/*.java $(srcdir)/gnu/classpath/tools/*/*/*.java diff --git a/tools/appletviewer.c b/tools/toolwrapper.c index 2609ccaf6..de6556c63 100644 --- a/tools/appletviewer.c +++ b/tools/toolwrapper.c @@ -1,5 +1,5 @@ -/* appletviewer.c -- a native appletviewer wrapper for VMs that - support the JNI invocation interface +/* toolwrapper.c -- a native tool wrapper for VMs that support the JNI + invocation interface Copyright (C) 2006 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -37,7 +37,6 @@ obligated to do so. If you do not wish to do so, delete this exception statement from your version. */ #include <jni.h> -#include <glib.h> #include <string.h> #include <stdlib.h> #include "config.h" @@ -93,41 +92,27 @@ main (int argc, const char** argv) if (vm_args.options == NULL) { - g_printerr ("appletviewer: realloc failed.\n"); + fprintf (stderr, TOOLNAME ": realloc failed.\n"); goto destroy; } if (strlen (argv[i]) == 2) { - g_printerr ("appletviewer: the -J option must not be followed by a space.\n"); + fprintf (stderr, TOOLNAME ": the -J option must not be followed by a space.\n"); goto destroy; } else - vm_args.options[vm_args.nOptions++].optionString = g_strdup (argv[i] + 2); - } - else if (!strncmp (argv[i], "--version", 9) - && argv[i][9] == '\0') - { - g_print ("appletviewer (GCJ Applet Viewer) " PACKAGE_VERSION "\n"); - exit (0); - } - else if (!strncmp (argv[i], "-debug", 6) - && argv[i][6] == '\0') - { - /* FIXME: Ignore for now. The debug option will be - unsupported until we have the ability to debug - bytecode. For now, just strip it out of the argument - list. */ + vm_args.options[vm_args.nOptions++].optionString = strdup (argv[i] + 2); } else { non_vm_argv = (char**) realloc (non_vm_argv, (non_vm_argc + 1) * sizeof (char*)); if (non_vm_argv == NULL) { - g_printerr ("appletviewer: realloc failed.\n"); + fprintf (stderr, TOOLNAME ": realloc failed.\n"); goto destroy; } - non_vm_argv[non_vm_argc++] = g_strdup (argv[i]); + non_vm_argv[non_vm_argc++] = strdup (argv[i]); } } } @@ -139,18 +124,18 @@ main (int argc, const char** argv) if (vm_args.options == NULL) { - g_printerr ("appletviewer: realloc failed.\n"); + fprintf (stderr, TOOLNAME ": realloc failed.\n"); goto destroy; } - vm_args.options[vm_args.nOptions++].optionString = "-Djava.class.path=" "@datadir@/@PACKAGE@/tools.zip"; + vm_args.options[vm_args.nOptions++].optionString = "-Djava.class.path=" DATA_DIR "/" PACKAGE "/tools.zip"; } /* Terminate vm_args.options with a NULL element. */ vm_args.options = (JavaVMOption*) realloc (vm_args.options, (vm_args.nOptions + 1) * sizeof (JavaVMOption)); if (vm_args.options == NULL) { - g_printerr ("appletviewer: realloc failed.\n"); + fprintf (stderr, TOOLNAME ": realloc failed.\n"); goto destroy; } vm_args.options[vm_args.nOptions].optionString = NULL; @@ -159,7 +144,7 @@ main (int argc, const char** argv) non_vm_argv = (char**) realloc (non_vm_argv, (non_vm_argc + 1) * sizeof (char*)); if (non_vm_argv == NULL) { - g_printerr ("appletviewer: realloc failed.\n"); + fprintf (stderr, TOOLNAME ": realloc failed.\n"); goto destroy; } non_vm_argv[non_vm_argc] = NULL; @@ -171,7 +156,7 @@ main (int argc, const char** argv) if (result < 0) { - g_printerr ("appletviewer: couldn't create virtual machine\n"); + fprintf (stderr, TOOLNAME ": couldn't create virtual machine\n"); goto destroy; } @@ -180,14 +165,14 @@ main (int argc, const char** argv) string_class_id = (*env)->FindClass (env, "java/lang/String"); if (string_class_id == NULL) { - g_printerr ("appletviewer: FindClass failed.\n"); + fprintf (stderr, TOOLNAME ": FindClass failed.\n"); goto destroy; } args_array = (*env)->NewObjectArray (env, non_vm_argc, string_class_id, NULL); if (args_array == NULL) { - g_printerr ("appletviewer: NewObjectArray failed.\n"); + fprintf (stderr, TOOLNAME ": NewObjectArray failed.\n"); goto destroy; } @@ -196,17 +181,17 @@ main (int argc, const char** argv) str = (*env)->NewStringUTF (env, non_vm_argv[i]); if (str == NULL) { - g_printerr ("appletviewer: NewStringUTF failed.\n"); + fprintf (stderr, TOOLNAME ": NewStringUTF failed.\n"); goto destroy; } (*env)->SetObjectArrayElement (env, args_array, i, str); } - class_id = (*env)->FindClass (env, "gnu/classpath/tools/appletviewer/Main"); + class_id = (*env)->FindClass (env, "gnu/classpath/tools/" TOOLNAME "/Main"); if (class_id == NULL) { - g_printerr ("appletviewer: FindClass failed.\n"); + fprintf (stderr, TOOLNAME ": FindClass failed.\n"); goto destroy; } @@ -214,7 +199,7 @@ main (int argc, const char** argv) if (method_id == NULL) { - g_printerr ("appletviewer: GetStaticMethodID failed.\n"); + fprintf (stderr, TOOLNAME ": GetStaticMethodID failed.\n"); goto destroy; } |