Browse Source

When using fxt in simgrid mode, make sure to link libfxt statically, otherwise SMPI variable privatization will not work and it will malfunction

Samuel Thibault 10 years ago
parent
commit
d725e67e2e

+ 6 - 0
configure.ac

@@ -1568,6 +1568,12 @@ if test x$use_fxt = xyes; then
 	AC_CHECK_DECLS([fut_set_filename])
 	CFLAGS="$save_CFLAGS"
 
+	if test x$enable_simgrid = xyes; then
+                # simgrid's SMPI needs fxt to be linked in statically for
+                # variable privatization to work
+		FXT_LIBS="$(pkg-config --variable=libdir fxt)/libfxt.a -lrt"
+	fi
+
         AC_ARG_ENABLE(paje-codelet-details, [AS_HELP_STRING([--enable-paje-codelet-details],
 			[enable details about codelets in the paje trace])],
 			enable_paje_codelet_details=$enableval, enable_paje_codelet_details=no)

+ 2 - 2
mpi/libstarpumpi.pc.in

@@ -1,6 +1,6 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
-# Copyright (C) 2009-2011  Université de Bordeaux
+# Copyright (C) 2009-2011, 2016  Université de Bordeaux
 # Copyright (C) 2010, 2011, 2012  CNRS
 #
 # StarPU is free software; you can redistribute it and/or modify
@@ -24,6 +24,6 @@ Description: offers MPI support for heterogeneous multicore architecture
 Version: @PACKAGE_VERSION@
 Cflags: -I${includedir}/starpu/@STARPU_EFFECTIVE_VERSION@ -DSTARPU_USE_DEPRECATED_API
 Libs: -L${libdir} -lstarpumpi-@STARPU_EFFECTIVE_VERSION@
-Libs.private: @LDFLAGS@ @LIBS@
+Libs.private: @LDFLAGS@ @LIBS@ @STARPU_EXPORTED_LIBS@
 Requires: libstarpu
 Requires.private:

+ 2 - 2
mpi/starpumpi-1.0.pc.in

@@ -1,6 +1,6 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
-# Copyright (C) 2009-2011  Université de Bordeaux
+# Copyright (C) 2009-2011, 2016  Université de Bordeaux
 # Copyright (C) 2010, 2011, 2012  CNRS
 #
 # StarPU is free software; you can redistribute it and/or modify
@@ -24,6 +24,6 @@ Description: offers MPI support for heterogeneous multicore architecture
 Version: @PACKAGE_VERSION@
 Cflags: -I${includedir}/starpu/@STARPU_EFFECTIVE_VERSION@
 Libs: -L${libdir} -lstarpumpi-@STARPU_EFFECTIVE_VERSION@
-Libs.private: @LDFLAGS@ @LIBS@
+Libs.private: @LDFLAGS@ @LIBS@ @STARPU_EXPORTED_LIBS@
 Requires: starpu-1.0
 Requires.private:

+ 2 - 2
mpi/starpumpi-1.1.pc.in

@@ -1,6 +1,6 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
-# Copyright (C) 2009-2011, 2013  Université de Bordeaux
+# Copyright (C) 2009-2011, 2013, 2016  Université de Bordeaux
 # Copyright (C) 2010, 2011, 2012  CNRS
 #
 # StarPU is free software; you can redistribute it and/or modify
@@ -24,6 +24,6 @@ Description: offers MPI support for heterogeneous multicore architecture
 Version: @PACKAGE_VERSION@
 Cflags: -I${includedir}/starpu/@STARPU_EFFECTIVE_VERSION@
 Libs: -L${libdir} -lstarpumpi-@STARPU_EFFECTIVE_VERSION@
-Libs.private: @LDFLAGS@ @LIBS@
+Libs.private: @LDFLAGS@ @LIBS@ @STARPU_EXPORTED_LIBS@
 Requires: starpu-1.1
 Requires.private:

+ 2 - 2
mpi/starpumpi-1.2.pc.in

@@ -1,6 +1,6 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
-# Copyright (C) 2009-2011, 2013  Université de Bordeaux
+# Copyright (C) 2009-2011, 2013, 2016  Université de Bordeaux
 # Copyright (C) 2010, 2011, 2012  CNRS
 #
 # StarPU is free software; you can redistribute it and/or modify
@@ -24,6 +24,6 @@ Description: offers MPI support for heterogeneous multicore architecture
 Version: @PACKAGE_VERSION@
 Cflags: -I${includedir}/starpu/@STARPU_EFFECTIVE_VERSION@
 Libs: -L${libdir} -lstarpumpi-@STARPU_EFFECTIVE_VERSION@
-Libs.private: @LDFLAGS@ @LIBS@
+Libs.private: @LDFLAGS@ @LIBS@ @STARPU_EXPORTED_LIBS@
 Requires: starpu-1.2
 Requires.private:

+ 2 - 2
mpi/starpumpi-1.3.pc.in

@@ -1,6 +1,6 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
-# Copyright (C) 2009-2011, 2013, 2015  Université de Bordeaux
+# Copyright (C) 2009-2011, 2013, 2015-2016  Université de Bordeaux
 # Copyright (C) 2010, 2011, 2012  CNRS
 #
 # StarPU is free software; you can redistribute it and/or modify
@@ -24,6 +24,6 @@ Description: offers MPI support for heterogeneous multicore architecture
 Version: @PACKAGE_VERSION@
 Cflags: -I${includedir}/starpu/@STARPU_EFFECTIVE_VERSION@
 Libs: -L${libdir} -lstarpumpi-@STARPU_EFFECTIVE_VERSION@
-Libs.private: @LDFLAGS@ @LIBS@
+Libs.private: @LDFLAGS@ @LIBS@ @STARPU_EXPORTED_LIBS@
 Requires: starpu-1.3
 Requires.private:

+ 1 - 1
tools/Makefile.am

@@ -17,7 +17,7 @@
 SUBDIRS =
 
 AM_CFLAGS = $(HWLOC_CFLAGS) $(STARPU_CUDA_CPPFLAGS) $(STARPU_OPENCL_CPPFLAGS) $(STARPU_COI_CPPFLAGS) $(GLOBAL_AM_CFLAGS)
-LIBS = $(top_builddir)/src/@LIBSTARPU_LINK@ @LIBS@
+LIBS = $(top_builddir)/src/@LIBSTARPU_LINK@ @LIBS@ $(FXT_LIBS)
 AM_CPPFLAGS = -I$(top_srcdir)/include/ -I$(top_srcdir)/tools/ -I$(top_srcdir)/mpi/ -I$(top_builddir)/src -I$(top_srcdir)/src
 AM_LDFLAGS = @STARPU_EXPORT_DYNAMIC@ $(STARPU_COI_LDFLAGS) $(STARPU_SCIF_LDFLAGS)