OSDN Git Service

improve open-coding of complex divide, use new method in g77
[pf3gnuchains/gcc-fork.git] / libjava / Makefile.in
index 6fb9cff..e45a5a9 100644 (file)
@@ -77,6 +77,7 @@ GCDEPS = @GCDEPS@
 GCINCS = @GCINCS@
 GCLIBS = @GCLIBS@
 GCOBJS = @GCOBJS@
+GCSPEC = @GCSPEC@
 LD = @LD@
 LIBGCJ_CFLAGS = @LIBGCJ_CFLAGS@
 LIBGCJ_CXXFLAGS = @LIBGCJ_CXXFLAGS@
@@ -88,11 +89,17 @@ MAKEINFO = @MAKEINFO@
 PACKAGE = @PACKAGE@
 PERL = @PERL@
 RANLIB = @RANLIB@
+SYSTEMSPEC = @SYSTEMSPEC@
 THREADDEPS = @THREADDEPS@
 THREADINCS = @THREADINCS@
 THREADLIBS = @THREADLIBS@
 THREADOBJS = @THREADOBJS@
+THREADSPEC = @THREADSPEC@
+USE_SYMBOL_UNDERSCORE = @USE_SYMBOL_UNDERSCORE@
 VERSION = @VERSION@
+ZDEPS = @ZDEPS@
+ZLIBS = @ZLIBS@
+ZLIBSPEC = @ZLIBSPEC@
 here = @here@
 libgcj_basedir = @libgcj_basedir@
 
@@ -105,6 +112,7 @@ toolexecdir = $(exec_prefix)/$(target_alias)
 toolexeclibdir = $(toolexecdir)/lib$(MULTISUBDIR)
 
 toolexeclib_LTLIBRARIES = libgcj.la
+toolexeclib_DATA = libgcj.spec
 data_DATA = libgcj.zip
 
 @NATIVE_TRUE@bin_PROGRAMS = \
@@ -148,11 +156,13 @@ INCLUDES = -Iinclude -I$(top_srcdir)/include $(GCINCS) $(THREADINCS) $(EH_COMMON
 
 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)
+
 
 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)
@@ -160,14 +170,18 @@ libgcj_la_DEPENDENCIES = libgcj.zip $(javao_files) $(nat_files) \
 libgcj_la_LIBADD = $(javao_files) $(nat_files) $(c_files) $(GCOBJS) \
        $(THREADOBJS)
 
-libgcj_la_LDFLAGS = -rpath $(toolexeclibdir) -release $(VERSION)
+libgcj_la_LDFLAGS = -rpath $(toolexeclibdir) \
+       -version-info `grep -v '^\#' $(srcdir)/libtool-version`
+
 
 MOSTLYCLEANFILES = $(javao_files) $(nat_files) $(nat_headers) $(c_files)
-CLEANFILES = libgcj.zip $(class_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)
+
 
 FTFRIEND = void JvRunMain (jclass klass, int argc, const char **argv)
 
@@ -182,17 +196,17 @@ 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 -lc
+       $(GCLIBS) $(THREADLIBS) $(ZLIBS)
 
 jv_convert_DEPENDENCIES = $(convert_source_files:.java=.lo) \
-       $(GCDEPS) $(THREADDEPS) libgcj.la
+       $(GCDEPS) $(THREADDEPS) $(ZDEPS) libgcj.la libgcj.spec
 
 
 gen_from_JIS_SOURCES = 
@@ -225,6 +239,52 @@ gnu/gcj/convert/UnicodeToBytes.java
 
 special_java_source_files = java/lang/Class.java java/lang/Object.java
 
+awt_java_source_files = \
+java/awt/AWTEvent.java \
+java/awt/BorderLayout.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/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/Point.java \
+java/awt/Rectangle.java \
+java/awt/Shape.java \
+java/awt/TextArea.java \
+java/awt/TextComponent.java \
+java/awt/Toolkit.java \
+java/awt/Window.java \
+java/awt/event/ActionEvent.java \
+java/awt/event/ActionListener.java \
+java/awt/event/ComponentEvent.java \
+java/awt/event/InputEvent.java \
+java/awt/event/KeyEvent.java \
+java/awt/event/KeyListener.java \
+java/awt/event/TextEvent.java \
+java/awt/event/TextListener.java \
+java/awt/event/WindowAdapter.java \
+java/awt/event/WindowEvent.java \
+java/awt/event/WindowListener.java \
+java/awt/geom/Point2D.java \
+java/awt/geom/Dimension2D.java \
+java/awt/peer/ComponentPeer.java \
+java/awt/peer/ContainerPeer.java \
+java/awt/peer/FramePeer.java \
+java/awt/peer/WindowPeer.java
+
+
+# $(awt_java_source_files)
+
+built_java_source_files = java/lang/ConcreteProcess.java
+
 ordinary_java_source_files = $(convert_source_files) \
 gnu/gcj/text/BaseBreakIterator.java \
 gnu/gcj/text/CharacterBreakIterator.java \
