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]

Patch: update libgcj configury, try 3


Hello,

Here's the third iteration of the giant libgcj configury patch.  It is
updated to incorporate Tom's suggestions including fixes to support
recent versions of autoheader, and a fix from Andreas.

Thanks to Mohan Embar for testing the previous patch with his various
win32 configurations.

There's an ongoing discussion on the automake list about the 10M
Makefile.in.  Hopefully that discussion will result in an automake patch
that solves the problem.  Then we can check in this patch and use a
patched automake until the next official automake release. :)

More comments?

Tom

2003-12-16  Thomas Fitzsimmons  <fitzsim@redhat.com>
	    Andreas Tobler  <a.tobler@schweiz.ch>
	    Mohan Embar  <gnustuff@thisiscool.com>

	* acconfig.h: Remove file.
	* acinclude.m4: Remove AC_CONFIG_AUX_DIR logic.  Add
	target_alias assignment and libstdc++ comments.  Replace
	LIB_AC_PROG_CXX with AC_PROG_CXX.
	* configure.in: Add AM_PROG_GCJ and AM_PROG_CC_C_O.
	(AC_CONFIG_SUBDIRS): Hard-code libltdl directory.
	Replace GCOBJS, EXTRA_CC_FILES, PLATFORMOBJS and THREADOBJS with
	USING_BOEHMGC, USING_NOGC, SUPPLY_BACKTRACE,
	USING_POSIX_PLATFORM, USING_WIN32_PLATFORM, USING_ECOS_PLATFORM,
	USING_POSIX_THREADS, USING_WIN32_THREADS and USING_NO_THREADS
	conditionals.  Use AC_CONFIG_LINKS in place of AC_LINK_FILES.
	Update AC_CHECK_TYPE macro call.
	* Makefile.am (AUTOMAKE_OPTIONS): Add subdir-objects.
	Handle USING_BOEHMGC, USING_NOGC, SUPPLY_BACKTRACE,
	USING_POSIX_PLATFORM, USING_WIN32_PLATFORM, USING_ECOS_PLATFORM,
	USING_POSIX_THREADS, USING_WIN32_THREADS and USING_NO_THREADS
	conditionals.
	Rename cond_x_ltlibrary cond_xlib_ltlibrary.
	(AM_GCJFLAGS): Add --encoding=UTF-8 and -Wno-deprecated flags.
	(AM_CXXFLAGS): Move inline comments before assignment.
	Reindent.
	(nat_files, x_nat_files, c_files, extra_cc_files, gtk_c_files,
	javao_files, x_javao_files): Remove variables.
	(libgcj_la_SOURCES): Add math_source_files, java_source_files,
	generated_java_source_files. Add variables BOEHMGC_SRC,
	NOGC_SRC, BACKTRACE_SRC, POSIX_PLATFORM_SRC, WIN32_PLATFORM_SRC,
	ECOS_PLATFORM_SRC, POSIX_THREAD_SRC, WIN32_THREAD_SRC and
	NO_THREAD_SRC.
	(EXTRA_libgcj_la_SOURCES): Remove.
	Remove extra_cc_files.
	Move c_source_files, java_source_files, and
	built_java_source_files to math_source_files, java_source_files
	and generated_source_files in libgcj_la_SOURCES.
	(libgcj_la_LIBADD): Remove javao_files, c_files,
	extra_cc_files.  Add LIBLTDL, LIBFFI, ZLIBS and GCLIBS.
	(libgcj_la_LDFLAGS): Remove SYS_ZLIBS.
	Rename gtk_c_headers gtk_jni_headers.
	(lib-gnu-java-awt-peer-gtk.la): Add workaround for dependencies.
	(lib_gnu_java_awt_peer_gtk_la_CFLAGS): Move flags here from old
	gtk_c_files rule.
	(lib_gnu_java_awt_peer_gtk_la_GCJFLAGS): Add -fjni flag.
	(lib_gnu_java_awt_peer_gtk_la_OBJECTS): Depend on
	lib_gnu_java_awt_peer_gtk_la_DEPENDENCIES.
	(lib_gnu_java_awt_peer_gtk_la_DEPENDENCIES): Set to JNI headers.
	(lib_org_w3c_dom_la_LINK): Set to $(LIBLINK).
	(lib_org_xml_sax_la_LINK): Likewise.
	(lib_gnu_awt_xlib_la_SOURCES): Add Java source files.
	(EXTRA_lib_gnu_awt_xlib_la_SOURCES): Remove.
	(lib_gnu_awt_xlib_la_DEPENDENCIES): Remove java object files.
	Rename all_java_source_files libgcj_jar_java_source_files.
	Rename built_java_source_files generated_java_source_files.
	Rename x_java_source_files xlib_java_source_files.
	(clean-nat, .class.lo, .java.lo, $(nat_files) $(x_nat_files),
	$(c_files), $(extra_cc_files), $(c_files), $(gtk_c_files),
	$(javao_files) $(x_javao_files) $(lib_org_w3c_dom_la_OBJECTS)
	$(lib_org_xml_sax_la_OBJECTS),
	$(gtk_awt_peer_sources:.java=.lo), libgcj.la: Remove targets.
	Consolidate all gen-from-JIS logic inside MAINTAINER_MODE block.
	(CONVERT_DIR): Remove.
	(EXTRA_jv_convert_SOURCES): Remove.
	(jv_convert_DEPENDENCIES): Remove
	$(convert_source_files:.java=.lo).
	(EXTRA_rmic_SOURCES): Remove.
	(EXTRA_rmiregistry_SOURCES): Remove.
	Rename built_java_source_files generated_java_source_files.
	Rename c_source_files math_source_files.
	(extra_cc_source_files): Remove.
	Rename x_java_source_files xlib_java_source_files.
	Rename x_nat_source_files xlib_nat_source_files.

Index: acinclude.m4
===================================================================
RCS file: /cvs/gcc/gcc/libjava/acinclude.m4,v
retrieving revision 1.25
diff -u -r1.25 acinclude.m4
--- acinclude.m4	24 Sep 2003 05:39:23 -0000	1.25
+++ acinclude.m4	17 Dec 2003 00:26:30 -0000
@@ -36,18 +36,26 @@
 libgcj_basedir=$srcdir/$toprel/$1/libjava
 AC_SUBST(libgcj_basedir)
 
-AC_CONFIG_AUX_DIR(${srcdir}/$toprel)
-if :; then :; else
-  # This overrides the previous occurrence for automake, but not for
-  # autoconf, which is exactly what we want.
-  AC_CONFIG_AUX_DIR(..)
-fi
-
 # This works around an automake problem.
 mkinstalldirs="`cd $ac_aux_dir && ${PWDCMD-pwd}`/mkinstalldirs"
 AC_SUBST(mkinstalldirs)
 
+# Gets build, host, target, *_vendor, *_cpu, *_os, etc.
+#
+# You will slowly go insane if you do not grok the following fact:  when
+# building v3 as part of the compiler, the top-level /target/ becomes the
+# library's /host/.  configure then causes --target to default to --host,
+# exactly like any other package using autoconf.  Therefore, 'target' and
+# 'host' will always be the same.  This makes sense both for native and
+# cross compilers, just think about it for a little while.  :-)
+#
+# Also, if v3 is being configured as part of a cross compiler, the top-level
+# configure script will pass the "real" host as $with_cross_host.
+#
+# Do not delete or change the following two lines.  For why, see
+# http://gcc.gnu.org/ml/libstdc++/2003-07/msg00451.html
 AC_CANONICAL_SYSTEM
+target_alias=${target_alias-$host_alias}
 
 dnl This shouldn't be needed, as long as top-level dependencies are
 dnl defined correctly and shared-library paths are set up so that
@@ -57,49 +65,7 @@
 
 AC_PROG_CC
 
-# We use the libstdc++-v3 version of LIB_AC_PROG_CXX, but use
-# glibjava_CXX instead of glibcpp_CXX.  That's because we're passed a
-# different definition of CXX than other directories, since we don't
-# depend on libstdc++-v3 having already been built.
-AC_DEFUN(LIB_AC_PROG_CXX,
-[AC_BEFORE([$0], [AC_PROG_CXXCPP])dnl
-dnl Fool anybody using AC_PROG_CXX.
-AC_PROVIDE([AC_PROG_CXX])
-# Use glibjava_CXX so that we do not cause CXX to be cached with the
-# flags that come in CXX while configuring libjava.  They're different
-# from those used for all other target libraries.  If CXX is set in
-# the environment, respect that here.
-glibjava_CXX=$CXX
-AC_CHECK_PROGS(glibjava_CXX, $CCC c++ g++ gcc CC cxx cc++, gcc)
-AC_SUBST(CXX)
-CXX=$glibjava_CXX
-test -z "$glibjava_CXX" && AC_MSG_ERROR([no acceptable c++ found in \$PATH])
-
-AC_PROG_CXX_GNU
-
-if test $ac_cv_prog_gxx = yes; then
-  GXX=yes
-dnl Check whether -g works, even if CXXFLAGS is set, in case the package
-dnl plays around with CXXFLAGS (such as to build both debugging and
-dnl normal versions of a library), tasteless as that idea is.
-  ac_test_CXXFLAGS="${CXXFLAGS+set}"
-  ac_save_CXXFLAGS="$CXXFLAGS"
-  CXXFLAGS=
-  AC_PROG_CXX_G
-  if test "$ac_test_CXXFLAGS" = set; then
-    CXXFLAGS="$ac_save_CXXFLAGS"
-  elif test $ac_cv_prog_cxx_g = yes; then
-    CXXFLAGS="-g -O2"
-  else
-    CXXFLAGS="-O2"
-  fi
-else
-  GXX=
-  test "${CXXFLAGS+set}" = set || CXXFLAGS="-g"
-fi
-])
-
-LIB_AC_PROG_CXX
+AC_PROG_CXX
 
 dnl version is pulled out to make it a bit easier to change using sed.
 version=0.0.7
Index: configure.in
===================================================================
RCS file: /cvs/gcc/gcc/libjava/configure.in,v
retrieving revision 1.176
diff -u -r1.176 configure.in
--- configure.in	2 Dec 2003 22:26:45 -0000	1.176
+++ configure.in	17 Dec 2003 00:26:30 -0000
@@ -39,7 +39,9 @@
 AC_SUBST(LIBLTDL)
 AC_SUBST(DIRLTDL)
 AM_PROG_LIBTOOL
-AC_CONFIG_SUBDIRS($DIRLTDL)
+AM_PROG_GCJ
+AM_PROG_CC_C_O
+AC_CONFIG_SUBDIRS(libltdl)
 
 if test -z "$with_target_subdir" || test "$with_target_subdir" = "."; then
    COMPPATH=.
@@ -252,23 +254,19 @@
 TARGET_ECOS="$with_ecos"
 )
 
