aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libjava/ChangeLog11
-rw-r--r--libjava/include/jni.h33
-rw-r--r--libjava/jni.cc6
3 files changed, 37 insertions, 13 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 70402e9..01e2b1d 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,14 @@
+2003-11-11 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * jni.cc (JNI_CreateJavaVM): Remove JNIEXPORT.
+ (JNI_GetCreatedJavaVMs): Likewise.
+ (JNI_GetDefaultJavaVMInitArgs): Likewise.
+ * include/jni.h (JNIIMPEXP): Remove definition
+ and replace with...
+ (__GCJ_JNIIMPEXP__): New macro, applicable only to libgcj
+ symbols,
+ (__GCJ_DLL__): New macro, controlling __GCJ_JNIIMPEXP__.
+
2003-11-11 Thomas Fitzsimmons <fitzsim@redhat.com>
* Makefile.am: Add GdkPixbufDecoder.java and
diff --git a/libjava/include/jni.h b/libjava/include/jni.h
index cab4571..4e39e64 100644
--- a/libjava/include/jni.h
+++ b/libjava/include/jni.h
@@ -178,22 +178,30 @@ typedef void *jmethodID;
#define JNIIMPORT __declspec(dllimport)
#define JNIEXPORT __declspec(dllexport)
+
#define JNICALL __stdcall
-#else
+/* These defines apply to symbols in libgcj */
+#ifdef __GCJ_DLL__
+# ifdef __GCJ_JNI_IMPL__
+# define __GCJ_JNIIMPEXP__ JNIEXPORT
+# else
+# define __GCJ_JNIIMPEXP__ JNIIMPORT
+# endif /* ! __GCJ_JNI_IMPL__ */
+#else /* ! __GCJ_DLL__ */
+# define __GCJ_JNIIMPEXP__
+#endif /* __GCJ_DLL__ */
+
+#else /* !( _WIN32 || __WIN32__ || WIN32) */
#define JNIIMPORT
#define JNIEXPORT
#define JNICALL
+#define __GCJ_JNIIMPEXP__
#endif /* !( _WIN32 || __WIN32__ || WIN32) */
-#ifdef __GCJ_JNI_IMPL__
-#define JNIIMPEXP JNIEXPORT
-#else
-#define JNIIMPEXP JNIIMPORT
-#endif /* ! __GCJ_JNI_IMPL__ */
-
+
#ifdef __cplusplus
extern "C"
{
@@ -206,9 +214,14 @@ extern JNIEXPORT void JNICALL JNI_OnUnload (JavaVM *, void *);
/* These functions are called by user code to start using the
invocation API. */
-extern JNIIMPEXP jint JNICALL JNI_GetDefaultJavaVMInitArgs (void *);
-extern JNIIMPEXP jint JNICALL JNI_CreateJavaVM (JavaVM **, void **, void *);
-extern JNIIMPEXP jint JNICALL JNI_GetCreatedJavaVMs(JavaVM **, jsize, jsize *);
+extern __GCJ_JNIIMPEXP__ jint JNICALL
+JNI_GetDefaultJavaVMInitArgs (void *);
+
+extern __GCJ_JNIIMPEXP__ jint JNICALL
+JNI_CreateJavaVM (JavaVM **, void **, void *);
+
+extern __GCJ_JNIIMPEXP__ jint JNICALL
+JNI_GetCreatedJavaVMs(JavaVM **, jsize, jsize *);
#ifdef __cplusplus
}
diff --git a/libjava/jni.cc b/libjava/jni.cc
index e2e10de..31c8fd0 100644
--- a/libjava/jni.cc
+++ b/libjava/jni.cc
@@ -2377,7 +2377,7 @@ static jint
return 0;
}
-JNIEXPORT jint JNICALL
+jint JNICALL
JNI_GetDefaultJavaVMInitArgs (void *args)
{
jint version = * (jint *) args;
@@ -2394,7 +2394,7 @@ JNI_GetDefaultJavaVMInitArgs (void *args)
return 0;
}
-JNIEXPORT jint JNICALL
+jint JNICALL
JNI_CreateJavaVM (JavaVM **vm, void **penv, void *args)
{
JvAssert (! the_vm);
@@ -2459,7 +2459,7 @@ JNI_CreateJavaVM (JavaVM **vm, void **penv, void *args)
return 0;
}
-JNIEXPORT jint JNICALL
+jint JNICALL
JNI_GetCreatedJavaVMs (JavaVM **vm_buffer, jsize buf_len, jsize *n_vms)
{
if (buf_len <= 0)