Dave Love b2bbf83
# Copyright (c) 2014, 2015  Dave Love, University of Liverpool
3e077b1
# Copyright (c) 2018  Dave Love, University of Manchester
Dave Love b2bbf83
# MIT licence, per Fedora policy.
Dave Love b2bbf83
3e077b1
# fixme: appdata/desktop files?
7bd064e
# fixme: make common package with non-MPI-specific contents
Dave Love b2bbf83
Dave Love b2bbf83
# In case we can support el6
Dave Love b2bbf83
%if 0%{?el6}
Dave Love b2bbf83
%ifarch ppc64
Dave Love b2bbf83
%bcond_with mpich
Dave Love b2bbf83
%else
Dave Love b2bbf83
%bcond_without mpich
Dave Love b2bbf83
%endif
Dave Love b2bbf83
%else
Dave Love b2bbf83
%bcond_without mpich
Dave Love b2bbf83
%endif
Dave Love b2bbf83
9b36b40
%global shortver %(echo %version|awk -F. '{print $1 "." $2}')
Dave Love b2bbf83
Dave Love b2bbf83
Name:		scalasca
7bd064e
Version:	2.5
7bd064e
Release:	1%{?dist}
Dave Love b2bbf83
Summary:	Toolset for performance analysis of large-scale parallel applications
Dave Love b2bbf83
Dave Love b2bbf83
# ScoutPatternParser and SilasConfigParser are GPL
Dave Love b2bbf83
License:	BSD and GPLv3+
Dave Love b2bbf83
URL:		http://www.scalasca.org/
Dave Love b2bbf83
Source0:	http://apps.fz-juelich.de/scalasca/releases/scalasca/%shortver/dist/%name-%version.tar.gz
3e077b1
BuildRequires:	otf2-devel >= 2.0, cube-devel >= 4.4
0078acc
BuildRequires:	zlib-devel openmpi-devel chrpath gcc-c++
Dave Love b2bbf83
%if %{with mpich}
Dave Love b2bbf83
BuildRequires:	mpich-devel
Dave Love b2bbf83
%endif
ed49e31
# Needed by square, to be moved out of the scorep package.
ed49e31
# (The -instrument option is deprecated, so don't require/recommend scorep.)
3e077b1
Requires:	%_bindir/scorep-config
Dave Love b2bbf83
Dave Love b2bbf83
%global desc \
Dave Love b2bbf83
Scalasca is a software tool that supports the performance optimization\
Dave Love b2bbf83
of parallel programs by measuring and analyzing their runtime\
Dave Love b2bbf83
behavior. The analysis identifies potential performance bottlenecks –\
Dave Love b2bbf83
in particular those concerning communication and synchronization – and\
Dave Love b2bbf83
offers guidance in exploring their causes.\
Dave Love b2bbf83
\
Dave Love b2bbf83
Scalasca targets mainly scientific and engineering applications based\
Dave Love b2bbf83
on the programming interfaces MPI and OpenMP, including hybrid\
Dave Love b2bbf83
applications based on a combination of the two. The tool has been\
Dave Love b2bbf83
specifically designed for use on large-scale systems, but is also well\
Dave Love b2bbf83
suited for small- and medium-scale HPC platforms.
Dave Love b2bbf83
Dave Love b2bbf83
%description
Dave Love b2bbf83
%desc
Dave Love b2bbf83
Dave Love b2bbf83
%package openmpi
Dave Love b2bbf83
Summary:	Toolset for performance analysis of large-scale parallel applications - openmpi
Dave Love b2bbf83
Requires:	openmpi%{?_isa}
3e077b1
Requires:	%_libdir/openmpi/bin/scorep-config
Dave Love b2bbf83
Dave Love b2bbf83
%description openmpi
Dave Love b2bbf83
%desc
Dave Love b2bbf83
Dave Love b2bbf83
This is the openmpi version.
Dave Love b2bbf83
Dave Love b2bbf83
%if %{with mpich}
Dave Love b2bbf83
%package mpich
Dave Love b2bbf83
Summary:	Toolset for performance analysis of large-scale parallel applications - mpich
Dave Love b2bbf83
Requires:	mpich%{?_isa}
3e077b1
Requires:	%_libdir/mpich/bin/scorep-config
Dave Love b2bbf83
Dave Love b2bbf83
%description mpich
Dave Love b2bbf83
%desc
Dave Love b2bbf83
Dave Love b2bbf83
This is the mpich version.
Dave Love b2bbf83
%endif
Dave Love b2bbf83
Dave Love b2bbf83
%package doc
Dave Love b2bbf83
Summary: Documentation for %name
Dave Love b2bbf83
BuildArch: noarch
Dave Love b2bbf83
Dave Love b2bbf83
%description doc
Dave Love b2bbf83
Documentation for %name
Dave Love b2bbf83
Dave Love b2bbf83
%prep
Dave Love b2bbf83
%setup -q
Dave Love 24787ed
mkdir openmpi mpich simple
9b36b40
rm -r vendor/cubew vendor/otf2	# bundled libraries
Dave Love b2bbf83
Dave Love b2bbf83
Dave Love b2bbf83
%build
Dave Love b2bbf83
%global _configure ../configure
Dave Love b2bbf83
%global do_build \
Dave Love b2bbf83
%configure --with-otf2 --with-cube --enable-shared --libdir=$MPI_LIB \\\
Dave Love 24787ed
	   --bindir=$MPI_BIN --datadir=$MPI_HOME/share LDFLAGS=-Wl,--as-needed \\\
