[mpich2-commits] r5584 - in mpich2/trunk/src/pm/hydra: . pm/pmiserv tools/bind/hwloc ui/mpiexec

balaji at mcs.anl.gov balaji at mcs.anl.gov
Tue Oct 27 17:53:51 CDT 2009


Author: balaji
Date: 2009-10-27 17:53:51 -0500 (Tue, 27 Oct 2009)
New Revision: 5584

Removed:
   mpich2/trunk/src/pm/hydra/autogen.sh
Modified:
   mpich2/trunk/src/pm/hydra/Makefile.am
   mpich2/trunk/src/pm/hydra/configure.in
   mpich2/trunk/src/pm/hydra/pm/pmiserv/Makefile.mk
   mpich2/trunk/src/pm/hydra/tools/bind/hwloc/Makefile.mk
   mpich2/trunk/src/pm/hydra/ui/mpiexec/Makefile.mk
Log:
Fix the build problems with using hwloc caused by the fact that hwloc
was using libtool and hydra wasn't.

Modified: mpich2/trunk/src/pm/hydra/Makefile.am
===================================================================
--- mpich2/trunk/src/pm/hydra/Makefile.am	2009-10-27 21:34:17 UTC (rev 5583)
+++ mpich2/trunk/src/pm/hydra/Makefile.am	2009-10-27 22:53:51 UTC (rev 5584)
@@ -4,7 +4,10 @@
 #     See COPYRIGHT in top-level directory.
 #
 
-SUBDIRS = mpl .
+# Set external subdirs to NULL. They are built first.
+external_subdirs =
+external_ldflags = -static
+external_libs =
 
 ACLOCAL_AMFLAGS = -I mpl/confdb
 AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/mpl/include \
@@ -28,6 +31,10 @@
 # Build the UI
 include ui/Makefile.mk
 
+# The external subdirs need to get built first, as we might depend on
+# them.
+SUBDIRS = $(external_subdirs) mpl .
+
 # Use the mpich2-build-install target to include mpiexec in the build bin
 # directory (all pm's require these targets)
 mpich2-build-install: install

Deleted: mpich2/trunk/src/pm/hydra/autogen.sh
===================================================================
--- mpich2/trunk/src/pm/hydra/autogen.sh	2009-10-27 21:34:17 UTC (rev 5583)
+++ mpich2/trunk/src/pm/hydra/autogen.sh	2009-10-27 22:53:51 UTC (rev 5584)
@@ -1,12 +0,0 @@
-#! /bin/sh
-
-for subdir in . tools/bind/hwloc/hwloc ; do
-    echo "=== Entering subdir $subdir ==="
-    if (cd $subdir && autoreconf -vif) ; then
-	:
-    else
-	echo "        autoreconf failed!"
-	exit
-    fi
-    echo "=== Done with subdir $subdir ==="
-done

Modified: mpich2/trunk/src/pm/hydra/configure.in
===================================================================
--- mpich2/trunk/src/pm/hydra/configure.in	2009-10-27 21:34:17 UTC (rev 5583)
+++ mpich2/trunk/src/pm/hydra/configure.in	2009-10-27 22:53:51 UTC (rev 5584)
@@ -6,6 +6,7 @@
 
 AC_INIT([Hydra], [0.1])
 AC_CONFIG_AUX_DIR(mpl/confdb)
+AC_CONFIG_MACRO_DIR(mpl/confdb)
 AM_INIT_AUTOMAKE([-Wall -Werror foreign 1.11])
 
 # When built as a subconfigure, pull in FLAGS from above
@@ -23,8 +24,11 @@
 AC_TYPE_SIZE_T
 CFLAGS=$save_cflags
 
+# Libtool might be required for third-party packages
+LT_INIT
+
 AM_PROG_MKDIR_P
-AC_PROG_RANLIB
+AC_PROG_INSTALL
 PAC_ARG_CACHING
 PAC_ARG_STRICT
 PAC_C_GNU_ATTRIBUTE
@@ -343,11 +347,9 @@
 		fi
 		;;		
 	hwloc)
-		PAC_CONFIG_SUBDIR(tools/bind/hwloc/hwloc, $abs_srcdir, $ac_configure_args,
-				have_hwloc=yes,)
-		if test "$have_hwloc" = "yes" ; then
-		   AC_DEFINE(HAVE_HWLOC,1,[Define if hwloc is available])
-		fi
+		AC_CONFIG_SUBDIRS(tools/bind/hwloc/hwloc)
+		have_hwloc=yes
+		AC_DEFINE(HAVE_HWLOC,1,[Define if hwloc is available])
 		;;
 	*)
 		;;
