From 086035bedefa3b318a18a34eaf3c2a3873af0822 Mon Sep 17 00:00:00 2001 From: Mike McGreevy Date: Mon, 26 Mar 2012 15:26:06 -0500 Subject: [svn-r22149] Purpose: HDFFV-944: Fortran test problem with HDF5 182, intel 11.0, open-mpi-1.2.8 Description: Moved libtool post-processing 'ed' snippet that replaces wl="" with wl="-Wl," when intel compilers are used to the end of the configure script, after libtool is actually generated. (I imagine that at some point in time during a libtool version upgrade the libtool script ceased being generated immediately after the libtool initialization macro and is generated at the end of configure with all other files). Additionally, added a leading 'g' to the replacement invocation to change all instances of wl="" to wl="-Wl," instead of just the first that it comes across. (There's a separate one for each compiler used (C, Fortran, C++)). Tested: Reproduced the reported make failure and tested resolution on NCSA's Forge with OpenMPI built with Intel 12.0.4. Also, h5committested. --- configure | 34 +++++++++++++++++----------------- configure.in | 35 +++++++++++++++++------------------ release_docs/RELEASE.txt | 3 +++ 3 files changed, 37 insertions(+), 35 deletions(-) diff --git a/configure b/configure index ecaef5a..ec43c82 100755 --- a/configure +++ b/configure @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in Id: configure.in 22097 2012-03-20 13:00:55Z hdftest . +# From configure.in Id: configure.in 22140 2012-03-25 14:30:39Z hdftest . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.68 for HDF5 1.9.113. # @@ -21553,22 +21553,6 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu -case $host_os in - linux* | freebsd* ) - # If gcc is not used, need to set $wl to use "-Wl," - if $CC -v 2>&1 | grep '^gcc' > /dev/null ; then - : using gcc - else - echo 'fixing $wl in' $ofile -ed - $ofile < /dev/null -/^wl=""/s//wl="-Wl,"/ -w -q -EOF - fi - ;; -esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we should install only statically linked executables" >&5 $as_echo_n "checking if we should install only statically linked executables... " >&6; } # Check whether --enable-static_exec was given. @@ -34964,6 +34948,22 @@ touch ./config/stamp2 # Finally the makefiles test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 +case $host_os in + linux* | freebsd* ) + # If gcc is not used, need to set $wl to use "-Wl," + if $CC -v 2>&1 | grep '^gcc' > /dev/null ; then + : using gcc + else + echo 'fixing $wl in' $ofile +ed - $ofile < /dev/null +g/^wl=""/s//wl="-Wl,"/ +w +q +EOF + fi + ;; +esac + if (./libtool --features | grep '^enable shared libraries' > /dev/null); then enable_shared=yes else diff --git a/configure.in b/configure.in index 8854177..b53d57c 100644 --- a/configure.in +++ b/configure.in @@ -1027,24 +1027,6 @@ dnl or disabled, it should happen before these macros. AC_LIBTOOL_DLOPEN AM_PROG_LIBTOOL -dnl Post processing to patch up some deficiencies in libtool (as of -dnl Libtool 1.5.14) -case $host_os in - linux* | freebsd* ) - # If gcc is not used, need to set $wl to use "-Wl," - if $CC -v 2>&1 | grep '^gcc' > /dev/null ; then - : using gcc - else - echo 'fixing $wl in' $ofile -ed - $ofile < /dev/null -/^wl=""/s//wl="-Wl,"/ -w -q -EOF - fi - ;; -esac - dnl ---------------------------------------------------------------------- dnl Check if we should install only statically linked executables. dnl This check needs to occur after libtool is initialized because @@ -4470,6 +4452,23 @@ touch ./config/stamp2 # Finally the makefiles test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 +dnl Post processing to patch up some deficiencies in libtool +case $host_os in + linux* | freebsd* ) + # If gcc is not used, need to set $wl to use "-Wl," + if $CC -v 2>&1 | grep '^gcc' > /dev/null ; then + : using gcc + else + echo 'fixing $wl in' $ofile +ed - $ofile < /dev/null +g/^wl=""/s//wl="-Wl,"/ +w +q +EOF + fi + ;; +esac + dnl Are we compiling static libraries, shared libraries, or both? This dnl is only used for the libhdf5.settings file. We can't just look at dnl $enable_static and $enable_shared because if they're yes the ltconfig diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt index 5057edd..6992d8c 100644 --- a/release_docs/RELEASE.txt +++ b/release_docs/RELEASE.txt @@ -602,6 +602,9 @@ Bug Fixes since HDF5-1.8.0 release Configuration ------------- + - Fixed Makefile issue in which "-Wl," was not properly specified + prior to -rpath when building parallel fortran libraries with + an Intel compiler. (MAM - 2012/03/26) - Makefiles generated by other packages using h5cc as the compiler no longer error when 'make' is invoked more than once in order to 'rebuild' after changes to source. (MAM - 2012/03/26) -- cgit v0.12