# Copyright (c) 2018 Dave Love, University of Manchester # Licence as for the package itself # Fixme: Fails on f29 because "default binary type" for g++ is returned # as 127 bits, not 64 %global with_openmpi3 0%{?el7} Name: clusteringsuite Version: 2.6.9 Release: 1%{?dist} Summary: Clustering analysis of Paraver and Dimemas traces License: LGPLv2+ URL: https://tools.bsc.es/cluster-analysis Source0: https://ftp.tools.bsc.es/clusteringsuite/clusteringsuite-%version-src.tar.bz2 # Fix configure test for muster Patch1: clusteringsuite-muster.patch BuildRequires: libxml2-devel openmpi-devel gcc-c++ BuildRequires: autoconf%{?el6:268} automake libtool # --with-muster currently fails looking for density.h, even when the # --configuration is fixed %if 0%{?muster} BuildRequires: muster-openmpi-devel %endif %if 0 BuildRequires: synapse-devel mpfr-devel gmp-devel sqlite-devel CGAL-devel %endif BuildRequires: boost%{?el6:148}-devel %global desc \ Automatically expose the main performance trends in applications'\ computation structure with clustering analysis of Paraver and Dimemas\ traces. %description %desc %package devel Summary: Development files for %name Requires: %name%{?_isa} = %version-%release %description devel Development files for %name. %package openmpi Requires: openmpi%{?_isa} Summary: Clustering analysis of Paraver and Dimemas traces - openmpi %description openmpi %desc This is the openmpi version. %package openmpi-devel Summary: Development files for %name-openmpi Requires: %name-openmpi%{?_isa} = %version-%release Requires: openmpi%{?_isa} %description openmpi-devel Development files for %name-openmpi. %if 0%{?with_openmpi3} %package openmpi3 Summary: Clustering analysis of Paraver and Dimemas traces - openmpi3 BuildRequires: openmpi3-devel%{?_isa} Requires: openmpi3%{?_isa} %description openmpi3 %desc This is the openmpi3 version. %package openmpi3-devel Summary: Development files for %name-openmpi3 Requires: %name-openmpi3%{?_isa} = %version-%release Requires: openmpi3%{?_isa} %description openmpi3-devel Development files for %name-openmpi3. %endif %prep %setup -q %{?muster:%patch1 -p1} autoreconf%{?el6:268} -fiv -Iconfig mkdir .openmpi # Need to copy because it won't build in a sub-dir cp -rp ./* .openmpi && mv .openmpi openmpi %build %configure --disable-static --includedir=%_includedir/clusteringsuite \ %{?el6: \ CPPFLAGS="$CXXFLAGS -I%_includedir/boost148" \ LDFLAGS="$LDFLAGS -L%_libdir/boost148"} %make_build %_openmpi_load cd openmpi %if 0%{?muster} # Fiddle to account for configure tests mkdir -p muster/lib ln -s $MPI_INCLUDE/muster muster/include cp $MPI_LIB/libmuster.so muster/lib %endif # It assumes headers are under MPI_HOME; CC and CXX are needed for # successful linking. mkdir mpi ln -s $MPI_LIB $MPI_BIN mpi ln -s $MPI_INCLUDE mpi/include %configure --with-mpi=$(pwd)/mpi %{?muster:--with-muster=$(pwd)/muster} \ --prefix=$MP_HOME --includedir=$MPI_INCLUDE/clusteringsuite \ --libdir=$MPI_LIB --bindir=$MPI_BIN --disable-static \ CXX=mpic++ CC=mpicc \ %if 0%{?el6} CPPFLAGS="$CXXFLAGS -I%_includedir/boost148 -I$wd/include" \ LDFLAGS="$LDFLAGS -L%_libdir/boost148"} %endif %make_build %install %make_install rm %buildroot%_libdir/*a %_openmpi_load %make_install -C openmpi rm %buildroot$MPI_LIB/*a rm -r %buildroot%_datadir/example %buildroot%_datadir/doc/clusteringsuite_manual.pdf %files %doc AUTHORS doc/clusteringsuite_manual.pdf ChangeLog %_bindir/* # clash with libbsctools %exclude %_libdir/libparavertraceconfig.so* %_libdir/*.so.0* %files devel %_libdir/*.so %_includedir/clusteringsuite %files openmpi %doc AUTHORS doc/clusteringsuite_manual.pdf ChangeLog %_libdir/openmpi/bin/* %_libdir/openmpi/lib/*.so.0* %files openmpi-devel %_libdir/openmpi/lib/*.so %_includedir/openmpi-%_arch/clusteringsuite %changelog * Tue Sep 24 2019 Dave love - 2.6.9-1 - New version * Thu Jan 10 2019 Dave Love - 2.6.8-2 - Add openmpi3 * Thu Sep 20 2018 Dave Love - 2.6.8-1 - New version - Drop installation patch * Mon Jun 4 2018 Dave Love - 2.6.7-1 - New version * Sat Apr 28 2018 Dave Love - 2.6.6-3 - Build serial package * Mon Apr 9 2018 Dave Love - 2.6.6-2 - Make it -openmpi - Require extrae-openmpi-devel, not extrae-devel * Fri Feb 16 2018 Dave Love - 2.6.6-1 - Initial packaging