@@ -469,21 +471,6 @@
     PAC_FUNC_NEEDS_DECL([#include <unistd.h>],gethostname)
 fi
 
-# Substitute common variables. Some versions of autoconf have trouble
-# with this.
-AC_SUBST(CC)
-AC_SUBST(CFLAGS)
-AC_SUBST(LDFLAGS)
-AC_SUBST(CC_SHL)
-AC_SUBST(C_LINK_SHL)
-
-ENABLE_SHLIB=none
-AC_SUBST(ENABLE_SHLIB)
-AC_SUBST(RANLIB)
-AC_SUBST(MAKE_DEPEND_C)
-
-AC_PROG_INSTALL
-
 AC_CONFIG_SUBDIRS(mpl)
 
 # Place holder macro for finalization

Modified: mpich2/trunk/src/pm/hydra/pm/pmiserv/Makefile.mk
===================================================================
--- mpich2/trunk/src/pm/hydra/pm/pmiserv/Makefile.mk	2009-10-27 21:34:17 UTC (rev 5583)
+++ mpich2/trunk/src/pm/hydra/pm/pmiserv/Makefile.mk	2009-10-27 22:53:51 UTC (rev 5584)
@@ -9,7 +9,8 @@
 pmi_proxy_SOURCES = $(top_srcdir)/pm/pmiserv/pmi_proxy.c \
 	$(top_srcdir)/pm/pmiserv/pmi_proxy_cb.c \
 	$(top_srcdir)/pm/pmiserv/pmi_proxy_utils.c
-pmi_proxy_LDADD = libhydra.a
+pmi_proxy_LDADD = libhydra.a $(external_libs)
+pmi_proxy_LDFLAGS = $(external_ldflags)
 
 libpm_a_SOURCES += $(top_srcdir)/pm/pmiserv/pmi_handle.c \
 	$(top_srcdir)/pm/pmiserv/pmi_handle_common.c \

Modified: mpich2/trunk/src/pm/hydra/tools/bind/hwloc/Makefile.mk
===================================================================
--- mpich2/trunk/src/pm/hydra/tools/bind/hwloc/Makefile.mk	2009-10-27 21:34:17 UTC (rev 5583)
+++ mpich2/trunk/src/pm/hydra/tools/bind/hwloc/Makefile.mk	2009-10-27 22:53:51 UTC (rev 5584)
@@ -6,4 +6,11 @@
 
 libhydra_a_SOURCES += $(top_srcdir)/tools/bind/hwloc/bind_hwloc.c
 
-SUBDIRS += tools/bind/hwloc/hwloc
+AM_CPPFLAGS += -I$(top_srcdir)/tools/bind/hwloc/hwloc/include \
+	-I$(top_builddir)/tools/bind/hwloc/hwloc/include
+
+# Append hwloc to the external subdirs, so it gets built first
+external_subdirs += tools/bind/hwloc/hwloc
+
+external_ldflags += -L$(top_builddir)/tools/bind/hwloc/hwloc/src
+external_libs += -lhwloc

Modified: mpich2/trunk/src/pm/hydra/ui/mpiexec/Makefile.mk
===================================================================
--- mpich2/trunk/src/pm/hydra/ui/mpiexec/Makefile.mk	2009-10-27 21:34:17 UTC (rev 5583)
+++ mpich2/trunk/src/pm/hydra/ui/mpiexec/Makefile.mk	2009-10-27 22:53:51 UTC (rev 5584)
@@ -9,8 +9,9 @@
 mpiexec_SOURCES = $(top_srcdir)/ui/mpiexec/callback.c \
 	$(top_srcdir)/ui/mpiexec/mpiexec.c \
 	$(top_srcdir)/ui/mpiexec/utils.c
-mpiexec_LDADD = libui.a libpm.a libhydra.a
+mpiexec_LDADD = libui.a libpm.a libhydra.a $(external_libs)
 mpiexec_CFLAGS = -I$(top_srcdir)/ui/utils
+mpiexec_LDFLAGS = $(external_ldflags)
 
 install-alt-ui: mpiexec
 	@if [ ! -d $(DESTDIR)${bindir} ] ; then \



More information about the mpich2-commits mailing list