# Copyright (c) 2015 Dave Love, Liverpool University # MIT licence, per Fedora policy. # Fixme: shared library sonames Name: darshan Version: 3.2.1 Release: 1%{?dist} Summary: Scalable HPC i/o characterization tool License: MIT URL: http://www.mcs.anl.gov/research/projects/darshan/documentation/ Source0: ftp://ftp.mcs.anl.gov/pub/darshan/releases/darshan-%version.tar.gz Patch1: darshan-jobid.patch BuildRequires: zlib-devel openmpi-devel bzip2-devel texlive-latex mpich-devel %global desc \ Darshan is designed to capture an accurate picture of application I/O\ behavior, including properties such as patterns of access within files,\ with minimum overhead. The name is taken from a Sanskrit word for “sight”\ or “vision”.\ \ Darshan can be used to investigate and tune the I/O behavior of\ complex HPC applications. In addition, Darshan’s lightweight design\ makes it suitable for full time deployment for workload\ characterization of large systems. We hope that such studies will\ help the storage research community to better serve the needs of\ scientific computing. %description %desc %package util Summary: Scalable HPC i/o characterization tool - summary utilities #Requires: perl-Number-Bytes-Human perl-TeX-Encode gnuplot %description util %desc These are the summary utilities. %package runtime-openmpi Summary: Scalable HPC i/o characterization tool - openmpi runtme Requires: openmpi%{?_isa} %description runtime-openmpi %desc This is the openmpi runtime. %package openmpi-devel Summary: Development files for %name-util-openmpi Requires: %name-runtime-openmpi%{_isa} = %version-%release %description openmpi-devel Development files for %name-openmpi %package runtime-mpich Summary: Scalable HPC i/o characterization tool - mpich runtme Requires: mpich%{?_isa} %description runtime-mpich %desc This is the mpich runtime. %package mpich-devel Summary: Development files for %name-util-mpich Requires: %name-runtime-mpich%{_isa} = %version-%release %description mpich-devel Development files for %name-mpich %prep %setup -q mkdir darshan-runtime/{openmpi,mpich} darshan-util/build #%patch1 -p1 -b .jobid sed -i -e 's|bin/gnuplot|bin/gnuplot-wx|g' \ darshan-util/darshan-job-summary/share/*gplt \ darshan-util/darshan-job-summary/bin/darshan-job-summary.pl.in %build %global _configure ../configure %global dobuild \ %configure --with-mem-align=8 --with-jobid-env=JOB_ID CC=mpicc --with-log-path-by-env=DARSHAN_LOGPATH CC=mpicc --libdir=$MPI_LIB --bindir=$MPI_BIN --datadir=$MPI_HOME/share --datarootdir=%_datadir/%name --includedir=$MPI_INCLUDE\ make %{?_smp_mflags} %_openmpi_load pushd darshan-runtime/openmpi %dobuild popd %_openmpi_unload %_mpich_load pushd darshan-runtime/mpich %dobuild popd %_mpich_unload pushd darshan-util/build %configure --enable-shared --datarootdir=%_datadir/%name make %{?_smp_mflags} popd %install rm -rf $RPM_BUILD_ROOT %_openmpi_load make -C darshan-runtime/openmpi install DESTDIR=$RPM_BUILD_ROOT %_openmpi_unload %_mpich_load make -C darshan-runtime/mpich install DESTDIR=$RPM_BUILD_ROOT %_mpich_unload # pkgconfigdir to work around makefile bug make -C darshan-util/build install DESTDIR=$RPM_BUILD_ROOT pkgconfigdir=$RPM_BUILD_ROOT%_libdir/pkgconfig rm -rf $RPM_BUILD_ROOT%_datadir/cray* chmod +x $RPM_BUILD_ROOT%_datadir/darshan/*.gplt chmod +x $RPM_BUILD_ROOT%_libdir/openmpi/lib/*.a find $RPM_BUILD_ROOT -name \*.pm -exec rm {} \; rm $RPM_BUILD_ROOT%_libdir/*.a %clean rm -rf $RPM_BUILD_ROOT %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files util %doc COPYRIGHT ChangeLog %_bindir/* %_libdir/*.so %dir %_libdir/pkgconfig %_libdir/pkgconfig/*.pc %exclude %_datadir/%name/craype-* %exclude %_datadir/%name/mpi-profile/darshan-bg* %_datadir/%name %files runtime-openmpi %doc COPYRIGHT ChangeLog %exclude %_libdir/openmpi/bin/darshan-config %_libdir/openmpi/bin/* %exclude %_libdir/openmpi/lib/*.a %exclude %_libdir/openmpi/lib/pkgconfig/*.pc %_libdir/openmpi/lib/* %files openmpi-devel %_includedir/* %dir %_libdir/openmpi/lib/pkgconfig %_libdir/openmpi/lib/pkgconfig/*.pc %_libdir/openmpi/bin/darshan-config %files runtime-mpich %doc COPYRIGHT ChangeLog %exclude %_libdir/mpich/bin/darshan-config %_libdir/mpich/bin/* %exclude %_libdir/mpich/lib/*.a %exclude %_libdir/mpich/lib/pkgconfig/*.pc %_libdir/mpich/lib/* %files mpich-devel %_includedir/* %dir %_libdir/mpich/lib/pkgconfig %_libdir/mpich/lib/pkgconfig/*.pc %_libdir/mpich/bin/darshan-config %changelog * Mon Jun 8 2020 Dave Love - 3.2.1-1 - New version * Mon Dec 16 2019 Dave Love - 3.1.8-1 - New version * Thu Jul 19 2018 Dave Love - 3.1.6-1 - New version * Fri Feb 2 2018 Dave Love - 3.1.5-1 - New version * Sat Oct 15 2016 Dave Love - 3.1.1-1 - New version * Mon Jun 6 2016 Dave Love - 3.0.1-1 - New version * Wed May 11 2016 Dave Love - 3.0.0-1 - New version * Thu Dec 10 2015 Dave Love - 2.3.1-3 - Don't install .a files - Install headers correctly * Mon May 4 2015 Dave Love - 2.3.1-2 - mpich version - Patch to try various jobid environment variables * Fri Mar 13 2015 Dave Love - 2.3.1-1 - Initial version