7bd064e
	   --enable-backend-test-runs --disable-silent-rules \\\
7bd064e
	   --mandir=$MPI_MAN --docdir=%_pkgdocdir \
ed49e31
	   %make_build
Dave Love b2bbf83
pushd openmpi
Dave Love b2bbf83
%_openmpi_load
Dave Love b2bbf83
%do_build
Dave Love b2bbf83
%_openmpi_unload
Dave Love b2bbf83
popd
Dave Love b2bbf83
%if %{with mpich}
Dave Love b2bbf83
pushd mpich
Dave Love b2bbf83
%_mpich_load
Dave Love b2bbf83
%do_build
Dave Love b2bbf83
%_mpich_unload
Dave Love b2bbf83
popd
Dave Love b2bbf83
%endif
Dave Love 24787ed
pushd simple
Dave Love 24787ed
%configure --with-otf2 --with-cube --enable-shared LDFLAGS=-Wl,--as-needed \
7bd064e
	   --enable-backend-test-runs --disable-silent-rules --without-mpi \
7bd064e
	   --docdir=%_pkgdocdir
ed49e31
%make_build
Dave Love 24787ed
popd
Dave Love b2bbf83
Dave Love b2bbf83
Dave Love b2bbf83
%install
ed49e31
%make_install -C openmpi
Dave Love b2bbf83
%if %{with mpich}
ed49e31
%make_install -C mpich
Dave Love b2bbf83
%endif
ed49e31
%make_install -C simple
Dave Love b2bbf83
Dave Love 24787ed
find $RPM_BUILD_ROOT%_libdir \( -name \*.la -o -name \*.a \) -exec rm -f {} \;
Dave Love 2f35561
chrpath -d $RPM_BUILD_ROOT%_bindir/scout.{ser,omp}
9b36b40
chrpath -d $RPM_BUILD_ROOT%_libdir/{openmpi,mpich}/bin/scout.{ser,omp}
Dave Love 2f35561
Dave Love b2bbf83
Dave Love b2bbf83
%check
Dave Love b2bbf83
%_openmpi_load
Dave Love b2bbf83
cd openmpi
8c8dfe5
OMPI_MCA_rmaps_base_oversubscribe=1 \
Dave Love ac625a3
make check VERBOSE=1
Dave Love b2bbf83
Dave Love 2f35561
a6de9ba
%ldconfig_scriptlets
Dave Love 2f35561
Dave Love 24787ed
%files
Dave Love b2bbf83
%doc README
Dave Love b2bbf83
%license COPYING
Dave Love b2bbf83
%_datadir/%name
Dave Love 24787ed
%exclude %_libdir/*.so
Dave Love 24787ed
%_libdir/*.so.*
Dave Love 24787ed
%_bindir/*
7bd064e
%_mandir/man1/*
Dave Love 24787ed
Dave Love 24787ed
%files openmpi
Dave Love 24787ed
%doc README
Dave Love 24787ed
%license COPYING
Dave Love 24787ed
%_libdir/openmpi/share/%name
Dave Love b2bbf83
%exclude %_libdir/openmpi/lib/*.so
Dave Love b2bbf83
%_libdir/openmpi/lib/*.so.*
Dave Love b2bbf83
%_libdir/openmpi/bin/*
7bd064e
%_mandir/openmpi-*/man1/*
Dave Love b2bbf83
Dave Love b2bbf83
%if %{with mpich}
Dave Love b2bbf83
%files mpich
Dave Love b2bbf83
%doc README
Dave Love b2bbf83
%license COPYING
Dave Love 24787ed
%_libdir/mpich/share/%name
Dave Love b2bbf83
%exclude %_libdir/mpich/lib/*.so
Dave Love b2bbf83
%_libdir/mpich/lib/*.so.*
Dave Love b2bbf83
%_libdir/mpich/bin/*
7bd064e
%_mandir/mpich-*/man1/*
Dave Love b2bbf83
%endif
Dave Love b2bbf83
Dave Love b2bbf83
%files doc
7bd064e
%license COPYING
7bd064e
%_pkgdocdir
Dave Love b2bbf83
Dave Love b2bbf83
Dave Love b2bbf83
%changelog
7bd064e
* Fri Mar 22 2019 Dave Love <loveshack@fedoraproject.org> - 2.5-1
7bd064e
- New version
7bd064e
- Drop patch
7bd064e
- Adjust doc files
7bd064e
8c8dfe5
* Thu Feb 14 2019 Orion Poplawski <orion@nwra.com> - 2.4-7
8c8dfe5
- Rebuild for openmpi 3.1.3
8c8dfe5
03e87cd
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.4-6
03e87cd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
03e87cd
3e077b1
* Mon Oct 29 2018 Dave Love <loveshack@fedoraproject.org> - 2.4-5
3e077b1
- Require scorep-config, not .spec file
3e077b1
- BR cube-devel >= 4.4
3e077b1
924bfa2
* Sat Oct 27 2018 Dave Love <loveshack@fedoraproject.org> - 2.4-4
924bfa2
- Correct dependence on scorep.spec
924bfa2
ed49e31
* Wed Oct 24 2018 Dave Love <loveshack@fedoraproject.org> - 2.4-3
ed49e31
- Require scorep config [#1610849]
ed49e31
- Fix finding scorep.spec in square
ed49e31
- Some rpm spec cleanup
ed49e31
0078acc
* Sat Jul 21 2018 Dave Love <loveshack@fedoraproject.org> - 2.4-2
0078acc
- BR gcc-c++ (#1606306)
0078acc
- Remove unnecessary -std=gnu++98
0078acc
eb1a99e
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.4-2
eb1a99e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
eb1a99e
0078acc
* Tue Jun 19 2018 Dave Love <loveshack@fedoraproject.org> - 2.4-1
9b36b40
- New version (#1578180)
9b36b40
4b4bdce
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.1-6
4b4bdce
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
4b4bdce
15a6225
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.1-5
15a6225
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
15a6225
3a28d59
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.1-4
3a28d59
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
3a28d59
40a76b7
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.1-3
40a76b7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
40a76b7
Orion Poplawski 490ed77
* Fri Oct 21 2016 Orion Poplawski <orion@cora.nwra.com> - 2.3.1-2
Orion Poplawski 490ed77
- Rebuild for openmpi 2.0
Orion Poplawski 490ed77
Orion Poplawski 5f54222
* Fri May 20 2016 Orion Poplawski <orion@cora.nwra.com> - 2.3.1-1
Orion Poplawski 5f54222
- Update to 2.3.1
Orion Poplawski 5f54222
- Drop pearl patch applied upstream
Orion Poplawski 5f54222
Dave Love 2f35561
* Thu May 12 2016 Dave Love <loveshack@fedoraproject.org> - 2.3-4
Dave Love 2f35561
- Run ldconfig for main package too, and fix rpath
Dave Love 2f35561
Dave Love 24787ed
* Wed May 11 2016 Dave Love <loveshack@fedoraproject.org> - 2.3-3
Dave Love 24787ed
- Build non-MPI version
Dave Love 24787ed
  Resolves: rhbz#1334560
Dave Love 24787ed
- Use separate datadirs; at least summary file is build-dependent
Dave Love 24787ed
Orion Poplawski b873a59
* Sat Apr 16 2016 Orion Poplawski <orion@cora.nwra.com> - 2.3-2
Orion Poplawski b873a59
- Just fix test program linkage
Orion Poplawski b873a59
Orion Poplawski 591554e
* Fri Apr 15 2016 Orion Poplawski <orion@cora.nwra.com> - 2.3-1
Orion Poplawski 591554e
- Update to 2.3
Orion Poplawski b2cff49
- Add patch to fix libpearl_base linkage
Orion Poplawski 591554e
Dave Love b50661c
* Sun Feb 14 2016 Dave Love <loveshack@fedoraproject.org> - 2.2.2-6
Dave Love b50661c
- Set CXX flags to build with gcc6
Dave Love b50661c
- Disable silent make rules
Dave Love b50661c
ea6a550
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.2-5
ea6a550
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
ea6a550
Orion Poplawski 6eaa095
* Tue Sep 15 2015 Orion Poplawski <orion@cora.nwra.com> - 2.2.2-4
Orion Poplawski 6eaa095
- Rebuild for openmpi 1.10.0
Orion Poplawski 6eaa095
Dave Love f13d1bc
* Sat Aug 22 2015 Dave Love <d.love@liverpool.ac.uk> - 2.2.2-3
Dave Love f13d1bc
- BR openssh-clients so test works in koji epel7
Dave Love ac625a3
Dave Love b2bbf83
* Tue Jul 7 2015 Dave Love <d.love@liverpool.ac.uk> - 2.2.2-2
Dave Love b2bbf83
- Various spec tidying
Dave Love b2bbf83
- Don't build devel package -- doesn't seem useful
Dave Love b2bbf83
Dave Love b2bbf83
* Thu Jun 25 2015 Dave Love <d.love@liverpool.ac.uk> - 2.2.2-1
Dave Love b2bbf83
- New version
Dave Love b2bbf83
Dave Love b2bbf83
* Thu May 28 2015 Dave Love <d.love@liverpool.ac.uk> - 2.2.1-1
Dave Love b2bbf83
- New version
Dave Love b2bbf83
Dave Love b2bbf83
* Sun Feb 22 2015 Dave Love <d.love@liverpool.ac.uk> - 2.2-1
Dave Love b2bbf83
- New version
Dave Love b2bbf83
Dave Love b2bbf83
* Sun Feb 22 2015 Dave Love <d.love@liverpool.ac.uk> - 2.1-6
Dave Love b2bbf83
- Configure and run tests
Dave Love b2bbf83
- Avoid mpich on el6 ppc64
Dave Love b2bbf83
- Remove defattr
Dave Love b2bbf83
Dave Love b2bbf83
* Wed Dec 24 2014 Dave Love <d.love@liverpool.ac.uk> - 2.1-5
Dave Love b2bbf83
- Don't install .a files
Dave Love b2bbf83
Dave Love b2bbf83
* Tue Dec 16 2014 Dave Love <d.love@liverpool.ac.uk> - 2.1-4
Dave Love b2bbf83
- Modify requires
Dave Love b2bbf83
Dave Love b2bbf83
* Sun Dec 14 2014 Dave Love <d.love@liverpool.ac.uk> - 2.1-4
Dave Love b2bbf83
- Fix copyright
Dave Love b2bbf83
Dave Love b2bbf83
* Thu Dec 11 2014 Dave Love <d.love@liverpool.ac.uk> - 2.1-3
Dave Love b2bbf83
- Add mpich
Dave Love b2bbf83
Dave Love b2bbf83
* Thu Nov 20 2014 Dave Love <d.love@liverpool.ac.uk> - 2.1-2
Dave Love b2bbf83
- Minor rpmlint fixes
Dave Love b2bbf83
Dave Love b2bbf83
* Mon Oct 13 2014 Dave Love <d.love@liverpool.ac.uk> - 2.1-2
Dave Love b2bbf83
- Initial packaging