OSDN Git Service

* flow.c (calculate_global_regs_live): Force stack pointer
[pf3gnuchains/gcc-fork.git] / libjava / Makefile.in
index 85310ea..c1d269d 100644 (file)
@@ -71,45 +71,73 @@ COMPPATH = @COMPPATH@
 CPP = @CPP@
 CXX = @CXX@
 CXXCPP = @CXXCPP@
+DIRLTDL = @DIRLTDL@
+DIVIDESPEC = @DIVIDESPEC@
 DLLTOOL = @DLLTOOL@
+EXCEPTIONSPEC = @EXCEPTIONSPEC@
 EXEEXT = @EXEEXT@
+FORCELIBGCCSPEC = @FORCELIBGCCSPEC@
 GCDEPS = @GCDEPS@
 GCINCS = @GCINCS@
 GCLIBS = @GCLIBS@
 GCOBJS = @GCOBJS@
-LD = @LD@
+GCSPEC = @GCSPEC@
+GCTESTSPEC = @GCTESTSPEC@
+INCLTDL = @INCLTDL@
+LIBDATASTARTSPEC = @LIBDATASTARTSPEC@
+LIBGCJTESTSPEC = @LIBGCJTESTSPEC@
 LIBGCJ_CFLAGS = @LIBGCJ_CFLAGS@
 LIBGCJ_CXXFLAGS = @LIBGCJ_CXXFLAGS@
 LIBGCJ_JAVAFLAGS = @LIBGCJ_JAVAFLAGS@
+LIBLTDL = @LIBLTDL@
 LIBTOOL = @LIBTOOL@
 LN_S = @LN_S@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
+OBJDUMP = @OBJDUMP@
 PACKAGE = @PACKAGE@
 PERL = @PERL@
 RANLIB = @RANLIB@
+SYSTEMSPEC = @SYSTEMSPEC@
 THREADDEPS = @THREADDEPS@
 THREADINCS = @THREADINCS@
 THREADLIBS = @THREADLIBS@
 THREADOBJS = @THREADOBJS@
-USE_SYMBOL_UNDERSCORE = @USE_SYMBOL_UNDERSCORE@
+THREADSPEC = @THREADSPEC@
 VERSION = @VERSION@
+ZDEPS = @ZDEPS@
+ZINCS = @ZINCS@
+ZLIBS = @ZLIBS@
+ZLIBSPEC = @ZLIBSPEC@
+ZLIBTESTSPEC = @ZLIBTESTSPEC@
 here = @here@
 libgcj_basedir = @libgcj_basedir@
 
 AUTOMAKE_OPTIONS = foreign no-installinfo
-
 @TESTSUBDIR_TRUE@SUBDIRS = \
-@TESTSUBDIR_TRUE@testsuite
-
-toolexecdir = $(exec_prefix)/$(target_alias)
-toolexeclibdir = $(toolexecdir)/lib$(MULTISUBDIR)
-
-toolexeclib_LTLIBRARIES = libgcj.la
+@TESTSUBDIR_TRUE@$(DIRLTDL) testsuite gcj include
+@TESTSUBDIR_FALSE@SUBDIRS = \
+@TESTSUBDIR_FALSE@$(DIRLTDL) gcj include
+@USE_LIBDIR_TRUE@toolexeclibdir = \
+@USE_LIBDIR_TRUE@$(libdir)$(MULTISUBDIR)
+@USE_LIBDIR_FALSE@toolexeclibdir = \
+@USE_LIBDIR_FALSE@$(toolexecdir)/lib$(MULTISUBDIR)
+@USE_LIBDIR_FALSE@toolexecdir = \
+@USE_LIBDIR_FALSE@$(exec_prefix)/$(target_alias)
+
+@AWT_TRUE@hack1 = \
+@AWT_TRUE@libgcjawt.la
+toolexeclib_LTLIBRARIES = libgcj.la $(hack1)
+toolexeclib_DATA = libgcj.spec
 data_DATA = libgcj.zip
 
+@NEEDS_DATA_START_TRUE@toolexeclib_LIBRARIES = \
+@NEEDS_DATA_START_TRUE@libgcjdata.a
+@NEEDS_DATA_START_TRUE@libgcjdata_a_SOURCES = \
+@NEEDS_DATA_START_TRUE@libgcjdata.c
+
 @NATIVE_TRUE@bin_PROGRAMS = \
-@NATIVE_TRUE@jv-convert
+@NATIVE_TRUE@jv-convert gij
 @CANADIAN_TRUE@@NULL_TARGET_TRUE@GCJ = \
 @CANADIAN_TRUE@@NULL_TARGET_TRUE@gcj
 @CANADIAN_TRUE@@NULL_TARGET_FALSE@GCJ = \
@@ -136,45 +164,71 @@ JAVAC = $(GCJ) -C
 EH_COMMON_INCLUDE = @EH_COMMON_INCLUDE@
 
 WARNINGS = -W -Wall
-AM_CXXFLAGS = -fno-rtti -fvtable-thunks @LIBGCJ_CXXFLAGS@ $(WARNINGS)
+AM_CXXFLAGS = -fno-rtti -fvtable-thunks -fasynchronous-exceptions \
+       @LIBGCJ_CXXFLAGS@ @EXCEPTIONSPEC@ $(WARNINGS) -D_GNU_SOURCE
+
 @USING_GCC_TRUE@AM_CFLAGS = \
 @USING_GCC_TRUE@@LIBGCJ_CFLAGS@ $(WARNINGS)
 @USING_GCC_FALSE@AM_CFLAGS = \
 @USING_GCC_FALSE@@LIBGCJ_CFLAGS@
 
-JCFLAGS = -g
-JC1FLAGS = -g @LIBGCJ_JAVAFLAGS@
+JCFLAGS = -g -L$(here)
+JC1FLAGS = -g -L$(here) @LIBGCJ_JAVAFLAGS@
+
+LIBFFIINCS = -I$(top_srcdir)/../libffi/include -I$(MULTIBUILDTOP)../libffi/include
+
+INCLUDES = -I$(top_srcdir) -Iinclude -I$(top_srcdir)/include \
+       $(GCINCS) $(THREADINCS) $(INCLTDL) \
+       $(EH_COMMON_INCLUDE) $(ZINCS) $(LIBFFIINCS)
 
-INCLUDES = -Iinclude -I$(top_srcdir)/include $(GCINCS) $(THREADINCS) $(EH_COMMON_INCLUDE)
 
 nat_files = $(nat_source_files:.cc=.lo)
 c_files = $(c_source_files:.c=.lo)
-javao_files = $(java_source_files:.java=.lo)
+javao_files = $(java_source_files:.java=.lo) \
+       $(built_java_source_files:.java=.lo)
+
+
+awto_files = $(awt_java_source_files:.java=.lo)
+
+libffi_files = `$(AR) t ../libffi/.libs/libffi.a 2>/dev/null | sed 's/\.o/\.lo/g' | sed 's/^/..\/libffi\//g'`
+
+libgcj_la_SOURCES = prims.cc jni.cc exception.cc \
+       resolve.cc defineclass.cc interpret.cc name-finder.cc
 
-libgcj_la_SOURCES = prims.cc jni.cc exception.cc
 EXTRA_libgcj_la_SOURCES = boehm.cc nogc.cc posix-threads.cc no-threads.cc \
-       $(c_source_files) $(java_source_files)
+       $(c_source_files) $(java_source_files) $(built_java_source_files)
 
 libgcj_la_DEPENDENCIES = libgcj.zip $(javao_files) $(nat_files) \
-       $(c_files) $(GCOBJS) $(THREADOBJS)
+       $(c_files) $(GCOBJS) $(THREADOBJS) $(LIBLTDL)
 
 libgcj_la_LIBADD = $(javao_files) $(nat_files) $(c_files) $(GCOBJS) \
-       $(THREADOBJS)
+       $(THREADOBJS) $(libffi_files) $(LIBLTDL)
 
 libgcj_la_LDFLAGS = -rpath $(toolexeclibdir) \
        -version-info `grep -v '^\#' $(srcdir)/libtool-version`
 
 
-MOSTLYCLEANFILES = $(javao_files) $(nat_files) $(nat_headers) $(c_files)
+libgcjawt_la_SOURCES = ## Nothing
+EXTRA_libgcjawt_la_SOURCES = $(awt_java_source_files)
+libgcjawt_la_DEPENDENCIES = libgcj.zip $(awto_files)
+libgcjawt_la_LIBADD = $(awto_files)
+libgcjawt_la_LDFLAGS = -rpath $(toolexeclibdir) \
+       -version-info `grep -v '^\#' $(srcdir)/libtool-version`
+
+
+MOSTLYCLEANFILES = $(javao_files) $(nat_files) $(nat_headers) $(c_files) \
+       $(awto_files)
+
 CLEANFILES = libgcj.zip
 
 SUFFIXES = .class .java .h
 
-nat_headers = $(ordinary_java_source_files:.java=.h)
+nat_headers = $(ordinary_java_source_files:.java=.h) \
+       $(built_java_source_files:.java=.h) \
+       $(cond_awt_java_source_files:.java=.h)
 
