This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "MPICH primary repository". The branch, master has been updated via 5c373c2a0947290333fb350b5f4718b946230d08 (commit) via ae35bf71a2c7b13a3f07bb306f60877efff8887a (commit) via 51db1a05720c3d1a51eff58084a02b6b6c66e80f (commit) from f4518bf66d6c3af9e7a27a6fa9c02ce5f5ede1b2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- http://git.mpich.org/mpich.git/commitdiff/5c373c2a0947290333fb350b5f4718b946... commit 5c373c2a0947290333fb350b5f4718b946230d08 Author: Pavan Balaji <[email protected]> Date: Wed Sep 3 00:46:28 2014 -0500 Do not duplicate external and wrapper libs. Signed-off-by: Ken Raffenetti <[email protected]> diff --git a/configure.ac b/configure.ac index 9e912e4..7337da4 100644 --- a/configure.ac +++ b/configure.ac @@ -1179,7 +1179,6 @@ else AS_IF([test -s "${with_mpl_prefix}/include/mplconfig.h"], [:],[AC_MSG_ERROR([the MPL installation in "${with_mpl_prefix}" appears broken])]) PAC_APPEND_FLAG([-I${with_mpl_prefix}/include],[CPPFLAGS]) - PAC_PREPEND_FLAG([-l${MPLLIBNAME}],[WRAPPER_LIBS]) PAC_PREPEND_FLAG([-l${MPLLIBNAME}],[EXTERNAL_LIBS]) PAC_APPEND_FLAG([-L${with_mpl_prefix}/lib],[WRAPPER_LDFLAGS]) mpllibdir="${with_mpl_prefix}/lib" @@ -1244,7 +1243,6 @@ if test "$with_openpa_prefix" = "embedded" ; then AC_MSG_WARN([Attempted to use the embedded OpenPA source tree in "src/openpa", but it is missing. Configuration or compilation may fail later.]) fi elif test "$with_openpa_prefix" = "system" ; then - PAC_PREPEND_FLAG([-l${OPALIBNAME}],[WRAPPER_LIBS]) PAC_PREPEND_FLAG([-l${OPALIBNAME}],[EXTERNAL_LIBS]) elif test "$with_openpa_prefix" = "no" ; then # The user doesn't want to use OPA. This may or may not cause MPICH to @@ -1256,7 +1254,6 @@ else AS_IF([test -s "${with_openpa_prefix}/include/opa_primitives.h" -a -s "${with_openpa_prefix}/include/opa_config.h"], [:],[AC_MSG_ERROR([the OpenPA installation in "${with_openpa_prefix}" appears broken])]) PAC_APPEND_FLAG([-I${with_openpa_prefix}/include],[CPPFLAGS]) - PAC_PREPEND_FLAG([-l${OPALIBNAME}],[WRAPPER_LIBS]) PAC_PREPEND_FLAG([-l${OPALIBNAME}],[EXTERNAL_LIBS]) if test -d ${with_openpa_prefix}/lib64 ; then PAC_APPEND_FLAG([-L${with_openpa_prefix}/lib64],[WRAPPER_LDFLAGS]) @@ -5982,7 +5979,7 @@ AC_DEFINE(HAVE_MPICHCONF,1,[Define so that we can test whether the mpichconf.h f # add the LDFLAGS/LIBS we got so far to WRAPPERs if test "$INTERLIB_DEPS" = "no" ; then WRAPPER_LDFLAGS="$WRAPPER_LDFLAGS $LDFLAGS" - WRAPPER_LIBS="$WRAPPER_LIBS $LIBS" + WRAPPER_LIBS="$WRAPPER_LIBS $EXTERNAL_LIBS" fi if test "$USE_PMI2_API" = "yes" ; then http://git.mpich.org/mpich.git/commitdiff/ae35bf71a2c7b13a3f07bb306f60877eff... commit ae35bf71a2c7b13a3f07bb306f60877efff8887a Author: Pavan Balaji <[email protected]> Date: Wed Sep 3 00:29:49 2014 -0500 Cleanup external and internal libraries. We were mixing up external libraries, which are prebuilt, and internal libraries on which we need to add dependencies. This patch separates these out and only adds build dependencies on the internal libraries. Signed-off-by: Ken Raffenetti <[email protected]> diff --git a/Makefile.am b/Makefile.am index ba184df..4bbe965 100644 --- a/Makefile.am +++ b/Makefile.am @@ -49,9 +49,9 @@ errnames_txt_files = external_subdirs = @mplsrcdir@ @opasrcdir@ external_ldflags = -L@mpllibdir@ -L@opalibdir@ -external_libs = @mpllib@ @opalib@ @EXTERNAL_LIBS@ +external_libs = @EXTERNAL_LIBS@ mpi_convenience_libs = -pmpi_convenience_libs = +pmpi_convenience_libs = @mpllib@ @opalib@ # NOTE on our semi-unconventional usage of DIST_SUBDIRS: # The automake manual recommends thinking of DIST_SUBDIRS as the list of all @@ -151,7 +151,7 @@ lib_LTLIBRARIES += lib/lib@[email protected] lib_lib@PMPILIBNAME@_la_SOURCES = $(mpi_sources) $(mpi_f77_sources) $(mpi_core_sources) lib_lib@PMPILIBNAME@_la_LDFLAGS = $(external_ldflags) $(ABIVERSIONFLAGS) lib_lib@PMPILIBNAME@_la_LIBADD = $(external_libs) $(pmpi_convenience_libs) -EXTRA_lib_lib@PMPILIBNAME@_la_DEPENDENCIES = $(external_libs) +EXTRA_lib_lib@PMPILIBNAME@_la_DEPENDENCIES = $(pmpi_convenience_libs) # lib@[email protected] might depend on lib@[email protected]. We add them # in that order to lib_LTLIBRARIES so libtool doesn't get @@ -169,7 +169,7 @@ lib_lib@MPILIBNAME@_la_SOURCES = $(mpi_sources) $(mpi_core_sources) lib_lib@MPILIBNAME@_la_LDFLAGS = $(external_ldflags) $(ABIVERSIONFLAGS) lib_lib@MPILIBNAME@_la_CPPFLAGS = $(AM_CPPFLAGS) lib_lib@MPILIBNAME@_la_LIBADD = $(external_libs) $(pmpi_convenience_libs) $(mpi_convenience_libs) -EXTRA_lib_lib@MPILIBNAME@_la_DEPENDENCIES = $(external_libs) +EXTRA_lib_lib@MPILIBNAME@_la_DEPENDENCIES = $(pmpi_convenience_libs) $(mpi_convenience_libs) endif !BUILD_PROFILING_LIB if BUILD_F77_BINDING diff --git a/configure.ac b/configure.ac index ab78149..9e912e4 100644 --- a/configure.ac +++ b/configure.ac @@ -1180,9 +1180,9 @@ else [:],[AC_MSG_ERROR([the MPL installation in "${with_mpl_prefix}" appears broken])]) PAC_APPEND_FLAG([-I${with_mpl_prefix}/include],[CPPFLAGS]) PAC_PREPEND_FLAG([-l${MPLLIBNAME}],[WRAPPER_LIBS]) + PAC_PREPEND_FLAG([-l${MPLLIBNAME}],[EXTERNAL_LIBS]) PAC_APPEND_FLAG([-L${with_mpl_prefix}/lib],[WRAPPER_LDFLAGS]) mpllibdir="${with_mpl_prefix}/lib" - mpllib="-l${MPLLIBNAME}" fi # OpenPA @@ -1245,7 +1245,7 @@ if test "$with_openpa_prefix" = "embedded" ; then fi elif test "$with_openpa_prefix" = "system" ; then PAC_PREPEND_FLAG([-l${OPALIBNAME}],[WRAPPER_LIBS]) - opalib="-l${OPALIBNAME}" + PAC_PREPEND_FLAG([-l${OPALIBNAME}],[EXTERNAL_LIBS]) elif test "$with_openpa_prefix" = "no" ; then # The user doesn't want to use OPA. This may or may not cause MPICH to # fail to configure/build, depending on many other factors. @@ -1257,7 +1257,7 @@ else [:],[AC_MSG_ERROR([the OpenPA installation in "${with_openpa_prefix}" appears broken])]) PAC_APPEND_FLAG([-I${with_openpa_prefix}/include],[CPPFLAGS]) PAC_PREPEND_FLAG([-l${OPALIBNAME}],[WRAPPER_LIBS]) - opalib="-l${OPALIBNAME}" + PAC_PREPEND_FLAG([-l${OPALIBNAME}],[EXTERNAL_LIBS]) if test -d ${with_openpa_prefix}/lib64 ; then PAC_APPEND_FLAG([-L${with_openpa_prefix}/lib64],[WRAPPER_LDFLAGS]) opalibdir="${with_openpa_prefix}/lib64" http://git.mpich.org/mpich.git/commitdiff/51db1a05720c3d1a51eff58084a02b6b6c... commit 51db1a05720c3d1a51eff58084a02b6b6c66e80f Author: Pavan Balaji <[email protected]> Date: Tue Sep 2 21:25:56 2014 -0500 Track external libraries separately instead of in LIBS. The original MPICH code was directly adding external library dependencies into LIBS. This forces configure to use these libraries, thus requiring the user to point to these libraries through LD_LIBRARY_PATH (for shared libraries). This is unnecessary since those libraries are only needed when building the executables and not the rest of MPICH. Signed-off-by: Ken Raffenetti <[email protected]> diff --git a/Makefile.am b/Makefile.am index 118005c..ba184df 100644 --- a/Makefile.am +++ b/Makefile.am @@ -49,7 +49,7 @@ errnames_txt_files = external_subdirs = @mplsrcdir@ @opasrcdir@ external_ldflags = -L@mpllibdir@ -L@opalibdir@ -external_libs = @mpllib@ @opalib@ +external_libs = @mpllib@ @opalib@ @EXTERNAL_LIBS@ mpi_convenience_libs = pmpi_convenience_libs = diff --git a/configure.ac b/configure.ac index 18e4868..ab78149 100644 --- a/configure.ac +++ b/configure.ac @@ -284,6 +284,9 @@ WRAPPER_FFLAGS="$FFLAGS $MPICH_MPIF77_FLAGS" WRAPPER_FCFLAGS="$FCFLAGS $MPICH_MPIFC_FLAGS" WRAPPER_LDFLAGS="$MPICH_LDFLAGS" WRAPPER_LIBS="$MPICH_LIBS" +EXTERNAL_LIBS="" +export EXTERNAL_LIBS +AC_SUBST(EXTERNAL_LIBS) # Add MPICHLIB_* to the appropriate flags AC_ARG_VAR(MPICHLIB_CFLAGS, @@ -5507,7 +5510,10 @@ AC_ARG_ENABLE(checkpointing, [AC_HELP_STRING([--enable-checkpointing], [Enable application checkpointing])], [ if test "$enableval" != "no" ; then PAC_SET_HEADER_LIB_PATH(blcr) + PAC_PUSH_FLAG([LIBS]) PAC_CHECK_HEADER_LIB_FATAL(blcr, libcr.h, cr, cr_init) + PAC_APPEND_FLAG([-lblcr],[EXTERNAL_LIBS]) + PAC_POP_FLAG([LIBS]) AC_DEFINE(ENABLE_CHECKPOINTING,1,[Application checkpointing enabled]) fi ], ) diff --git a/src/mpid/ch3/channels/nemesis/netmod/ib/subconfigure.m4 b/src/mpid/ch3/channels/nemesis/netmod/ib/subconfigure.m4 index 5026002..2cdcce6 100644 --- a/src/mpid/ch3/channels/nemesis/netmod/ib/subconfigure.m4 +++ b/src/mpid/ch3/channels/nemesis/netmod/ib/subconfigure.m4 @@ -17,13 +17,19 @@ AC_DEFUN([PAC_SUBCFG_BODY_]PAC_SUBCFG_AUTO_SUFFIX,[ AM_COND_IF([BUILD_NEMESIS_NETMOD_IB],[ AC_MSG_NOTICE([RUNNING CONFIGURE FOR ch3:nemesis:ib]) + PAC_PUSH_FLAG(LIBS) PAC_CHECK_HEADER_LIB(dcfa.h,dcfa,ibv_open_device,dcfa_found=yes,dcfa_found=no) + PAC_POP_FLAG(LIBS) if test "${dcfa_found}" = "yes" ; then AC_MSG_NOTICE([libdcfa is going to be linked.]) + PAC_APPEND_FLAG([-ldcfa],[EXTERNAL_LIBS]) else + PAC_PUSH_FLAG(LIBS) PAC_CHECK_HEADER_LIB([infiniband/verbs.h],ibverbs,ibv_open_device,ibverbs_found=yes,ibverbs_found=no) + PAC_POP_FLAG(LIBS) if test "${ibverbs_found}" = "yes" ; then AC_MSG_NOTICE([libibverbs is going to be linked.]) + PAC_APPEND_FLAG([-libverbs],[EXTERNAL_LIBS]) else AC_MSG_ERROR([Internal error: neither ibverbs nor dcfa was found]) fi diff --git a/src/mpid/ch3/channels/nemesis/netmod/mx/subconfigure.m4 b/src/mpid/ch3/channels/nemesis/netmod/mx/subconfigure.m4 index eeecbb1..940f591 100644 --- a/src/mpid/ch3/channels/nemesis/netmod/mx/subconfigure.m4 +++ b/src/mpid/ch3/channels/nemesis/netmod/mx/subconfigure.m4 @@ -14,7 +14,9 @@ AC_DEFUN([PAC_SUBCFG_BODY_]PAC_SUBCFG_AUTO_SUFFIX,[ AM_COND_IF([BUILD_NEMESIS_NETMOD_MX],[ AC_MSG_NOTICE([RUNNING CONFIGURE FOR ch3:nemesis:mx]) + PAC_PUSH_FLAG(LIBS) PAC_CHECK_HEADER_LIB_FATAL(mx, myriexpress.h, myriexpress, mx_finalize) + PAC_POP_FLAG(LIBS) AC_CHECK_HEADER([mx_extensions.h], , [ AC_MSG_ERROR(['mx_extensions.h not found. Are you running a recent version of MX (at least 1.2.1)?']) ]) @@ -31,6 +33,7 @@ AM_COND_IF([BUILD_NEMESIS_NETMOD_MX],[ AC_MSG_ERROR(['MX API version Problem. Are you running a recent version of MX (at least 1.2.1)?']) fi; AC_DEFINE([ENABLE_COMM_OVERRIDES], 1, [define to add per-vc function pointers to override send and recv functions]) + PAC_APPEND_FLAG([-lmx],[EXTERNAL_LIBS]) ])dnl end AM_COND_IF(BUILD_NEMESIS_NETMOD_MX,...) ])dnl end _BODY diff --git a/src/mpid/ch3/channels/nemesis/netmod/mxm/subconfigure.m4 b/src/mpid/ch3/channels/nemesis/netmod/mxm/subconfigure.m4 index 6920697..efa3890 100644 --- a/src/mpid/ch3/channels/nemesis/netmod/mxm/subconfigure.m4 +++ b/src/mpid/ch3/channels/nemesis/netmod/mxm/subconfigure.m4 @@ -14,7 +14,9 @@ AC_DEFUN([PAC_SUBCFG_BODY_]PAC_SUBCFG_AUTO_SUFFIX,[ AM_COND_IF([BUILD_NEMESIS_NETMOD_MXM],[ AC_MSG_NOTICE([RUNNING CONFIGURE FOR ch3:nemesis:mxm]) + PAC_PUSH_FLAG(LIBS) PAC_CHECK_HEADER_LIB_FATAL(mxm, [mxm/api/mxm_api.h], mxm, mxm_get_version) + PAC_POP_FLAG(LIBS) AC_CHECK_HEADER([mxm/api/mxm_api.h], , [ AC_MSG_ERROR(['mxm/api/mxm_api.h not found.']) ]) @@ -34,6 +36,7 @@ AM_COND_IF([BUILD_NEMESIS_NETMOD_MXM],[ AC_MSG_ERROR(['MXM API version Problem. Are you running a recent version of MXM (at least 3.0)?']) fi; AC_DEFINE([ENABLE_COMM_OVERRIDES], 1, [define to add per-vc function pointers to override send and recv functions]) + PAC_APPEND_FLAG([-lmxm],[EXTERNAL_LIBS]) ])dnl end AM_COND_IF(BUILD_NEMESIS_NETMOD_MXM,...) ])dnl end _BODY diff --git a/src/mpid/ch3/channels/nemesis/netmod/portals4/subconfigure.m4 b/src/mpid/ch3/channels/nemesis/netmod/portals4/subconfigure.m4 index 84464f6..2e617f0 100644 --- a/src/mpid/ch3/channels/nemesis/netmod/portals4/subconfigure.m4 +++ b/src/mpid/ch3/channels/nemesis/netmod/portals4/subconfigure.m4 @@ -15,7 +15,10 @@ AM_COND_IF([BUILD_NEMESIS_NETMOD_PORTALS4],[ AC_MSG_NOTICE([RUNNING CONFIGURE FOR ch3:nemesis:portals4]) PAC_SET_HEADER_LIB_PATH(portals4) + PAC_PUSH_FLAG(LIBS) PAC_CHECK_HEADER_LIB_FATAL(portals4, portals4.h, portals, PtlInit) + PAC_APPEND_FLAG([-lportals4],[EXTERNAL_LIBS]) + PAC_POP_FLAG(LIBS) AC_DEFINE([ENABLE_COMM_OVERRIDES], 1, [define to add per-vc function pointers to override send and recv functions]) diff --git a/src/mpid/ch3/subconfigure.m4 b/src/mpid/ch3/subconfigure.m4 index 461a884..132fe59 100644 --- a/src/mpid/ch3/subconfigure.m4 +++ b/src/mpid/ch3/subconfigure.m4 @@ -76,7 +76,10 @@ AC_ARG_ENABLE([ftb], [Enable FTB support (default is no)])], [AC_DEFINE([ENABLE_FTB], 1, [Define if FTB is enabled]) PAC_SET_HEADER_LIB_PATH([ftb]) - PAC_CHECK_HEADER_LIB_FATAL([ftb], [libftb.h], [ftb], [FTB_Connect])] + PAC_PUSH_FLAG(LIBS) + PAC_CHECK_HEADER_LIB_FATAL([ftb], [libftb.h], [ftb], [FTB_Connect]) + PAC_APPEND_FLAG([-lftb],[EXTERNAL_LIBS]) + PAC_POP_FLAG(LIBS)] ) AC_ARG_WITH(ch3-rank-bits, [--with-ch3-rank-bits=16/32 Number of bits allocated to the rank field (16 or 32)], diff --git a/src/mpid/common/hcoll/subconfigure.m4 b/src/mpid/common/hcoll/subconfigure.m4 index a55e5dd..0050aa9 100644 --- a/src/mpid/common/hcoll/subconfigure.m4 +++ b/src/mpid/common/hcoll/subconfigure.m4 @@ -2,7 +2,12 @@ AC_DEFUN([PAC_SUBCFG_PREREQ_]PAC_SUBCFG_AUTO_SUFFIX,[ PAC_SET_HEADER_LIB_PATH(hcoll) + PAC_PUSH_FLAG(LIBS) PAC_CHECK_HEADER_LIB([hcoll/api/hcoll_api.h],[hcoll],[hcoll_init],[have_hcoll=yes],[have_hcoll=no]) + if test "$have_hcoll" = "yes" ; then + PAC_APPEND_FLAG([-lhcoll],[EXTERNAL_LIBS]) + fi + PAC_POP_FLAG(LIBS) AM_CONDITIONAL([BUILD_HCOLL],[test "$have_hcoll" = "yes"]) ])dnl end PREREQ diff --git a/src/pm/hydra/Makefile.am b/src/pm/hydra/Makefile.am index 87b63f1..2958098 100644 --- a/src/pm/hydra/Makefile.am +++ b/src/pm/hydra/Makefile.am @@ -7,7 +7,7 @@ external_subdirs = @mpl_srcdir@ external_dist_subdirs = @mpl_dist_srcdir@ external_ldflags = -L$(top_builddir)/@mpl_srcdir@ -external_libs = -lmpl +external_libs = -lmpl @EXTERNAL_LIBS@ bin_PROGRAMS = noinst_HEADERS = diff --git a/src/pm/hydra/configure.ac b/src/pm/hydra/configure.ac index 1e8b324..bb290c4 100644 --- a/src/pm/hydra/configure.ac +++ b/src/pm/hydra/configure.ac @@ -44,7 +44,9 @@ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) # Reset link flags PAC_RESET_LINK_FLAGS() - +EXTERNAL_LIBS="" +export EXTERNAL_LIBS +AC_SUBST(EXTERNAL_LIBS) PAC_ARG_STRICT @@ -265,10 +267,13 @@ for hydra_bss_name in ${hydra_bss_names}; do hydra_bss_external=true # Check if TM library support is available PAC_SET_HEADER_LIB_PATH(pbs) + PAC_PUSH_FLAG(LIBS) PAC_CHECK_HEADER_LIB(tm.h, torque, tm_init, have_pbs_launcher=yes, have_pbs_launcher=no) + PAC_POP_FLAG(LIBS) if test "$have_pbs_launcher" = "yes" ; then available_launchers="$available_launchers pbs" + PAC_APPEND_FLAG([-ltorque],[EXTERNAL_LIBS]) fi available_rmks="$available_rmks pbs" ;; @@ -502,11 +507,14 @@ for hydra_ckpointlib in ${hydra_ckpointlibs}; do case "$hydra_ckpointlib" in blcr) PAC_SET_HEADER_LIB_PATH(blcr) + PAC_PUSH_FLAG(LIBS) PAC_CHECK_HEADER_LIB(libcr.h, cr, cr_init, have_blcr=yes, have_blcr=no) + PAC_POP_FLAG(LIBS) # BLCR works if test "$have_blcr" = "yes" ; then AC_DEFINE(HAVE_BLCR,1,[Define if blcr is available]) available_ckpointlibs="$available_ckpointlibs blcr" + PAC_APPEND_FLAG([-lcr],[EXTERNAL_LIBS]) fi ;; *) @@ -673,12 +681,13 @@ fi PAC_PUSH_FLAG([LIBS]) PAC_PREPEND_FLAG([-lpthread],[LIBS]) PAC_SET_HEADER_LIB_PATH(ftb) -PAC_POP_FLAG([LIBS]) PAC_CHECK_HEADER_LIB(libftb.h, ftb, FTB_Connect, have_ftb=yes, have_ftb=no) +PAC_POP_FLAG([LIBS]) if test "$have_ftb" = "yes" ; then # FIXME: We need to test to make sure FTB works correctly PAC_APPEND_FLAG([-lpthread],[LIBS]) AC_DEFINE(ENABLE_FTB,1,[Define if FTB is enabled]) + PAC_APPEND_FLAG([-lftb],[EXTERNAL_LIBS]) fi AM_CONDITIONAL([hydra_have_ftb], [test "${have_ftb}" = "yes"]) ----------------------------------------------------------------------- Summary of changes: Makefile.am | 8 ++++---- configure.ac | 17 ++++++++++------- .../ch3/channels/nemesis/netmod/ib/subconfigure.m4 | 6 ++++++ .../ch3/channels/nemesis/netmod/mx/subconfigure.m4 | 3 +++ .../channels/nemesis/netmod/mxm/subconfigure.m4 | 3 +++ .../nemesis/netmod/portals4/subconfigure.m4 | 3 +++ src/mpid/ch3/subconfigure.m4 | 5 ++++- src/mpid/common/hcoll/subconfigure.m4 | 5 +++++ src/pm/hydra/Makefile.am | 2 +- src/pm/hydra/configure.ac | 13 +++++++++++-- 10 files changed, 50 insertions(+), 15 deletions(-) hooks/post-receive -- MPICH primary repository