diff options
author | Dave Korn <dave.korn.cygwin@gmail.com> | 2009-09-22 18:58:13 +0000 |
---|---|---|
committer | Dave Korn <davek@gcc.gnu.org> | 2009-09-22 18:58:13 +0000 |
commit | 6a92b6c7aae7311777f8faafbc52a71104a78a68 (patch) | |
tree | 89fb7aceeab12051629b5e047d3df2ddf3ab2894 /gcc | |
parent | 502a1e45907d04b3feeec2b3e5e5b80a10e9350f (diff) | |
download | gcc-6a92b6c7aae7311777f8faafbc52a71104a78a68.zip gcc-6a92b6c7aae7311777f8faafbc52a71104a78a68.tar.gz gcc-6a92b6c7aae7311777f8faafbc52a71104a78a68.tar.bz2 |
cygming.h (TARGET_USE_JCR_SECTION): Enable.
gcc/ChangeLog
* config/i386/cygming.h (TARGET_USE_JCR_SECTION): Enable.
* config/i386/cygwin.h (LIBGCJ_SONAME): Define.
* config/i386/mingw32.h (LIBGCJ_SONAME): Likewise.
libjava/ChangeLog
* configure.host (enable_libgcj_sublibs_default): New variable,
set for Cygwin and MinGW.
* configure.ac (--enable-libgcj-sublibs): New command-line switch.
(BUILD_SUBLIBS): New AM_CONDITIONAL relating to it.
(libgcj_spec_lgcj_override): New variable, define if building sublibs.
(libgcj_spec_lgcj_bc_override): Likewise for when USE_LIBGCJ_BC.
(LIBGCJ_SPEC_LGCJ): New variable to abstract "-lgcj" from specs.
(LIBGCJ_SPEC_LGCJ_BC): Likewise for when USE_LIBGCJ_BC.
(LIBGCJ_SPEC): Use them.
* configure: Regenerate.
* Makefile.am (LOWER_PACKAGE_FILES_LO): New variable.
(ALL_PACKAGE_SOURCE_FILES_LO): Likewise.
(NONCORE_PACKAGE_SOURCE_FILES_LO): Likewise.
(CORE_PACKAGE_SOURCE_FILES_LO): Likewise.
(toolexeclib_LTLIBRARIES): Add libgcj-noncore.la if building sublibs.
(libgcj_noncore_la_LIBADD_SUBOBJECTS): New variable.
(libgcj_la_LIBADD_SUBOBJECTS): Likewise.
(libgcj_la_LDFLAGS_NOUNDEF): Likewise.
(libgij_la_LDFLAGS): Add DLL-related options.
(libgcj_la_LDFLAGS): Use libgcj_la_LDFLAGS_NOUNDEF and
libgcj_la_LIBADD_SUBOBJECTS.
(libgcj_la_DEPENDENCIES): Adjust to match.
(libgcj_noncore_la_SOURCES, libgcj_noncore_la_LDFLAGS,
libgcj_noncore_la_LIBADD, libgcj_noncore_la_DEPENDENCIES,
libgcj_noncore_la_LINK): New automake variables for sublibrary.
(libgcj_tools_la_LDFLAGS): Add DLL-related flags.
(libgcj_tools_la_LIBADD): New variable.
(libjvm_la_LDFLAGS): Add DLL-related flags.
(lib_gnu_awt_xlib_la_LDFLAGS): Likewise.
(libgcj_bc_la_LDFLAGS): Likewise.
(libgij_la_DEPENDENCIES): Add dependency on libgcj-noncore.la when
building sublibs.
(libgcj_tools_la_DEPENDENCIES, libjvm_la_DEPENDENCIES,
lib_gnu_awt_xlib_la_DEPENDENCIES, jv_convert_DEPENDENCIES,
gcj_dbtool_DEPENDENCIES, gc_analyze_DEPENDENCIES, ecjx_DEPENDENCIES):
Likewise.
* Makefile.in: Regenerate.
* sysdep/i386/backtrace.h (MAIN_FUNC): New #define for main function,
set appropriately for Cygwin on that platform or to "main" elsewhere.
(fallback_backtrace): Use it to limit stack unwind.
libjava/libltdl/ChangeLog:
* ltdl.h (LT_SCOPE): Change conditional to avoid breaking
auto-export during libgcj DLL linking.
* Makefile.am (libltdl_la_LDFLAGS): Remove -bindir switch.
* Makefile.in: Regenerate.
From-SVN: r152041
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/i386/cygming.h | 2 | ||||
-rw-r--r-- | gcc/config/i386/cygwin.h | 4 | ||||
-rw-r--r-- | gcc/config/i386/mingw32.h | 4 |
4 files changed, 15 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2565cb9..2da2d44 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2009-09-22 Dave Korn <dave.korn.cygwin@gmail.com> + + * config/i386/cygming.h (TARGET_USE_JCR_SECTION): Enable. + * config/i386/cygwin.h (LIBGCJ_SONAME): Define. + * config/i386/mingw32.h (LIBGCJ_SONAME): Likewise. + 2009-09-22 Alexandre Oliva <aoliva@redhat.com> PR debug/41295 diff --git a/gcc/config/i386/cygming.h b/gcc/config/i386/cygming.h index 5fc0c1d..43003cc 100644 --- a/gcc/config/i386/cygming.h +++ b/gcc/config/i386/cygming.h @@ -383,7 +383,7 @@ do { \ /* FIXME: SUPPORTS_WEAK && TARGET_HAVE_NAMED_SECTIONS is true, but for .jcr section to work we also need crtbegin and crtend objects. */ -#define TARGET_USE_JCR_SECTION 0 +#define TARGET_USE_JCR_SECTION 1 /* Decide whether it is safe to use a local alias for a virtual function when constructing thunks. */ diff --git a/gcc/config/i386/cygwin.h b/gcc/config/i386/cygwin.h index d1d00f7..9332637 100644 --- a/gcc/config/i386/cygwin.h +++ b/gcc/config/i386/cygwin.h @@ -267,3 +267,7 @@ while (0) #define LIBGCC_EH_EXTN "-sjlj" #endif #define LIBGCC_SONAME "cyggcc_s" LIBGCC_EH_EXTN "-1.dll" + +/* We should find a way to not have to update this manually. */ +#define LIBGCJ_SONAME "cyggcj" /*LIBGCC_EH_EXTN*/ "-11.dll" + diff --git a/gcc/config/i386/mingw32.h b/gcc/config/i386/mingw32.h index e856ecd..9dcc5ba 100644 --- a/gcc/config/i386/mingw32.h +++ b/gcc/config/i386/mingw32.h @@ -221,3 +221,7 @@ __enable_execute_stack (void *addr) \ #define LIBGCC_EH_EXTN "_sjlj" #endif #define LIBGCC_SONAME "libgcc_s" LIBGCC_EH_EXTN "-1.dll" + +/* We should find a way to not have to update this manually. */ +#define LIBGCJ_SONAME "cyggcj" /*LIBGCC_EH_EXTN*/ "-11.dll" + |