## START: Set by rpmautospec ## (rpmautospec version 0.3.5) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 1; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec # Based on # https://src.fedoraproject.org/rpms/dbcsr # https://src.fedoraproject.org/rpms/MUSIC %global mpi_list mpich openmpi # $mpi will be evaluated when building %global _vpath_builddir %{_vendor}-%{_target_os}-build-${mpi:-serial} Name: caliper Version: 2.10.0 Release: %autorelease Summary: An instrumentation and performance profiling library License: BSD-3-Clause URL: https://software.llnl.gov/Caliper Source0: https://github.com/llnl/Caliper/archive/v%{version}/%{name}-%{version}.tar.gz BuildRequires: cmake BuildRequires: doxygen BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: gcc-gfortran BuildRequires: gotcha-devel BuildRequires: gtest BuildRequires: libdwarf-devel BuildRequires: libpfm-devel BuildRequires: libunwind-devel BuildRequires: mpich-devel BuildRequires: openmpi-devel BuildRequires: papi-devel BuildRequires: python3-devel BuildRequires: python3dist(sphinx) # papi is currently not built for s390 # OpenMPI not supported on i686 and an unexpected test fails ExcludeArch: s390 s390x %{ix86} %description Caliper is a performance instrumentation and profiling library for HPC (high-performance computing) programs. It provides source-code annotation APIs for marking regions of interest in C, C++, and Fortran code, as well as a set of built-in performance measurement recipes for a wide range of performance engineering use cases, such as lightweight always-on profiling, event tracing, or performance monitoring. Alternatively, users can create custom measurement configurations for specialized use cases. %package devel Summary: An instrumentation and performance profiling library Requires: %{name}%{?_isa} = %{version}-%{release} %description devel Development header files for Caliper %prep %autosetup -n Caliper-%{version} %package openmpi Summary: Extrae - openmpi version BuildRequires: openmpi-devel %description openmpi This package contains the parallel single- and multi-threaded versions using OpenMPI. %package openmpi-devel Summary: Development files for %{name}-openmpi Requires: %{name}-openmpi%{?_isa} = %{version}-%{release} %description openmpi-devel The %{name}-openmpi-devel package contains libraries and header files for developing applications that use %{name}-openmpi. %package mpich Summary: Extrae - mpich version BuildRequires: mpich-devel %description mpich This package contains the parallel single- and multi-threaded versions using mpich. %package mpich-devel Summary: Development files for %{name}-mpich Requires: %{name}-mpich%{?_isa} = %{version}-%{release} %description mpich-devel The %{name}-mpich-devel package contains libraries and header files for developing applications that use %{name}-mpich. %build %cmake -DWITH_FORTRAN=TRUE \ -DBUILD_SHARED_LIBS=TRUE \ -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=FALSE \ -DWITH_TOOLS=TRUE \ -DWITH_NVTX=FALSE \ -DWITH_CUPTI=FALSE \ -DWITH_PAPI=TRUE \ -DWITH-LIBPFM=TRUE \ -DWITH-LIBDW=TRUE \ -DWITH-MPI=FALSE \ -DWITH-OMPT=TRUE \ -DWITH_SAMPLER=TRUE \ -DWITH_GOTCHA=TRUE \ -DUSE_EXTERNAL_GOTCHA=TRUE \ -DWITH_ROCTX=FALSE \ -DWITH_ROCTRACER=FALSE \ -DWITH_ROCM=FALSE \ -DWITH_TAU=FALSE \ -DWITH_VTUNE=FALSE \ -DWITH_ADIAK=FALSE \ -DWITH_KOKKOS=FALSE \ -DWITH_PCP=FALSE \ -DWITH_UMPIRE=FALSE \ -DENABLE_HISTOGRAMS=FALSE \ -DBUILD_TESTING=FALSE \ -DBUILD_DOCS=TRUE \ -DRUN_MPI_TESTS=FALSE \ -DINSTALL_CONFIG=TRUE \ -DINSTALL_HEADERS=TRUE %cmake_build for mpi in %{mpi_list} do module load mpi/$mpi-%{_arch} %cmake -DWITH_FORTRAN=TRUE \ -DBUILD_SHARED_LIBS=TRUE \ -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=FALSE \ -DWITH_TOOLS=TRUE \ -DWITH_NVTX=FALSE \ -DWITH_CUPTI=FALSE \ -DWITH_PAPI=TRUE \ -DWITH-LIBPFM=TRUE \ -DWITH-LIBDW=TRUE \ -DWITH-MPI=TRUE \ -DWITH-OMPT=TRUE \ -DWITH_SAMPLER=TRUE \ -DWITH_GOTCHA=TRUE \ -DUSE_EXTERNAL_GOTCHA=TRUE \ -DWITH_ROCTX=FALSE \ -DWITH_ROCTRACER=FALSE \ -DWITH_ROCM=FALSE \ -DWITH_TAU=FALSE \ -DWITH_VTUNE=FALSE \ -DWITH_ADIAK=FALSE \ -DWITH_KOKKOS=FALSE \ -DWITH_PCP=FALSE \ -DWITH_UMPIRE=FALSE \ -DENABLE_HISTOGRAMS=FALSE \ -DBUILD_TESTING=FALSE \ -DBUILD_DOCS=TRUE \ -DRUN_MPI_TESTS=FALSE \ -DINSTALL_CONFIG=TRUE \ -DINSTALL_HEADERS=TRUE \ -DCMAKE_INSTALL_PREFIX:PATH=$MPI_HOME \ -DCMAKE_INSTALL_LIBDIR:PATH=$MPI_LIB %cmake_build module purge done %install %cmake_install for mpi in %{mpi_list} do module load mpi/$mpi-%{_arch} %cmake_install module purge done %files %license LICENSE %license NOTICE %doc CITATION.cff %doc README.md %{_bindir}/cali-query %{_bindir}/cali-stat %{_libdir}/libcaliper-serial.so.2 %{_libdir}/libcaliper-serial.so.2.10.0 %{_libdir}/libcaliper-tools-util.so.2 %{_libdir}/libcaliper-tools-util.so.2.10.0 %{_libdir}/libcaliper.so.2 %{_libdir}/libcaliper.so.2.10.0 %files devel %dir %{_includedir}/caliper %{_includedir}/caliper/Annotation.h %{_includedir}/caliper/AnnotationBinding.h %{_includedir}/caliper/BufferedRegionProfile.h %{_includedir}/caliper/CaliFunctional.h %{_includedir}/caliper/Caliper.h %{_includedir}/caliper/CaliperService.h %{_includedir}/caliper/ChannelController.h %{_includedir}/caliper/CollectiveOutputChannel.h %{_includedir}/caliper/ConfigManager.h %{_includedir}/caliper/MpiChannelManager.h %{_includedir}/caliper/RegionProfile.h %{_includedir}/caliper/SnapshotRecord.h %{_includedir}/caliper/cali-manager.h %{_includedir}/caliper/cali-mpi.h %{_includedir}/caliper/cali.h %{_includedir}/caliper/cali_datatracker.h %{_includedir}/caliper/cali_definitions.h %{_includedir}/caliper/cali_macros.h %{_includedir}/caliper/caliper-config.h %dir %{_includedir}/caliper/common %{_includedir}/caliper/common/Attribute.h %{_includedir}/caliper/common/CaliperMetadataAccessInterface.h %{_includedir}/caliper/common/CompressedSnapshotRecord.h %{_includedir}/caliper/common/Entry.h %{_includedir}/caliper/common/Log.h %{_includedir}/caliper/common/Node.h %{_includedir}/caliper/common/NodeBuffer.h %{_includedir}/caliper/common/OutputStream.h %{_includedir}/caliper/common/RuntimeConfig.h %{_includedir}/caliper/common/SnapshotBuffer.h %{_includedir}/caliper/common/SnapshotTextFormatter.h %{_includedir}/caliper/common/StringConverter.h %{_includedir}/caliper/common/Variant.h %dir %{_includedir}/caliper/common/c-util %{_includedir}/caliper/common/c-util/unitfmt.h %{_includedir}/caliper/common/c-util/vlenc.h %{_includedir}/caliper/common/cali_types.h %{_includedir}/caliper/common/cali_variant.h %dir %{_includedir}/caliper/common/util %{_includedir}/caliper/common/util/callback.hpp %{_includedir}/caliper/common/util/lockfree-tree.hpp %{_includedir}/caliper/common/util/spinlock.hpp %{_includedir}/caliper/common/util/split.hpp %dir %{_includedir}/caliper/fortran %{_includedir}/caliper/fortran/caliper_mod.mod %dir %{_includedir}/caliper/reader %{_includedir}/caliper/reader/Aggregator.h %{_includedir}/caliper/reader/CalQLParser.h %{_includedir}/caliper/reader/CaliReader.h %{_includedir}/caliper/reader/CaliWriter.h %{_includedir}/caliper/reader/CaliperMetadataDB.h %{_includedir}/caliper/reader/Expand.h %{_includedir}/caliper/reader/FlatExclusiveRegionProfile.h %{_includedir}/caliper/reader/FlatInclusiveRegionProfile.h %{_includedir}/caliper/reader/FormatProcessor.h %{_includedir}/caliper/reader/Formatter.h %{_includedir}/caliper/reader/JsonFormatter.h %{_includedir}/caliper/reader/JsonSplitFormatter.h %{_includedir}/caliper/reader/NestedExclusiveRegionProfile.h %{_includedir}/caliper/reader/NestedInclusiveRegionProfile.h %{_includedir}/caliper/reader/Preprocessor.h %{_includedir}/caliper/reader/QueryProcessor.h %{_includedir}/caliper/reader/QuerySpec.h %{_includedir}/caliper/reader/RecordProcessor.h %{_includedir}/caliper/reader/RecordSelector.h %{_includedir}/caliper/reader/SnapshotTree.h %{_includedir}/caliper/reader/TableFormatter.h %{_includedir}/caliper/reader/TreeFormatter.h %{_includedir}/caliper/reader/UserFormatter.h %dir %{_includedir}/caliper/tools-util %{_includedir}/caliper/tools-util/Args.h %{_includedir}/caliper/typesCaliper.h %{_includedir}/caliper/wrapAnnotation.h %{_includedir}/caliper/wrapBufferedRegionProfile.h %{_includedir}/caliper/wrapCaliper.h %{_includedir}/caliper/wrapConfigManager.h %{_includedir}/caliper/wrapScopeAnnotation.h %{_libdir}/libcaliper-serial.so %{_libdir}/libcaliper-tools-util.so %{_libdir}/libcaliper.so %{_libdir}/pkgconfig/caliper.pc %{_datadir}/cmake/caliper/caliper-config.cmake %{_datadir}/cmake/caliper/caliper-targets-noconfig.cmake %{_datadir}/cmake/caliper/caliper-targets.cmake %files mpich %license LICENSE %license NOTICE %doc CITATION.cff %doc README.md %{_libdir}/mpich/bin/cali-query %{_libdir}/mpich/bin/cali-stat %{_libdir}/mpich/lib/libcaliper-serial.so.2 %{_libdir}/mpich/lib/libcaliper-serial.so.2.10.0 %{_libdir}/mpich/lib/libcaliper-tools-util.so.2 %{_libdir}/mpich/lib/libcaliper-tools-util.so.2.10.0 %{_libdir}/mpich/lib/libcaliper.so.2 %{_libdir}/mpich/lib/libcaliper.so.2.10.0 %files mpich-devel %dir %{_libdir}/mpich/include/caliper %{_libdir}/mpich/include/caliper/Annotation.h %{_libdir}/mpich/include/caliper/AnnotationBinding.h %{_libdir}/mpich/include/caliper/BufferedRegionProfile.h %{_libdir}/mpich/include/caliper/CaliFunctional.h %{_libdir}/mpich/include/caliper/Caliper.h %{_libdir}/mpich/include/caliper/CaliperService.h %{_libdir}/mpich/include/caliper/ChannelController.h %{_libdir}/mpich/include/caliper/CollectiveOutputChannel.h %{_libdir}/mpich/include/caliper/ConfigManager.h %{_libdir}/mpich/include/caliper/MpiChannelManager.h %{_libdir}/mpich/include/caliper/RegionProfile.h %{_libdir}/mpich/include/caliper/SnapshotRecord.h %{_libdir}/mpich/include/caliper/cali-manager.h %{_libdir}/mpich/include/caliper/cali-mpi.h %{_libdir}/mpich/include/caliper/cali.h %{_libdir}/mpich/include/caliper/cali_datatracker.h %{_libdir}/mpich/include/caliper/cali_definitions.h %{_libdir}/mpich/include/caliper/cali_macros.h %{_libdir}/mpich/include/caliper/caliper-config.h %dir %{_libdir}/mpich/include/caliper/common %{_libdir}/mpich/include/caliper/common/Attribute.h %{_libdir}/mpich/include/caliper/common/CaliperMetadataAccessInterface.h %{_libdir}/mpich/include/caliper/common/CompressedSnapshotRecord.h %{_libdir}/mpich/include/caliper/common/Entry.h %{_libdir}/mpich/include/caliper/common/Log.h %{_libdir}/mpich/include/caliper/common/Node.h %{_libdir}/mpich/include/caliper/common/NodeBuffer.h %{_libdir}/mpich/include/caliper/common/OutputStream.h %{_libdir}/mpich/include/caliper/common/RuntimeConfig.h %{_libdir}/mpich/include/caliper/common/SnapshotBuffer.h %{_libdir}/mpich/include/caliper/common/SnapshotTextFormatter.h %{_libdir}/mpich/include/caliper/common/StringConverter.h %{_libdir}/mpich/include/caliper/common/Variant.h %dir %{_libdir}/mpich/include/caliper/common/c-util %{_libdir}/mpich/include/caliper/common/c-util/unitfmt.h %{_libdir}/mpich/include/caliper/common/c-util/vlenc.h %{_libdir}/mpich/include/caliper/common/cali_types.h %{_libdir}/mpich/include/caliper/common/cali_variant.h %dir %{_libdir}/mpich/include/caliper/common/util %{_libdir}/mpich/include/caliper/common/util/callback.hpp %{_libdir}/mpich/include/caliper/common/util/lockfree-tree.hpp %{_libdir}/mpich/include/caliper/common/util/spinlock.hpp %{_libdir}/mpich/include/caliper/common/util/split.hpp %dir %{_libdir}/mpich/include/caliper/fortran %{_libdir}/mpich/include/caliper/fortran/caliper_mod.mod %dir %{_libdir}/mpich/include/caliper/reader %{_libdir}/mpich/include/caliper/reader/Aggregator.h %{_libdir}/mpich/include/caliper/reader/CalQLParser.h %{_libdir}/mpich/include/caliper/reader/CaliReader.h %{_libdir}/mpich/include/caliper/reader/CaliWriter.h %{_libdir}/mpich/include/caliper/reader/CaliperMetadataDB.h %{_libdir}/mpich/include/caliper/reader/Expand.h %{_libdir}/mpich/include/caliper/reader/FlatExclusiveRegionProfile.h %{_libdir}/mpich/include/caliper/reader/FlatInclusiveRegionProfile.h %{_libdir}/mpich/include/caliper/reader/FormatProcessor.h %{_libdir}/mpich/include/caliper/reader/Formatter.h %{_libdir}/mpich/include/caliper/reader/JsonFormatter.h %{_libdir}/mpich/include/caliper/reader/JsonSplitFormatter.h %{_libdir}/mpich/include/caliper/reader/NestedExclusiveRegionProfile.h %{_libdir}/mpich/include/caliper/reader/NestedInclusiveRegionProfile.h %{_libdir}/mpich/include/caliper/reader/Preprocessor.h %{_libdir}/mpich/include/caliper/reader/QueryProcessor.h %{_libdir}/mpich/include/caliper/reader/QuerySpec.h %{_libdir}/mpich/include/caliper/reader/RecordProcessor.h %{_libdir}/mpich/include/caliper/reader/RecordSelector.h %{_libdir}/mpich/include/caliper/reader/SnapshotTree.h %{_libdir}/mpich/include/caliper/reader/TableFormatter.h %{_libdir}/mpich/include/caliper/reader/TreeFormatter.h %{_libdir}/mpich/include/caliper/reader/UserFormatter.h %dir %{_libdir}/mpich/include/caliper/tools-util %{_libdir}/mpich/include/caliper/tools-util/Args.h %{_libdir}/mpich/include/caliper/typesCaliper.h %{_libdir}/mpich/include/caliper/wrapAnnotation.h %{_libdir}/mpich/include/caliper/wrapBufferedRegionProfile.h %{_libdir}/mpich/include/caliper/wrapCaliper.h %{_libdir}/mpich/include/caliper/wrapConfigManager.h %{_libdir}/mpich/include/caliper/wrapScopeAnnotation.h %{_libdir}/mpich/lib/libcaliper-serial.so %{_libdir}/mpich/lib/libcaliper-tools-util.so %{_libdir}/mpich/lib/libcaliper.so %{_libdir}/mpich/lib/pkgconfig/caliper.pc %{_libdir}/mpich/share/cmake/caliper/caliper-config.cmake %{_libdir}/mpich/share/cmake/caliper/caliper-targets-noconfig.cmake %{_libdir}/mpich/share/cmake/caliper/caliper-targets.cmake %files openmpi %license LICENSE %license NOTICE %doc CITATION.cff %doc README.md %{_libdir}/openmpi/bin/cali-query %{_libdir}/openmpi/bin/cali-stat %{_libdir}/openmpi/lib/libcaliper-serial.so.2 %{_libdir}/openmpi/lib/libcaliper-serial.so.2.10.0 %{_libdir}/openmpi/lib/libcaliper-tools-util.so.2 %{_libdir}/openmpi/lib/libcaliper-tools-util.so.2.10.0 %{_libdir}/openmpi/lib/libcaliper.so.2 %{_libdir}/openmpi/lib/libcaliper.so.2.10.0 %files openmpi-devel %dir %{_libdir}/openmpi/include/caliper %{_libdir}/openmpi/include/caliper/Annotation.h %{_libdir}/openmpi/include/caliper/AnnotationBinding.h %{_libdir}/openmpi/include/caliper/BufferedRegionProfile.h %{_libdir}/openmpi/include/caliper/CaliFunctional.h %{_libdir}/openmpi/include/caliper/Caliper.h %{_libdir}/openmpi/include/caliper/CaliperService.h %{_libdir}/openmpi/include/caliper/ChannelController.h %{_libdir}/openmpi/include/caliper/CollectiveOutputChannel.h %{_libdir}/openmpi/include/caliper/ConfigManager.h %{_libdir}/openmpi/include/caliper/MpiChannelManager.h %{_libdir}/openmpi/include/caliper/RegionProfile.h %{_libdir}/openmpi/include/caliper/SnapshotRecord.h %{_libdir}/openmpi/include/caliper/cali-manager.h %{_libdir}/openmpi/include/caliper/cali-mpi.h %{_libdir}/openmpi/include/caliper/cali.h %{_libdir}/openmpi/include/caliper/cali_datatracker.h %{_libdir}/openmpi/include/caliper/cali_definitions.h %{_libdir}/openmpi/include/caliper/cali_macros.h %{_libdir}/openmpi/include/caliper/caliper-config.h %dir %{_libdir}/openmpi/include/caliper/common %{_libdir}/openmpi/include/caliper/common/Attribute.h %{_libdir}/openmpi/include/caliper/common/CaliperMetadataAccessInterface.h %{_libdir}/openmpi/include/caliper/common/CompressedSnapshotRecord.h %{_libdir}/openmpi/include/caliper/common/Entry.h %{_libdir}/openmpi/include/caliper/common/Log.h %{_libdir}/openmpi/include/caliper/common/Node.h %{_libdir}/openmpi/include/caliper/common/NodeBuffer.h %{_libdir}/openmpi/include/caliper/common/OutputStream.h %{_libdir}/openmpi/include/caliper/common/RuntimeConfig.h %{_libdir}/openmpi/include/caliper/common/SnapshotBuffer.h %{_libdir}/openmpi/include/caliper/common/SnapshotTextFormatter.h %{_libdir}/openmpi/include/caliper/common/StringConverter.h %{_libdir}/openmpi/include/caliper/common/Variant.h %dir %{_libdir}/openmpi/include/caliper/common/c-util %{_libdir}/openmpi/include/caliper/common/c-util/unitfmt.h %{_libdir}/openmpi/include/caliper/common/c-util/vlenc.h %{_libdir}/openmpi/include/caliper/common/cali_types.h %{_libdir}/openmpi/include/caliper/common/cali_variant.h %dir %{_libdir}/openmpi/include/caliper/common/util %{_libdir}/openmpi/include/caliper/common/util/callback.hpp %{_libdir}/openmpi/include/caliper/common/util/lockfree-tree.hpp %{_libdir}/openmpi/include/caliper/common/util/spinlock.hpp %{_libdir}/openmpi/include/caliper/common/util/split.hpp %dir %{_libdir}/openmpi/include/caliper/fortran %{_libdir}/openmpi/include/caliper/fortran/caliper_mod.mod %dir %{_libdir}/openmpi/include/caliper/reader %{_libdir}/openmpi/include/caliper/reader/Aggregator.h %{_libdir}/openmpi/include/caliper/reader/CalQLParser.h %{_libdir}/openmpi/include/caliper/reader/CaliReader.h %{_libdir}/openmpi/include/caliper/reader/CaliWriter.h %{_libdir}/openmpi/include/caliper/reader/CaliperMetadataDB.h %{_libdir}/openmpi/include/caliper/reader/Expand.h %{_libdir}/openmpi/include/caliper/reader/FlatExclusiveRegionProfile.h %{_libdir}/openmpi/include/caliper/reader/FlatInclusiveRegionProfile.h %{_libdir}/openmpi/include/caliper/reader/FormatProcessor.h %{_libdir}/openmpi/include/caliper/reader/Formatter.h %{_libdir}/openmpi/include/caliper/reader/JsonFormatter.h %{_libdir}/openmpi/include/caliper/reader/JsonSplitFormatter.h %{_libdir}/openmpi/include/caliper/reader/NestedExclusiveRegionProfile.h %{_libdir}/openmpi/include/caliper/reader/NestedInclusiveRegionProfile.h %{_libdir}/openmpi/include/caliper/reader/Preprocessor.h %{_libdir}/openmpi/include/caliper/reader/QueryProcessor.h %{_libdir}/openmpi/include/caliper/reader/QuerySpec.h %{_libdir}/openmpi/include/caliper/reader/RecordProcessor.h %{_libdir}/openmpi/include/caliper/reader/RecordSelector.h %{_libdir}/openmpi/include/caliper/reader/SnapshotTree.h %{_libdir}/openmpi/include/caliper/reader/TableFormatter.h %{_libdir}/openmpi/include/caliper/reader/TreeFormatter.h %{_libdir}/openmpi/include/caliper/reader/UserFormatter.h %dir %{_libdir}/openmpi/include/caliper/tools-util %{_libdir}/openmpi/include/caliper/tools-util/Args.h %{_libdir}/openmpi/include/caliper/typesCaliper.h %{_libdir}/openmpi/include/caliper/wrapAnnotation.h %{_libdir}/openmpi/include/caliper/wrapBufferedRegionProfile.h %{_libdir}/openmpi/include/caliper/wrapCaliper.h %{_libdir}/openmpi/include/caliper/wrapConfigManager.h %{_libdir}/openmpi/include/caliper/wrapScopeAnnotation.h %{_libdir}/openmpi/lib/libcaliper-serial.so %{_libdir}/openmpi/lib/libcaliper-tools-util.so %{_libdir}/openmpi/lib/libcaliper.so %{_libdir}/openmpi/lib/pkgconfig/caliper.pc %{_libdir}/openmpi/share/cmake/caliper/caliper-config.cmake %{_libdir}/openmpi/share/cmake/caliper/caliper-targets-noconfig.cmake %{_libdir}/openmpi/share/cmake/caliper/caliper-targets.cmake %changelog * Sat Nov 18 2023 John Doe - 2.10.0-1 - Uncommitted changes