This is the mail archive of the java-patches@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[gcjx] Patch: FYI: -nostdheaders argument


I'm checking this in on the gcjx branch.

This adds a '-nostdheaders' to gcjx and changes the libjava build to
use it.  This is just a special tweak to avoid generating Object.h and
Class.h; it lets us generate the CNI headers at the same time we
generate the .class files.

Tom

Index: gcjx/ChangeLog
from  Tom Tromey  <tromey@redhat.com>
	* main.cc (argument_parser::help_options): Document
	-nostdheaders.
	(argument_parser::parse_args): Handle -nostdheaders.
	* header/cni.cc (cni_code_generator): Initialize new field.
	(generate): Handle new field.
	* header/cni.hh (cni_code_generator::std_headers_ok): New field.
	(cni_code_generator::set_avoid_headers): New method.

Index: libjava/ChangeLog
from  Tom Tromey  <tromey@redhat.com>

	* Makefile.in, configure: Rebuilt.
	* include/jvm.h (_JV_NOT_OWNER): New define.
	(_JV_INTERRUPTED): Likewise.
	* Makefile.am (JAVAC): Redefine.
	(GCJH): Removed.
	(ZIP): Removed.
	(.class.h): Removed.
	($(ordinary_nat_headers) $(xlib_nat_headers)): Removed.
	(java/lang/ClassLoader.h): Removed.
	(java/lang/Thread.h): Likewise.
	(java/lang/String.h): Likewise.
	(java/lang/reflect/Constructor.h): Likewise.
	(java/lang/reflect/Field.h): Likewise.
	(java/lang/reflect/Method.h): Likewise.
	(java/lang/reflect/Proxy.h): Likewise.
	(java/lang/reflect/Proxy$$ProxyData.h): Likewise.
	(java/lang/reflect/Proxy$$ProxyType.h): Likewise.
	(gnu/gcj/runtime/VMClassLoader.h): Likewise.
	(java/io/ObjectInputStream$$GetField.h): Likewise.
	(java/io/ObjectOutputStream$$PutField.h): Likewise.
	(java/nio/DirectByteBufferImpl$$ReadWrite.h): Likewise.
	(java/nio/channels/Pipe$$SinkChannel.h): Likewise.
	(java/nio/channels/Pipe$$SourceChannel.h): Likewise.
	(gnu/java/net/PlainSocketImpl$$SocketInputStream.h): Likewise.
	(gnu/java/net/PlainSocketImpl$$SocketOutputStream.h): Likewise.
	(gnu/java/nio/PipeImpl$$SinkChannelImpl.h): Likewise.
	(gnu/java/nio/PipeImpl$$SourceChannelImpl.h): Likewise.
	(java/lang/ConcreteProcess$$ProcessManager.h): Likewise.
	(GCC_UNWIND_INCLUDE): Removed.
	(target_noncanonical): Removed.
	(HEADER_ARGS): New variable.
	(.java.class): Don't print command.
	* configure.ac (GCJX): New subst.

Index: gcjx/main.cc
===================================================================
RCS file: /cvs/gcc/gcc/gcjx/Attic/main.cc,v
retrieving revision 1.1.2.6
diff -u -r1.1.2.6 main.cc
--- gcjx/main.cc 4 Apr 2005 04:27:45 -0000 1.1.2.6
+++ gcjx/main.cc 17 Apr 2005 18:25:23 -0000
@@ -268,6 +268,7 @@
     print ("-prepend TEXT", "print text before class declaration", 3);
     print ("-append CLASS", "print text after class declaration", 3);
     print ("-friend CLASS", "print text in class as friend declaration", 3);
+    print ("-nostdheaders", "don't emit headers for Object or Class", 3);
 
     os << std::endl;
 
@@ -435,7 +436,7 @@
 	  }
         else if (arg == "-deprecation")
           handle_warning ("-Wdeprecated");
-        else if (arg[1] == 'f')
+        else if (arg[1] == 'f' && arg != "-friend")
 	  handle_feature (arg);
         else if (arg == "-verbose")
 	  comp->verbose = true;
@@ -536,6 +537,11 @@
 				       action_class,
 				       get_arg_for (it, "-prepend"));
 	  }