@@ -237,6 +297,8 @@ 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/RawData.java \
+gnu/gcj/util/EnumerationChain.java \
 java/io/BufferedInputStream.java \
 java/io/BufferedOutputStream.java \
 java/io/BufferedReader.java \
@@ -398,6 +460,9 @@ java/security/NoSuchAlgorithmException.java \
 java/text/BreakIterator.java \
 java/text/CharacterIterator.java \
 java/text/ChoiceFormat.java \
+java/text/CollationElementIterator.java \
+java/text/CollationKey.java \
+java/text/Collator.java \
 java/text/DateFormat.java \
 java/text/DateFormatSymbols.java \
 java/text/DecimalFormat.java \
@@ -408,6 +473,7 @@ java/text/MessageFormat.java \
 java/text/NumberFormat.java \
 java/text/ParseException.java \
 java/text/ParsePosition.java \
+java/text/RuleBasedCollator.java \
 java/text/SimpleDateFormat.java        \
 java/text/StringCharacterIterator.java \
 java/util/BitSet.java \
@@ -428,6 +494,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 \
@@ -441,10 +508,12 @@ java/util/zip/CRC32.java \
 java/util/zip/Checksum.java \
 java/util/zip/Deflater.java \
 java/util/zip/DeflaterOutputStream.java        \
+java/util/zip/InflaterInputStream.java \
 java/util/zip/ZipConstants.java        \
 java/util/zip/ZipEntry.java \
 java/util/zip/ZipException.java        \
 java/util/zip/ZipFile.java \
+java/util/zip/ZipInputStream.java \
 java/util/zip/ZipOutputStream.java
 
 
@@ -466,19 +535,38 @@ c_source_files = \
   java/lang/k_cos.c       java/lang/s_sin.c
 
 
-nat_source_files = java/lang/natObject.cc java/lang/natClass.cc        \
-java/lang/natString.cc java/lang/natDouble.cc java/lang/natRuntime.cc \
-java/lang/natSystem.cc java/lang/natThread.cc java/io/natFile.cc \
-java/io/natFileDescriptor.cc java/util/natDate.cc \
-java/util/natGregorianCalendar.cc java/lang/natFirstThread.cc \
-java/lang/natCharacter.cc java/lang/natMath.cc java/lang/natFloat.cc \
-java/lang/reflect/natField.cc java/net/natInetAddress.cc \
-java/net/natPlainSocketImpl.cc java/lang/reflect/natMethod.cc \
-java/lang/reflect/natArray.cc gnu/gcj/convert/Unicode_to_JIS.cc \
-gnu/gcj/convert/natInput_EUCJIS.cc gnu/gcj/convert/natOutput_EUCJIS.cc \
-gnu/gcj/convert/natInput_SJIS.cc gnu/gcj/convert/natOutput_SJIS.cc \
+#java/awt/natToolkit.cc
+
+nat_source_files = \
 gnu/gcj/convert/JIS0208_to_Unicode.cc \
-gnu/gcj/convert/JIS0212_to_Unicode.cc
+gnu/gcj/convert/JIS0212_to_Unicode.cc \
+gnu/gcj/convert/Unicode_to_JIS.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 \
+java/io/natFile.cc \
+java/io/natFileDescriptor.cc \
+java/lang/natCharacter.cc \
+java/lang/natClass.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 \
+java/lang/natRuntime.cc        \
+java/lang/natString.cc \
+java/lang/natSystem.cc \
+java/lang/natThread.cc \
+java/lang/reflect/natArray.cc \
+java/lang/reflect/natField.cc \
+java/lang/reflect/natMethod.cc \
+java/net/natInetAddress.cc \
+java/net/natPlainSocketImpl.cc \
+java/text/natCollator.cc \
+java/util/natDate.cc \
+java/util/natGregorianCalendar.cc
 
 
 # Work around what appears to be a GNU make bug handling MAKEFLAGS
@@ -536,7 +624,7 @@ cygnus_hack =
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
 CONFIG_HEADER = ./include/config.h
-CONFIG_CLEAN_FILES = 
+CONFIG_CLEAN_FILES =  libgcj.spec
 LTLIBRARIES =  $(toolexeclib_LTLIBRARIES)
 
 