-FTFRIEND = void JvRunMain (jclass klass, int argc, const char **argv)
 
-TGFRIEND = void JvRunMain (jclass klass, int argc, const char **argv)
+extra_headers = java/lang/Object.h java/lang/Class.h
 
 NM = nm
 
@@ -185,18 +239,26 @@ CONVERT_DIR = gnu/gcj/convert
 
 jv_convert_SOURCES = 
 EXTRA_jv_convert_SOURCES = $(convert_source_files)
-jv_convert_LDFLAGS = --main=gnu.gcj.convert.Convert -nodefaultlibs \
+jv_convert_LDFLAGS = --main=gnu.gcj.convert.Convert \
        -rpath $(toolexeclibdir)
 
 jv_convert_LINK = $(LIBTOOL) --mode=link $(GCJ) $(JC1FLAGS) $(LDFLAGS) \
        -o jv-convert
 
 jv_convert_LDADD = $(convert_source_files:.java=.lo) libgcj.la \
-       $(GCLIBS) $(THREADLIBS) -lm -lgcc -lc -lgcc
+       $(GCLIBS) $(THREADLIBS) $(ZLIBS) -L$(here)/.libs
 
 jv_convert_DEPENDENCIES = $(convert_source_files:.java=.lo) \
-       $(GCDEPS) $(THREADDEPS) libgcj.la
+       $(GCDEPS) $(THREADDEPS) $(ZDEPS) libgcj.la libgcj.spec
+
 
+gij_SOURCES = gij.cc
+gij_LDFLAGS = -rpath $(toolexeclibdir)
+gij_LINK = $(LIBTOOL) --mode=link $(GCJ) $(JC1FLAGS) $(LDFLAGS) \
+       -o gij
+
+gij_LDADD = libgcj.la $(GCLIBS) $(THREADLIBS) $(ZLIBS) -L$(here)/.libs
+gij_DEPENDENCIES = $(GCDEPS) $(THREADDEPS) $(ZDEPS) libgcj.la libgcj.spec
 
 gen_from_JIS_SOURCES = 
 EXTRA_gen_from_JIS_SOURCES = $(srcdir)/$(CONVERT_DIR)/gen-from-JIS.c \
@@ -218,61 +280,106 @@ gnu/gcj/convert/Input_EUCJIS.java \
 gnu/gcj/convert/Input_JavaSrc.java \
 gnu/gcj/convert/Input_SJIS.java \
 gnu/gcj/convert/Input_UTF8.java        \
+gnu/gcj/convert/Input_iconv.java \
 gnu/gcj/convert/Output_8859_1.java \
 gnu/gcj/convert/Output_EUCJIS.java \
 gnu/gcj/convert/Output_JavaSrc.java \
 gnu/gcj/convert/Output_SJIS.java \
 gnu/gcj/convert/Output_UTF8.java \
+gnu/gcj/convert/Output_iconv.java \
 gnu/gcj/convert/UnicodeToBytes.java
 
 
 special_java_source_files = java/lang/Class.java java/lang/Object.java
 
 awt_java_source_files = \
+java/awt/AWTError.java \
 java/awt/AWTEvent.java \
+java/awt/AWTException.java \
+java/awt/ActiveEvent.java \
+java/awt/Adjustable.java \
 java/awt/BorderLayout.java \
-java/awt/Component.java \
-java/awt/Container.java \
-java/awt/Dimension.java \
+java/awt/Color.java \
+java/awt/Component.java        \
+java/awt/Container.java        \
+java/awt/Dimension.java        \
 java/awt/Event.java \
 java/awt/Font.java \
 java/awt/Frame.java \
+java/awt/Graphics.java \
+java/awt/IllegalComponentStateException.java \
+java/awt/Image.java \
+java/awt/ItemSelectable.java \
 java/awt/LayoutManager.java \
 java/awt/LayoutManager2.java \
 java/awt/Menu.java \
 java/awt/MenuBar.java \
-java/awt/MenuItem.java \
 java/awt/MenuComponent.java \
 java/awt/MenuContainer.java \
+java/awt/MenuItem.java \
+java/awt/Paint.java \
+java/awt/PaintContext.java \
 java/awt/Point.java \
-java/awt/Rectangle.java \
+java/awt/Rectangle.java        \
 java/awt/Shape.java \
 java/awt/TextArea.java \
 java/awt/TextComponent.java \
 java/awt/Toolkit.java \
+java/awt/Transparency.java \
 java/awt/Window.java \
-java/awt/event/ActionEvent.java \
+java/awt/event/AWTEventListener.java \
+java/awt/event/ActionEvent.java        \
 java/awt/event/ActionListener.java \
+java/awt/event/AdjustmentEvent.java \
+java/awt/event/AdjustmentListener.java \
+java/awt/event/ComponentAdapter.java \
 java/awt/event/ComponentEvent.java \
+java/awt/event/ComponentListener.java \
+java/awt/event/ContainerAdapter.java \
+java/awt/event/ContainerEvent.java \
+java/awt/event/ContainerListener.java \
+java/awt/event/FocusAdapter.java \
+java/awt/event/FocusEvent.java \
+java/awt/event/FocusListener.java \
 java/awt/event/InputEvent.java \
+java/awt/event/InputMethodEvent.java \
+java/awt/event/InputMethodListener.java        \
+java/awt/event/InvocationEvent.java \
+java/awt/event/ItemEvent.java \
+java/awt/event/ItemListener.java \
+java/awt/event/KeyAdapter.java \
 java/awt/event/KeyEvent.java \
-java/awt/event/KeyListener.java \
+java/awt/event/KeyListener.java        \
+java/awt/event/MouseAdapter.java \
+java/awt/event/MouseEvent.java \
+java/awt/event/MouseListener.java \
+java/awt/event/MouseMotionAdapter.java \
+java/awt/event/MouseMotionListener.java        \
+java/awt/event/PaintEvent.java \
 java/awt/event/TextEvent.java \
 java/awt/event/TextListener.java \
 java/awt/event/WindowAdapter.java \
-java/awt/event/WindowEvent.java \
+java/awt/event/WindowEvent.java        \
 java/awt/event/WindowListener.java \
-java/awt/geom/Point2D.java \
 java/awt/geom/Dimension2D.java \
+java/awt/geom/Point2D.java \
 java/awt/peer/ComponentPeer.java \
 java/awt/peer/ContainerPeer.java \
 java/awt/peer/FramePeer.java \
 java/awt/peer/WindowPeer.java
 
+@AWT_TRUE@cond_awt_java_source_files = \
+@AWT_TRUE@$(awt_java_source_files)
+@AWT_FALSE@cond_awt_java_source_files = \
 
-# $(awt_java_source_files)
+built_java_source_files = java/lang/ConcreteProcess.java
 
 ordinary_java_source_files = $(convert_source_files) \
+gnu/gcj/io/DefaultMimeTypes.java \
+gnu/gcj/io/MimeTypes.java \
+gnu/gcj/jni/NativeThread.java \
+gnu/gcj/runtime/VMClassLoader.java \
+gnu/gcj/runtime/FirstThread.java \
 gnu/gcj/text/BaseBreakIterator.java \
 gnu/gcj/text/CharacterBreakIterator.java \
 gnu/gcj/text/LineBreakIterator.java \
@@ -280,11 +387,15 @@ gnu/gcj/text/LocaleData_en.java   \
 gnu/gcj/text/LocaleData_en_US.java \
 gnu/gcj/text/SentenceBreakIterator.java        \
 gnu/gcj/text/WordBreakIterator.java \
+gnu/gcj/math/MPN.java \
 gnu/gcj/protocol/file/Connection.java \
 gnu/gcj/protocol/file/Handler.java \
 gnu/gcj/protocol/http/Connection.java \
 gnu/gcj/protocol/http/Handler.java \
+gnu/gcj/protocol/jar/Handler.java \
+gnu/gcj/protocol/jar/Connection.java \
 gnu/gcj/RawData.java \
+gnu/gcj/util/EnumerationChain.java \
 java/io/BufferedInputStream.java \
 java/io/BufferedOutputStream.java \
 java/io/BufferedReader.java \
@@ -317,6 +428,8 @@ java/io/InputStreamReader.java \
 java/io/InterruptedIOException.java \
 java/io/LineNumberInputStream.java \
 java/io/LineNumberReader.java \
+java/io/ObjectStreamException.java \
+java/io/OptionalDataException.java \
 java/io/OutputStream.java \
 java/io/OutputStreamWriter.java        \
 java/io/PipedInputStream.java \
@@ -331,6 +444,7 @@ java/io/RandomAccessFile.java \
 java/io/Reader.java \
 java/io/SequenceInputStream.java \
 java/io/Serializable.java \
+java/io/StreamCorruptedException.java \
 java/io/StreamTokenizer.java \
 java/io/StringBufferInputStream.java \
 java/io/StringReader.java \
@@ -359,7 +473,6 @@ java/lang/Double.java \
 java/lang/Error.java \
 java/lang/Exception.java \
 java/lang/ExceptionInInitializerError.java \