-EXTRA_CC_FILES=
-AC_SUBST(EXTRA_CC_FILES)
+supply_backtrace=no
 
-PLATFORMOBJS=
 case "$TARGET_ECOS" in
    no) case "$host" in
       *mingw*)
             PLATFORM=Win32
 	    PLATFORMNET=Win32
-            PLATFORMOBJS=win32.lo
 	    PLATFORMH=win32.h
         CHECK_FOR_BROKEN_MINGW_LD
       ;;
       *)
             PLATFORM=Posix
 	    PLATFORMNET=Posix
-            PLATFORMOBJS=posix.lo
 	    PLATFORMH=posix.h
       ;;
       esac
@@ -277,12 +275,10 @@
       PLATFORM=Ecos
       PLATFORMNET=NoNet
       AC_DEFINE(ECOS, 1, [Define if you're running eCos.])
-      PLATFORMOBJS=posix.lo
       PLATFORMH=posix.h
       ;;
 esac
-AC_SUBST(PLATFORMOBJS)
-AC_LINK_FILES(include/$PLATFORMH, include/platform.h)
+AC_CONFIG_LINKS(include/platform.h:include/$PLATFORMH)
 
 AC_EGREP_HEADER(uint32_t, stdint.h, AC_DEFINE(HAVE_INT32_DEFINED, 1,
                                       [Define if you have int32_t and uint32_t.]))
@@ -292,7 +288,9 @@
                                           [Define if you have u_int32_t]))
 AC_EGREP_HEADER(u_int32_t, sys/config.h, AC_DEFINE(HAVE_BSD_INT32_DEFINED, 1,
                                            [Define if you have u_int32_t]))
-
+AM_CONDITIONAL(USING_WIN32_PLATFORM, test "$PLATFORM" = Win32)
+AM_CONDITIONAL(USING_POSIX_PLATFORM, test "$PLATFORM" = Posix)
+AM_CONDITIONAL(USING_ECOS_PLATFORM, test "$PLATFORM" = Ecos)
 
 dnl These may not be defined in a non-ANS conformant embedded system.
 dnl FIXME: Should these case a runtime exception in that case?
@@ -306,29 +304,29 @@
 test -d java || mkdir java
 test -d java/io || mkdir java/io
 test -d gnu || mkdir gnu
-AC_LINK_FILES(java/io/natFile${FILE-${PLATFORM}}.cc, java/io/natFile.cc)
-AC_LINK_FILES(java/io/natFileDescriptor${FILE-${PLATFORM}}.cc, java/io/natFileDescriptor.cc)
+AC_CONFIG_LINKS(java/io/natFile.cc:java/io/natFile${FILE-${PLATFORM}}.cc)
+AC_CONFIG_LINKS(java/io/natFileDescriptor.cc:java/io/natFileDescriptor${FILE-${PLATFORM}}.cc)
 
 dnl Likewise for ConcreteProcess.java and natConcreteProcess.cc.
 test -d java/lang || mkdir java/lang