@@ -563,11 +651,11 @@ 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
+include/stamp-h.in libgcj.spec.in
 
 
 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
@@ -577,8 +665,9 @@ GZIP_ENV = --best
 DIST_SUBDIRS =  testsuite
 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/convert/BytesToUnicode.P \
-.deps/gnu/gcj/convert/Convert.P .deps/gnu/gcj/convert/Input_8859_1.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/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 \
@@ -598,6 +687,7 @@ 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/gnu/gcj/util/EnumerationChain.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 \
@@ -638,8 +728,9 @@ 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/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/FirstThread.P .deps/java/lang/Float.P \
 .deps/java/lang/IllegalAccessError.P \
@@ -716,12 +807,15 @@ DEP_FILES =  .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \
 .deps/java/security/MessageDigest.P \
 .deps/java/security/NoSuchAlgorithmException.P \
 .deps/java/text/BreakIterator.P .deps/java/text/CharacterIterator.P \
-.deps/java/text/ChoiceFormat.P .deps/java/text/DateFormat.P \
-.deps/java/text/DateFormatSymbols.P .deps/java/text/DecimalFormat.P \
-.deps/java/text/DecimalFormatSymbols.P .deps/java/text/FieldPosition.P \
-.deps/java/text/Format.P .deps/java/text/MessageFormat.P \
-.deps/java/text/NumberFormat.P .deps/java/text/ParseException.P \
-.deps/java/text/ParsePosition.P .deps/java/text/SimpleDateFormat.P \
+.deps/java/text/ChoiceFormat.P \
+.deps/java/text/CollationElementIterator.P \
+.deps/java/text/CollationKey.P .deps/java/text/Collator.P \
+.deps/java/text/DateFormat.P .deps/java/text/DateFormatSymbols.P \
+.deps/java/text/DecimalFormat.P .deps/java/text/DecimalFormatSymbols.P \
+.deps/java/text/FieldPosition.P .deps/java/text/Format.P \
+.deps/java/text/MessageFormat.P .deps/java/text/NumberFormat.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/ConcurrentModificationException.P \
@@ -733,15 +827,18 @@ DEP_FILES =  .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.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/zip/Adler32.P .deps/java/util/zip/CRC32.P \
-.deps/java/util/zip/Checksum.P .deps/java/util/zip/Deflater.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/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/DeflaterOutputStream.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)
@@ -792,6 +889,8 @@ distclean-hdr:
        -rm -f include/config.h
 
 maintainer-clean-hdr:
+libgcj.spec: $(top_builddir)/config.status libgcj.spec.in
+       cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
 
 mostlyclean-toolexeclibLTLIBRARIES:
 
@@ -918,6 +1017,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,
@@ -1131,7 +1249,8 @@ installcheck-am:
 installcheck: installcheck-recursive
 install-info-am: 
 install-info: install-info-recursive
-install-exec-am: install-toolexeclibLTLIBRARIES install-binPROGRAMS
+install-exec-am: install-toolexeclibLTLIBRARIES install-binPROGRAMS \
+               install-toolexeclibDATA
 install-exec: install-exec-recursive
 
 install-data-am: install-dataDATA
@@ -1141,7 +1260,7 @@ 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-dataDATA uninstall-toolexeclibDATA
 uninstall: uninstall-recursive
 all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(DATA)
 all-redirect: all-recursive
@@ -1150,7 +1269,7 @@ install-strip:
 installdirs: installdirs-recursive
 installdirs-am:
        $(mkinstalldirs)  $(DESTDIR)$(toolexeclibdir) $(DESTDIR)$(bindir) \
-               $(DESTDIR)$(datadir)
+               $(DESTDIR)$(datadir) $(DESTDIR)$(toolexeclibdir)
 
 
 mostlyclean-generic:
@@ -1173,7 +1292,8 @@ 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-tags clean-depend clean-generic mostlyclean-am \
+               clean-local
 
 clean: clean-recursive
 
@@ -1211,6 +1331,7 @@ 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 \
@@ -1228,13 +1349,22 @@ maintainer-clean-generic clean mostlyclean distclean maintainer-clean
 
 $(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)
+       $(MAKE) $(built_java_source_files:.java=.class)
        javac="$(JAVAC)"; cd $(srcdir); \
          $$javac $(JCFLAGS) -classpath $(here):`/bin/pwd` -d $(here) \
            $(subst $(srcdir)/,,$?)
        -@rm -f libgcj.zip
        $(ZIP) -r libgcj java gnu -n .class -i '*.class' -i '*/'
 
+clean-local:
+       find . -name '*.class' -print | xargs rm -f
+
 .class.lo:
        $(GCJCOMPILE) -o $@ $<