-java/lang/FirstThread.java \
 java/lang/Float.java \
 java/lang/IllegalAccessError.java \
 java/lang/IllegalAccessException.java \
@@ -417,15 +530,23 @@ java/lang/reflect/InvocationTargetException.java \
 java/lang/reflect/Member.java \
 java/lang/reflect/Method.java \
 java/lang/reflect/Modifier.java        \
+java/math/BigDecimal.java \
+java/math/BigInteger.java \
 java/net/BindException.java \
 java/net/ConnectException.java \
 java/net/ContentHandler.java \
 java/net/ContentHandlerFactory.java \
+java/net/DatagramPacket.java \
+java/net/DatagramSocket.java \
+java/net/DatagramSocketImpl.java \
 java/net/FileNameMap.java \
 java/net/HttpURLConnection.java \
 java/net/InetAddress.java \
+java/net/JarURLConnection.java \
 java/net/MalformedURLException.java \
+java/net/MulticastSocket.java \
 java/net/NoRouteToHostException.java \
+java/net/PlainDatagramSocketImpl.java \
 java/net/PlainSocketImpl.java \
 java/net/ProtocolException.java        \
 java/net/ServerSocket.java \
@@ -433,7 +554,9 @@ java/net/Socket.java \
 java/net/SocketException.java \
 java/net/SocketImpl.java \
 java/net/SocketImplFactory.java        \
+java/net/SocketOptions.java \
 java/net/URL.java \
+java/net/URLClassLoader.java \
 java/net/URLConnection.java \
 java/net/URLDecoder.java \
 java/net/URLEncoder.java \
@@ -441,8 +564,59 @@ java/net/URLStreamHandler.java \
 java/net/URLStreamHandlerFactory.java \
 java/net/UnknownHostException.java \
 java/net/UnknownServiceException.java \
+java/security/AlgorithmParameterGeneratorSpi.java \
+java/security/DigestException.java \
+java/security/GeneralSecurityException.java \
+java/security/InvalidAlgorithmParameterException.java \
+java/security/InvalidKeyException.java \
+java/security/InvalidParameterException.java \
+java/security/Key.java \
+java/security/KeyException.java \
+java/security/KeyPair.java \
+java/security/KeyPairGenerator.java \
+java/security/KeyPairGeneratorSpi.java \
 java/security/MessageDigest.java \
 java/security/NoSuchAlgorithmException.java \
+java/security/NoSuchProviderException.java \
+java/security/PrivateKey.java \
+java/security/Provider.java \
+java/security/PublicKey.java \
+java/security/SecureClassLoader.java \
+java/security/SecureRandom.java \
+java/security/Security.java \
+java/security/Signature.java \
+java/security/SignatureException.java \
+java/security/interfaces/DSAKey.java \
+java/security/interfaces/DSAParams.java \
+java/security/interfaces/DSAPrivateKey.java \
+java/security/interfaces/DSAPublicKey.java \
+java/security/interfaces/RSAPrivateCrtKey.java \
+java/security/interfaces/RSAPrivateKey.java \
+java/security/interfaces/RSAPublicKey.java \
+java/security/spec/AlgorithmParameterSpec.java \
+java/security/spec/InvalidKeySpecException.java \
+java/security/spec/InvalidParameterSpecException.java \
+java/security/spec/KeySpec.java \
+java/security/spec/RSAPrivateCrtKeySpec.java \
+java/security/spec/RSAPrivateKeySpec.java \
+java/security/spec/RSAPublicKeySpec.java \
+java/sql/CallableStatement.java \
+java/sql/Connection.java \
+java/sql/DataTruncation.java \
+java/sql/DatabaseMetaData.java \
+java/sql/Date.java \
+java/sql/Driver.java \
+java/sql/DriverManager.java \
+java/sql/DriverPropertyInfo.java \
+java/sql/PreparedStatement.java \
+java/sql/ResultSet.java \
+java/sql/ResultSetMetaData.java \
+java/sql/SQLException.java \
+java/sql/SQLWarning.java \
+java/sql/Statement.java \
+java/sql/Time.java \
+java/sql/Timestamp.java \
+java/sql/Types.java \
 java/text/BreakIterator.java \
 java/text/CharacterIterator.java \
 java/text/ChoiceFormat.java \
@@ -464,6 +638,8 @@ java/text/SimpleDateFormat.java     \
 java/text/StringCharacterIterator.java \
 java/util/BitSet.java \
 java/util/Calendar.java        \
+java/util/Collection.java \
+java/util/Comparator.java \
 java/util/ConcurrentModificationException.java \
 java/util/Date.java \
 java/util/Dictionary.java \
@@ -473,6 +649,9 @@ java/util/EventListener.java \
 java/util/EventObject.java \
 java/util/GregorianCalendar.java \
 java/util/Hashtable.java \
+java/util/Iterator.java \
+java/util/List.java \
+java/util/ListIterator.java \
 java/util/ListResourceBundle.java \
 java/util/Locale.java \
 java/util/MissingResourceException.java        \
@@ -480,6 +659,7 @@ java/util/NoSuchElementException.java \
 java/util/Observable.java \
 java/util/Observer.java        \
 java/util/Properties.java \
+java/util/PropertyResourceBundle.java \
 java/util/Random.java \
 java/util/ResourceBundle.java \
 java/util/SimpleTimeZone.java \
@@ -488,11 +668,20 @@ java/util/StringTokenizer.java \
 java/util/TimeZone.java        \
 java/util/TooManyListenersException.java \
 java/util/Vector.java \
+java/util/jar/JarFile.java \
+java/util/jar/JarInputStream.java \
+java/util/jar/JarEntry.java \
 java/util/zip/Adler32.java \
 java/util/zip/CRC32.java \
+java/util/zip/CheckedInputStream.java \
+java/util/zip/CheckedOutputStream.java \
 java/util/zip/Checksum.java \
+java/util/zip/DataFormatException.java \
 java/util/zip/Deflater.java \
 java/util/zip/DeflaterOutputStream.java        \
+java/util/zip/GZIPInputStream.java \
+java/util/zip/GZIPOutputStream.java \
+java/util/zip/Inflater.java \
 java/util/zip/InflaterInputStream.java \
 java/util/zip/ZipConstants.java        \
 java/util/zip/ZipEntry.java \
@@ -526,16 +715,20 @@ nat_source_files = \
 gnu/gcj/convert/JIS0208_to_Unicode.cc \
 gnu/gcj/convert/JIS0212_to_Unicode.cc \
 gnu/gcj/convert/Unicode_to_JIS.cc \
+gnu/gcj/convert/natIconv.cc \
 gnu/gcj/convert/natInput_EUCJIS.cc \
 gnu/gcj/convert/natInput_SJIS.cc \
 gnu/gcj/convert/natOutput_EUCJIS.cc \
 gnu/gcj/convert/natOutput_SJIS.cc \
+gnu/gcj/jni/natNativeThread.cc \
+gnu/gcj/runtime/natFirstThread.cc \
 java/io/natFile.cc \
 java/io/natFileDescriptor.cc \
 java/lang/natCharacter.cc \
 java/lang/natClass.cc \
+java/lang/natClassLoader.cc \
+java/lang/natConcreteProcess.cc \
 java/lang/natDouble.cc \
-java/lang/natFirstThread.cc \
 java/lang/natFloat.cc \
 java/lang/natMath.cc \
 java/lang/natObject.cc \
@@ -543,14 +736,18 @@ java/lang/natRuntime.cc   \
 java/lang/natString.cc \
 java/lang/natSystem.cc \
 java/lang/natThread.cc \
+java/lang/natThrowable.cc \
 java/lang/reflect/natArray.cc \
+java/lang/reflect/natConstructor.cc \
 java/lang/reflect/natField.cc \
 java/lang/reflect/natMethod.cc \
 java/net/natInetAddress.cc \
+java/net/natPlainDatagramSocketImpl.cc \
 java/net/natPlainSocketImpl.cc \
 java/text/natCollator.cc \
-java/util/natDate.cc \
-java/util/natGregorianCalendar.cc
+java/util/natGregorianCalendar.cc \
+java/util/zip/natDeflater.cc \
+java/util/zip/natInflater.cc
 
 
 # Work around what appears to be a GNU make bug handling MAKEFLAGS
@@ -608,21 +805,28 @@ cygnus_hack =
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
 CONFIG_HEADER = ./include/config.h
-CONFIG_CLEAN_FILES = 
-LTLIBRARIES =  $(toolexeclib_LTLIBRARIES)
+CONFIG_CLEAN_FILES =  libgcj.spec libgcj-test.spec
+LIBRARIES =  $(toolexeclib_LIBRARIES)
 
 
 DEFS = @DEFS@ -I. -I$(srcdir) -I./include
 CPPFLAGS = @CPPFLAGS@
 LDFLAGS = @LDFLAGS@
 LIBS = @LIBS@
