diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 1f9da0a2bb0..2eac89c7eb6 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,9 @@ +2011-03-21 Rainer Orth + + PR bootstrap/48135 + * configure.ac (gfortran_use_symver): Handle --disable-symvers. + * configure: Regenerate. + 2011-03-19 John David Anglin PR fortran/35667 diff --git a/libgfortran/configure b/libgfortran/configure index 6c20f5e0953..53df412c89b 100755 --- a/libgfortran/configure +++ b/libgfortran/configure @@ -757,6 +757,7 @@ enable_intermodule enable_maintainer_mode enable_multilib enable_dependency_tracking +enable_symvers enable_shared enable_static with_pic @@ -1406,6 +1407,7 @@ Optional Features: --enable-multilib build many library versions (default) --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors + --disable-symvers disable symbol versioning for libgfortran --enable-shared[=PKGS] build shared libraries [default=yes] --enable-static[=PKGS] build static libraries [default=yes] --enable-fast-install[=PKGS] @@ -5564,14 +5566,22 @@ fi # Check for symbol versioning (copied from libssp). { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether symbol versioning is supported" >&5 $as_echo_n "checking whether symbol versioning is supported... " >&6; } -save_LDFLAGS="$LDFLAGS" -LDFLAGS="$LDFLAGS -fPIC -shared -Wl,--version-script,./conftest.map" -cat > conftest.map < conftest.map <conftest.$ac_ext @@ -5592,18 +5602,18 @@ else fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext -if test x$gfortran_use_symver = xno; then - case "$target_os" in - solaris2*) - LDFLAGS="$save_LDFLAGS" - LDFLAGS="$LDFLAGS -fPIC -shared -Wl,-M,./conftest.map" - # Sun ld cannot handle wildcards and treats all entries as undefined. - cat > conftest.map < conftest.map <conftest.$ac_ext @@ -5624,10 +5634,11 @@ else fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - ;; - esac + ;; + esac + fi + LDFLAGS="$save_LDFLAGS" fi -LDFLAGS="$save_LDFLAGS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gfortran_use_symver" >&5 $as_echo "$gfortran_use_symver" >&6; } if test "x$gfortran_use_symver" != xno; then @@ -12101,7 +12112,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 12104 "configure" +#line 12115 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -12207,7 +12218,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 12210 "configure" +#line 12221 "configure" #include "confdefs.h" #if HAVE_DLFCN_H diff --git a/libgfortran/configure.ac b/libgfortran/configure.ac index 522d5ac3821..588f9997e56 100644 --- a/libgfortran/configure.ac +++ b/libgfortran/configure.ac @@ -144,30 +144,37 @@ AC_SUBST(CFLAGS) # Check for symbol versioning (copied from libssp). AC_MSG_CHECKING([whether symbol versioning is supported]) -save_LDFLAGS="$LDFLAGS" -LDFLAGS="$LDFLAGS -fPIC -shared -Wl,--version-script,./conftest.map" -cat > conftest.map < conftest.map < conftest.map < conftest.map < + + PR bootstrap/48135 + * acinclude.m4 (enable_symvers): Handle --disable-symvers. + * configure: Regenerate. + 2011-02-27 Jakub Jelinek PR fortran/47886 diff --git a/libgomp/acinclude.m4 b/libgomp/acinclude.m4 index eb876b9589e..4a4b62f01c3 100644 --- a/libgomp/acinclude.m4 +++ b/libgomp/acinclude.m4 @@ -228,20 +228,24 @@ LIBGOMP_ENABLE(symvers,yes,[=STYLE], # If we never went through the LIBGOMP_CHECK_LINKER_FEATURES macro, then we # don't know enough about $LD to do tricks... AC_REQUIRE([LIBGOMP_CHECK_LINKER_FEATURES]) -# FIXME The following test is too strict, in theory. -if test $enable_shared = no || test "x$LD" = x; then - enable_symvers=no -else - if test $with_gnu_ld = yes ; then - enable_symvers=gnu + +# Turn a 'yes' into a suitable default. +if test x$enable_symvers = xyes ; then + # FIXME The following test is too strict, in theory. + if test $enable_shared = no || test "x$LD" = x; then + enable_symvers=no else - case ${target_os} in - # Sun symbol versioning exists since Solaris 2.5. - solaris2.[[5-9]]* | solaris2.1[[0-9]]*) - enable_symvers=sun ;; - *) - enable_symvers=no ;; - esac + if test $with_gnu_ld = yes ; then + enable_symvers=gnu + else + case ${target_os} in + # Sun symbol versioning exists since Solaris 2.5. + solaris2.[[5-9]]* | solaris2.1[[0-9]]*) + enable_symvers=sun ;; + *) + enable_symvers=no ;; + esac + fi fi fi diff --git a/libgomp/configure b/libgomp/configure index 3368c0ec615..50dc29a6201 100755 --- a/libgomp/configure +++ b/libgomp/configure @@ -15780,20 +15780,24 @@ fi # If we never went through the LIBGOMP_CHECK_LINKER_FEATURES macro, then we # don't know enough about $LD to do tricks... -# FIXME The following test is too strict, in theory. -if test $enable_shared = no || test "x$LD" = x; then - enable_symvers=no -else - if test $with_gnu_ld = yes ; then - enable_symvers=gnu + +# Turn a 'yes' into a suitable default. +if test x$enable_symvers = xyes ; then + # FIXME The following test is too strict, in theory. + if test $enable_shared = no || test "x$LD" = x; then + enable_symvers=no else - case ${target_os} in - # Sun symbol versioning exists since Solaris 2.5. - solaris2.[5-9]* | solaris2.1[0-9]*) - enable_symvers=sun ;; - *) - enable_symvers=no ;; - esac + if test $with_gnu_ld = yes ; then + enable_symvers=gnu + else + case ${target_os} in + # Sun symbol versioning exists since Solaris 2.5. + solaris2.[5-9]* | solaris2.1[0-9]*) + enable_symvers=sun ;; + *) + enable_symvers=no ;; + esac + fi fi fi diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 733c786ea8e..21eeee54943 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,10 @@ +2011-03-21 Rainer Orth + + PR bootstrap/48135 + * configure.ac (libjava_cv_anon_version_script): Handle + --disable-symvers. + * configure: Regenerate. + 2011-02-14 Gary Benson * libjava/contrib/aot-compile.in: Add our module directory diff --git a/libjava/configure b/libjava/configure index f79e53b1e8d..2a57e13af57 100755 --- a/libjava/configure +++ b/libjava/configure @@ -959,6 +959,7 @@ enable_rpath with_libiconv_prefix enable_tls with_system_libunwind +enable_symvers with_python_dir enable_aot_compile_rpm enable_java_home @@ -1648,6 +1649,7 @@ Optional Features: --enable-java-gc=TYPE choose garbage collector (default is boehm) --disable-rpath do not hardcode runtime library paths --enable-tls Use thread-local storage [default=yes] + --disable-symvers disable symbol versioning for libjava --enable-aot-compile-rpm enable installation of aot-compile-rpm [default=no] --enable-java-home create a standard JDK-style directory layout in the @@ -13344,7 +13346,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 13347 "configure" +#line 13349 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -13450,7 +13452,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 13453 "configure" +#line 13455 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -19443,7 +19445,7 @@ if test "${enable_sjlj_exceptions+set}" = set; then : enableval=$enable_sjlj_exceptions; : else cat > conftest.$ac_ext << EOF -#line 19446 "configure" +#line 19448 "configure" struct S { ~S(); }; void bar(); void foo() @@ -24530,12 +24532,24 @@ $as_echo_n "checking whether ld supports anonymous version scripts... " >&6; } if test "${libjava_cv_anon_version_script+set}" = set; then : $as_echo_n "(cached) " >&6 else - save_CFLAGS="$CFLAGS"; save_LDFLAGS="$LDFLAGS" - libjava_cv_anon_version_script=no - 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 + # Check whether --enable-symvers was given. +if test "${enable_symvers+set}" = set; then : + enableval=$enable_symvers; case "$enableval" in + yes) libjava_cv_anon_version_script=yes ;; + no) libjava_cv_anon_version_script=no ;; + *) as_fn_error "Unknown argument to enable/disable symvers" "$LINENO" 5;; + esac +else + libjava_cv_anon_version_script=yes + +fi + + if test x$libjava_cv_anon_version_script = xyes; then + save_CFLAGS="$CFLAGS"; save_LDFLAGS="$LDFLAGS" + 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 fi cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -24551,17 +24565,19 @@ main () _ACEOF if ac_fn_c_try_link "$LINENO"; then : libjava_cv_anon_version_script=gnu +else + libjava_cv_anon_version_script=no 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 + 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 @@ -24580,10 +24596,11 @@ if ac_fn_c_try_link "$LINENO"; then : fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - ;; - esac + ;; + esac + fi + CFLAGS="$save_CFLAGS"; LDFLAGS="$save_LDFLAGS" fi - CFLAGS="$save_CFLAGS"; LDFLAGS="$save_LDFLAGS" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libjava_cv_anon_version_script" >&5 diff --git a/libjava/configure.ac b/libjava/configure.ac index 8187eecbd40..c5bb1a04f98 100644 --- a/libjava/configure.ac +++ b/libjava/configure.ac @@ -1800,26 +1800,38 @@ GCC_CHECK_UNWIND_GETIPINFO # See if linker supports anonymous version scripts. 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" - echo '{ global: globalsymb*; local: *; };' > conftest.map - AC_TRY_LINK(void globalsymbol (void) {} void localsymbol (void) {},, - [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 + [AC_ARG_ENABLE(symvers, + AS_HELP_STRING([--disable-symvers], + [disable symbol versioning for libjava]), + [case "$enableval" in + yes) libjava_cv_anon_version_script=yes ;; + no) libjava_cv_anon_version_script=no ;; + *) AC_MSG_ERROR([Unknown argument to enable/disable symvers]);; + esac], + [libjava_cv_anon_version_script=yes] + ) + if test x$libjava_cv_anon_version_script = xyes; then + save_CFLAGS="$CFLAGS"; save_LDFLAGS="$LDFLAGS" + 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=gnu], + [libjava_cv_anon_version_script=no]) + 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" fi - CFLAGS="$save_CFLAGS"; LDFLAGS="$save_LDFLAGS" ]) AM_CONDITIONAL(ANONVERSCRIPT, test "$libjava_cv_anon_version_script" != no) AM_CONDITIONAL(ANONVERSCRIPT_GNU, test "$libjava_cv_anon_version_script" = gnu) diff --git a/libquadmath/ChangeLog b/libquadmath/ChangeLog index cc4bf882d8b..080b387b89a 100644 --- a/libquadmath/ChangeLog +++ b/libquadmath/ChangeLog @@ -1,3 +1,9 @@ +2011-03-21 Rainer Orth + + PR bootstrap/48135 + * configure.ac (quadmath_use_symver): Handle --disable-symvers. + * configure: Regenerate. + 2011-02-28 Jakub Jelinek * printf/quadmath-printf.c (quadmath_snprintf): Make sure diff --git a/libquadmath/configure b/libquadmath/configure index 8735ac5a17d..7f78ea15868 100755 --- a/libquadmath/configure +++ b/libquadmath/configure @@ -747,6 +747,7 @@ with_gnu_ld enable_libtool_lock enable_maintainer_mode enable_multilib +enable_symvers enable_generated_files_in_srcdir ' ac_precious_vars='build_alias @@ -1391,6 +1392,7 @@ Optional Features: --enable-maintainer-mode enable make rules and dependencies not useful (and sometimes confusing) to the casual installer --enable-multilib build many library versions (default) + --disable-symvers disable symbol versioning for libquadmath --enable-generated-files-in-srcdir put copies of generated files in source dir intended for creating source tarballs for users without @@ -10511,7 +10513,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 10514 "configure" +#line 10516 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -10617,7 +10619,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 10620 "configure" +#line 10622 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -12339,19 +12341,27 @@ CFLAGS="$saved_CFLAGS" # Check for symbol versioning (copied from libssp). { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether symbol versioning is supported" >&5 $as_echo_n "checking whether symbol versioning is supported... " >&6; } -if test x$gcc_no_link = xyes; then - # If we cannot link, we cannot build shared libraries, so do not use - # symbol versioning. - quadmath_use_symver=no +# Check whether --enable-symvers was given. +if test "${enable_symvers+set}" = set; then : + enableval=$enable_symvers; quadmath_use_symver=$enableval else - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -fPIC -shared -Wl,--version-script,./conftest.map" - cat > conftest.map < conftest.map <conftest.$ac_ext @@ -12372,18 +12382,18 @@ else fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - if test x$quadmath_use_symver = xno; then - case "$target_os" in - solaris2*) - LDFLAGS="$save_LDFLAGS" - LDFLAGS="$LDFLAGS -fPIC -shared -Wl,-M,./conftest.map" - # Sun ld cannot handle wildcards and treats all entries as undefined. - cat > conftest.map < conftest.map <conftest.$ac_ext @@ -12404,10 +12414,11 @@ else fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - ;; - esac + ;; + esac + fi + LDFLAGS="$save_LDFLAGS" fi - LDFLAGS="$save_LDFLAGS" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $quadmath_use_symver" >&5 $as_echo "$quadmath_use_symver" >&6; } diff --git a/libquadmath/configure.ac b/libquadmath/configure.ac index 8559c1d5aad..512b9f81391 100644 --- a/libquadmath/configure.ac +++ b/libquadmath/configure.ac @@ -164,35 +164,42 @@ CFLAGS="$saved_CFLAGS" # Check for symbol versioning (copied from libssp). AC_MSG_CHECKING([whether symbol versioning is supported]) -if test x$gcc_no_link = xyes; then - # If we cannot link, we cannot build shared libraries, so do not use - # symbol versioning. - quadmath_use_symver=no -else - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -fPIC -shared -Wl,--version-script,./conftest.map" - cat > conftest.map < conftest.map < conftest.map < conftest.map < + + PR bootstrap/48135 + * configure.ac (ssp_use_symver): Handle --disable-symvers. + * configure: Regenerate. + 2011-02-13 Ralf Wildenhues * Makefile.in: Regenerate. diff --git a/libssp/configure b/libssp/configure index 85a6a0a941a..b1edcb4295b 100755 --- a/libssp/configure +++ b/libssp/configure @@ -734,6 +734,7 @@ enable_version_specific_runtime_libs enable_maintainer_mode enable_multilib enable_dependency_tracking +enable_symvers enable_shared enable_static with_pic @@ -1372,6 +1373,7 @@ Optional Features: --enable-multilib build many library versions (default) --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors + --disable-symvers disable symbol versioning for libssp --enable-shared[=PKGS] build shared libraries [default=yes] --enable-static[=PKGS] build static libraries [default=yes] --enable-fast-install[=PKGS] @@ -4098,19 +4100,27 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether symbol versioning is supported" >&5 $as_echo_n "checking whether symbol versioning is supported... " >&6; } -if test x$gcc_no_link = xyes; then - # If we cannot link, we cannot build shared libraries, so do not use - # symbol versioning. - ssp_use_symver=no +# Check whether --enable-symvers was given. +if test "${enable_symvers+set}" = set; then : + enableval=$enable_symvers; ssp_use_symver=$enableval else - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -fPIC -shared -Wl,--version-script,./conftest.map" - cat > conftest.map < conftest.map <conftest.$ac_ext @@ -4131,18 +4141,18 @@ else fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - if test x$ssp_use_symver = xno; then - case "$target_os" in - solaris2*) - LDFLAGS="$save_LDFLAGS" - LDFLAGS="$LDFLAGS -fPIC -shared -Wl,-M,./conftest.map" - # Sun ld cannot handle wildcards and treats all entries as undefined. - cat > conftest.map < conftest.map <conftest.$ac_ext @@ -4163,10 +4173,11 @@ else fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - ;; - esac + ;; + esac + fi + LDFLAGS="$save_LDFLAGS" fi - LDFLAGS="$save_LDFLAGS" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ssp_use_symver" >&5 $as_echo "$ssp_use_symver" >&6; } @@ -10639,7 +10650,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 10642 "configure" +#line 10653 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -10745,7 +10756,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 10748 "configure" +#line 10759 "configure" #include "confdefs.h" #if HAVE_DLFCN_H diff --git a/libssp/configure.ac b/libssp/configure.ac index ee48f4db16d..0eee36ce014 100644 --- a/libssp/configure.ac +++ b/libssp/configure.ac @@ -72,35 +72,42 @@ if test x$ssp_hidden = xyes; then fi AC_MSG_CHECKING([whether symbol versioning is supported]) -if test x$gcc_no_link = xyes; then - # If we cannot link, we cannot build shared libraries, so do not use - # symbol versioning. - ssp_use_symver=no -else - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -fPIC -shared -Wl,--version-script,./conftest.map" - cat > conftest.map < conftest.map < conftest.map < conftest.map <