-AC_LINK_FILES(java/lang/${PLATFORM}Process.java, java/lang/ConcreteProcess.java)
-AC_LINK_FILES(java/lang/nat${PLATFORM}Process.cc, java/lang/natConcreteProcess.cc)
+AC_CONFIG_LINKS(java/lang/ConcreteProcess.java:java/lang/${PLATFORM}Process.java)
+AC_CONFIG_LINKS(java/lang/natConcreteProcess.cc:java/lang/nat${PLATFORM}Process.cc)
 
 dnl Likewise for natInetAddress.cc and natNetworkInterface.cc.
 test -d java/net || mkdir java/net
-AC_LINK_FILES(java/net/natInetAddress${PLATFORMNET}.cc, java/net/natInetAddress.cc)
-AC_LINK_FILES(java/net/natNetworkInterface${PLATFORMNET}.cc, java/net/natNetworkInterface.cc)
+AC_CONFIG_LINKS(java/net/natInetAddress.cc:java/net/natInetAddress${PLATFORMNET}.cc)
+AC_CONFIG_LINKS(java/net/natNetworkInterface.cc:java/net/natNetworkInterface${PLATFORMNET}.cc)
 
 dnl Likewise for natPlainSocketImpl.cc and natPlainDatagramSocketImpl.cc.
 test -d gnu/java || mkdir gnu/java
 test -d gnu/java/net || mkdir gnu/java/net
-AC_LINK_FILES(gnu/java/net/natPlainSocketImpl${PLATFORMNET}.cc, gnu/java/net/natPlainSocketImpl.cc)
-AC_LINK_FILES(gnu/java/net/natPlainDatagramSocketImpl${PLATFORMNET}.cc, gnu/java/net/natPlainDatagramSocketImpl.cc)
+AC_CONFIG_LINKS(gnu/java/net/natPlainSocketImpl.cc:gnu/java/net/natPlainSocketImpl${PLATFORMNET}.cc)
+AC_CONFIG_LINKS(gnu/java/net/natPlainDatagramSocketImpl.cc:gnu/java/net/natPlainDatagramSocketImpl${PLATFORMNET}.cc)
 
 dnl Likewise for natPipeImpl.cc and natSelectorImpl.cc.
 test -d gnu/java/nio || mkdir gnu/java/nio
-AC_LINK_FILES(gnu/java/nio/natPipeImpl${PLATFORM}.cc, gnu/java/nio/natPipeImpl.cc)
-AC_LINK_FILES(gnu/java/nio/natSelectorImpl${PLATFORM}.cc, gnu/java/nio/natSelectorImpl.cc)
+AC_CONFIG_LINKS(gnu/java/nio/natPipeImpl.cc:gnu/java/nio/natPipeImpl${PLATFORM}.cc)
+AC_CONFIG_LINKS(gnu/java/nio/natSelectorImpl.cc:gnu/java/nio/natSelectorImpl${PLATFORM}.cc)
 
 case "${host}" in
     *mingw*)
@@ -420,7 +418,6 @@
 GCLIBS=
 GCINCS=
 GCDEPS=
-GCOBJS=
 GCSPEC=
 JC1GCSPEC=
 GCTESTSPEC=
@@ -434,14 +431,12 @@
     dnl We also want to pick up some cpp flags required when including
     dnl boehm-config.h.  Yuck.
     GCINCS="`cat ../boehm-gc/boehm-cflags`"
-    GCOBJS=boehm.lo
     GCHDR=boehm-gc.h
     dnl The POSIX thread support needs to know this.
     AC_DEFINE(HAVE_BOEHM_GC, 1, [Define if Boehm GC in use.])
     ;;
  no)
     AC_MSG_RESULT(none)
-    GCOBJS=nogc.lo
     GCHDR=no-gc.h
     ;;
  *)
@@ -451,12 +446,12 @@
 AC_SUBST(GCLIBS)
 AC_SUBST(GCINCS)
 AC_SUBST(GCDEPS)
-AC_SUBST(GCOBJS)
 AC_SUBST(GCSPEC)
 AC_SUBST(JC1GCSPEC)
 AC_SUBST(GCTESTSPEC)
-AC_LINK_FILES(include/$GCHDR, include/java-gc.h)
-
+AC_CONFIG_LINKS(include/java-gc.h:include/$GCHDR)
+AM_CONDITIONAL(USING_BOEHMGC, test "$GC" = boehm)
+AM_CONDITIONAL(USING_NOGC, test "$GC" = no)
 
 AC_MSG_CHECKING([for thread model used by GCC])
 THREADS=`$CC -v 2>&1 | sed -n 's/^Thread model: //p'`
@@ -489,7 +484,6 @@
 THREADLIBS=
 THREADINCS=
 THREADDEPS=
-THREADOBJS=
 THREADH=
 THREADSPEC=
 case "$THREADS" in
@@ -530,7 +524,6 @@
 	THREADSPEC=-lpthread
 	;;
     esac
-    THREADOBJS=posix-threads.lo
     THREADH=posix-threads.h
     # MIT pthreads doesn't seem to have the mutexattr functions.
     # But for now we don't check for it.  We just assume you aren't
@@ -546,26 +539,26 @@
     ;;
 
  win32)
-    THREADOBJS=win32-threads.lo
     THREADH=win32-threads.h
     ;;
 
  none)
-    THREADOBJS=no-threads.lo
     THREADH=no-threads.h
     ;;
 esac
-AC_LINK_FILES(include/$THREADH, include/java-threads.h)
+AC_CONFIG_LINKS(include/java-threads.h:include/$THREADH)
 AC_SUBST(THREADLIBS)
 AC_SUBST(THREADINCS)
 AC_SUBST(THREADDEPS)
-AC_SUBST(THREADOBJS)
 AC_SUBST(THREADSPEC)
 AC_SUBST(THREADLDFLAGS)
 AC_SUBST(THREADCXXFLAGS)
+AM_CONDITIONAL(USING_POSIX_THREADS, test "$THREADS" = posix)
+AM_CONDITIONAL(USING_WIN32_THREADS, test "$THREADS" = win32)
+AM_CONDITIONAL(USING_NO_THREADS, test "$THREADS" = none)
 
 if test -d sysdep; then true; else mkdir sysdep; fi
-AC_LINK_FILES(sysdep/$sysdeps_dir/locks.h, sysdep/locks.h)
+AC_CONFIG_LINKS(sysdep/locks.h:sysdep/$sysdeps_dir/locks.h)
 
 HASH_SYNC_SPEC=
 # Hash synchronization is only useful with posix threads right now.
@@ -634,7 +627,7 @@
        mips*-*-linux*)
          # Has broken backtrace(), but we supply our own.
          if test -d sysdep; then true; else mkdir -p sysdep; fi
-         EXTRA_CC_FILES="${EXTRA_CC_FILES} sysdep/dwarf2-backtrace.cc"
+	 supply_backtrace=yes
          AC_DEFINE(HAVE_BACKTRACE, 1,
            [Define if your platform has a working backtrace() function.])
          ;;
@@ -876,6 +869,7 @@
       AC_CHECK_LIB(dl, main, SYSTEMSPEC="$SYSTEMSPEC -ldl")
    fi
 fi