-libgcj_la_OBJECTS =  prims.lo jni.lo exception.lo
-@NATIVE_TRUE@bin_PROGRAMS =  jv-convert$(EXEEXT)
+libgcjdata_a_LIBADD = 
+@NEEDS_DATA_START_TRUE@libgcjdata_a_OBJECTS =  libgcjdata.o
+LTLIBRARIES =  $(toolexeclib_LTLIBRARIES)
+
+libgcj_la_OBJECTS =  prims.lo jni.lo exception.lo resolve.lo \
+defineclass.lo interpret.lo name-finder.lo
+libgcjawt_la_OBJECTS = 
+@NATIVE_TRUE@bin_PROGRAMS =  jv-convert$(EXEEXT) gij$(EXEEXT)
 @NATIVE_TRUE@@MAINTAINER_MODE_TRUE@noinst_PROGRAMS =  \
 @NATIVE_TRUE@@MAINTAINER_MODE_TRUE@gen-from-JIS$(EXEEXT)
 PROGRAMS =  $(bin_PROGRAMS) $(noinst_PROGRAMS)
 
 jv_convert_OBJECTS = 
+gij_OBJECTS =  gij.o
 gen_from_JIS_OBJECTS = 
 gen_from_JIS_LDFLAGS = 
 CXXFLAGS = @CXXFLAGS@
@@ -635,35 +839,43 @@ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CF
 LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 CCLD = $(CC)
 LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
-DATA =  $(data_DATA)
+DATA =  $(data_DATA) $(toolexeclib_DATA)
 
-DIST_COMMON =  COPYING.LIB ChangeLog Makefile.am Makefile.in acconfig.h \
-acinclude.m4 aclocal.m4 configure configure.in include/config.h.in \
-include/stamp-h.in
+DIST_COMMON =  README COPYING ChangeLog Makefile.am Makefile.in NEWS \
+THANKS acinclude.m4 aclocal.m4 configure configure.in \
+libgcj-test.spec.in libgcj.spec.in
 
 
 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
 
 TAR = tar
 GZIP_ENV = --best
-DIST_SUBDIRS =  testsuite
+DIST_SUBDIRS =  @DIRLTDL@ testsuite gcj include @DIRLTDL@ gcj include
 DEP_FILES =  .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \
 .deps/$(srcdir)/$(CONVERT_DIR)/make-trie.P .deps/boehm.P \
-.deps/exception.P .deps/gnu/gcj/RawData.P \
-.deps/gnu/gcj/convert/BytesToUnicode.P .deps/gnu/gcj/convert/Convert.P \
-.deps/gnu/gcj/convert/Input_8859_1.P \
+.deps/defineclass.P .deps/exception.P .deps/gij.P \
+.deps/gnu/gcj/RawData.P .deps/gnu/gcj/convert/BytesToUnicode.P \
+.deps/gnu/gcj/convert/Convert.P .deps/gnu/gcj/convert/Input_8859_1.P \
 .deps/gnu/gcj/convert/Input_EUCJIS.P \
 .deps/gnu/gcj/convert/Input_JavaSrc.P \
 .deps/gnu/gcj/convert/Input_SJIS.P .deps/gnu/gcj/convert/Input_UTF8.P \
+.deps/gnu/gcj/convert/Input_iconv.P \
 .deps/gnu/gcj/convert/Output_8859_1.P \
 .deps/gnu/gcj/convert/Output_EUCJIS.P \
 .deps/gnu/gcj/convert/Output_JavaSrc.P \
 .deps/gnu/gcj/convert/Output_SJIS.P .deps/gnu/gcj/convert/Output_UTF8.P \
+.deps/gnu/gcj/convert/Output_iconv.P \
 .deps/gnu/gcj/convert/UnicodeToBytes.P \
+.deps/gnu/gcj/io/DefaultMimeTypes.P .deps/gnu/gcj/io/MimeTypes.P \
+.deps/gnu/gcj/jni/NativeThread.P .deps/gnu/gcj/math/MPN.P \
 .deps/gnu/gcj/protocol/file/Connection.P \
 .deps/gnu/gcj/protocol/file/Handler.P \
 .deps/gnu/gcj/protocol/http/Connection.P \
 .deps/gnu/gcj/protocol/http/Handler.P \
+.deps/gnu/gcj/protocol/jar/Connection.P \
+.deps/gnu/gcj/protocol/jar/Handler.P \
+.deps/gnu/gcj/runtime/FirstThread.P \
+.deps/gnu/gcj/runtime/VMClassLoader.P \
 .deps/gnu/gcj/text/BaseBreakIterator.P \
 .deps/gnu/gcj/text/CharacterBreakIterator.P \
 .deps/gnu/gcj/text/LineBreakIterator.P \
@@ -671,7 +883,53 @@ DEP_FILES =  .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \
 .deps/gnu/gcj/text/LocaleData_en_US.P \
 .deps/gnu/gcj/text/SentenceBreakIterator.P \
 .deps/gnu/gcj/text/WordBreakIterator.P \
-.deps/java/io/BufferedInputStream.P \
+.deps/gnu/gcj/util/EnumerationChain.P .deps/interpret.P \
+.deps/java/awt/AWTError.P .deps/java/awt/AWTEvent.P \
+.deps/java/awt/AWTException.P .deps/java/awt/ActiveEvent.P \
+.deps/java/awt/Adjustable.P .deps/java/awt/BorderLayout.P \
+.deps/java/awt/Color.P .deps/java/awt/Component.P \
+.deps/java/awt/Container.P .deps/java/awt/Dimension.P \
+.deps/java/awt/Event.P .deps/java/awt/Font.P .deps/java/awt/Frame.P \
+.deps/java/awt/Graphics.P \
+.deps/java/awt/IllegalComponentStateException.P .deps/java/awt/Image.P \
+.deps/java/awt/ItemSelectable.P .deps/java/awt/LayoutManager.P \
+.deps/java/awt/LayoutManager2.P .deps/java/awt/Menu.P \
+.deps/java/awt/MenuBar.P .deps/java/awt/MenuComponent.P \
+.deps/java/awt/MenuContainer.P .deps/java/awt/MenuItem.P \
+.deps/java/awt/Paint.P .deps/java/awt/PaintContext.P \
+.deps/java/awt/Point.P .deps/java/awt/Rectangle.P \
+.deps/java/awt/Shape.P .deps/java/awt/TextArea.P \
+.deps/java/awt/TextComponent.P .deps/java/awt/Toolkit.P \
+.deps/java/awt/Transparency.P .deps/java/awt/Window.P \
+.deps/java/awt/event/AWTEventListener.P \
+.deps/java/awt/event/ActionEvent.P \
+.deps/java/awt/event/ActionListener.P \
+.deps/java/awt/event/AdjustmentEvent.P \
+.deps/java/awt/event/AdjustmentListener.P \
+.deps/java/awt/event/ComponentAdapter.P \
+.deps/java/awt/event/ComponentEvent.P \
+.deps/java/awt/event/ComponentListener.P \
+.deps/java/awt/event/ContainerAdapter.P \
+.deps/java/awt/event/ContainerEvent.P \
+.deps/java/awt/event/ContainerListener.P \
+.deps/java/awt/event/FocusAdapter.P .deps/java/awt/event/FocusEvent.P \
+.deps/java/awt/event/FocusListener.P .deps/java/awt/event/InputEvent.P \
+.deps/java/awt/event/InputMethodEvent.P \
+.deps/java/awt/event/InputMethodListener.P \
+.deps/java/awt/event/InvocationEvent.P .deps/java/awt/event/ItemEvent.P \
+.deps/java/awt/event/ItemListener.P .deps/java/awt/event/KeyAdapter.P \
+.deps/java/awt/event/KeyEvent.P .deps/java/awt/event/KeyListener.P \
+.deps/java/awt/event/MouseAdapter.P .deps/java/awt/event/MouseEvent.P \
+.deps/java/awt/event/MouseListener.P \
+.deps/java/awt/event/MouseMotionAdapter.P \
+.deps/java/awt/event/MouseMotionListener.P \
+.deps/java/awt/event/PaintEvent.P .deps/java/awt/event/TextEvent.P \
+.deps/java/awt/event/TextListener.P \
+.deps/java/awt/event/WindowAdapter.P .deps/java/awt/event/WindowEvent.P \
+.deps/java/awt/event/WindowListener.P .deps/java/awt/geom/Dimension2D.P \
+.deps/java/awt/geom/Point2D.P .deps/java/awt/peer/ComponentPeer.P \
+.deps/java/awt/peer/ContainerPeer.P .deps/java/awt/peer/FramePeer.P \
+.deps/java/awt/peer/WindowPeer.P .deps/java/io/BufferedInputStream.P \
 .deps/java/io/BufferedOutputStream.P .deps/java/io/BufferedReader.P \
 .deps/java/io/BufferedWriter.P .deps/java/io/ByteArrayInputStream.P \
 .deps/java/io/ByteArrayOutputStream.P .deps/java/io/CharArrayReader.P \
@@ -688,13 +946,15 @@ DEP_FILES =  .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \
 .deps/java/io/InputStream.P .deps/java/io/InputStreamReader.P \
 .deps/java/io/InterruptedIOException.P \
 .deps/java/io/LineNumberInputStream.P .deps/java/io/LineNumberReader.P \
