diff options
author | Anthony Green <green@cygnus.com> | 1999-10-15 06:07:41 +0000 |
---|---|---|
committer | Anthony Green <green@gcc.gnu.org> | 1999-10-15 06:07:41 +0000 |
commit | ffccc6bee2b00018fd09b26a5ce5d0bbc6900e94 (patch) | |
tree | bbd6554459daad973191b77a62d0237b045595f3 /libjava/java | |
parent | 7901f53f77683ef41d462b2f554faad3c4ae9d76 (diff) | |
download | gcc-ffccc6bee2b00018fd09b26a5ce5d0bbc6900e94.zip gcc-ffccc6bee2b00018fd09b26a5ce5d0bbc6900e94.tar.gz gcc-ffccc6bee2b00018fd09b26a5ce5d0bbc6900e94.tar.bz2 |
libtool-version: Catch up by incrementing current.
* libtool-version: Catch up by incrementing current.
* configure.host: Disable use of GCJ_PROPERTIES for mips-tx39.
* configure, include/config.h.in: Rebuilt.
* acconfig.h (DISABLE_GETENV_PROPERTIES): Undefine.
* configure.in: Added --disable-getenv-properties and new define
`DISABLE_GETENV_PROPERTIES'.
* prims.cc (PROCESS_GCJ_PROPERTIES): Define.
(next_property_key): New function.
(next_property_value): New function.
(process_gcj_properties): New function.
(JvRunMain): Call process_gcj_properties.
(_JvRunMain): Ditto.
* java/lang/natSystem.cc (init_properties): Set properties defined
in GCJ_PROPERTIES. Also add 1.2 style versioning properties.
* include/java-props.h: New file.
* java/lang/natSystem.cc (init_properties): Add new properties to
conform with Java Product Versioning Specification.
From-SVN: r30007
Diffstat (limited to 'libjava/java')
-rw-r--r-- | libjava/java/lang/natSystem.cc | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/libjava/java/lang/natSystem.cc b/libjava/java/lang/natSystem.cc index f453de0..f146f3e 100644 --- a/libjava/java/lang/natSystem.cc +++ b/libjava/java/lang/natSystem.cc @@ -40,6 +40,7 @@ details. */ #include <gcj/cni.h> #include <jvm.h> +#include <java-props.h> #include <java/lang/System.h> #include <java/lang/Class.h> #include <java/lang/ArrayStoreException.h> @@ -52,6 +53,7 @@ details. */ #define SystemClass _CL_Q34java4lang6System extern java::lang::Class SystemClass; +extern property_pair *_Jv_Environment_Properties; #if defined (ECOS) @@ -274,10 +276,23 @@ java::lang::System::init_properties (void) // A convenience define. #define SET(Prop,Val) \ properties->put(JvNewStringLatin1 (Prop), JvNewStringLatin1 (Val)) + + // A mixture of the Java Product Versioning Specification + // (introduced in 1.2), and earlier versioning properties. SET ("java.version", VERSION); SET ("java.vendor", "Cygnus Solutions"); SET ("java.vendor.url", "http://sourceware.cygnus.com/java/"); SET ("java.class.version", GCJVERSION); + SET ("java.vm.specification.version", "1.1"); + SET ("java.vm.specification.name", "Java(tm) Virtual Machine Specification"); + SET ("java.vm.specification.vendor", "Sun Microsystems Inc."); + SET ("java.vm.version", GCJVERSION); + SET ("java.vm.vendor", "Cygnus Solutions"); + SET ("java.vm.name", "libgcj"); + SET ("java.specification.version", "1.1"); + SET ("java.specification.name", "Java(tm) Language Specification"); + SET ("java.specification.vendor", "Sun Microsystems Inc."); + // FIXME: how to set these given location-independence? // SET ("java.home", "FIXME"); // SET ("java.class.path", "FIXME"); @@ -363,4 +378,17 @@ java::lang::System::init_properties (void) if (buffer != NULL) free (buffer); #endif + + // Set the system properties from the user's environment. + if (_Jv_Environment_Properties) + { + size_t i = 0; + + while (_Jv_Environment_Properties[i].key) + { + SET (_Jv_Environment_Properties[i].key, + _Jv_Environment_Properties[i].value); + i++; + } + } } |