aboutsummaryrefslogtreecommitdiff
path: root/libjava/posix.cc
diff options
context:
space:
mode:
authorAdam King <aking@dreammechanics.com>2002-04-07 11:27:00 +0000
committerBryce McKinlay <bryce@gcc.gnu.org>2002-04-07 12:27:00 +0100
commit455cd615c2dde26432ae38a5529a73789df52106 (patch)
tree069e876f78e2a8d34d5f4bb0c46db26f878a30bc /libjava/posix.cc
parent1abbe5b516d49d696910b03440f65c5819f8d755 (diff)
downloadgcc-455cd615c2dde26432ae38a5529a73789df52106.zip
gcc-455cd615c2dde26432ae38a5529a73789df52106.tar.gz
gcc-455cd615c2dde26432ae38a5529a73789df52106.tar.bz2
natSystem.cc (init_properties): Call new function _Jv_platform_initProperties.
2002-04-07 Adam King <aking@dreammechanics.com> * java/lang/natSystem.cc (init_properties): Call new function _Jv_platform_initProperties. * win32 (_Jv_platform_initProperties): New function that adds Win32 support for the System properties os.name, os.arch, os.version, user.name, user.home, and user.dir. * include/posix.h, include/win32.h, posix.cc: New function _Jv_platform_initProperties. From-SVN: r51989
Diffstat (limited to 'libjava/posix.cc')
-rw-r--r--libjava/posix.cc19
1 files changed, 19 insertions, 0 deletions
diff --git a/libjava/posix.cc b/libjava/posix.cc
index 6b0ea8c..ebff1c9 100644
--- a/libjava/posix.cc
+++ b/libjava/posix.cc
@@ -12,12 +12,14 @@ details. */
#include "posix.h"
+#include <stdlib.h>
#include <errno.h>
#include <signal.h>
#include <jvm.h>
#include <java/lang/Thread.h>
#include <java/io/InterruptedIOException.h>
+#include <java/util/Properties.h>
#if defined (ECOS)
extern "C" unsigned long long _clock (void);
@@ -62,6 +64,23 @@ _Jv_platform_initialize (void)
#endif
}
+// Set platform-specific System properties.
+void
+_Jv_platform_initProperties (java::util::Properties* newprops)
+{
+ // A convenience define.
+#define SET(Prop,Val) \
+ newprops->put(JvNewStringLatin1 (Prop), JvNewStringLatin1 (Val))
+
+ SET ("file.separator", "/");
+ SET ("path.separator", ":");
+ SET ("line.separator", "\n");
+ char *tmpdir = ::getenv("TMPDIR");
+ if (! tmpdir)
+ tmpdir = "/tmp";
+ SET ("java.io.tmpdir", tmpdir);
+}
+
static inline void
internal_gettimeofday (struct timeval *result)
{