-.deps/java/io/OutputStream.P .deps/java/io/OutputStreamWriter.P \
-.deps/java/io/PipedInputStream.P .deps/java/io/PipedOutputStream.P \
-.deps/java/io/PipedReader.P .deps/java/io/PipedWriter.P \
-.deps/java/io/PrintStream.P .deps/java/io/PrintWriter.P \
-.deps/java/io/PushbackInputStream.P .deps/java/io/PushbackReader.P \
-.deps/java/io/RandomAccessFile.P .deps/java/io/Reader.P \
-.deps/java/io/SequenceInputStream.P .deps/java/io/Serializable.P \
+.deps/java/io/ObjectStreamException.P \
+.deps/java/io/OptionalDataException.P .deps/java/io/OutputStream.P \
+.deps/java/io/OutputStreamWriter.P .deps/java/io/PipedInputStream.P \
+.deps/java/io/PipedOutputStream.P .deps/java/io/PipedReader.P \
+.deps/java/io/PipedWriter.P .deps/java/io/PrintStream.P \
+.deps/java/io/PrintWriter.P .deps/java/io/PushbackInputStream.P \
+.deps/java/io/PushbackReader.P .deps/java/io/RandomAccessFile.P \
+.deps/java/io/Reader.P .deps/java/io/SequenceInputStream.P \
+.deps/java/io/Serializable.P .deps/java/io/StreamCorruptedException.P \
 .deps/java/io/StreamTokenizer.P .deps/java/io/StringBufferInputStream.P \
 .deps/java/io/StringReader.P .deps/java/io/StringWriter.P \
 .deps/java/io/SyncFailedException.P \
@@ -711,10 +971,10 @@ DEP_FILES =  .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \
 .deps/java/lang/ClassNotFoundException.P \
 .deps/java/lang/CloneNotSupportedException.P \
 .deps/java/lang/Cloneable.P .deps/java/lang/Comparable.P \
-.deps/java/lang/Compiler.P .deps/java/lang/Double.P \
-.deps/java/lang/Error.P .deps/java/lang/Exception.P \
-.deps/java/lang/ExceptionInInitializerError.P \
-.deps/java/lang/FirstThread.P .deps/java/lang/Float.P \
+.deps/java/lang/Compiler.P .deps/java/lang/ConcreteProcess.P \
+.deps/java/lang/Double.P .deps/java/lang/Error.P \
+.deps/java/lang/Exception.P \
+.deps/java/lang/ExceptionInInitializerError.P .deps/java/lang/Float.P \
 .deps/java/lang/IllegalAccessError.P \
 .deps/java/lang/IllegalAccessException.P \
 .deps/java/lang/IllegalArgumentException.P \
@@ -772,22 +1032,65 @@ DEP_FILES =  .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \
 .deps/java/lang/w_exp.P .deps/java/lang/w_fmod.P \
 .deps/java/lang/w_log.P .deps/java/lang/w_pow.P \
 .deps/java/lang/w_remainder.P .deps/java/lang/w_sqrt.P \
+.deps/java/math/BigDecimal.P .deps/java/math/BigInteger.P \
 .deps/java/net/BindException.P .deps/java/net/ConnectException.P \
 .deps/java/net/ContentHandler.P .deps/java/net/ContentHandlerFactory.P \
-.deps/java/net/FileNameMap.P .deps/java/net/HttpURLConnection.P \
-.deps/java/net/InetAddress.P .deps/java/net/MalformedURLException.P \
+.deps/java/net/DatagramPacket.P .deps/java/net/DatagramSocket.P \
+.deps/java/net/DatagramSocketImpl.P .deps/java/net/FileNameMap.P \
+.deps/java/net/HttpURLConnection.P .deps/java/net/InetAddress.P \
+.deps/java/net/JarURLConnection.P \
+.deps/java/net/MalformedURLException.P .deps/java/net/MulticastSocket.P \
 .deps/java/net/NoRouteToHostException.P \
+.deps/java/net/PlainDatagramSocketImpl.P \
 .deps/java/net/PlainSocketImpl.P .deps/java/net/ProtocolException.P \
 .deps/java/net/ServerSocket.P .deps/java/net/Socket.P \
 .deps/java/net/SocketException.P .deps/java/net/SocketImpl.P \
-.deps/java/net/SocketImplFactory.P .deps/java/net/URL.P \
+.deps/java/net/SocketImplFactory.P .deps/java/net/SocketOptions.P \
+.deps/java/net/URL.P .deps/java/net/URLClassLoader.P \
 .deps/java/net/URLConnection.P .deps/java/net/URLDecoder.P \
 .deps/java/net/URLEncoder.P .deps/java/net/URLStreamHandler.P \
 .deps/java/net/URLStreamHandlerFactory.P \
 .deps/java/net/UnknownHostException.P \
 .deps/java/net/UnknownServiceException.P \
+.deps/java/security/AlgorithmParameterGeneratorSpi.P \
+.deps/java/security/DigestException.P \
+.deps/java/security/GeneralSecurityException.P \
+.deps/java/security/InvalidAlgorithmParameterException.P \
+.deps/java/security/InvalidKeyException.P \
+.deps/java/security/InvalidParameterException.P \
+.deps/java/security/Key.P .deps/java/security/KeyException.P \
+.deps/java/security/KeyPair.P .deps/java/security/KeyPairGenerator.P \
+.deps/java/security/KeyPairGeneratorSpi.P \
 .deps/java/security/MessageDigest.P \
 .deps/java/security/NoSuchAlgorithmException.P \
+.deps/java/security/NoSuchProviderException.P \
+.deps/java/security/PrivateKey.P .deps/java/security/Provider.P \
+.deps/java/security/PublicKey.P .deps/java/security/SecureClassLoader.P \
+.deps/java/security/SecureRandom.P .deps/java/security/Security.P \
+.deps/java/security/Signature.P \
+.deps/java/security/SignatureException.P \
+.deps/java/security/interfaces/DSAKey.P \
+.deps/java/security/interfaces/DSAParams.P \
+.deps/java/security/interfaces/DSAPrivateKey.P \
+.deps/java/security/interfaces/DSAPublicKey.P \
+.deps/java/security/interfaces/RSAPrivateCrtKey.P \
+.deps/java/security/interfaces/RSAPrivateKey.P \
+.deps/java/security/interfaces/RSAPublicKey.P \
+.deps/java/security/spec/AlgorithmParameterSpec.P \
+.deps/java/security/spec/InvalidKeySpecException.P \
+.deps/java/security/spec/InvalidParameterSpecException.P \
+.deps/java/security/spec/KeySpec.P \
+.deps/java/security/spec/RSAPrivateCrtKeySpec.P \
+.deps/java/security/spec/RSAPrivateKeySpec.P \
+.deps/java/security/spec/RSAPublicKeySpec.P \
+.deps/java/sql/CallableStatement.P .deps/java/sql/Connection.P \
+.deps/java/sql/DataTruncation.P .deps/java/sql/DatabaseMetaData.P \
+.deps/java/sql/Date.P .deps/java/sql/Driver.P \
+.deps/java/sql/DriverManager.P .deps/java/sql/DriverPropertyInfo.P \
+.deps/java/sql/PreparedStatement.P .deps/java/sql/ResultSet.P \
+.deps/java/sql/ResultSetMetaData.P .deps/java/sql/SQLException.P \
+.deps/java/sql/SQLWarning.P .deps/java/sql/Statement.P \
+.deps/java/sql/Time.P .deps/java/sql/Timestamp.P .deps/java/sql/Types.P \
 .deps/java/text/BreakIterator.P .deps/java/text/CharacterIterator.P \
 .deps/java/text/ChoiceFormat.P \
 .deps/java/text/CollationElementIterator.P \
@@ -799,31 +1102,42 @@ DEP_FILES =  .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \
 .deps/java/text/ParseException.P .deps/java/text/ParsePosition.P \
 .deps/java/text/RuleBasedCollator.P .deps/java/text/SimpleDateFormat.P \
 .deps/java/text/StringCharacterIterator.P .deps/java/util/BitSet.P \
-.deps/java/util/Calendar.P \
+.deps/java/util/Calendar.P .deps/java/util/Collection.P \
+.deps/java/util/Comparator.P \
 .deps/java/util/ConcurrentModificationException.P \
 .deps/java/util/Date.P .deps/java/util/Dictionary.P \
 .deps/java/util/EmptyStackException.P .deps/java/util/Enumeration.P \
 .deps/java/util/EventListener.P .deps/java/util/EventObject.P \
 .deps/java/util/GregorianCalendar.P .deps/java/util/Hashtable.P \
-.deps/java/util/ListResourceBundle.P .deps/java/util/Locale.P \
-.deps/java/util/MissingResourceException.P \
+.deps/java/util/Iterator.P .deps/java/util/List.P \
+.deps/java/util/ListIterator.P .deps/java/util/ListResourceBundle.P \
+.deps/java/util/Locale.P .deps/java/util/MissingResourceException.P \
 .deps/java/util/NoSuchElementException.P .deps/java/util/Observable.P \
 .deps/java/util/Observer.P .deps/java/util/Properties.P \