+	else if (arg == "-nostdheaders")
+	  {
+	    need_cni_generator ("-nostdheaders");
+	    cni_generator->set_avoid_headers ();
+	  }
         else
 	  die_unrecognized ("option", arg);
       }
Index: gcjx/header/cni.cc
===================================================================
RCS file: /cvs/gcc/gcc/gcjx/header/Attic/cni.cc,v
retrieving revision 1.1.2.3
diff -u -r1.1.2.3 cni.cc
--- gcjx/header/cni.cc 4 Apr 2005 04:26:47 -0000 1.1.2.3
+++ gcjx/header/cni.cc 17 Apr 2005 18:25:27 -0000
@@ -26,7 +26,8 @@
 
 cni_code_generator::cni_code_generator (compiler *c, directory_cache &dirs)
   : code_generator (dirs),
-    comp (c)
+    comp (c),
+    std_headers_ok (true)
 {
 }
 
@@ -425,14 +426,18 @@
 void
 cni_code_generator::generate (model_class *klass)
 {
+  std::string cname = klass->get_fully_qualified_name ();
+
+  if (! std_headers_ok && (cname == "java.lang.Object"
+			   || cname == "java.lang.Class"))
+    return;
+
   std::string filename = directories.add (klass, ".h");
   std::ofstream out (filename.c_str ());
 
   if (global->get_compiler ()->verbose ())
     std::cout << " [writing " << filename << "]" << std::endl;
 
-  std::string cname = klass->get_fully_qualified_name ();
-
   action_map_type::const_iterator it = action_map.find (cname);
   bool found = it != action_map.end ();
   const action_item_list &actions (found ? (*it).second : empty_list);
Index: gcjx/header/cni.hh
===================================================================
RCS file: /cvs/gcc/gcc/gcjx/header/Attic/cni.hh,v
retrieving revision 1.1.2.4
diff -u -r1.1.2.4 cni.hh
--- gcjx/header/cni.hh 4 Apr 2005 04:26:47 -0000 1.1.2.4
+++ gcjx/header/cni.hh 17 Apr 2005 18:25:27 -0000
@@ -54,6 +54,9 @@
   // An empty list that we use as needed.
   action_item_list empty_list;
 
+  // True if we should emit headers for Object and Class.
+  bool std_headers_ok;
+
   std::string cxxname (model_type *, bool = true);
   void update_modifiers (std::ostream &, modifier_t, modifier_t &);
   void add (model_type *, std::set<model_class *> &,
@@ -91,6 +94,11 @@
   {
     return true;
   }
+
+  void set_avoid_headers ()
+  {
+    std_headers_ok = false;
+  }
 };
 
 #endif // GCJX_HEADER_CNI_HH
Index: libjava/Makefile.am
===================================================================
RCS file: /cvs/gcc/gcc/libjava/Makefile.am,v
retrieving revision 1.435
diff -u -r1.435 Makefile.am
--- libjava/Makefile.am 11 Jan 2005 20:19:48 -0000 1.435
+++ libjava/Makefile.am 17 Apr 2005 18:25:31 -0000
@@ -87,9 +87,6 @@
 
 ## ################################################################
 
-# autoconf2.13's target_alias
-target_noncanonical = @target_noncanonical@
-
 ##
 ## What gets installed, and where.
 ##
@@ -135,9 +132,6 @@
 ## Compilers and compilation flags.
 ##
 
-GCJH = @GCJH@
-ZIP = @ZIP@
-
 ## The compiler with whatever flags we want for both -c and -C
 ## compiles.
 GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated
@@ -145,9 +139,9 @@
 GCJLINK = $(LIBTOOL) --tag=GCJ --mode=link $(GCJ) -L$(here) $(JC1FLAGS) $(LDFLAGS) -o $@
 LIBLINK = $(LIBTOOL) --tag=CXX --mode=link $(CXX) -L$(here) $(JC1FLAGS) $(LDFLAGS) -o $@
 
-JAVAC = $(GCJ_WITH_FLAGS) -C
-
-GCC_UNWIND_INCLUDE = @GCC_UNWIND_INCLUDE@
+## We define this so that we also get the correct CNI headers at the
+## same time.
+JAVAC = $(GCJX) -o bytecode -o cni -nostdheaders $(HEADER_ARGS)
 
 WARNINGS = -Wextra -Wall
 ## Some systems don't allow `$' in identifiers by default, so we force
@@ -196,6 +190,64 @@
 	$(GCINCS) $(THREADINCS) $(INCLTDL) \
 	$(GCC_UNWIND_INCLUDE) $(ZINCS) $(LIBFFIINCS)
 
+HEADER_ARGS = \
+-cniclass java.lang.ClassLoader	\
+-prepend 'jclass _Jv_FindClass (_Jv_Utf8Const *name, java::lang::ClassLoader *loader);'	\
+-prepend 'void _Jv_RunMain (jclass klass, const char *name, int argc, const char **argv, bool is_jar);'	\
+-friend 'jclass (::_Jv_FindClass) (_Jv_Utf8Const *name, java::lang::ClassLoader *loader);' \
+-friend 'void ::_Jv_RunMain (jclass klass, const char *name, int argc, const char **argv, bool is_jar);' \
+-cniclass java.lang.Thread \
+-prepend 'class _Jv_JNIEnv;' \
+-prepend '_Jv_JNIEnv * _Jv_GetCurrentJNIEnv ();' \
+-prepend 'void _Jv_SetCurrentJNIEnv (_Jv_JNIEnv *env);'	\
+-prepend 'void _Jv_ThreadRun (java::lang::Thread* thread);' \
+-prepend 'jint _Jv_AttachCurrentThread(java::lang::Thread* thread);' \
+-prepend 'java::lang::Thread* _Jv_AttachCurrentThread (jstring name, java::lang::ThreadGroup* group);' \
+-prepend 'java::lang::Thread* _Jv_AttachCurrentThreadAsDaemon (jstring name, java::lang::ThreadGroup* group);' \
+-prepend 'jint _Jv_DetachCurrentThread ();' \
+-friend '_Jv_JNIEnv * ::_Jv_GetCurrentJNIEnv ();' \
+-friend 'void ::_Jv_SetCurrentJNIEnv (_Jv_JNIEnv *env);' \
+-friend 'void ::_Jv_ThreadRun (java::lang::Thread* thread);' \
+-friend 'jint (::_Jv_AttachCurrentThread) (java::lang::Thread* thread);' \
+-friend 'java::lang::Thread* ::_Jv_AttachCurrentThread (jstring name, java::lang::ThreadGroup* group);'	\
+-friend 'java::lang::Thread* ::_Jv_AttachCurrentThreadAsDaemon (jstring name, java::lang::ThreadGroup* group);'	\
+-friend 'jint (::_Jv_DetachCurrentThread) ();' \
+-cniclass java.lang.String \
+-prepend 'jchar* _Jv_GetStringChars (jstring str);' \
+-prepend 'jstring* _Jv_StringFindSlot (jchar*, jint, jint);' \
+-prepend 'jstring* _Jv_StringGetSlot (jstring);' \
+-prepend 'jstring _Jv_NewStringUtf8Const (_Jv_Utf8Const* str);'	\
+-prepend 'jstring _Jv_NewStringLatin1 (const char*, jsize);' \
+-prepend 'jstring _Jv_AllocString (jsize);' \
+-friend 'jchar* ::_Jv_GetStringChars (jstring str);' \
+-friend 'jstring* ::_Jv_StringFindSlot (jchar*, jint, jint);' \
+-friend 'jstring* ::_Jv_StringGetSlot (jstring);' \
+-friend 'jstring (::_Jv_NewStringUtf8Const) (_Jv_Utf8Const* str);' \
+-friend 'jstring (::_Jv_NewStringLatin1) (const char*, jsize);'	\
+-friend 'jstring (::_Jv_AllocString) (jsize);' \
+-cniclass java.lang.reflect.Constructor	\
+-prepend 'jmethodID _Jv_FromReflectedConstructor (java::lang::reflect::Constructor *);'	\
+-prepend 'jobject _Jv_JNI_ToReflectedMethod (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \
+-friend 'jmethodID (::_Jv_FromReflectedConstructor) (java::lang::reflect::Constructor *);' \
+-friend 'jobject (::_Jv_JNI_ToReflectedMethod) (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \
+-friend 'class java::lang::Class;' \
+-cniclass java.lang.reflect.Field \
+-prepend 'jfieldID _Jv_FromReflectedField (java::lang::reflect::Field *);' \
+-prepend 'jobject _Jv_JNI_ToReflectedField (_Jv_JNIEnv*, jclass, jfieldID, jboolean);' \
+-friend 'jfieldID (::_Jv_FromReflectedField) (java::lang::reflect::Field *);' \
+-friend 'jobject (::_Jv_JNI_ToReflectedField) (_Jv_JNIEnv*, jclass, jfieldID, jboolean);' \
+-friend 'class java::lang::Class;' \
+-cniclass java.lang.reflect.Method \
+-prepend 'jmethodID _Jv_FromReflectedMethod (java::lang::reflect::Method *);' \
+-prepend 'jobject _Jv_JNI_ToReflectedMethod (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \
+-friend 'jmethodID (::_Jv_FromReflectedMethod) (java::lang::reflect::Method *);' \
+-friend 'jobject (::_Jv_JNI_ToReflectedMethod) (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \
+-friend 'class java::lang::Class;' \
+-friend 'class java::io::ObjectInputStream;' \
+-cniclass gnu.gcj.runtime.VMClassLoader	\
+-friend 'class ::java::lang::ClassLoader;'
+
+
 ## ################################################################
 
 ##
@@ -622,6 +674,8 @@
 # Compile each classfile individually.
 
 .java.class:
+## Trust us, you don't want to see this command run.
+	@echo "Compiling $< to .class"
 	$(JAVAC) $(JCFLAGS) -classpath '' -bootclasspath $(here)'$(CLASSPATH_SEPARATOR)'$(srcdir) -d $(here) $<
 
 libgcj-@gcc_version@.jar: $(all_java_class_files) $(all_property_files)
@@ -698,9 +752,6 @@
 ## How to build header files.
 ##
 
-.class.h:
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) $(basename $<)
-
 ## Header files used when compiling some of the nat* files.
 ordinary_nat_headers = $(ordinary_java_source_files:.java=.h) \
 	$(built_java_source_files:.java=.h)
@@ -723,139 +774,6 @@
 
 xlib_nat_headers = $(xlib_java_source_files:.java=.h)
 
-$(ordinary_nat_headers) $(xlib_nat_headers): %.h: %.class
-
-java/lang/ClassLoader.h: java/lang/ClassLoader.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-		-prepend 'jclass _Jv_FindClass (_Jv_Utf8Const *name, java::lang::ClassLoader *loader);' \
-		-prepend 'void _Jv_RunMain (jclass klass, const char *name, int argc, const char **argv, bool is_jar);' \
-		-friend 'jclass (::_Jv_FindClass) (_Jv_Utf8Const *name, java::lang::ClassLoader *loader);' \
-		-friend 'void ::_Jv_RunMain (jclass klass, const char *name, int argc, const char **argv, bool is_jar);' \
-		$(basename $<)
-
-java/lang/Thread.h: java/lang/Thread.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-		-prepend 'class _Jv_JNIEnv;' \
-		-prepend '#define _JV_NOT_OWNER 1' \
-		-prepend '#define _JV_INTERRUPTED 2' \
-		-prepend '_Jv_JNIEnv * _Jv_GetCurrentJNIEnv ();' \
-		-prepend 'void _Jv_SetCurrentJNIEnv (_Jv_JNIEnv *env);' \
-		-prepend 'void _Jv_ThreadRun (java::lang::Thread* thread);' \
-		-prepend 'jint _Jv_AttachCurrentThread(java::lang::Thread* thread);' \
-		-prepend 'java::lang::Thread* _Jv_AttachCurrentThread (jstring name, java::lang::ThreadGroup* group);' \
-		-prepend 'java::lang::Thread* _Jv_AttachCurrentThreadAsDaemon (jstring name, java::lang::ThreadGroup* group);' \
-		-prepend 'jint _Jv_DetachCurrentThread ();' \
-		-friend '_Jv_JNIEnv * ::_Jv_GetCurrentJNIEnv ();' \
-		-friend 'void ::_Jv_SetCurrentJNIEnv (_Jv_JNIEnv *env);' \
-		-friend 'void ::_Jv_ThreadRun (java::lang::Thread* thread);' \
-		-friend 'jint (::_Jv_AttachCurrentThread) (java::lang::Thread* thread);' \
-		-friend 'java::lang::Thread* ::_Jv_AttachCurrentThread (jstring name, java::lang::ThreadGroup* group);' \
-		-friend 'java::lang::Thread* ::_Jv_AttachCurrentThreadAsDaemon (jstring name, java::lang::ThreadGroup* group);' \
-		-friend 'jint (::_Jv_DetachCurrentThread) ();' \
-		$(basename $<)
-
-java/lang/String.h: java/lang/String.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	    -prepend 'jchar* _Jv_GetStringChars (jstring str);' \
-	    -prepend 'jstring* _Jv_StringFindSlot (jchar*, jint, jint);' \
-	    -prepend 'jstring* _Jv_StringGetSlot (jstring);' \
-	    -prepend 'jstring _Jv_NewStringUtf8Const (_Jv_Utf8Const* str);' \
-	    -prepend 'jstring _Jv_NewStringLatin1 (const char*, jsize);' \
-	    -prepend 'jstring _Jv_AllocString (jsize);' \
-	    -friend 'jchar* ::_Jv_GetStringChars (jstring str);' \
-	    -friend 'jstring* ::_Jv_StringFindSlot (jchar*, jint, jint);' \
-	    -friend 'jstring* ::_Jv_StringGetSlot (jstring);' \
-	    -friend 'jstring (::_Jv_NewStringUtf8Const) (_Jv_Utf8Const* str);' \
-	    -friend 'jstring (::_Jv_NewStringLatin1) (const char*, jsize);' \
-	    -friend 'jstring (::_Jv_AllocString) (jsize);' \
-	    $(basename $<)
-
-java/lang/reflect/Constructor.h: java/lang/reflect/Constructor.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	    -prepend 'jmethodID _Jv_FromReflectedConstructor (java::lang::reflect::Constructor *);' \
-	    -prepend 'jobject _Jv_JNI_ToReflectedMethod (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \
-	    -friend 'jmethodID (::_Jv_FromReflectedConstructor) (java::lang::reflect::Constructor *);' \
-	    -friend 'jobject (::_Jv_JNI_ToReflectedMethod) (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \
-	    -friend 'class java::lang::Class;' \
-	    $(basename $<)
-
-java/lang/reflect/Field.h: java/lang/reflect/Field.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	    -prepend 'jfieldID _Jv_FromReflectedField (java::lang::reflect::Field *);' \
-	    -prepend 'jobject _Jv_JNI_ToReflectedField (_Jv_JNIEnv*, jclass, jfieldID, jboolean);' \
-	    -friend 'jfieldID (::_Jv_FromReflectedField) (java::lang::reflect::Field *);' \
-	    -friend 'jobject (::_Jv_JNI_ToReflectedField) (_Jv_JNIEnv*, jclass, jfieldID, jboolean);' \
-	    -friend 'class java::lang::Class;' \
-	    $(basename $<)
-
-java/lang/reflect/Method.h: java/lang/reflect/Method.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	    -prepend 'jmethodID _Jv_FromReflectedMethod (java::lang::reflect::Method *);' \
-	    -prepend 'jobject _Jv_JNI_ToReflectedMethod (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \
-	    -friend 'jmethodID (::_Jv_FromReflectedMethod) (java::lang::reflect::Method *);' \
-	    -friend 'jobject (::_Jv_JNI_ToReflectedMethod) (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \
-	    -friend 'class java::lang::Class;' \
-	    -friend 'class java::io::ObjectInputStream;' \
-	    $(basename $<)
-
-java/lang/reflect/Proxy.h: java/lang/reflect/Proxy.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	    $(basename $<)
-
-java/lang/reflect/Proxy$$ProxyData.h: java/lang/reflect/Proxy.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	'java/lang/reflect/Proxy$$ProxyData'
-
-java/lang/reflect/Proxy$$ProxyType.h: java/lang/reflect/Proxy.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	'java/lang/reflect/Proxy$$ProxyType'
-
-gnu/gcj/runtime/VMClassLoader.h: gnu/gcj/runtime/VMClassLoader.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	    -friend 'class ::java::lang::ClassLoader;' \
-	    $(basename $<)
-
-java/io/ObjectInputStream$$GetField.h: java/io/ObjectInputStream.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	'java/io/ObjectInputStream$$GetField'
-
-java/io/ObjectOutputStream$$PutField.h: java/io/ObjectOutputStream.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	'java/io/ObjectOutputStream$$PutField'
-
-java/nio/DirectByteBufferImpl$$ReadWrite.h: java/nio/DirectByteBufferImpl.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	'java/nio/DirectByteBufferImpl$$ReadWrite'
-
-java/nio/channels/Pipe$$SinkChannel.h: java/nio/channels/Pipe.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	'java/nio/channels/Pipe$$SinkChannel'
-
-java/nio/channels/Pipe$$SourceChannel.h: java/nio/channels/Pipe.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	'java/nio/channels/Pipe$$SourceChannel'
-
-gnu/java/net/PlainSocketImpl$$SocketInputStream.h: gnu/java/net/PlainSocketImpl.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	'gnu/java/net/PlainSocketImpl$$SocketInputStream'
-
-gnu/java/net/PlainSocketImpl$$SocketOutputStream.h: gnu/java/net/PlainSocketImpl.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	'gnu/java/net/PlainSocketImpl$$SocketOutputStream'
-
-gnu/java/nio/PipeImpl$$SinkChannelImpl.h: gnu/java/nio/PipeImpl.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	'gnu/java/nio/PipeImpl$$SinkChannelImpl'
-
-gnu/java/nio/PipeImpl$$SourceChannelImpl.h: gnu/java/nio/PipeImpl.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	'gnu/java/nio/PipeImpl$$SourceChannelImpl'
-
-## Only used by PosixProcess.java
-java/lang/ConcreteProcess$$ProcessManager.h: java/lang/ConcreteProcess.class
-	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
-	'java/lang/ConcreteProcess$$ProcessManager'
-
 ## Headers we maintain by hand and which we want to install.
 extra_headers = java/lang/Object.h java/lang/Class.h
 
Index: libjava/configure.ac
===================================================================
RCS file: /cvs/gcc/gcc/libjava/configure.ac,v
retrieving revision 1.16
diff -u -r1.16 configure.ac
--- libjava/configure.ac 3 Dec 2004 11:15:22 -0000 1.16
+++ libjava/configure.ac 17 Apr 2005 18:25:40 -0000
@@ -1074,6 +1074,7 @@
    built)
       GCJ="$built_gcc_dir/gcj -B`${PWDCMD-pwd}`/ -B$built_gcc_dir/"
       GCJH='$(MULTIBUILDTOP)../$(COMPPATH)/gcc/gcjh'
+      GCJX='$(MULTIBUILDTOP)../$(COMPPATH)/gcjx/gcjx'
       ZIP='$(MULTIBUILDTOP)../$(COMPPATH)/fastjar/fastjar'
    ;;
    cross)
@@ -1086,6 +1087,7 @@
       fi
       ZIP=jar
       GCJH='$(target_noncanonical)-gcjh'
+      GCJX='$(target_noncanonical)-gcjx'
    ;;
    path)
       GCJ="gcj -B`${PWDCMD-pwd}`/"
@@ -1093,11 +1095,13 @@
       ## found in the build tree.
       ZIP='$(MULTIBUILDTOP)../$(COMPPATH)/fastjar/fastjar'
       GCJH=gcjh
+      GCJX=gcjx
    ;;
 esac
 
 AC_SUBST(GCJH)
 AC_SUBST(ZIP)
+AC_SUBST(GCJX)
 
 # Create it, so that compile/link tests don't fail
 test -f libgcj.spec || touch libgcj.spec
Index: libjava/include/jvm.h
===================================================================
RCS file: /cvs/gcc/gcc/libjava/include/jvm.h,v
retrieving revision 1.73
diff -u -r1.73 jvm.h
--- libjava/include/jvm.h 10 Jan 2005 19:39:25 -0000 1.73
+++ libjava/include/jvm.h 17 Apr 2005 18:25:42 -0000
@@ -33,6 +33,9 @@
 /* Macro for possible unused arguments.  */
 #define MAYBE_UNUSED __attribute__((__unused__))
 
+#define _JV_NOT_OWNER 1
+#define _JV_INTERRUPTED 2
+
 /* Structure of the virtual table.  */
 struct _Jv_VTable
 {


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]