Bladeren bron

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 9 jaren geleden
bovenliggende
commit
d725e67e2e
7 gewijzigde bestanden met toevoegingen van 17 en 11 verwijderingen
  1. 6 0
      configure.ac
  2. 2 2
      mpi/libstarpumpi.pc.in
  3. 2 2
      mpi/starpumpi-1.0.pc.in
  4. 2 2
      mpi/starpumpi-1.1.pc.in
  5. 2 2
      mpi/starpumpi-1.2.pc.in
  6. 2 2
      mpi/starpumpi-1.3.pc.in
  7. 1 1
      tools/Makefile.am

+ 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)