+AM_CONDITIONAL(SUPPLY_BACKTRACE, test "$supply_backtrace" = yes)
 
 if test -z "${with_multisubdir}"; then
    builddotdot=.
@@ -1042,8 +1036,10 @@
 ])
 AC_HEADER_SYS_WAIT
 
-AC_CHECK_TYPE([ssize_t], [int])
-
+AC_CHECK_TYPE([ssize_t],,
+              [AC_DEFINE_UNQUOTED([ssize_t], [int],
+                                             [Define to `int' if
+                                              `ssize_t' is not defined.])])
 AC_MSG_CHECKING([for in_addr_t])
 AC_TRY_COMPILE([#include <sys/types.h>
 #if STDC_HEADERS
@@ -1175,7 +1171,7 @@
 
 AC_SUBST(SYSDEP_SOURCES)
 
-AC_LINK_FILES($SIGNAL_HANDLER, include/java-signal.h)
+AC_CONFIG_LINKS(include/java-signal.h:$SIGNAL_HANDLER)
 
 if test "${multilib}" = "yes"; then
   multilib_arg="--enable-multilib"
Index: Makefile.am
===================================================================
RCS file: /cvs/gcc/gcc/libjava/Makefile.am,v
retrieving revision 1.337
diff -u -r1.337 Makefile.am
--- Makefile.am	9 Dec 2003 18:45:08 -0000	1.337
+++ Makefile.am	17 Dec 2003 00:26:31 -0000
@@ -1,9 +1,68 @@
 ## Process this file with automake to produce Makefile.in.
 
-AUTOMAKE_OPTIONS = foreign
+AUTOMAKE_OPTIONS = foreign subdir-objects
 
 ACLOCAL_AMFLAGS = -I .
 
+## Garbage collector conditionals.
+if USING_BOEHMGC
+BOEHMGC_SRC = boehm.cc
+else
+BOEHMGC_SRC =
+endif
+
+if USING_NOGC
+NOGC_SRC = nogc.cc
+else
+NOGC_SRC =
+endif
+
+## Broken backtrace conditional.
+if SUPPLY_BACKTRACE
+BACKTRACE_SRC = sysdep/dwarf2-backtrace.cc
+else
+BACKTRACE_SRC =
+endif
+
+## Conditionals for platform-specific helper functions.
+if USING_POSIX_PLATFORM
+POSIX_PLATFORM_SRC = posix.cc
+else
+POSIX_PLATFORM_SRC =
+endif
+
+if USING_WIN32_PLATFORM
+WIN32_PLATFORM_SRC = win32.cc
+else
+WIN32_PLATFORM_SRC =
+endif
+
+if USING_ECOS_PLATFORM
+ECOS_PLATFORM_SRC = posix.cc
+else
+ECOS_PLATFORM_SRC =
+endif
+
+## Conditionals for platform-specific thread support.
+if USING_POSIX_THREADS
+POSIX_THREAD_SRC = posix-threads.cc
+else
+POSIX_THREAD_SRC =
+endif
+
+if USING_WIN32_THREADS
+WIN32_THREAD_SRC = win32-threads.cc
+else
+WIN32_THREAD_SRC =
+endif
+
+if USING_NO_THREADS
+NO_THREAD_SRC = no-threads.cc
+else
+NO_THREAD_SRC =
+endif
+
+## Testsuite conditional.
 if TESTSUBDIR
 SUBDIRS = $(DIRLTDL) testsuite gcj include
 else
@@ -26,11 +85,11 @@
 ##
 
 if XLIB_AWT
-cond_x_ltlibrary = lib-gnu-awt-xlib.la
+cond_xlib_ltlibrary = lib-gnu-awt-xlib.la
 ## We require libstdc++-v3 to be in the same build tree.
 xlib_includes = -I../libstdc++-v3/include -I../libstdc++-v3/include/$(target_alias) -I$(srcdir)/../libstdc++-v3/libsupc++
 else
-cond_x_ltlibrary =
+cond_xlib_ltlibrary =
 xlib_includes =
 endif
 
@@ -41,7 +100,7 @@
 endif
 
 toolexeclib_LTLIBRARIES = libgcj.la lib-org-xml-sax.la lib-org-w3c-dom.la \
-    $(cond_gtk_ltlibrary) $(cond_x_ltlibrary)
+    $(cond_gtk_ltlibrary) $(cond_xlib_ltlibrary)
 toolexecmainlib_DATA = libgcj.spec
 
 pkgconfigdir = $(libdir)/pkgconfig
@@ -104,16 +163,33 @@
 GCC_UNWIND_INCLUDE = @GCC_UNWIND_INCLUDE@
 
 WARNINGS = -W -Wall
-## We need _GNU_SOURCE defined for some Linux builds.  It doesn't hurt
-## to always define it.
-AM_CXXFLAGS = -fno-rtti -fnon-call-exceptions $(THREADCXXFLAGS) \
-## Some systems don't allow `$' in identifiers by default, so we force it.
+
+## Some systems don't allow `$' in identifiers by default, so we force
+## it with -fdollars-in-identifiers.  -Wswitch-enum detects bugs in
+## the verifier implementation, and maybe other places.  We need
+## _GNU_SOURCE defined for some Linux builds.  It doesn't hurt to
+## always define it.
+AM_CXXFLAGS = \
+	-I $(top_builddir) \
+	-fno-rtti \
+	-fnon-call-exceptions \
+	$(THREADCXXFLAGS) \
 	-fdollars-in-identifiers \
-## Detect bugs in the verifier implementation, and maybe other places.
 	-Wswitch-enum \
-	@LIBGCJ_CXXFLAGS@ @X_CFLAGS@ $(WARNINGS) -D_GNU_SOURCE \
-	-DPREFIX="\"$(prefix)\"" -DLIBDIR="\"$(libdir)\"" \
-	-DBOOT_CLASS_PATH="\"$(jardir)/$(jar_DATA)\""
+	@LIBGCJ_CXXFLAGS@ \
+	@X_CFLAGS@ \
+	$(WARNINGS) \
+	-D_GNU_SOURCE \
+	-DPREFIX="\"$(prefix)\"" \
+	-DLIBDIR="\"$(libdir)\"" \
+	-DBOOT_CLASS_PATH="\"$(jardir)/$(jar_DATA)\"" \
+	-DLT_NON_POSIX_NAMESPACE \
+	-DGCJVERSION="\"$(GCJVERSION)\""
+
+AM_GCJFLAGS = \
+	--encoding=UTF-8 \
+	-Wno-deprecated
+
 if USING_GCC
 AM_CFLAGS = @LIBGCJ_CFLAGS@ $(WARNINGS)
 else
@@ -135,36 +211,25 @@
 ## How to build libgcj.a and libgcj.jar
 ##
 
-## Objects from C++ sources in subdirs.
-nat_files = $(nat_source_files:.cc=.lo)
-x_nat_files = $(x_nat_source_files:.cc=.lo)
-## Objects from C sources in subdirs.
-c_files = $(c_source_files:.c=.lo)
-extra_cc_files = $(extra_cc_source_files:.cc=.lo)
-## Objects from gtk-related C sources in subdirs.
-gtk_c_files = $(gtk_c_source_files:.c=.lo)
-## Objects from Java sources in subdirs.
-javao_files = $(java_source_files:.java=.lo) \
-	$(built_java_source_files:.java=.lo)
-x_javao_files = $(x_java_source_files:.java=.lo)
-
 libgcj_la_SOURCES = prims.cc jni.cc exception.cc \
 	resolve.cc defineclass.cc interpret.cc verify.cc \
-	$(nat_source_files)
-EXTRA_libgcj_la_SOURCES = boehm.cc nogc.cc posix-threads.cc no-threads.cc \
-	win32-threads.cc posix.cc win32.cc $(c_source_files) \
-	$(extra_cc_source_files) $(java_source_files) $(built_java_source_files)
-libgcj_la_DEPENDENCIES = libgcj-@gcc_version@.jar $(javao_files) \
-	$(c_files) $(extra_cc_files) $(GCOBJS) $(THREADOBJS) \
-       $(PLATFORMOBJS) $(LIBLTDL) $(LIBFFI) $(ZLIBS) $(GCLIBS)
+	$(nat_source_files) $(math_source_files) $(java_source_files) \
+	$(generated_java_source_files) \
+	$(BOEHMGC_SRC) $(NOGC_SRC) \
+	$(BACKTRACE_SRC) \
+	$(POSIX_PLATFORM_SRC) $(WIN32_PLATFORM_SRC) $(ECOS_PLATFORM_SRC) \
+	$(POSIX_THREAD_SRC) $(WIN32_THREAD_SRC) $(NO_THREAD_SRC)
+libgcj_la_DEPENDENCIES = libgcj-@gcc_version@.jar \
+	java/lang/fdlibm.h java/lang/ieeefp.h java/lang/mprec.h \
+	$(LIBLTDL) $(LIBFFI) $(ZLIBS) $(GCLIBS)
+libgcj_la_LIBADD = \
+	$(LIBLTDL) $(LIBFFI) $(ZLIBS) $(GCLIBS)
 
-libgcj_la_LIBADD = $(javao_files) $(c_files) $(extra_cc_files) $(GCOBJS) \
-	$(THREADOBJS) $(PLATFORMOBJS)
 # Include THREADLIBS here to ensure that the correct version of
 # certain linuxthread functions get linked:
+## The mysterious backslash in the grep pattern is consumed by make.
 libgcj_la_LDFLAGS = -rpath $(toolexeclibdir) $(THREADLDFLAGS) $(THREADLIBS) \
-	$(LIBLTDL) $(SYS_ZLIBS) \
-## The mysterious backslash is consumed by make.
+	$(SYS_ZLIBS) \
 	-version-info `grep -v '^\#' $(srcdir)/libtool-version`
 libgcj_la_LINK = $(LIBLINK)
 
@@ -247,13 +312,17 @@
 gnu/java/awt/peer/gtk/GtkToolkit.java \
 gnu/java/awt/peer/gtk/GtkWindowPeer.java
 
-gtk_c_headers = $(patsubst %.java,jniinclude/%.h,$(subst /,_,$(gtk_awt_peer_sources)))
+gtk_jni_headers = $(patsubst %.java,jniinclude/%.h,$(subst /,_,$(gtk_awt_peer_sources)))
 
-$(gtk_c_headers): $(gtk_awt_peer_sources)
+$(gtk_jni_headers): $(gtk_awt_peer_sources)
 	@input=`echo $@ | sed -e 's,jniinclude/,,' -e 's,_,.,g' -e 's,.h$$,,'`; \
 	echo "$(GCJH) -jni -d jniinclude -classpath '' -bootclasspath $(top_builddir) $$input"; \
 	$(GCJH) -jni -d jniinclude -classpath '' -bootclasspath $(top_builddir) $$input
 
+## For the peer library, DEPENDENCIES need to come before OBJECTS so
+## that JNI headers are built before JNI C files.
+$(lib_gnu_java_awt_peer_gtk_la_OBJECTS): $(lib_gnu_java_awt_peer_gtk_la_DEPENDENCIES)
+
 lib_gnu_java_awt_peer_gtk_la_SOURCES = \
 $(gtk_awt_peer_sources) \
 $(gtk_c_source_files) \
@@ -263,8 +332,12 @@
 jni/classpath/jnilink.h	\
 jni/classpath/native_state.h \
 jni/classpath/primlib.h
-
+lib_gnu_java_awt_peer_gtk_la_CFLAGS = -Ijniinclude -I$(srcdir)/jni/classpath \
+	-I$(srcdir)/jni/gtk-peer $(GTK_CFLAGS) $(LIBART_CFLAGS)
+lib_gnu_java_awt_peer_gtk_la_GCJFLAGS = $(AM_GCJFLAGS) -fjni
 lib_gnu_java_awt_peer_gtk_la_LIBADD = $(GTK_LIBS) $(GLIB_LIBS) $(LIBART_LIBS)
+lib_gnu_java_awt_peer_gtk_la_DEPENDENCIES = $(gtk_jni_headers)
+lib_gnu_java_awt_peer_gtk_la_LINK = $(LIBLINK)
 
 lib_org_w3c_dom_la_SOURCES = org/w3c/dom/Attr.java \
 org/w3c/dom/CDATASection.java \
@@ -291,6 +364,7 @@
 org/w3c/dom/traversal/NodeFilter.java \
 org/w3c/dom/traversal/NodeIterator.java \
 org/w3c/dom/traversal/TreeWalker.java
+lib_org_w3c_dom_la_LINK = $(LIBLINK)
 
 lib_org_xml_sax_la_SOURCES = org/xml/sax/ext/DeclHandler.java \
 org/xml/sax/ext/LexicalHandler.java \
@@ -322,33 +396,33 @@
 org/xml/sax/SAXParseException.java \
 org/xml/sax/XMLFilter.java \
 org/xml/sax/XMLReader.java
+lib_org_xml_sax_la_LINK = $(LIBLINK)
 
-lib_gnu_awt_xlib_la_SOURCES = $(x_nat_source_files)
-EXTRA_lib_gnu_awt_xlib_la_SOURCES = $(x_java_source_files)
-lib_gnu_awt_xlib_la_DEPENDENCIES = libgcj-@gcc_version@.jar $(x_javao_files)
-lib_gnu_awt_xlib_la_LIBADD = $(x_javao_files)
+lib_gnu_awt_xlib_la_SOURCES = $(xlib_nat_source_files) \
+	$(xlib_java_source_files)
+lib_gnu_awt_xlib_la_DEPENDENCIES = libgcj-@gcc_version@.jar
+## The mysterious backslash in the grep pattern is consumed by make.
 lib_gnu_awt_xlib_la_LDFLAGS = ../libstdc++-v3/src/libstdc++.la \
 	@X_PRE_LIBS@ @X_LIBS@ -lX11 @X_EXTRA_LIBS@ \
         -rpath $(toolexeclibdir) \
-## The mysterious backslash is consumed by make.
         -version-info `grep -v '^\#' $(srcdir)/libtool-version`
 lib_gnu_awt_xlib_la_LINK = $(LIBLINK)
 
-all_java_source_files = \
+libgcj_jar_java_source_files = \
     $(java_source_files) \
-    $(built_java_source_files) \
+    $(generated_java_source_files) \
     $(lib_org_xml_sax_la_SOURCES) \
     $(lib_org_w3c_dom_la_SOURCES) \
     $(gtk_awt_peer_sources) \
-    $(x_java_source_files)
+    $(xlib_java_source_files)
 
-all_java_class_files = $(all_java_source_files:.java=.class)
+libgcj_jar_java_class_files = $(libgcj_jar_java_source_files:.java=.class)
 
 if ONESTEP
 
 # Compile all classfiles in one go.
 
-libgcj-@gcc_version@.jar: $(all_java_source_files)
+libgcj-@gcc_version@.jar: $(libgcj_jar_java_source_files)
 	-@rm -f libgcj-@gcc_version@.jar
 	@echo Compiling Java sourcefiles...
 	@: $(call write_entries_to_file,$?,libgcj.sourcelist)
@@ -363,7 +437,7 @@
 # libgcj jarfile is built and 2) anything which depends
 # on a particular .class file must wait until the jarfile
 # is built.
-$(all_java_class_files): libgcj-@gcc_version@.jar
+$(libgcj_jar_java_class_files): libgcj-@gcc_version@.jar
 
 else # !ONESTEP
 
@@ -372,7 +446,7 @@
 .java.class:
 	$(JAVAC) $(JCFLAGS) -classpath '' -bootclasspath $(here):$(srcdir) -d $(here) $<
 
-libgcj-@gcc_version@.jar: $(all_java_class_files)
+libgcj-@gcc_version@.jar: $(libgcj_jar_java_class_files)
 	-@rm -f libgcj-@gcc_version@.jar
 ## Note that we explicitly want to include directory information.
 	find java gnu javax org -type d -o -type f -name '*.class' | \
@@ -383,7 +457,7 @@
 
 # Note: The libtool objects are removed by mostlyclean-local
 # because of command-line-length issues.
-MOSTLYCLEANFILES = $(nat_headers) $(x_nat_headers)
+MOSTLYCLEANFILES = $(nat_headers) $(xlib_nat_headers)
 
 CLEANFILES = libgcj-@gcc_version@.jar
 
@@ -399,57 +473,8 @@
 ## Remove every .d file that was created.
 	find . -name '*.d' -print | xargs rm -f
 
-# Just remove the objects from C++ sources, for testing the C++ compiler.
-clean-nat:
-	rm -f $(nat_files) $(x_nat_files)
-
 SUFFIXES = .class .java .h
 
-.class.lo:
-	$(GCJCOMPILE) -o $@ $<
-
-.java.lo:
-	$(GCJCOMPILE) -o $@ $<
-
-## FIXME: For the .o files in subdirs, use a special rule.  The
-## standard automake rule can't be overridden (this is a bug in
-## automake), and it also won't put the .o files into subdirs.
-$(nat_files) $(x_nat_files): %.lo: %.cc
-	@echo '$(LTCXXCOMPILE) -MD -MT $@ -MF $(@:.lo=.pp) -c -o $@ $<'; \
-	$(LTCXXCOMPILE) -MD -MT $@ -MF $(@:.lo=.pp) -c -o $@ $<
-	@-mv $(@:.lo=.pp) $(@:.lo=.d)
-
-## FIXME: see above
-$(c_files): %.lo: %.c
-	$(LTCOMPILE) -c -o $@ $<
-
-$(extra_cc_files): %.lo: %.cc
-	$(LTCXXCOMPILE) -c -o $@ $<
-
-$(c_files): java/lang/fdlibm.h java/lang/ieeefp.h java/lang/mprec.h
-
-## FIXME: see above
-$(gtk_c_files): %.lo: %.c
-	$(LTCOMPILE) -c -Ijniinclude -I$(srcdir)/jni/classpath -I$(srcdir)/jni/gtk-peer $(GTK_CFLAGS) $(LIBART_CFLAGS) -o $@ $<
-
-$(gtk_c_files): $(gtk_c_headers)
-
-## FIXME: see above.
-$(javao_files) $(x_javao_files) $(lib_org_w3c_dom_la_OBJECTS) $(lib_org_xml_sax_la_OBJECTS): %.lo: %.java
-	$(GCJCOMPILE) -o $@ $<
-
-$(gtk_awt_peer_sources:.java=.lo): %.lo: %.java
-	$(GCJCOMPILE) -fjni -o $@ $<
-
-## Pass the list of object files to libtool in a temporary file to 
-## avoid tripping platform command line length limits.
-libgcj.la: $(libgcj_la_OBJECTS) $(libgcj_la_DEPENDENCIES)
-	@echo Creating list of files to link...
-	@: $(call write_entries_to_file,$(libgcj_la_OBJECTS) $(libgcj_la_LIBADD),libgcj.objectlist)
-	$(libgcj_la_LINK) -objectlist libgcj.objectlist \
-	@GCLIBS@ @LIBFFI@ @ZLIBS@ \
-	-rpath $(toolexeclibdir) $(libgcj_la_LDFLAGS) $(LIBS)
-
 lib-gnu-awt-xlib.la: $(lib_gnu_awt_xlib_la_OBJECTS) $(lib_gnu_awt_xlib_la_DEPENDENCIES)
 	@echo Creating list of files to link...
 	@: $(call write_entries_to_file,$(lib_gnu_awt_xlib_la_OBJECTS) $(lib_gnu_awt_xlib_la_LIBADD),lib_gnu_awt_xlib.objectlist)
@@ -467,7 +492,7 @@
 
 ## 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)
+	$(generated_java_source_files:.java=.h)
 
 inner_nat_headers = java/io/ObjectOutputStream$$PutField.h \
 	java/io/ObjectInputStream$$GetField.h \
@@ -479,9 +504,9 @@
 nat_headers = $(ordinary_nat_headers) $(inner_nat_headers)
 nat_headers_install = $(ordinary_nat_headers)
 
-x_nat_headers = $(x_java_source_files:.java=.h)
+xlib_nat_headers = $(xlib_java_source_files:.java=.h)
 
-$(ordinary_nat_headers) $(x_nat_headers): %.h: %.class
+$(ordinary_nat_headers) $(xlib_nat_headers): %.h: %.class
 
 java/lang/ClassLoader.h: java/lang/ClassLoader.class
 	$(GCJH) -classpath '' -bootclasspath $(top_builddir) \
@@ -604,7 +629,7 @@
 	$(INSTALL_DATA) 'java/lang/reflect/Proxy$$ProxyType.h' $(DESTDIR)$(includedir)/java/lang/reflect/
 	$(INSTALL_DATA) 'gnu/java/net/PlainSocketImpl$$SocketInputStream.h' $(DESTDIR)$(includedir)/gnu/java/net/
 	$(INSTALL_DATA) 'gnu/java/net/PlainSocketImpl$$SocketOutputStream.h' $(DESTDIR)$(includedir)/gnu/java/net/
-	
+
 	$(INSTALL_DATA) $(srcdir)/java/util/logging/logging.properties $(DESTDIR)$(propdir)/logging.properties
 
 ## ################################################################
@@ -663,13 +688,62 @@
 if NATIVE
 if MAINTAINER_MODE
 noinst_PROGRAMS = gen-from-JIS
-endif
-endif 
 
-CONVERT_DIR = gnu/gcj/convert
+gen_from_JIS_SOURCES = \
+	gnu/gcj/convert/gen-from-JIS.c \
+	gnu/gcj/convert/make-trie.c
+
+gen_from_JIS_DEPENDENCIES = \
+	gnu/gcj/convert/JIS0201.h \
+	gnu/gcj/convert/JIS0208.h \
+	gnu/gcj/convert/JIS0212.h
+
+$(srcdir)/gnu/gcj/convert/JIS0208_to_Unicode.cc: ./gen-from-JIS$(EXEEXT)
+	 ./gen-from-JIS JIS0208 >$(srcdir)/gnu/gcj/convert/JIS0208_to_Unicode.cc
+
+$(srcdir)/gnu/gcj/convert/JIS0212_to_Unicode.cc: ./gen-from-JIS$(EXEEXT)
+	 ./gen-from-JIS JIS0212 >$(srcdir)/gnu/gcj/convert/JIS0212_to_Unicode.cc
+
+$(srcdir)/gnu/gcj/convert/Unicode_to_JIS.cc: ./gen-from-JIS$(EXEEXT)
+	 ./gen-from-JIS toJIS >$(srcdir)/gnu/gcj/convert/Unicode_to_JIS.cc
+
+# The Unicode consortium does not permit re-distributing the file JIS0201.TXT.
+# You can get it from
+# ftp://ftp.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/JIS/
+
+$(srcdir)/gnu/gcj/convert/JIS0201.h: # gnu/gcj/convert/JIS0201.TXT
+	echo '/* This file is automatically generated from Unicode tables */' > tmp-0201; \
+	tr  -d '\r' <$(srcdir)/gnu/gcj/convert/JIS0201.TXT \
+	| sed -n -e 's|\(0x..\).*\(0x....\).*#\(.*\)$$|MAP(0x00, \1, \2)  /*\3 */|p' \
+	>> tmp-0201; \
+	mv tmp-0201 $(srcdir)/gnu/gcj/convert/JIS0201.h
+
+# The Unicode consortium does not permit re-distributing the file JIS0208.TXT.
+# You can get it from
+# ftp://ftp.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/JIS/
+
+$(srcdir)/gnu/gcj/convert/JIS0208.h: # gnu/gcj/convert/JIS0208.TXT
+	echo '/* This file is automatically generated from Unicode tables */' > tmp-0208; \
+	tr  -d '\r' <$(srcdir)/gnu/gcj/convert/JIS0208.TXT \
+	| sed -n -e 's|\(0x....\).*0x\(..\)\(..\).*\(0x....\).*#\(.*\)$$|MAP(0x\2, 0x\3, \4)  /*\5 */|p' \
+	>> tmp-0208; \
+	mv tmp-0208 $(srcdir)/gnu/gcj/convert/JIS0208.h
+
+# The Unicode consortium does not permit re-distributing the file JIS0212.TXT.
+# You can get it from
+# ftp://ftp.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/JIS/
+
+$(srcdir)/gnu/gcj/convert/JIS0212.h: # gnu/gcj/convert/JIS0212.TXT
+	echo '/* This file is automatically generated from Unicode tables */' > tmp-0212; \
+	tr  -d '\r' <$(srcdir)/gnu/gcj/convert/JIS0212.TXT \
+	| sed -n -e 's|0x\(..\)\(..\).*\(0x....\).*#\(.*\)$$|MAP(0x\1, 0x\2, \3)  /*\4 */|p' \
+	>> tmp-0212; \
+	mv tmp-0212 $(srcdir)/gnu/gcj/convert/JIS0212.h
+
+endif
+endif
 
 jv_convert_SOURCES =
-EXTRA_jv_convert_SOURCES = $(convert_source_files)
 ## We need -nodefaultlibs because we want to avoid gcj's `-lgcj'.  We
 ## need this because we are explicitly using libtool to link using the
 ## `.la' file.
@@ -686,8 +760,7 @@
 jv_convert_LDADD = -L$(here)/.libs libgcj.la
 ## Depend on the spec file to make sure it is up to date before
 ## linking this program.
-jv_convert_DEPENDENCIES = $(convert_source_files:.java=.lo) \
-	libgcj.la libgcj.spec
+jv_convert_DEPENDENCIES = libgcj.la libgcj.spec
 
 gij_SOURCES = gij.cc
 ## We need -nodefaultlibs because we want to avoid gcj's `-lgcj'.  We
@@ -703,7 +776,6 @@
 
 rmic_SOURCES =
 ## This is a dummy definition.
-EXTRA_rmic_SOURCES = $(rmi_java_source_files)
 rmic_LDFLAGS = --main=gnu.java.rmi.rmic.RMIC \
 	-rpath $(toolexeclibdir) -shared-libgcc $(THREADLDFLAGS)
 rmic_LINK = $(GCJLINK)
@@ -715,7 +787,6 @@
 
 rmiregistry_SOURCES =
 ## This is a dummy definition.
-EXTRA_rmiregistry_SOURCES = $(rmi_java_source_files)
 rmiregistry_LDFLAGS = --main=gnu.java.rmi.registry.RegistryImpl \
 	-rpath $(toolexeclibdir) -shared-libgcc $(THREADLDFLAGS)
 rmiregistry_LINK = $(GCJLINK)
@@ -725,74 +796,6 @@
 ## linking this program.
 rmiregistry_DEPENDENCIES = libgcj.la libgcj.spec
 
-# The Unicode consortium does not permit re-distributing the file JIS0201.TXT.
-# You can get it from ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA/JIS/.
-
-$(srcdir)/$(CONVERT_DIR)/JIS0201.h:  # $(CONVERT_DIR)/JIS0201.TXT
-	echo '/* This file is automatically generated from Unicode tables */' > tmp-0201; \
-	tr  -d '\r' <$(CONVERT_DIR)/JIS0201.TXT \
-	| sed -n -e 's|\(0x..\).*\(0x....\).*#\(.*\)$$|MAP(0x00, \1, \2)  /*\3 */|p' \
-	>> tmp-0201; \
-	mv tmp-0201 $(srcdir)/$(CONVERT_DIR)/JIS0201.h
-
-# The Unicode consortium does not permit re-distributing the file JIS0208.TXT.
-# You can get it from ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA/JIS/.
-
-$(srcdir)/$(CONVERT_DIR)/JIS0208.h:  # $(CONVERT_DIR)/JIS0208.TXT
-	echo '/* This file is automatically generated from Unicode tables */' > tmp-0208; \
-	tr  -d '\r' <$(CONVERT_DIR)/JIS0208.TXT \
-	| sed -n -e 's|\(0x....\).*0x\(..\)\(..\).*\(0x....\).*#\(.*\)$$|MAP(0x\2, 0x\3, \4)  /*\5 */|p' \
-	>> tmp-0208; \
-	mv tmp-0208 $(srcdir)/$(CONVERT_DIR)/JIS0208.h
-
-# The Unicode consortium does not permit re-distributing the file JIS0212.TXT.
-# You can get it from ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA/JIS/.
-
-$(srcdir)/$(CONVERT_DIR)/JIS0212.h:  # $(CONVERT_DIR)/JIS0212.TXT
-	echo '/* This file is automatically generated from Unicode tables */' > tmp-0212; \
-	tr  -d '\r' <$(CONVERT_DIR)/JIS0212.TXT \
-	| sed -n -e 's|0x\(..\)\(..\).*\(0x....\).*#\(.*\)$$|MAP(0x\1, 0x\2, \3)  /*\4 */|p' \
-	>> tmp-0212; \
-	mv tmp-0212 $(srcdir)/$(CONVERT_DIR)/JIS0212.h
-
-
-gen_from_JIS_SOURCES =
-EXTRA_gen_from_JIS_SOURCES = $(srcdir)/$(CONVERT_DIR)/gen-from-JIS.c \
-		$(srcdir)/$(CONVERT_DIR)/make-trie.c \
-		$(srcdir)/$(CONVERT_DIR)/JIS0201.h \
-		$(srcdir)/$(CONVERT_DIR)/JIS0208.h \
-		$(srcdir)/$(CONVERT_DIR)/JIS0212.h
-gen_from_JIS_LDADD = $(CONVERT_DIR)/gen-from-JIS.o $(CONVERT_DIR)/make-trie.o
-gen_from_JIS_DEPENDENCIES = $(CONVERT_DIR)/gen-from-JIS.o \
-		$(CONVERT_DIR)/make-trie.o
-
-$(CONVERT_DIR)/gen-from-JIS.o: $(srcdir)/$(CONVERT_DIR)/gen-from-JIS.c \
-		$(srcdir)/$(CONVERT_DIR)/JIS0201.h \
-		$(srcdir)/$(CONVERT_DIR)/JIS0208.h \
-		$(srcdir)/$(CONVERT_DIR)/JIS0212.h
-	$(COMPILE) -c -o $(CONVERT_DIR)/gen-from-JIS.o \
-		$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.c
-
-$(CONVERT_DIR)/make-trie.o: $(srcdir)/$(CONVERT_DIR)/make-trie.c
-	$(COMPILE) -c -o $(CONVERT_DIR)/make-trie.o \
-		$(srcdir)/$(CONVERT_DIR)/make-trie.c
-
-if NATIVE
-if MAINTAINER_MODE
-
-$(srcdir)/$(CONVERT_DIR)/JIS0208_to_Unicode.cc: ./gen-from-JIS$(EXEEXT)
-	 ./gen-from-JIS JIS0208>$(srcdir)/$(CONVERT_DIR)/JIS0208_to_Unicode.cc
-
-$(srcdir)/$(CONVERT_DIR)/JIS0212_to_Unicode.cc: ./gen-from-JIS$(EXEEXT)
-	 ./gen-from-JIS JIS0212>$(srcdir)/$(CONVERT_DIR)/JIS0212_to_Unicode.cc
-
-$(srcdir)/$(CONVERT_DIR)/Unicode_to_JIS.cc: ./gen-from-JIS$(EXEEXT)
-	 ./gen-from-JIS toJIS>$(srcdir)/$(CONVERT_DIR)/Unicode_to_JIS.cc
-
-endif # MAINTAINER_MODE
-endif # NATIVE
-
-
 ## ################################################################
 
 ##
@@ -1604,7 +1607,7 @@
 gnu/java/rmi/dgc/DGCImpl.java \
 gnu/java/rmi/dgc/DGCImpl_Skel.java \
 gnu/java/rmi/dgc/DGCImpl_Stub.java \
-gnu/java/rmi/registry/RegistryImpl.java	\
+gnu/java/rmi/registry/RegistryImpl.java \
 gnu/java/rmi/registry/RegistryImpl_Skel.java \
 gnu/java/rmi/registry/RegistryImpl_Stub.java \
 gnu/java/rmi/rmic/Compile_gcj.java \
@@ -1780,7 +1783,7 @@
 
 ## Java files which are created by configure and thus are in the build
 ## directory.
-built_java_source_files = java/lang/ConcreteProcess.java \
+generated_java_source_files = java/lang/ConcreteProcess.java \
                           gnu/classpath/Configuration.java
 
 ## Java files in the core packages java.lang, java.io, and java.util.
@@ -2653,7 +2656,7 @@
 java_source_files = $(special_java_source_files) $(ordinary_java_source_files)
 
 ## Math library: C, not C++
-c_source_files = \
+math_source_files = \
   java/lang/dtoa.c        java/lang/k_rem_pio2.c  java/lang/s_tan.c       \
   java/lang/e_acos.c      java/lang/k_sin.c       java/lang/strtod.c      \
   java/lang/e_asin.c      java/lang/k_tan.c       java/lang/w_acos.c      \
@@ -2668,8 +2671,6 @@
   java/lang/e_sqrt.c      java/lang/s_scalbn.c    java/lang/sf_rint.c     \
   java/lang/k_cos.c       java/lang/s_sin.c       java/lang/sf_fabs.c
 
-extra_cc_source_files = $(EXTRA_CC_FILES)
-
 #java/awt/natToolkit.cc
 
 ## This lists all the C++ source files in subdirectories.
@@ -2734,7 +2735,7 @@
 java/util/zip/natDeflater.cc \
 java/util/zip/natInflater.cc
 
-x_java_source_files = \
+xlib_java_source_files = \
 gnu/gcj/xlib/Clip.java \
 gnu/gcj/xlib/Colormap.java \
 gnu/gcj/xlib/Display.java \
@@ -2769,7 +2770,7 @@
 gnu/awt/xlib/XPanelPeer.java \
 gnu/awt/xlib/XToolkit.java
 
-x_nat_source_files = \
+xlib_nat_source_files = \
 gnu/gcj/xlib/natClip.cc \
 gnu/gcj/xlib/natColormap.cc \
 gnu/gcj/xlib/natDisplay.cc \
@@ -2844,7 +2845,7 @@
 ## the C++ code whenever any .java file is touched.
 ## Also force all the class files to build first. This makes them build in
 ## the right order to improve performance.
-all-recursive: libgcj-@gcc_version@.jar $(nat_headers) $(x_nat_headers)
+all-recursive: libgcj-@gcc_version@.jar $(nat_headers) $(xlib_nat_headers)
 
 ## ################################################################
 

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