-.deps/java/util/Random.P .deps/java/util/ResourceBundle.P \
-.deps/java/util/SimpleTimeZone.P .deps/java/util/Stack.P \
-.deps/java/util/StringTokenizer.P .deps/java/util/TimeZone.P \
-.deps/java/util/TooManyListenersException.P .deps/java/util/Vector.P \
+.deps/java/util/PropertyResourceBundle.P .deps/java/util/Random.P \
+.deps/java/util/ResourceBundle.P .deps/java/util/SimpleTimeZone.P \
+.deps/java/util/Stack.P .deps/java/util/StringTokenizer.P \
+.deps/java/util/TimeZone.P .deps/java/util/TooManyListenersException.P \
+.deps/java/util/Vector.P .deps/java/util/jar/JarEntry.P \
+.deps/java/util/jar/JarFile.P .deps/java/util/jar/JarInputStream.P \
 .deps/java/util/zip/Adler32.P .deps/java/util/zip/CRC32.P \
-.deps/java/util/zip/Checksum.P .deps/java/util/zip/Deflater.P \
+.deps/java/util/zip/CheckedInputStream.P \
+.deps/java/util/zip/CheckedOutputStream.P \
+.deps/java/util/zip/Checksum.P \
+.deps/java/util/zip/DataFormatException.P \
+.deps/java/util/zip/Deflater.P \
 .deps/java/util/zip/DeflaterOutputStream.P \
+.deps/java/util/zip/GZIPInputStream.P \
+.deps/java/util/zip/GZIPOutputStream.P .deps/java/util/zip/Inflater.P \
 .deps/java/util/zip/InflaterInputStream.P \
 .deps/java/util/zip/ZipConstants.P .deps/java/util/zip/ZipEntry.P \
 .deps/java/util/zip/ZipException.P .deps/java/util/zip/ZipFile.P \
 .deps/java/util/zip/ZipInputStream.P \
-.deps/java/util/zip/ZipOutputStream.P .deps/jni.P .deps/no-threads.P \
-.deps/nogc.P .deps/posix-threads.P .deps/prims.P
-SOURCES = $(libgcj_la_SOURCES) $(EXTRA_libgcj_la_SOURCES) $(jv_convert_SOURCES) $(EXTRA_jv_convert_SOURCES) $(gen_from_JIS_SOURCES) $(EXTRA_gen_from_JIS_SOURCES)
-OBJECTS = $(libgcj_la_OBJECTS) $(jv_convert_OBJECTS) $(gen_from_JIS_OBJECTS)
+.deps/java/util/zip/ZipOutputStream.P .deps/jni.P .deps/libgcjdata.P \
+.deps/name-finder.P .deps/no-threads.P .deps/nogc.P \
+.deps/posix-threads.P .deps/prims.P .deps/resolve.P
+SOURCES = $(libgcjdata_a_SOURCES) $(libgcj_la_SOURCES) $(EXTRA_libgcj_la_SOURCES) $(libgcjawt_la_SOURCES) $(EXTRA_libgcjawt_la_SOURCES) $(jv_convert_SOURCES) $(EXTRA_jv_convert_SOURCES) $(gij_SOURCES) $(gen_from_JIS_SOURCES) $(EXTRA_gen_from_JIS_SOURCES)
+OBJECTS = $(libgcjdata_a_OBJECTS) $(libgcj_la_OBJECTS) $(libgcjawt_la_OBJECTS) $(jv_convert_OBJECTS) $(gij_OBJECTS) $(gen_from_JIS_OBJECTS)
 
 all: all-redirect
 .SUFFIXES:
@@ -842,58 +1156,41 @@ config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
        $(SHELL) ./config.status --recheck
 $(srcdir)/configure: @MAINTAINER_MODE_TRUE@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
        cd $(srcdir) && $(AUTOCONF)
+libgcj.spec: $(top_builddir)/config.status libgcj.spec.in
+       cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
+libgcj-test.spec: $(top_builddir)/config.status libgcj-test.spec.in
+       cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
 
-include/config.h: include/stamp-h
-       @if test ! -f $@; then \
-               rm -f include/stamp-h; \
-               $(MAKE) include/stamp-h; \
-       else :; fi
-include/stamp-h: $(srcdir)/include/config.h.in $(top_builddir)/config.status
-       cd $(top_builddir) \
-         && CONFIG_FILES= CONFIG_HEADERS=include/config.h \
-            $(SHELL) ./config.status
-       @echo timestamp > include/stamp-h 2> /dev/null
-$(srcdir)/include/config.h.in: @MAINTAINER_MODE_TRUE@$(srcdir)/include/stamp-h.in
-       @if test ! -f $@; then \
-               rm -f $(srcdir)/include/stamp-h.in; \
-               $(MAKE) $(srcdir)/include/stamp-h.in; \
-       else :; fi
-$(srcdir)/include/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h
-       cd $(top_srcdir) && $(AUTOHEADER)
-       @echo timestamp > $(srcdir)/include/stamp-h.in 2> /dev/null
-
-mostlyclean-hdr:
-
-clean-hdr:
+mostlyclean-toolexeclibLIBRARIES:
 
-distclean-hdr:
-       -rm -f include/config.h
+clean-toolexeclibLIBRARIES:
+       -test -z "$(toolexeclib_LIBRARIES)" || rm -f $(toolexeclib_LIBRARIES)
 
-maintainer-clean-hdr:
+distclean-toolexeclibLIBRARIES:
 
-mostlyclean-toolexeclibLTLIBRARIES:
-
-clean-toolexeclibLTLIBRARIES:
-       -test -z "$(toolexeclib_LTLIBRARIES)" || rm -f $(toolexeclib_LTLIBRARIES)
-
-distclean-toolexeclibLTLIBRARIES:
-
-maintainer-clean-toolexeclibLTLIBRARIES:
+maintainer-clean-toolexeclibLIBRARIES:
 
-install-toolexeclibLTLIBRARIES: $(toolexeclib_LTLIBRARIES)
+install-toolexeclibLIBRARIES: $(toolexeclib_LIBRARIES)
        @$(NORMAL_INSTALL)
        $(mkinstalldirs) $(DESTDIR)$(toolexeclibdir)
-       @list='$(toolexeclib_LTLIBRARIES)'; for p in $$list; do \
+       @list='$(toolexeclib_LIBRARIES)'; for p in $$list; do \
          if test -f $$p; then \
-           echo "$(LIBTOOL)  --mode=install $(INSTALL) $$p $(DESTDIR)$(toolexeclibdir)/$$p"; \
-           $(LIBTOOL)  --mode=install $(INSTALL) $$p $(DESTDIR)$(toolexeclibdir)/$$p; \
+           echo " $(INSTALL_DATA) $$p $(DESTDIR)$(toolexeclibdir)/$$p"; \
+           $(INSTALL_DATA) $$p $(DESTDIR)$(toolexeclibdir)/$$p; \
+         else :; fi; \
+       done
+       @$(POST_INSTALL)
+       @list='$(toolexeclib_LIBRARIES)'; for p in $$list; do \
+         if test -f $$p; then \
+           echo " $(RANLIB) $(DESTDIR)$(toolexeclibdir)/$$p"; \
+           $(RANLIB) $(DESTDIR)$(toolexeclibdir)/$$p; \
          else :; fi; \
        done
 
-uninstall-toolexeclibLTLIBRARIES:
+uninstall-toolexeclibLIBRARIES:
        @$(NORMAL_UNINSTALL)
-       list='$(toolexeclib_LTLIBRARIES)'; for p in $$list; do \
-         $(LIBTOOL)  --mode=uninstall rm -f $(DESTDIR)$(toolexeclibdir)/$$p; \
+       list='$(toolexeclib_LIBRARIES)'; for p in $$list; do \
+         rm -f $(DESTDIR)$(toolexeclibdir)/$$p; \
        done
 
 .s.o:
@@ -928,9 +1225,42 @@ distclean-libtool:
 
 maintainer-clean-libtool:
 
