This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
PATCH: PR libgcj/30550: Missing dependencies for ecjx target
- From: "H. J. Lu" <hjl at lucon dot org>
- To: gcc-patches at gcc dot gnu dot org
- Cc: java-patches at gcc dot gnu dot org
- Date: Mon, 22 Jan 2007 19:02:04 -0800
- Subject: PATCH: PR libgcj/30550: Missing dependencies for ecjx target
libjava/configure.ac has
LIBGCJ_SPEC="%{s-bc-abi:} -lgcj"
if test "$use_libgcj_bc" = yes; then
LIBGCJ_SPEC="%{s-bc-abi:-lgcj_bc;:-lgcj}"
fi
AC_SUBST(LIBGCJ_SPEC)
libgcj_bc will be used with libgcj.spec if $use_libgcj_bc is yes.
But there is no such dependency in Makefile.am for targets depend
on libgcj.spec. This patch adds libgcj_bc dependency when
$use_libgcj_bc is yes.
H.J.
----
2007-01-22 H.J. Lu <hongjiu.lu@intel.com>
PR libgcj/30550
* Makefile.am (depend_on_libgcj_bc): New.
(libgij_la_DEPENDENCIES): Add $(depend_on_libgcj_bc)
(libgcj_tools_la_DEPENDENCIES): Likewise.
(libjvm_la_DEPENDENCIES): Likewise.
(lib_gnu_awt_xlib_la_DEPENDENCIES): Likewise.
(jv_convert_DEPENDENCIES): Likewise.
(gcj_dbtool_DEPENDENCIES): Likewise.
(ecjx_DEPENDENCIES): Likewise.
* Makefile.in: Regenerated.
--- libjava/Makefile.am.ejcx 2007-01-22 13:26:14.000000000 -0800
+++ libjava/Makefile.am 2007-01-22 17:15:27.000000000 -0800
@@ -40,6 +40,9 @@ toolexecmainlib_DATA = libgcj.spec
if USE_LIBGCJ_BC
toolexeclib_LTLIBRARIES += libgcj_bc.la
+depend_on_libgcj_bc = libgcj_bc.la
+else
+depend_on_libgcj_bc =
endif
if XLIB_AWT
@@ -178,7 +181,7 @@ BOOTCLASSPATH = $(srcdir)/classpath/lib
##
libgij_la_SOURCES = gij.cc
-libgij_la_DEPENDENCIES = libgcj.la libgcj.spec
+libgij_la_DEPENDENCIES = libgcj.la libgcj.spec $(depend_on_libgcj_bc)
## See jv_convert_LDADD.
libgij_la_LIBADD = -L$(here)/.libs libgcj.la
## The mysterious backslash in the grep pattern is consumed by make.
@@ -259,12 +262,12 @@ libgcj_tools_la_GCJFLAGS = $(AM_GCJFLAGS
libgcj_tools_la_LDFLAGS = -rpath $(toolexeclibdir) \
-version-info `grep -v '^\#' $(srcdir)/libtool-version` \
$(LIBGCJ_LD_SYMBOLIC_FUNCTIONS)
-libgcj_tools_la_DEPENDENCIES = libgcj.la libgcj.spec
+libgcj_tools_la_DEPENDENCIES = libgcj.la libgcj.spec $(depend_on_libgcj_bc)
libgcj_tools_la_LINK = $(LIBLINK)
## libjvm.so
libjvm_la_SOURCES = jni-libjvm.cc
-libjvm_la_DEPENDENCIES = libgcj.la libgcj.spec
+libjvm_la_DEPENDENCIES = libgcj.la libgcj.spec $(depend_on_libgcj_bc)
## See jv_convert_LDADD.
libjvm_la_LIBADD = -L$(here)/.libs libgcj.la
libjvm_la_LDFLAGS = -avoid-version $(LIBGCJ_LD_SYMBOLIC)
@@ -282,7 +285,7 @@ $(db_name): gcj-dbtool$(EXEEXT)
lib_gnu_awt_xlib_la_SOURCES = $(xlib_nat_source_files)
lib_gnu_awt_xlib_la_LIBADD = gnu/awt/xlib.lo gnu/gcj/xlib.lo
lib_gnu_awt_xlib_la_DEPENDENCIES = libgcj-$(gcc_version).jar \
- libgcj.la libgcj.spec \
+ libgcj.la libgcj.spec $(depend_on_libgcj_bc) \
$(lib_gnu_awt_xlib_la_LIBADD)
## We require libstdc++-v3 to be in the same build tree.
lib_gnu_awt_xlib_la_CPPFLAGS = \
@@ -619,7 +622,7 @@ jv_convert_LINK = $(GCJLINK)
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 = libgcj.la libgcj.spec
+jv_convert_DEPENDENCIES = libgcj.la libgcj.spec $(depend_on_libgcj_bc)
gcj_dbtool_SOURCES = \
gnu/gcj/tools/gcj_dbtool/natMain.cc
@@ -640,7 +643,8 @@ gcj_dbtool_LINK = $(GCJLINK)
gcj_dbtool_LDADD = gnu/gcj/tools/gcj_dbtool.lo -L$(here)/.libs libgcj.la
## Depend on the spec file to make sure it is up to date before
## linking this program.
-gcj_dbtool_DEPENDENCIES = gnu/gcj/tools/gcj_dbtool.lo libgcj.la libgcj.spec
+gcj_dbtool_DEPENDENCIES = gnu/gcj/tools/gcj_dbtool.lo libgcj.la \
+ libgcj.spec $(depend_on_libgcj_bc)
gij_SOURCES =
## We need -nodefaultlibs because we want to avoid gcj's `-lgcj'. We
@@ -677,7 +681,7 @@ ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) $(ECJ_
endif !ENABLE_SHARED
ecjx_LDADD = -L$(here)/.libs libgcj.la
-ecjx_DEPENDENCIES = libgcj.la libgcj.spec
+ecjx_DEPENDENCIES = libgcj.la libgcj.spec $(depend_on_libgcj_bc)
else !NATIVE
--- libjava/Makefile.in.ejcx 2007-01-22 13:26:14.000000000 -0800
+++ libjava/Makefile.in 2007-01-22 17:16:45.000000000 -0800
@@ -795,6 +795,8 @@ libexecsubdir = $(libexecdir)/gcc/$(targ
toolexeclib_LTLIBRARIES = libgcj.la libgij.la libgcj-tools.la \
$(am__append_2) $(am__append_3)
toolexecmainlib_DATA = libgcj.spec
+@USE_LIBGCJ_BC_FALSE@depend_on_libgcj_bc =
+@USE_LIBGCJ_BC_TRUE@depend_on_libgcj_bc = libgcj_bc.la
dbexec_LTLIBRARIES = libjvm.la
pkgconfigdir = $(libdir)/pkgconfig
jardir = $(datadir)/java
@@ -858,7 +860,7 @@ AM_CPPFLAGS = -I$(top_srcdir) \
BOOTCLASSPATH = $(srcdir)/classpath/lib
libgij_la_SOURCES = gij.cc
-libgij_la_DEPENDENCIES = libgcj.la libgcj.spec
+libgij_la_DEPENDENCIES = libgcj.la libgcj.spec $(depend_on_libgcj_bc)
libgij_la_LIBADD = -L$(here)/.libs libgcj.la
libgij_la_LDFLAGS = -rpath $(toolexeclibdir) \
-version-info `grep -v '^\#' $(srcdir)/libtool-version` $(LIBGCJ_LD_SYMBOLIC)
@@ -903,16 +905,16 @@ libgcj_tools_la_LDFLAGS = -rpath $(toole
-version-info `grep -v '^\#' $(srcdir)/libtool-version` \
$(LIBGCJ_LD_SYMBOLIC_FUNCTIONS)
-libgcj_tools_la_DEPENDENCIES = libgcj.la libgcj.spec
+libgcj_tools_la_DEPENDENCIES = libgcj.la libgcj.spec $(depend_on_libgcj_bc)
libgcj_tools_la_LINK = $(LIBLINK)
libjvm_la_SOURCES = jni-libjvm.cc
-libjvm_la_DEPENDENCIES = libgcj.la libgcj.spec
+libjvm_la_DEPENDENCIES = libgcj.la libgcj.spec $(depend_on_libgcj_bc)
libjvm_la_LIBADD = -L$(here)/.libs libgcj.la
libjvm_la_LDFLAGS = -avoid-version $(LIBGCJ_LD_SYMBOLIC)
lib_gnu_awt_xlib_la_SOURCES = $(xlib_nat_source_files)
lib_gnu_awt_xlib_la_LIBADD = gnu/awt/xlib.lo gnu/gcj/xlib.lo
lib_gnu_awt_xlib_la_DEPENDENCIES = libgcj-$(gcc_version).jar \
- libgcj.la libgcj.spec \
+ libgcj.la libgcj.spec $(depend_on_libgcj_bc) \
$(lib_gnu_awt_xlib_la_LIBADD)
lib_gnu_awt_xlib_la_CPPFLAGS = \
@@ -7770,7 +7772,7 @@ jv_convert_LDFLAGS = --main=gnu.gcj.conv
jv_convert_LINK = $(GCJLINK)
jv_convert_LDADD = -L$(here)/.libs libgcj.la
-jv_convert_DEPENDENCIES = libgcj.la libgcj.spec
+jv_convert_DEPENDENCIES = libgcj.la libgcj.spec $(depend_on_libgcj_bc)
gcj_dbtool_SOURCES = \
gnu/gcj/tools/gcj_dbtool/natMain.cc
@@ -7779,7 +7781,9 @@ gcj_dbtool_LDFLAGS = --main=gnu.gcj.tool
gcj_dbtool_LINK = $(GCJLINK)
gcj_dbtool_LDADD = gnu/gcj/tools/gcj_dbtool.lo -L$(here)/.libs libgcj.la
-gcj_dbtool_DEPENDENCIES = gnu/gcj/tools/gcj_dbtool.lo libgcj.la libgcj.spec
+gcj_dbtool_DEPENDENCIES = gnu/gcj/tools/gcj_dbtool.lo libgcj.la \
+ libgcj.spec $(depend_on_libgcj_bc)
+
gij_SOURCES =
gij_LDFLAGS = -rpath $(libdir)/gcj-$(gcc_version) -rpath $(toolexeclibdir) \
-shared-libgcc $(THREADLDFLAGS)
@@ -7799,7 +7803,7 @@ ECJX_BASE_FLAGS = -findirect-dispatch \
@NATIVE_FALSE@ecjx_LDADD =
@NATIVE_TRUE@ecjx_LDADD = -L$(here)/.libs libgcj.la
@NATIVE_FALSE@ecjx_DEPENDENCIES =
-@NATIVE_TRUE@ecjx_DEPENDENCIES = libgcj.la libgcj.spec
+@NATIVE_TRUE@ecjx_DEPENDENCIES = libgcj.la libgcj.spec $(depend_on_libgcj_bc)
gappletviewer_SOURCES =
gappletviewer_LDFLAGS = --main=gnu.classpath.tools.appletviewer.Main \
-rpath $(toolexeclibdir) -shared-libgcc $(THREADLDFLAGS)