* configure.ac: Default to AC_ENABLE_SHARED and AC_DISABLE_STATIC.
(ifconv): Added.
(jni.h): Check for jni.h in GNU Classpath.
(static-classpath): Added.
* src/vm/vm.c, src/vm/vm.h: New files, contain the JVM startup code.
* src/vm/Makefile.am (libvm_la_SOURCES): Added vm.[ch].
* src/cacao/cacao.c: Removed JVM startup code.
* src/cacao/cacao.h: Removed.
* src/cacao/Makefile.am: Replaced ENABLE_STATICVM by
WITH_STATIC_CLASSPATH.
(ENABLE_STATICVM): Build a shared library when not defined.
* src/vm/options.c, src/vm/options.h (mm/memory.h, native/jni.h):
Added.
(native/jni.h): Added.
(opt_ind): Renamed to opt_index.
(opt_jar, opt_run, opt_method, opt_signature, opt_ifconv): Added.
(get_opt): Renamed to options_get.
(options_prepare): New method.
* src/cacaoh/cacaoh.c (main): Use new option handling.
* src/vm/jit/alpha/codegen.c, src/vm/jit/arm/codegen.c,
src/vm/jit/i386/codegen.c, src/vm/jit/mips/codegen.c,
src/vm/jit/powerpc/codegen.c (cacao/cacao.h): Removed.
(vm/vm.h): Added.
(createnativestub): Replaced ENABLE_STATICVM with
WITH_STATIC_CLASSPATH and &env by _Jv_env.
* src/vm/jit/patcher.h, src/vm/jit/alpha/patcher.c,
src/vm/jit/arm/patcher.c, src/vm/jit/i386/patcher.c,
src/vm/jit/mips/patcher.c, src/vm/jit/powerpc/patcher.c,
src/vm/jit/x86_64/patcher.c: Replaced ENABLE_STATICVM by
WITH_STATIC_CLASSPATH.
* src/vm/jit/x86_64/asmpart.S: Rewritten for PIC code.
* src/vm/signal.c (cacao/cacao.h): Removed.
(vm/vm.h): Added.
(signal_handler_sigint): Use vm_* functions.
* src/native/native.c: Replaced ENABLE_STATICVM by
WITH_STATIC_CLASSPATH.
(cacao/cacao.h): Removed.
(native_resolve_function): Smaller changes.
* src/native/vm/VMRuntime.c: Replaced ENABLE_STATICVM by
WITH_STATIC_CLASSPATH.
(cacao/cacao.h): Removed.
(vm/vm.h): Added.
(execInternal): Removed.
(exit): Use vm_shutdown.
* src/native/native.h: Replaced ENABLE_STATICVM by
WITH_STATIC_CLASSPATH.
* src/native/Makefile.am: Likewise.
* src/native/vm/VMSystemProperties.c: Likewise.
* src/threads/native/threads.c (cacao/cacao.h): Removed.
* src/native/jni.h: Removed our JNI stuff and include GNU Classpath's.
* src/native/jni.c: Adapt to the new jni.h header.
(Release<type>ArrayElements): Copy correct element type.
(Get<type>ArrayRegion): Likewise.
(Set<type>ArrayRegion): Likewise.
30 files changed: