configure.ac (ANONVERSCRIPT): Handle sun style.

* configure.ac (ANONVERSCRIPT): Handle sun style.
	Define ANONVERSCRIPT_GNU, ANONVERSCRIPT_SUN automake conditionals.
	* configure: Regenerate.

	* Makefile.am [ANONVERSCRIPT]: Protect GNU section with
	ANONVERSCRIPT_GNU.
	Introduce per-library $(lib)_la_version_arg, $(lib)_la_version_dep
	variables.
	[ANONVERSCRIPT_GNU] (version_arg): Default ld arg for version map.
	(version_dep): Likewise for dependency.
	Use them to set the per-library variables.
	[!ANONVERSCRIPT]: Provide them vor the unversioned case.
	[ANONVERSCRIPT_SUN]: Handle Sun symbol versioning.
	(libgcj_la_DEPENDENCIES): Unconditionally use
	$(libgcj_la_version_dep).
	(libgcj_la_LINK): Add $(libgcj_la_version_arg).
	(libgcj_noncore_la_DEPENDENCIES): Unconditionally use
	$(libgcj_la_version_dep).
	(libgcj_tools_la_LIBADD): Move -lm ...
	(libgcj_tools_la_LDFLAGS): ... here.
	(libgcj_tools_la_DEPENDENCIES): Add
	$(libgcj_tools_la_version_dep).
	(libgcj_tools_la_LINK): Add $(libgcj_tools_la_version_arg).
	(lib_gnu_awt_xlib_la_DEPENDENCIES): Add
	$(lib_gnu_awt_xlib_la_version_dep).
	(lib_gnu_awt_xlib_la_LINK): Add
	$(lib_gnu_awt_xlib_la_version_arg).
	(libgcj_bc_la_DEPENDENCIES): Add $(libgcj_bc_la_version_dep).
	(libgcj_bc_la_LINK): $(libgcj_bc_la_version_arg).
	[ANONVERSCRIPT && ANONVERSCRIPT_SUN] (%.ver-sun): New pattern rule.
	* Makefile.in: Regenerate.

	* libgcj.ver: Reformat.

From-SVN: r161843
This commit is contained in:
Rainer Orth 2010-07-05 17:22:52 +00:00 committed by Rainer Orth
parent 6d28b93370
commit 22a4778a0d
6 changed files with 310 additions and 83 deletions

View File

@ -1,3 +1,39 @@
2010-07-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure.ac (ANONVERSCRIPT): Handle sun style.
Define ANONVERSCRIPT_GNU, ANONVERSCRIPT_SUN automake conditionals.
* configure: Regenerate.
* Makefile.am [ANONVERSCRIPT]: Protect GNU section with
ANONVERSCRIPT_GNU.
Introduce per-library $(lib)_la_version_arg, $(lib)_la_version_dep
variables.
[ANONVERSCRIPT_GNU] (version_arg): Default ld arg for version map.
(version_dep): Likewise for dependency.
Use them to set the per-library variables.
[!ANONVERSCRIPT]: Provide them vor the unversioned case.
[ANONVERSCRIPT_SUN]: Handle Sun symbol versioning.
(libgcj_la_DEPENDENCIES): Unconditionally use
$(libgcj_la_version_dep).
(libgcj_la_LINK): Add $(libgcj_la_version_arg).
(libgcj_noncore_la_DEPENDENCIES): Unconditionally use
$(libgcj_la_version_dep).
(libgcj_tools_la_LIBADD): Move -lm ...
(libgcj_tools_la_LDFLAGS): ... here.
(libgcj_tools_la_DEPENDENCIES): Add
$(libgcj_tools_la_version_dep).
(libgcj_tools_la_LINK): Add $(libgcj_tools_la_version_arg).
(lib_gnu_awt_xlib_la_DEPENDENCIES): Add
$(lib_gnu_awt_xlib_la_version_dep).
(lib_gnu_awt_xlib_la_LINK): Add
$(lib_gnu_awt_xlib_la_version_arg).
(libgcj_bc_la_DEPENDENCIES): Add $(libgcj_bc_la_version_dep).
(libgcj_bc_la_LINK): $(libgcj_bc_la_version_arg).
[ANONVERSCRIPT && ANONVERSCRIPT_SUN] (%.ver-sun): New pattern rule.
* Makefile.in: Regenerate.
* libgcj.ver: Reformat.
2010-06-10 Peter O'Gorman <peter@pogma.com>
* configure.ac: Set SYSTEMSPEC so that -allow_stack_execute is not

View File

@ -291,7 +291,45 @@ extra_ldflags_libjava = @extra_ldflags_libjava@
extra_ldflags = @extra_ldflags@
if ANONVERSCRIPT
extra_ldflags_libjava += -Wl,--version-script=$(srcdir)/libgcj.ver
if ANONVERSCRIPT_GNU
version_arg = -Wl,--version-script=$(srcdir)/libgcj.ver
libgcj_la_version_arg = $(version_arg)
libgcj_tools_la_version_arg = $(version_arg)
lib_gnu_awt_xlib_la_version_arg = $(version_arg)
libgcj_bc_la_version_arg = $(version_arg)
version_dep = $(srcdir)/libgcj.ver
libgcj_la_version_dep = $(version_dep)
libgcj_tools_la_version_dep = $(version_dep)
lib_gnu_awt_xlib_la_version_dep = $(version_dep)
libgcj_bc_la_version_dep = $(version_dep)
endif
if ANONVERSCRIPT_SUN
libgcj_la_version_arg = -Wl,-M,libgcj.ver-sun
libgcj_tools_la_version_arg = -Wl,-M,libgcj_tools.ver-sun
lib_gnu_awt_xlib_la_version_arg = -Wl,-M,lib_gnu_awt_xlib.ver-sun
libgcj_bc_la_version_arg = -Wl,-M,libgcj_bc.ver-sun
libgcj_la_version_dep = libgcj.ver-sun
libgcj_tools_la_version_dep = libgcj_tools.ver-sun
lib_gnu_awt_xlib_la_version_dep = lib_gnu_awt_xlib.ver-sun
libgcj_bc_la_version_dep = libgcj_bc.ver-sun
# The pattern rule necessary to build the *.ver-sun mapfiles is at the end
# of the file, see below.
endif
else
version_arg =
libgcj_la_version_arg = $(version_arg)
libgcj_tools_la_version_arg = $(version_arg)
lib_gnu_awt_xlib_la_version_arg = $(version_arg)
libgcj_bc_la_version_arg = $(version_arg)
version_dep =
libgcj_la_version_dep = $(version_dep)
libgcj_tools_la_version_dep = $(version_dep)
lib_gnu_awt_xlib_la_version_dep = $(version_dep)
libgcj_bc_la_version_dep = $(version_dep)
endif
LTLDFLAGS = $(shell $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
@ -463,11 +501,9 @@ libgcj_la_DEPENDENCIES = libgcj-$(gcc_version).jar \
java/process-$(PLATFORM).lo \
$(ALL_PACKAGE_SOURCE_FILES_LO) \
$(LIBLTDL) $(libgcj_la_LIBADD) \
$(LIBJAVA_CORE_EXTRA)
if ANONVERSCRIPT
libgcj_la_DEPENDENCIES += $(srcdir)/libgcj.ver
endif
libgcj_la_LINK = $(LIBLINK) $(libgcj_la_LDFLAGS)
$(LIBJAVA_CORE_EXTRA) \
$(libgcj_la_version_dep)
libgcj_la_LINK = $(LIBLINK) $(libgcj_la_LDFLAGS) $(libgcj_la_version_arg)
## A hack to make sure the various gcj-related macros, like
## LTGCJCOMPILE, are defined by automake. This is never actually
@ -490,10 +526,7 @@ libgcj_noncore_la_SOURCES =
libgcj_noncore_la_LDFLAGS = $(libgcj_la_LDFLAGS)
libgcj_noncore_la_LIBADD = $(libgcj_noncore_la_LIBADD_SUBOBJECTS) libgcj.la
libgcj_noncore_la_DEPENDENCIES = libgcj-$(gcc_version).jar $(LIBLTDL) \
$(libgcj_noncore_la_LIBADD) libgcj.la
if ANONVERSCRIPT
libgcj_noncore_la_DEPENDENCIES += $(srcdir)/libgcj.ver
endif
$(libgcj_noncore_la_LIBADD) libgcj.la $(libgcj_la_version_dep)
libgcj_noncore_la_LINK = $(libgcj_la_LINK)
endif # BUILD_SUBLIBS
@ -509,13 +542,15 @@ libgcj_tools_la_GCJFLAGS = $(AM_GCJFLAGS) -findirect-dispatch \
-fsource-filename=$(here)/classpath/tools/all-classes.lst
libgcj_tools_la_LDFLAGS = -rpath $(toolexeclibdir) \
-version-info `grep -v '^\#' $(srcdir)/libtool-version` \
$(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) $(LIBJAVA_LDFLAGS_NOUNDEF)
libgcj_tools_la_LIBADD = libgcj.la -lm
libgcj_tools_la_DEPENDENCIES = libgcj.la libgcj.spec
$(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) $(LIBJAVA_LDFLAGS_NOUNDEF) -lm
libgcj_tools_la_LIBADD = libgcj.la
libgcj_tools_la_DEPENDENCIES = libgcj.la libgcj.spec \
$(libgcj_tools_la_version_dep)
if BUILD_SUBLIBS
libgcj_tools_la_DEPENDENCIES += libgcj-noncore.la
endif
libgcj_tools_la_LINK = $(LIBLINK) $(libgcj_tools_la_LDFLAGS)
libgcj_tools_la_LINK = $(LIBLINK) $(libgcj_tools_la_LDFLAGS) \
$(libgcj_tools_la_version_arg)
## libjvm.so
libjvm_la_SOURCES = jni-libjvm.cc
@ -543,6 +578,7 @@ 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 \
$(lib_gnu_awt_xlib_la_version_dep) \
$(lib_gnu_awt_xlib_la_LIBADD)
if BUILD_SUBLIBS
lib_gnu_awt_xlib_la_DEPENDENCIES += libgcj-noncore.la
@ -558,7 +594,8 @@ lib_gnu_awt_xlib_la_LDFLAGS = ../libstdc++-v3/src/libstdc++.la \
@X_PRE_LIBS@ @X_LIBS@ -lX11 @X_EXTRA_LIBS@ \
-rpath $(toolexeclibdir) $(LIBJAVA_LDFLAGS_NOUNDEF) \
-version-info `grep -v '^\#' $(srcdir)/libtool-version` $(LIBGCJ_LD_SYMBOLIC)
lib_gnu_awt_xlib_la_LINK = $(LIBLINK) $(lib_gnu_awt_xlib_la_LDFLAGS)
lib_gnu_awt_xlib_la_LINK = $(LIBLINK) $(lib_gnu_awt_xlib_la_LDFLAGS) \
$(lib_gnu_awt_xlib_la_version_arg)
## Support for libgcj_bc: dummy shared library.
##
@ -567,8 +604,9 @@ lib_gnu_awt_xlib_la_LINK = $(LIBLINK) $(lib_gnu_awt_xlib_la_LDFLAGS)
libgcj_bc_la_SOURCES = libgcj_bc.c
libgcj_bc_la_LDFLAGS = -rpath $(toolexeclibdir) -no-static -version-info 1:0:0 \
$(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) $(LIBJAVA_LDFLAGS_NOUNDEF)
libgcj_bc_la_DEPENDENCIES = libgcj.la
libgcj_bc_la_LINK = $(LIBLINK) $(libgcj_bc_la_LDFLAGS)
libgcj_bc_la_DEPENDENCIES = libgcj.la $(libgcj_bc_la_version_dep)
libgcj_bc_la_LINK = $(LIBLINK) $(libgcj_bc_la_LDFLAGS) \
$(libgcj_bc_la_version_arg)
## This is specific to Linux/{Free,Net,Open}BSD/Hurd and perhaps few others.
## USE_LIBGCJ_BC shouldn't be set on other targets.
libgcj_bc_dummy_LINK = $(CC) -L$(here)/.libs $(CFLAGS) $(LDFLAGS) -shared \
@ -1574,3 +1612,22 @@ distclean-multi:
$(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean
maintainer-clean-multi:
$(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean
if ANONVERSCRIPT
if ANONVERSCRIPT_SUN
# This must be at the end of the Makefile, otherwise .SECONDEXPANSION
# causes expansion of filenames with $ in their names, which breaks the build.
# .SECONDEXPANSION is necessary to allow the use of automatic variables ($@
# in this case) in the requisites of pattern rules.
.SECONDEXPANSION:
%.ver-sun : $(srcdir)/libgcj.ver \
$(top_srcdir)/../contrib/make_sunver.pl \
$$($$(basename $$@)_la_OBJECTS) $$($$(basename $$@)_la_LIBADD)
perl $(top_srcdir)/../contrib/make_sunver.pl \
$(srcdir)/libgcj.ver \
`echo $($(basename $@)_la_OBJECTS) $($(basename $@)_la_LIBADD) | \
sed 's,\([^/ ]*\)\.l\([ao]\),.libs/\1.\2,g'` \
> $@ || (rm -f $@ ; exit 1)
endif
endif

View File

@ -49,22 +49,19 @@ target_triplet = @target@
@INSTALL_BINARIES_FALSE@@NATIVE_TRUE@am__append_7 = $(bin_programs)
@INSTALL_AOT_RPM_TRUE@am__append_8 = contrib/aot-compile-rpm
@BUILD_ECJ1_TRUE@libexecsub_PROGRAMS = ecjx$(EXEEXT)
@ANONVERSCRIPT_TRUE@am__append_9 = -Wl,--version-script=$(srcdir)/libgcj.ver
@USING_GCC_TRUE@am__append_10 = $(WARNINGS)
@BUILD_SUBLIBS_TRUE@am__append_11 = libgcj-noncore.la
@USING_BOEHMGC_TRUE@am__append_12 = boehm.cc
@USING_NOGC_TRUE@am__append_13 = nogc.cc
@USING_POSIX_PLATFORM_TRUE@am__append_14 = posix.cc
@USING_WIN32_PLATFORM_TRUE@am__append_15 = win32.cc
@USING_DARWIN_CRT_TRUE@am__append_16 = darwin.cc
@USING_POSIX_THREADS_TRUE@am__append_17 = posix-threads.cc
@USING_WIN32_THREADS_TRUE@am__append_18 = win32-threads.cc
@USING_NO_THREADS_TRUE@am__append_19 = no-threads.cc
@ANONVERSCRIPT_TRUE@am__append_20 = $(srcdir)/libgcj.ver
@ANONVERSCRIPT_TRUE@@BUILD_SUBLIBS_TRUE@am__append_21 = $(srcdir)/libgcj.ver
@BUILD_SUBLIBS_TRUE@am__append_22 = libgcj-noncore.la
@BUILD_SUBLIBS_TRUE@am__append_23 = libgcj-noncore.la
@BUILD_SUBLIBS_TRUE@am__append_24 = libgcj-noncore.la
@USING_GCC_TRUE@am__append_9 = $(WARNINGS)
@BUILD_SUBLIBS_TRUE@am__append_10 = libgcj-noncore.la
@USING_BOEHMGC_TRUE@am__append_11 = boehm.cc
@USING_NOGC_TRUE@am__append_12 = nogc.cc
@USING_POSIX_PLATFORM_TRUE@am__append_13 = posix.cc
@USING_WIN32_PLATFORM_TRUE@am__append_14 = win32.cc
@USING_DARWIN_CRT_TRUE@am__append_15 = darwin.cc
@USING_POSIX_THREADS_TRUE@am__append_16 = posix-threads.cc
@USING_WIN32_THREADS_TRUE@am__append_17 = win32-threads.cc
@USING_NO_THREADS_TRUE@am__append_18 = no-threads.cc
@BUILD_SUBLIBS_TRUE@am__append_19 = libgcj-noncore.la
@BUILD_SUBLIBS_TRUE@am__append_20 = libgcj-noncore.la
@BUILD_SUBLIBS_TRUE@am__append_21 = libgcj-noncore.la
DIST_COMMON = $(srcdir)/sources.am NEWS README ChangeLog THANKS \
$(srcdir)/Makefile.in $(srcdir)/Makefile.am \
$(top_srcdir)/configure $(am__configure_deps) \
@ -80,14 +77,14 @@ DIST_COMMON = $(srcdir)/sources.am NEWS README ChangeLog THANKS \
$(top_srcdir)/gnu/java/nio/natVMPipe${PLATFORM}.cc \
$(top_srcdir)/gnu/java/nio/natVMSelector${PLATFORM}.cc \
$(srcdir)/../depcomp
@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@am__append_25 = gen-from-JIS
@BUILD_SUBLIBS_TRUE@am__append_26 = libgcj-noncore.la
@BUILD_SUBLIBS_TRUE@am__append_27 = libgcj-noncore.la
@BUILD_SUBLIBS_TRUE@am__append_28 = libgcj-noncore.la
@BUILD_SUBLIBS_TRUE@@NATIVE_TRUE@am__append_29 = libgcj-noncore.la
@NATIVE_TRUE@@USE_LIBGCJ_BC_TRUE@am__append_30 = libgcj_bc.la
@NATIVE_TRUE@@USE_LIBGCJ_BC_FALSE@am__append_31 = libgcj.la
@XLIB_AWT_TRUE@am__append_32 = $(xlib_nat_headers)
@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@am__append_22 = gen-from-JIS
@BUILD_SUBLIBS_TRUE@am__append_23 = libgcj-noncore.la
@BUILD_SUBLIBS_TRUE@am__append_24 = libgcj-noncore.la
@BUILD_SUBLIBS_TRUE@am__append_25 = libgcj-noncore.la
@BUILD_SUBLIBS_TRUE@@NATIVE_TRUE@am__append_26 = libgcj-noncore.la
@NATIVE_TRUE@@USE_LIBGCJ_BC_TRUE@am__append_27 = libgcj_bc.la
@NATIVE_TRUE@@USE_LIBGCJ_BC_FALSE@am__append_28 = libgcj.la
@XLIB_AWT_TRUE@am__append_29 = $(xlib_nat_headers)
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/libltdl/acinclude.m4 \
@ -704,7 +701,7 @@ docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
extra_ldflags = @extra_ldflags@
extra_ldflags_libjava = @extra_ldflags_libjava@ $(am__append_9)
extra_ldflags_libjava = @extra_ldflags_libjava@
gcc_suffix = @gcc_suffix@
gcjsubdir = @gcjsubdir@
gxx_include_dir = @gxx_include_dir@
@ -952,6 +949,37 @@ db_pathtail = $(gcjsubdir)/$(db_name)
bin_SCRIPTS = contrib/rebuild-gcj-db contrib/aot-compile \
$(am__append_8)
GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated
# The pattern rule necessary to build the *.ver-sun mapfiles is at the end
# of the file, see below.
@ANONVERSCRIPT_FALSE@version_arg =
@ANONVERSCRIPT_GNU_TRUE@@ANONVERSCRIPT_TRUE@version_arg = -Wl,--version-script=$(srcdir)/libgcj.ver
@ANONVERSCRIPT_FALSE@libgcj_la_version_arg = $(version_arg)
@ANONVERSCRIPT_GNU_TRUE@@ANONVERSCRIPT_TRUE@libgcj_la_version_arg = $(version_arg)
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@libgcj_la_version_arg = -Wl,-M,libgcj.ver-sun
@ANONVERSCRIPT_FALSE@libgcj_tools_la_version_arg = $(version_arg)
@ANONVERSCRIPT_GNU_TRUE@@ANONVERSCRIPT_TRUE@libgcj_tools_la_version_arg = $(version_arg)
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@libgcj_tools_la_version_arg = -Wl,-M,libgcj_tools.ver-sun
@ANONVERSCRIPT_FALSE@lib_gnu_awt_xlib_la_version_arg = $(version_arg)
@ANONVERSCRIPT_GNU_TRUE@@ANONVERSCRIPT_TRUE@lib_gnu_awt_xlib_la_version_arg = $(version_arg)
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@lib_gnu_awt_xlib_la_version_arg = -Wl,-M,lib_gnu_awt_xlib.ver-sun
@ANONVERSCRIPT_FALSE@libgcj_bc_la_version_arg = $(version_arg)
@ANONVERSCRIPT_GNU_TRUE@@ANONVERSCRIPT_TRUE@libgcj_bc_la_version_arg = $(version_arg)
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@libgcj_bc_la_version_arg = -Wl,-M,libgcj_bc.ver-sun
@ANONVERSCRIPT_FALSE@version_dep =
@ANONVERSCRIPT_GNU_TRUE@@ANONVERSCRIPT_TRUE@version_dep = $(srcdir)/libgcj.ver
@ANONVERSCRIPT_FALSE@libgcj_la_version_dep = $(version_dep)
@ANONVERSCRIPT_GNU_TRUE@@ANONVERSCRIPT_TRUE@libgcj_la_version_dep = $(version_dep)
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@libgcj_la_version_dep = libgcj.ver-sun
@ANONVERSCRIPT_FALSE@libgcj_tools_la_version_dep = $(version_dep)
@ANONVERSCRIPT_GNU_TRUE@@ANONVERSCRIPT_TRUE@libgcj_tools_la_version_dep = $(version_dep)
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@libgcj_tools_la_version_dep = libgcj_tools.ver-sun
@ANONVERSCRIPT_FALSE@lib_gnu_awt_xlib_la_version_dep = $(version_dep)
@ANONVERSCRIPT_GNU_TRUE@@ANONVERSCRIPT_TRUE@lib_gnu_awt_xlib_la_version_dep = $(version_dep)
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@lib_gnu_awt_xlib_la_version_dep = lib_gnu_awt_xlib.ver-sun
@ANONVERSCRIPT_FALSE@libgcj_bc_la_version_dep = $(version_dep)
@ANONVERSCRIPT_GNU_TRUE@@ANONVERSCRIPT_TRUE@libgcj_bc_la_version_dep = $(version_dep)
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@libgcj_bc_la_version_dep = libgcj_bc.ver-sun
LTLDFLAGS = $(shell $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
GCJLINK = $(LIBTOOL) --tag=GCJ $(LIBTOOLFLAGS) --mode=link $(GCJ) -L$(here) \
$(JC1FLAGS) $(LTLDFLAGS) -o $@
@ -992,7 +1020,7 @@ AM_GCJFLAGS = \
--encoding=UTF-8 \
-Wno-deprecated -fbootstrap-classes
AM_CFLAGS = @LIBGCJ_CFLAGS@ $(am__append_10)
AM_CFLAGS = @LIBGCJ_CFLAGS@ $(am__append_9)
@SUPPRESS_LIBGCJ_BC_FALSE@LIBGCJ_BC_FLAGS = -findirect-dispatch -fno-indirect-classes
@SUPPRESS_LIBGCJ_BC_TRUE@LIBGCJ_BC_FLAGS =
@BUILD_LIBGCJ_REDUCED_REFLECTION_FALSE@LIBGCJ_REDUCED_REFLECTION_FLAGS =
@ -1010,7 +1038,7 @@ AM_CPPFLAGS = -I$(top_srcdir) \
BOOTCLASSPATH = $(srcdir)/classpath/lib
libgij_la_SOURCES = gij.cc
libgij_la_DEPENDENCIES = libgcj.la libgcj.spec $(am__append_11)
libgij_la_DEPENDENCIES = libgcj.la libgcj.spec $(am__append_10)
libgij_la_LIBADD = -L$(here)/.libs libgcj.la
libgij_la_LDFLAGS = -rpath $(toolexeclibdir) $(LIBJAVA_LDFLAGS_NOUNDEF) \
-version-info `grep -v '^\#' $(srcdir)/libtool-version` $(LIBGCJ_LD_SYMBOLIC)
@ -1020,9 +1048,9 @@ libgij_la_LINK = $(CXXLINK) $(libgij_la_LDFLAGS)
@INTERPRETER_TRUE@libgcj_interpret_source_files = jvmti.cc interpret.cc
libgcj_la_SOURCES = prims.cc jni.cc exception.cc stacktrace.cc link.cc \
defineclass.cc verify.cc $(libgcj_interpret_source_files) \
$(nat_source_files) $(am__append_12) $(am__append_13) \
$(am__append_14) $(am__append_15) $(am__append_16) \
$(am__append_17) $(am__append_18) $(am__append_19)
$(nat_source_files) $(am__append_11) $(am__append_12) \
$(am__append_13) $(am__append_14) $(am__append_15) \
$(am__append_16) $(am__append_17) $(am__append_18)
nat_files = $(nat_source_files:.cc=.lo)
xlib_nat_files = $(xlib_nat_source_files:.cc=.lo)
@ -1041,20 +1069,24 @@ libgcj_la_LIBADD = \
$(libgcj_la_LIBADD_SUBOBJECTS) \
$(LIBFFI) $(ZLIBS) $(GCLIBS)
libgcj_la_DEPENDENCIES = libgcj-$(gcc_version).jar java/lang/Object.lo \
java/lang/Class.lo java/process-$(PLATFORM).lo \
$(ALL_PACKAGE_SOURCE_FILES_LO) $(LIBLTDL) $(libgcj_la_LIBADD) \
$(LIBJAVA_CORE_EXTRA) $(am__append_20)
libgcj_la_LINK = $(LIBLINK) $(libgcj_la_LDFLAGS)
libgcj_la_DEPENDENCIES = libgcj-$(gcc_version).jar \
java/lang/Object.lo \
java/lang/Class.lo \
java/process-$(PLATFORM).lo \
$(ALL_PACKAGE_SOURCE_FILES_LO) \
$(LIBLTDL) $(libgcj_la_LIBADD) \
$(LIBJAVA_CORE_EXTRA) \
$(libgcj_la_version_dep)
libgcj_la_LINK = $(LIBLINK) $(libgcj_la_LDFLAGS) $(libgcj_la_version_arg)
EXTRA_libgcj_la_SOURCES = java/lang/Object.java
@BUILD_SUBLIBS_TRUE@DLL_VERSION = `expr \`grep -v '^\#' $(srcdir)/libtool-version | sed -e 's/\(.*\):\(.*\):.*/\1 + \2/'\``
@BUILD_SUBLIBS_TRUE@libgcj_noncore_la_SOURCES =
@BUILD_SUBLIBS_TRUE@libgcj_noncore_la_LDFLAGS = $(libgcj_la_LDFLAGS)
@BUILD_SUBLIBS_TRUE@libgcj_noncore_la_LIBADD = $(libgcj_noncore_la_LIBADD_SUBOBJECTS) libgcj.la
@BUILD_SUBLIBS_TRUE@libgcj_noncore_la_DEPENDENCIES = \
@BUILD_SUBLIBS_TRUE@ libgcj-$(gcc_version).jar $(LIBLTDL) \
@BUILD_SUBLIBS_TRUE@ $(libgcj_noncore_la_LIBADD) libgcj.la \
@BUILD_SUBLIBS_TRUE@ $(am__append_21)
@BUILD_SUBLIBS_TRUE@libgcj_noncore_la_DEPENDENCIES = libgcj-$(gcc_version).jar $(LIBLTDL) \
@BUILD_SUBLIBS_TRUE@ $(libgcj_noncore_la_LIBADD) libgcj.la $(libgcj_la_version_dep)
@BUILD_SUBLIBS_TRUE@libgcj_noncore_la_LINK = $(libgcj_la_LINK)
# We compile libgcj_tools with -findirect-dispatch so that they can
@ -1069,13 +1101,16 @@ libgcj_tools_la_GCJFLAGS = $(AM_GCJFLAGS) -findirect-dispatch \
libgcj_tools_la_LDFLAGS = -rpath $(toolexeclibdir) \
-version-info `grep -v '^\#' $(srcdir)/libtool-version` \
$(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) $(LIBJAVA_LDFLAGS_NOUNDEF)
$(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) $(LIBJAVA_LDFLAGS_NOUNDEF) -lm
libgcj_tools_la_LIBADD = libgcj.la
libgcj_tools_la_DEPENDENCIES = libgcj.la libgcj.spec \
$(libgcj_tools_la_version_dep) $(am__append_19)
libgcj_tools_la_LINK = $(LIBLINK) $(libgcj_tools_la_LDFLAGS) \
$(libgcj_tools_la_version_arg)
libgcj_tools_la_LIBADD = libgcj.la -lm
libgcj_tools_la_DEPENDENCIES = libgcj.la libgcj.spec $(am__append_22)
libgcj_tools_la_LINK = $(LIBLINK) $(libgcj_tools_la_LDFLAGS)
libjvm_la_SOURCES = jni-libjvm.cc
libjvm_la_DEPENDENCIES = libgcj.la libgcj.spec $(am__append_23)
libjvm_la_DEPENDENCIES = libgcj.la libgcj.spec $(am__append_20)
libjvm_la_LIBADD = -L$(here)/.libs libgcj.la
libjvm_la_LDFLAGS = -avoid-version $(LIBGCJ_LD_SYMBOLIC) \
$(LIBJAVA_LDFLAGS_NOUNDEF)
@ -1084,7 +1119,8 @@ libjvm_la_LINK = $(CXXLINK) $(libjvm_la_LDFLAGS)
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 $(lib_gnu_awt_xlib_la_LIBADD) $(am__append_24)
libgcj.spec $(lib_gnu_awt_xlib_la_version_dep) \
$(lib_gnu_awt_xlib_la_LIBADD) $(am__append_21)
lib_gnu_awt_xlib_la_CPPFLAGS = \
$(AM_CPPFLAGS) \
-I../libstdc++-v3/include \
@ -1096,13 +1132,17 @@ lib_gnu_awt_xlib_la_LDFLAGS = ../libstdc++-v3/src/libstdc++.la \
-rpath $(toolexeclibdir) $(LIBJAVA_LDFLAGS_NOUNDEF) \
-version-info `grep -v '^\#' $(srcdir)/libtool-version` $(LIBGCJ_LD_SYMBOLIC)
lib_gnu_awt_xlib_la_LINK = $(LIBLINK) $(lib_gnu_awt_xlib_la_LDFLAGS)
lib_gnu_awt_xlib_la_LINK = $(LIBLINK) $(lib_gnu_awt_xlib_la_LDFLAGS) \
$(lib_gnu_awt_xlib_la_version_arg)
libgcj_bc_la_SOURCES = libgcj_bc.c
libgcj_bc_la_LDFLAGS = -rpath $(toolexeclibdir) -no-static -version-info 1:0:0 \
$(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) $(LIBJAVA_LDFLAGS_NOUNDEF)
libgcj_bc_la_DEPENDENCIES = libgcj.la
libgcj_bc_la_LINK = $(LIBLINK) $(libgcj_bc_la_LDFLAGS)
libgcj_bc_la_DEPENDENCIES = libgcj.la $(libgcj_bc_la_version_dep)
libgcj_bc_la_LINK = $(LIBLINK) $(libgcj_bc_la_LDFLAGS) \
$(libgcj_bc_la_version_arg)
libgcj_bc_dummy_LINK = $(CC) -L$(here)/.libs $(CFLAGS) $(LDFLAGS) -shared \
-fPIC -nostdlib
@ -8362,7 +8402,7 @@ jv_convert_LDFLAGS = --main=gnu.gcj.convert.Convert \
jv_convert_LINK = $(GCJLINK) $(jv_convert_LDFLAGS)
jv_convert_LDADD = -L$(here)/.libs libgcj.la
jv_convert_DEPENDENCIES = libgcj.la libgcj.spec $(am__append_26)
jv_convert_DEPENDENCIES = libgcj.la libgcj.spec $(am__append_23)
gcj_dbtool_SOURCES = \
gnu/gcj/tools/gcj_dbtool/natMain.cc
@ -8372,7 +8412,7 @@ gcj_dbtool_LDFLAGS = --main=gnu.gcj.tools.gcj_dbtool.Main \
gcj_dbtool_LINK = $(GCJLINK) $(gcj_dbtool_LDFLAGS)
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 $(am__append_27)
libgcj.spec $(am__append_24)
gc_analyze_SOURCES =
gc_analyze_LDFLAGS = --main=gnu.gcj.tools.gc_analyze.MemoryAnalyze \
-rpath $(toolexeclibdir) -shared-libgcc $(THREADLDFLAGS) $(extra_ldflags)
@ -8380,7 +8420,7 @@ gc_analyze_LDFLAGS = --main=gnu.gcj.tools.gc_analyze.MemoryAnalyze \
gc_analyze_LINK = $(GCJLINK) $(gc_analyze_LDFLAGS)
gc_analyze_LDADD = -L$(here)/.libs libgcj-tools.la libgcj.la
gc_analyze_DEPENDENCIES = libgcj-tools.la libgcj.la libgcj.spec \
$(am__append_28)
$(am__append_25)
gij_SOURCES =
gij_LDFLAGS = -rpath $(dbexecdir) -rpath $(toolexeclibdir) \
-shared-libgcc $(THREADLDFLAGS) $(extra_ldflags)
@ -8399,10 +8439,10 @@ ECJX_BASE_FLAGS = -findirect-dispatch \
@NATIVE_FALSE@ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) $(ECJ_BUILD_JAR)
@NATIVE_FALSE@ecjx_LDADD =
@NATIVE_TRUE@ecjx_LDADD = -L$(here)/.libs $(extra_ldflags) \
@NATIVE_TRUE@ $(am__append_31)
@NATIVE_TRUE@ $(am__append_28)
@NATIVE_FALSE@ecjx_DEPENDENCIES =
@NATIVE_TRUE@ecjx_DEPENDENCIES = libgcj.la libgcj.spec \
@NATIVE_TRUE@ $(am__append_29) $(am__append_30)
@NATIVE_TRUE@ $(am__append_26) $(am__append_27)
gappletviewer_SOURCES =
gappletviewer_LDFLAGS = --main=gnu.classpath.tools.appletviewer.Main \
-rpath $(toolexeclibdir) -shared-libgcc $(THREADLDFLAGS) $(extra_ldflags)
@ -8619,7 +8659,7 @@ gnu/gcj/xlib/natXImage.cc \
gnu/gcj/xlib/natXUnmapEvent.cc
sourcesdir = $(jardir)
headers_to_make = $(nat_headers) $(am__append_32)
headers_to_make = $(nat_headers) $(am__append_29)
# Work around what appears to be a GNU make bug handling MAKEFLAGS
# values defined in terms of make variables, as is the case for CC and
@ -12681,6 +12721,21 @@ distclean-multi:
maintainer-clean-multi:
$(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean
# This must be at the end of the Makefile, otherwise .SECONDEXPANSION
# causes expansion of filenames with $ in their names, which breaks the build.
# .SECONDEXPANSION is necessary to allow the use of automatic variables ($@
# in this case) in the requisites of pattern rules.
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@.SECONDEXPANSION:
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@%.ver-sun : $(srcdir)/libgcj.ver \
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@ $(top_srcdir)/../contrib/make_sunver.pl \
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@ $$($$(basename $$@)_la_OBJECTS) $$($$(basename $$@)_la_LIBADD)
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@ perl $(top_srcdir)/../contrib/make_sunver.pl \
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@ $(srcdir)/libgcj.ver \
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@ `echo $($(basename $@)_la_OBJECTS) $($(basename $@)_la_LIBADD) | \
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@ sed 's,\([^/ ]*\)\.l\([ao]\),.libs/\1.\2,g'` \
@ANONVERSCRIPT_SUN_TRUE@@ANONVERSCRIPT_TRUE@ > $@ || (rm -f $@ ; exit 1)
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

72
libjava/configure vendored
View File

@ -632,6 +632,10 @@ python_mod_dir
here
LD_FINISH_STATIC_SPEC
LD_START_STATIC_SPEC
ANONVERSCRIPT_SUN_FALSE
ANONVERSCRIPT_SUN_TRUE
ANONVERSCRIPT_GNU_FALSE
ANONVERSCRIPT_GNU_TRUE
ANONVERSCRIPT_FALSE
ANONVERSCRIPT_TRUE
SYSDEP_SOURCES
@ -13345,7 +13349,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
#line 13348 "configure"
#line 13352 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@ -13451,7 +13455,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
#line 13454 "configure"
#line 13458 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@ -19430,7 +19434,7 @@ if test "${enable_sjlj_exceptions+set}" = set; then :
enableval=$enable_sjlj_exceptions; :
else
cat > conftest.$ac_ext << EOF
#line 19433 "configure"
#line 19437 "configure"
struct S { ~S(); };
void bar();
void foo()
@ -24380,7 +24384,7 @@ rm -f core conftest.err conftest.$ac_objext \
CFLAGS="$chktls_save_CFLAGS"
if test "X$thread_CFLAGS" != Xfailed; then
CFLAGS="$thread_CFLAGS $chktls_save_CFLAGS"
if test "$cross_compiling" = yes; then :
if test "$cross_compiling" = yes; then :
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error "cannot run test program while cross compiling
@ -24488,7 +24492,8 @@ if test "${libjava_cv_anon_version_script+set}" = set; then :
else
save_CFLAGS="$CFLAGS"; save_LDFLAGS="$LDFLAGS"
libjava_cv_anon_version_script=no
CFLAGS="$CFLAGS -fPIC"; LDFLAGS="$LDFLAGS -shared -Wl,--version-script,conftest.map"
CFLAGS="$CFLAGS -fPIC";
LDFLAGS="$LDFLAGS -shared -Wl,--version-script,conftest.map"
echo '{ global: globalsymb*; local: *; };' > conftest.map
if test x$gcc_no_link = xyes; then
as_fn_error "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
@ -24505,16 +24510,45 @@ main ()
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
libjava_cv_anon_version_script=yes
libjava_cv_anon_version_script=gnu
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
if test x$libjava_cv_anon_version_script = xno; then
case "$target_os" in
solaris2*)
LDFLAGS="$save_LDFLAGS"
LDFLAGS="$LDFLAGS -shared -Wl,-M,conftest.map"
# Sun ld doesn't understand wildcards here.
echo '{ global: globalsymbol; local: *; };' > conftest.map
if test x$gcc_no_link = xyes; then
as_fn_error "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
fi
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
void globalsymbol (void) {} void localsymbol (void) {}
int
main ()
{
;
return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
libjava_cv_anon_version_script=sun
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
;;
esac
fi
CFLAGS="$save_CFLAGS"; LDFLAGS="$save_LDFLAGS"
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libjava_cv_anon_version_script" >&5
$as_echo "$libjava_cv_anon_version_script" >&6; }
if test "$libjava_cv_anon_version_script" = yes; then
if test "$libjava_cv_anon_version_script" != no; then
ANONVERSCRIPT_TRUE=
ANONVERSCRIPT_FALSE='#'
else
@ -24522,6 +24556,22 @@ else
ANONVERSCRIPT_FALSE=
fi
if test "$libjava_cv_anon_version_script" = gnu; then
ANONVERSCRIPT_GNU_TRUE=
ANONVERSCRIPT_GNU_FALSE='#'
else
ANONVERSCRIPT_GNU_TRUE='#'
ANONVERSCRIPT_GNU_FALSE=
fi
if test "$libjava_cv_anon_version_script" = sun; then
ANONVERSCRIPT_SUN_TRUE=
ANONVERSCRIPT_SUN_FALSE='#'
else
ANONVERSCRIPT_SUN_TRUE='#'
ANONVERSCRIPT_SUN_FALSE=
fi
# Check if linker supports static linking on a per library basis
LD_START_STATIC_SPEC=
@ -25061,6 +25111,14 @@ if test -z "${ANONVERSCRIPT_TRUE}" && test -z "${ANONVERSCRIPT_FALSE}"; then
as_fn_error "conditional \"ANONVERSCRIPT\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
if test -z "${ANONVERSCRIPT_GNU_TRUE}" && test -z "${ANONVERSCRIPT_GNU_FALSE}"; then
as_fn_error "conditional \"ANONVERSCRIPT_GNU\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
if test -z "${ANONVERSCRIPT_SUN_TRUE}" && test -z "${ANONVERSCRIPT_SUN_FALSE}"; then
as_fn_error "conditional \"ANONVERSCRIPT_SUN\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
if test -z "${INSTALL_AOT_RPM_TRUE}" && test -z "${INSTALL_AOT_RPM_FALSE}"; then
as_fn_error "conditional \"INSTALL_AOT_RPM\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5

View File

@ -1767,13 +1767,28 @@ AC_CACHE_CHECK([whether ld supports anonymous version scripts],
[libjava_cv_anon_version_script],
[save_CFLAGS="$CFLAGS"; save_LDFLAGS="$LDFLAGS"
libjava_cv_anon_version_script=no
CFLAGS="$CFLAGS -fPIC"; LDFLAGS="$LDFLAGS -shared -Wl,--version-script,conftest.map"
CFLAGS="$CFLAGS -fPIC";
LDFLAGS="$LDFLAGS -shared -Wl,--version-script,conftest.map"
echo '{ global: globalsymb*; local: *; };' > conftest.map
AC_TRY_LINK(void globalsymbol (void) {} void localsymbol (void) {},,
[libjava_cv_anon_version_script=yes], [])
[libjava_cv_anon_version_script=gnu], [])
if test x$libjava_cv_anon_version_script = xno; then
case "$target_os" in
solaris2*)
LDFLAGS="$save_LDFLAGS"
LDFLAGS="$LDFLAGS -shared -Wl,-M,conftest.map"
# Sun ld doesn't understand wildcards here.
echo '{ global: globalsymbol; local: *; };' > conftest.map
AC_TRY_LINK(void globalsymbol (void) {} void localsymbol (void) {},,
[libjava_cv_anon_version_script=sun], [])
;;
esac
fi
CFLAGS="$save_CFLAGS"; LDFLAGS="$save_LDFLAGS"
])
AM_CONDITIONAL(ANONVERSCRIPT, test "$libjava_cv_anon_version_script" = yes)
AM_CONDITIONAL(ANONVERSCRIPT, test "$libjava_cv_anon_version_script" != no)
AM_CONDITIONAL(ANONVERSCRIPT_GNU, test "$libjava_cv_anon_version_script" = gnu)
AM_CONDITIONAL(ANONVERSCRIPT_SUN, test "$libjava_cv_anon_version_script" = sun)
# Check if linker supports static linking on a per library basis
LD_START_STATIC_SPEC=

View File

@ -2,6 +2,12 @@
# symbols in libgcj.so.
{
global: Jv*; _Jv_*; __gcj_personality_v0; __gcj_personality_sj0; _Z*;
local: *;
global:
Jv*;
_Jv_*;
__gcj_personality_v0;
__gcj_personality_sj0;
_Z*;
local:
*;
};