+libgcjdata.a: $(libgcjdata_a_OBJECTS) $(libgcjdata_a_DEPENDENCIES)
+       -rm -f libgcjdata.a
+       $(AR) cru libgcjdata.a $(libgcjdata_a_OBJECTS) $(libgcjdata_a_LIBADD)
+       $(RANLIB) libgcjdata.a
+
+mostlyclean-toolexeclibLTLIBRARIES:
+
+clean-toolexeclibLTLIBRARIES:
+       -test -z "$(toolexeclib_LTLIBRARIES)" || rm -f $(toolexeclib_LTLIBRARIES)
+
+distclean-toolexeclibLTLIBRARIES:
+
+maintainer-clean-toolexeclibLTLIBRARIES:
+
+install-toolexeclibLTLIBRARIES: $(toolexeclib_LTLIBRARIES)
+       @$(NORMAL_INSTALL)
+       $(mkinstalldirs) $(DESTDIR)$(toolexeclibdir)
+       @list='$(toolexeclib_LTLIBRARIES)'; for p in $$list; do \
+         if test -f $$p; then \
+           echo "$(LIBTOOL)  --mode=install $(INSTALL) $$p $(DESTDIR)$(toolexeclibdir)/$$p"; \
+           $(LIBTOOL)  --mode=install $(INSTALL) $$p $(DESTDIR)$(toolexeclibdir)/$$p; \
+         else :; fi; \
+       done
+
+uninstall-toolexeclibLTLIBRARIES:
+       @$(NORMAL_UNINSTALL)
+       list='$(toolexeclib_LTLIBRARIES)'; for p in $$list; do \
+         $(LIBTOOL)  --mode=uninstall rm -f $(DESTDIR)$(toolexeclibdir)/$$p; \
+       done
+
 libgcj.la: $(libgcj_la_OBJECTS) $(libgcj_la_DEPENDENCIES)
        $(CXXLINK) -rpath $(toolexeclibdir) $(libgcj_la_LDFLAGS) $(libgcj_la_OBJECTS) $(libgcj_la_LIBADD) $(LIBS)
 
+libgcjawt.la: $(libgcjawt_la_OBJECTS) $(libgcjawt_la_DEPENDENCIES)
+       $(LINK) -rpath $(toolexeclibdir) $(libgcjawt_la_LDFLAGS) $(libgcjawt_la_OBJECTS) $(libgcjawt_la_LIBADD) $(LIBS)
+
 mostlyclean-binPROGRAMS:
 
 clean-binPROGRAMS:
@@ -969,6 +1299,10 @@ jv-convert$(EXEEXT): $(jv_convert_OBJECTS) $(jv_convert_DEPENDENCIES)
        @rm -f jv-convert$(EXEEXT)
        $(jv_convert_LINK) $(jv_convert_LDFLAGS) $(jv_convert_OBJECTS) $(jv_convert_LDADD) $(LIBS)
 
+gij$(EXEEXT): $(gij_OBJECTS) $(gij_DEPENDENCIES)
+       @rm -f gij$(EXEEXT)
+       $(gij_LINK) $(gij_LDFLAGS) $(gij_OBJECTS) $(gij_LDADD) $(LIBS)
+
 gen-from-JIS$(EXEEXT): $(gen_from_JIS_OBJECTS) $(gen_from_JIS_DEPENDENCIES)
        @rm -f gen-from-JIS$(EXEEXT)
        $(LINK) $(gen_from_JIS_LDFLAGS) $(gen_from_JIS_OBJECTS) $(gen_from_JIS_LDADD) $(LIBS)
@@ -996,6 +1330,25 @@ uninstall-dataDATA:
          rm -f $(DESTDIR)$(datadir)/$$p; \
        done
 
+install-toolexeclibDATA: $(toolexeclib_DATA)
+       @$(NORMAL_INSTALL)
+       $(mkinstalldirs) $(DESTDIR)$(toolexeclibdir)
+       @list='$(toolexeclib_DATA)'; for p in $$list; do \
+         if test -f $(srcdir)/$$p; then \
+           echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(toolexeclibdir)/$$p"; \
+           $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(toolexeclibdir)/$$p; \
+         else if test -f $$p; then \
+           echo " $(INSTALL_DATA) $$p $(DESTDIR)$(toolexeclibdir)/$$p"; \
+           $(INSTALL_DATA) $$p $(DESTDIR)$(toolexeclibdir)/$$p; \
+         fi; fi; \
+       done
+
+uninstall-toolexeclibDATA:
+       @$(NORMAL_UNINSTALL)
+       list='$(toolexeclib_DATA)'; for p in $$list; do \
+         rm -f $(DESTDIR)$(toolexeclibdir)/$$p; \
+       done
+
 # This directory's subdirectories are mostly independent; you can cd
 # into them and run `make' without going through this Makefile.
 # To change the values of `make' variables: instead of editing Makefiles,
@@ -1209,26 +1562,30 @@ installcheck-am:
 installcheck: installcheck-recursive
 install-info-am: 
 install-info: install-info-recursive
-install-exec-am: install-toolexeclibLTLIBRARIES install-binPROGRAMS
+install-exec-am: install-toolexeclibLIBRARIES \
+               install-toolexeclibLTLIBRARIES install-binPROGRAMS \
+               install-toolexeclibDATA
 install-exec: install-exec-recursive
 
-install-data-am: install-dataDATA
+install-data-am: install-dataDATA install-data-local
 install-data: install-data-recursive
 
 install-am: all-am
        @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 install: install-recursive
-uninstall-am: uninstall-toolexeclibLTLIBRARIES uninstall-binPROGRAMS \
-               uninstall-dataDATA
+uninstall-am: uninstall-toolexeclibLIBRARIES \
+               uninstall-toolexeclibLTLIBRARIES uninstall-binPROGRAMS \
+               uninstall-dataDATA uninstall-toolexeclibDATA
 uninstall: uninstall-recursive
-all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(DATA)
+all-am: Makefile $(LIBRARIES) $(LTLIBRARIES) $(PROGRAMS) $(DATA)
 all-redirect: all-recursive
 install-strip:
        $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
 installdirs: installdirs-recursive
 installdirs-am:
-       $(mkinstalldirs)  $(DESTDIR)$(toolexeclibdir) $(DESTDIR)$(bindir) \
-               $(DESTDIR)$(datadir)
+       $(mkinstalldirs)  $(DESTDIR)$(toolexeclibdir) \
+               $(DESTDIR)$(toolexeclibdir) $(DESTDIR)$(bindir) \
+               $(DESTDIR)$(datadir) $(DESTDIR)$(toolexeclibdir)
 
 
 mostlyclean-generic:
@@ -1242,22 +1599,22 @@ distclean-generic:
        -rm -f config.cache config.log stamp-h stamp-h[0-9]*
 
 maintainer-clean-generic:
-mostlyclean-am:  mostlyclean-hdr mostlyclean-toolexeclibLTLIBRARIES \
-               mostlyclean-compile mostlyclean-libtool \
+mostlyclean-am:  mostlyclean-toolexeclibLIBRARIES mostlyclean-compile \
+               mostlyclean-libtool mostlyclean-toolexeclibLTLIBRARIES \
                mostlyclean-binPROGRAMS mostlyclean-noinstPROGRAMS \
                mostlyclean-tags mostlyclean-depend mostlyclean-generic
 
 mostlyclean: mostlyclean-recursive
 
-clean-am:  clean-hdr clean-toolexeclibLTLIBRARIES clean-compile \
-               clean-libtool clean-binPROGRAMS clean-noinstPROGRAMS \
-               clean-tags clean-depend clean-generic mostlyclean-am \
-               clean-local
+clean-am:  clean-toolexeclibLIBRARIES clean-compile clean-libtool \
+               clean-toolexeclibLTLIBRARIES clean-binPROGRAMS \
+               clean-noinstPROGRAMS clean-tags clean-depend \
+               clean-generic mostlyclean-am clean-local
 
 clean: clean-recursive
 
-distclean-am:  distclean-hdr distclean-toolexeclibLTLIBRARIES \
-               distclean-compile distclean-libtool \
+distclean-am:  distclean-toolexeclibLIBRARIES distclean-compile \
+               distclean-libtool distclean-toolexeclibLTLIBRARIES \
                distclean-binPROGRAMS distclean-noinstPROGRAMS \
                distclean-tags distclean-depend distclean-generic \
                clean-am
@@ -1266,9 +1623,9 @@ distclean-am:  distclean-hdr distclean-toolexeclibLTLIBRARIES \
 distclean: distclean-recursive
        -rm -f config.status
 
-maintainer-clean-am:  maintainer-clean-hdr \
-               maintainer-clean-toolexeclibLTLIBRARIES \
+maintainer-clean-am:  maintainer-clean-toolexeclibLIBRARIES \
                maintainer-clean-compile maintainer-clean-libtool \
+               maintainer-clean-toolexeclibLTLIBRARIES \
                maintainer-clean-binPROGRAMS \
                maintainer-clean-noinstPROGRAMS maintainer-clean-tags \
                maintainer-clean-depend maintainer-clean-generic \
@@ -1279,17 +1636,20 @@ maintainer-clean-am:  maintainer-clean-hdr \
 maintainer-clean: maintainer-clean-recursive
        -rm -f config.status
 
-.PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \
+.PHONY: mostlyclean-toolexeclibLIBRARIES distclean-toolexeclibLIBRARIES \
+clean-toolexeclibLIBRARIES maintainer-clean-toolexeclibLIBRARIES \
+uninstall-toolexeclibLIBRARIES install-toolexeclibLIBRARIES \
+mostlyclean-compile distclean-compile clean-compile \
+maintainer-clean-compile mostlyclean-libtool distclean-libtool \
+clean-libtool maintainer-clean-libtool \
 mostlyclean-toolexeclibLTLIBRARIES distclean-toolexeclibLTLIBRARIES \
 clean-toolexeclibLTLIBRARIES maintainer-clean-toolexeclibLTLIBRARIES \
 uninstall-toolexeclibLTLIBRARIES install-toolexeclibLTLIBRARIES \
-mostlyclean-compile distclean-compile clean-compile \
-maintainer-clean-compile mostlyclean-libtool distclean-libtool \
-clean-libtool maintainer-clean-libtool mostlyclean-binPROGRAMS \
-distclean-binPROGRAMS clean-binPROGRAMS maintainer-clean-binPROGRAMS \
-uninstall-binPROGRAMS install-binPROGRAMS mostlyclean-noinstPROGRAMS \
-distclean-noinstPROGRAMS clean-noinstPROGRAMS \
-maintainer-clean-noinstPROGRAMS uninstall-dataDATA install-dataDATA \
+mostlyclean-binPROGRAMS distclean-binPROGRAMS clean-binPROGRAMS \
+maintainer-clean-binPROGRAMS uninstall-binPROGRAMS install-binPROGRAMS \
+mostlyclean-noinstPROGRAMS distclean-noinstPROGRAMS \
+clean-noinstPROGRAMS maintainer-clean-noinstPROGRAMS uninstall-dataDATA \
+install-dataDATA uninstall-toolexeclibDATA install-toolexeclibDATA \
 install-data-recursive uninstall-data-recursive install-exec-recursive \
 uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \
 all-recursive check-recursive installcheck-recursive info-recursive \
@@ -1299,15 +1659,23 @@ distclean-tags clean-tags maintainer-clean-tags distdir \
 mostlyclean-depend distclean-depend clean-depend \
 maintainer-clean-depend info-am info dvi-am dvi check check-am \
 installcheck-am installcheck install-info-am install-info \
-install-exec-am install-exec install-data-am install-data install-am \
-install uninstall-am uninstall all-redirect all-am all installdirs-am \
-installdirs mostlyclean-generic distclean-generic clean-generic \
-maintainer-clean-generic clean mostlyclean distclean maintainer-clean
+install-exec-am install-exec install-data-local install-data-am \
+install-data install-am install uninstall-am uninstall all-redirect \
+all-am all installdirs-am installdirs mostlyclean-generic \
+distclean-generic clean-generic maintainer-clean-generic clean \
+mostlyclean distclean maintainer-clean
 
 
 $(java_source_files:.java=.class): libgcj.zip
+$(awt_java_source_files:.java=.class): libgcj.zip
+
+$(built_java_source_files:.java=.class): $(built_java_source_files)
+       javac="$(JAVAC)"; \
+       $$javac $(JCFLAGS) -classpath $(here):`cd $(srcdir) && /bin/pwd` \
+         -d $(here) $?
 
-libgcj.zip: $(java_source_files)
+libgcj.zip: $(java_source_files) $(cond_awt_java_source_files)
+       $(MAKE) $(built_java_source_files:.java=.class)
        javac="$(JAVAC)"; cd $(srcdir); \
          $$javac $(JCFLAGS) -classpath $(here):`/bin/pwd` -d $(here) \
            $(subst $(srcdir)/,,$?)
@@ -1326,7 +1694,7 @@ clean-local:
 $(nat_files): %.lo: %.cc
        $(LTCXXCOMPILE) -c -o $@ $<
 
-$(nat_files) $(GCOBJS) $(THREADOBJS) $(libgcj_la_OBJECTS): \
+$(nat_files) $(GCOBJS) $(THREADOBJS) $(libgcj_la_OBJECTS) $(gij_OBJECTS): \
                include/config.h include/java-signal.h $(nat_headers)
 
 $(c_files): %.lo: %.c
@@ -1334,18 +1702,39 @@ $(c_files): %.lo: %.c
 
 $(c_files): java/lang/fdlibm.h java/lang/ieeefp.h java/lang/mprec.h
 
-$(javao_files): %.lo: %.java
+$(awto_files) $(javao_files): %.lo: %.java
        $(GCJCOMPILE) -o $@ $<
 
+$(awto_files) $(javao_files): libgcj.zip
+
 .class.h:
        $(GCJH) -classpath $(top_builddir) $(basename $<)
 
 $(nat_headers): libgcj.zip
-java/lang/FirstThread.h: java/lang/FirstThread.class libgcj.zip
-       $(GCJH) -classpath $(top_builddir) -friend '$(FTFRIEND);' \
+
+java/lang/ClassLoader.h: java/lang/ClassLoader.class libgcj.zip
+       $(GCJH) -classpath $(top_builddir) \
+               -friend 'jclass _Jv_FindClass (_Jv_Utf8Const *name, java::lang::ClassLoader *loader);' \
+               $(basename $<)
+
+gnu/gcj/runtime/FirstThread.h: gnu/gcj/runtime/FirstThread.class libgcj.zip
+       $(GCJH) -classpath $(top_builddir) \
+               -friend 'void JvRunMain (jclass, int, const char **);' \
+               -friend 'void _Jv_RunMain (const char*, int, const char **);' \
                $(basename $<)
-java/lang/ThreadGroup.h: java/lang/ThreadGroup.class libgcj.zip
-       $(GCJH) -classpath $(top_builddir) -friend '$(TGFRIEND);' \
+
+java/lang/Thread.h: java/lang/Thread.class libgcj.zip
+       $(GCJH) -classpath $(top_builddir) \
+               -prepend 'class _Jv_JNIEnv;' \
+               -prepend 'extern "Java" { namespace gnu { namespace gcj { namespace jni { class NativeThread; } } } };' \
+               -prepend '#define _JV_NOT_OWNER 1' \
+               -prepend '#define _JV_INTERRUPTED 2' \
+               -friend '_Jv_JNIEnv * _Jv_GetCurrentJNIEnv ();' \
+               -friend 'void _Jv_SetCurrentJNIEnv (_Jv_JNIEnv *env);' \
+               -friend 'class gnu::gcj::jni::NativeThread;' \
+               -friend 'int _Jv_CondWait (_Jv_ConditionVariable_t *cv, _Jv_Mutex_t *mu, jlong millis, jint nanos);' \
+               -friend 'int _Jv_CondNotify (_Jv_ConditionVariable_t *cv, _Jv_Mutex_t *mu);' \
+               -friend 'void _Jv_ThreadInterrupt (_Jv_Thread_t *data);' \
                $(basename $<)
 
 java/lang/String.h: java/lang/String.class libgcj.zip
@@ -1358,10 +1747,17 @@ java/lang/String.h: java/lang/String.class libgcj.zip
            -friend 'jstring _Jv_AllocString (jsize);' \
            $(basename $<)
 
+java/lang/reflect/Constructor.h: java/lang/reflect/Constructor.class libgcj.zip
+       $(GCJH) -classpath $(top_builddir) \
+           -friend 'jmethodID _Jv_FromReflectedConstructor (java::lang::reflect::Constructor *);' \
+           -friend 'java::lang::Class;' \
+           -friend 'jobject _Jv_JNI_ToReflectedMethod (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \
+           $(basename $<)
+
 java/lang/reflect/Field.h: java/lang/reflect/Field.class libgcj.zip
        $(GCJH) -classpath $(top_builddir) \
            -friend 'jfieldID _Jv_FromReflectedField (java::lang::reflect::Field *);' \
-           -friend 'jobject _Jv_JNI_ToReflectedField (_Jv_JNIEnv*, jclass, jfieldID);' \
+           -friend 'jobject _Jv_JNI_ToReflectedField (_Jv_JNIEnv*, jclass, jfieldID, jboolean);' \
            -friend 'java::lang::Class;' \
            $(basename $<)
 
@@ -1369,8 +1765,24 @@ java/lang/reflect/Method.h: java/lang/reflect/Method.class libgcj.zip
        $(GCJH) -classpath $(top_builddir) \
            -friend 'jmethodID _Jv_FromReflectedMethod (java::lang::reflect::Method *);' \
            -friend 'java::lang::Class;' \
+           -friend 'jobject _Jv_JNI_ToReflectedMethod (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \
+           $(basename $<)
+
+gnu/gcj/runtime/VMClassLoader.h: gnu/gcj/runtime/VMClassLoader.class libgcj.zip
+       $(GCJH) -classpath $(top_builddir) \
+           -friend 'java::lang::ClassLoader;' \
            $(basename $<)
 
+install-data-local:
+       $(PRE_INSTALL)
+       @for f in $(nat_headers) $(extra_headers); do \
+         d="`echo $$f | sed -e 's,/[^/]*$$,,'`"; \
+         $(mkinstalldirs) $(DESTDIR)$(includedir)/$$d; \
+         if test -f $(srcdir)/$$f; then p=$(srcdir)/$$f; else p=$$f; fi; \
+         echo " $(INSTALL_DATA) $$p $(DESTDIR)$(includedir)/$$f"; \
+         $(INSTALL_DATA) $$p $(DESTDIR)$(includedir)/$$f; \
+       done
+
 maintainer-check: libgcj.la
        $(NM) .libs/libgcj.a | grep ' T ' \
          | grep -v '4java' \