9fcd99b
Name:           cube
Orion Poplawski 4b6dc6d
Version:        4.3.1
58d0812
Release:        2%{?dist}
9fcd99b
Summary:        CUBE Uniform Behavioral Encoding generic presentation component
9fcd99b
9fcd99b
License:        BSD
9fcd99b
URL:            http://www.scalasca.org/software/cube-4.x/download.html
Orion Poplawski 4b6dc6d
Source0:        http://apps.fz-juelich.de/scalasca/releases/cube/4.3/dist/cube-%{version}.tar.gz
9fcd99b
9fcd99b
BuildRequires:  dbus-devel
9fcd99b
BuildRequires:  qt4-devel
9fcd99b
BuildRequires:  java-devel
9fcd99b
BuildRequires:  jpackage-utils
9fcd99b
BuildRequires:  xerces-j2
9fcd99b
BuildRequires:  chrpath
9fcd99b
BuildRequires:  desktop-file-utils
9fcd99b
9fcd99b
%description
9fcd99b
CUBE (CUBE Uniform Behavioral Encoding) is a generic presentation component
9fcd99b
suitable for displaying a wide variety of performance metrics for parallel
9fcd99b
programs including MPI and OpenMP applications. CUBE allows interactive
9fcd99b
exploration of a multidimensional performance space in a scalable fashion.
9fcd99b
Scalability is achieved in two ways: hierarchical decomposition of individual
9fcd99b
dimensions and aggregation across different dimensions. All performance
9fcd99b
metrics are uniformly accommodated in the same display and thus provide the
9fcd99b
ability to easily compare the effects of different kinds of performance
9fcd99b
behavior.
9fcd99b
9fcd99b
9fcd99b
%package        devel
9fcd99b
Summary:        Development files for %{name}
9fcd99b
Requires:       %{name}%{?_isa} = %{version}-%{release}
9fcd99b
9fcd99b
%description    devel
9fcd99b
The %{name}-devel package contains libraries and header files for
9fcd99b
developing applications that use %{name}.
9fcd99b
9fcd99b
9fcd99b
%package        doc
9fcd99b
Summary:        Documentation for %{name}
9fcd99b
BuildArch:      noarch
9fcd99b
9fcd99b
%description    doc
9fcd99b
The %{name}-doc package contains documentation for %{name}.
9fcd99b
9fcd99b
9fcd99b
%package        java
9fcd99b
Summary:        CUBE reader for Java
9fcd99b
Requires:       %{name} = %{version}-%{release}
9fcd99b
BuildArch:      noarch
9fcd99b
Requires:       java
9fcd99b
Requires:       jpackage-utils
9fcd99b
9fcd99b
%description    java
9fcd99b
The %{name}-java package contains a CUBE reader written in Java.
9fcd99b
9fcd99b
9fcd99b
%prep
9fcd99b
%setup -q
9fcd99b
sed -i -e 's/"//g' CUBE.desktop.in
9fcd99b
9fcd99b
9fcd99b
%build
9fcd99b
# We need to explicitly set CXX here so that scorep picks it up
9fcd99b
%configure --disable-static \
9fcd99b
  --disable-silent-rules \
9fcd99b
  --with-platform=linux \
9fcd99b
  --with-java-reader=yes \
9fcd99b
  --with-xerces-name=xerces-j2.jar
9fcd99b
make
9fcd99b
# %{?_smp_mflags} - CubeReader.jar fails
9fcd99b
9fcd99b
9fcd99b
%install
9fcd99b
%make_install
9fcd99b
find %{buildroot} -name '*.la' -exec rm -f {} ';'
9fcd99b
9fcd99b
# Install doc
Orion Poplawski 1f38d91
cp -p AUTHORS ChangeLog COPYING README \
9fcd99b
      %{buildroot}%{_defaultdocdir}/%{name}/
9fcd99b
Richard Hughes f965b29
# Register as an application to be visible in the software center
Richard Hughes f965b29
#
Richard Hughes f965b29
# NOTE: It would be *awesome* if this file was maintained by the upstream
Richard Hughes f965b29
# project, translated and installed into the right place during `make install`.
Richard Hughes f965b29
#
Richard Hughes f965b29
# See http://www.freedesktop.org/software/appstream/docs/ for more details.
Richard Hughes f965b29
#
Richard Hughes f965b29
mkdir -p $RPM_BUILD_ROOT%{_datadir}/appdata
Richard Hughes f965b29
cat > $RPM_BUILD_ROOT%{_datadir}/appdata/CUBE.appdata.xml <
Richard Hughes f965b29
Richard Hughes f965b29
Richard Hughes f965b29
Richard Hughes f965b29
<application>
Richard Hughes f965b29
 <id type="desktop">CUBE.desktop</id>
Richard Hughes f965b29
 <metadata_license>CC0-1.0</metadata_license>
Richard Hughes f965b29
 <project_license>BSD-3-Clause</project_license>
Richard Hughes f965b29
 <name>Cube</name>
Richard Hughes f965b29
 <summary>A presentation component suitable for displaying
Richard Hughes f965b29
performance data for parallel programs</summary>
Richard Hughes f965b29
 <description>
Richard Hughes f965b29
  

Richard Hughes f965b29
    "Cube" (CUBE Uniform Behavioral Encoding) is a presentation
Richard Hughes f965b29
    component suitable for displaying a wide variety of performance
Richard Hughes f965b29
    data for parallel programs including MPI and OpenMP applications.
Richard Hughes f965b29
  

Richard Hughes f965b29
  

Richard Hughes f965b29
    Program performance is represented in a multi-dimensional space including various program and
Richard Hughes f965b29
    system resources. The tool allows the interactive exploration of this
Richard Hughes f965b29
    space in a scalable fashion and browsing the different kinds of
Richard Hughes f965b29
    performance behavior with ease.  All metrics are uniformly accommodated in the 
Richard Hughes f965b29
    same display and thus provide the ability to easily compare the effects of 
Richard Hughes f965b29
    different kinds of program behavior.
Richard Hughes f965b29
  

Richard Hughes f965b29
  

Richard Hughes f965b29
    "Cube" also includes a library to
Richard Hughes f965b29
    read and write performance data as well as operators to compare,
Richard Hughes f965b29
    integrate, and summarize data from different experiments. 
Richard Hughes f965b29
  

Richard Hughes f965b29
  

Richard Hughes f965b29
    The Cube 4.x release series uses an incompatible API and
Richard Hughes f965b29
    file format compared to previous versions, however,
Richard Hughes f965b29
    existing files in CUBE3 format can still be processed
Richard Hughes f965b29
    for backwards-compatibility.    
Richard Hughes f965b29
  

Richard Hughes f965b29
 </description>
Richard Hughes f965b29
 <screenshots>
Richard Hughes f965b29
  <screenshot type="default" width="1152" height="648">http://apps.fz-juelich.de/scalasca/releases/cube/screenshots/topo1.png</screenshot>
Richard Hughes f965b29
  <screenshot width="1152" height="648">http://apps.fz-juelich.de/scalasca/releases/cube/screenshots/topo2.png</screenshot>
Richard Hughes f965b29
  <screenshot width="1152" height="648">http://apps.fz-juelich.de/scalasca/releases/cube/screenshots/box.png</screenshot>
Richard Hughes f965b29
  <screenshot width="1152" height="648">http://apps.fz-juelich.de/scalasca/releases/cube/screenshots/flat.png</screenshot>
Richard Hughes f965b29
  <screenshot width="1152" height="648">http://apps.fz-juelich.de/scalasca/releases/cube/screenshots/palette.png</screenshot>
Richard Hughes f965b29
 </screenshots>
Richard Hughes f965b29
 <url type="homepage">http://www.scalasca.org/software/cube-4.x/download.html</url>
Richard Hughes f965b29
 <updatecontact>scalasca_at_fz-juelich.de</updatecontact>
Richard Hughes f965b29
</application>
Richard Hughes f965b29
EOF
Richard Hughes f965b29
9fcd99b
# Strip rpath
Orion Poplawski 4b6dc6d
chrpath -d -k %{buildroot}%{_bindir}/* %{buildroot}%{_libdir}/{,cube-plugins/}*.so  || :
9fcd99b
9fcd99b
# Install desktop file
9fcd99b
desktop-file-install --dir=%{buildroot}%{_datadir}/applications CUBE.desktop
9fcd99b
9fcd99b
# Not needed since we install into the system dirs
9fcd99b
rm -r %{buildroot}%{_datadir}/modulefiles
9fcd99b
9fcd99b
9fcd99b
%check
9fcd99b
make check
9fcd99b
9fcd99b
9fcd99b
%post
9fcd99b
/sbin/ldconfig
9fcd99b
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
9fcd99b
/usr/bin/update-desktop-database &> /dev/null || :
9fcd99b
9fcd99b
%postun
9fcd99b
/sbin/ldconfig
9fcd99b
if [ $1 -eq 0 ] ; then
9fcd99b
    /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
9fcd99b
    /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
9fcd99b
fi
9fcd99b
/usr/bin/update-desktop-database &> /dev/null || :
9fcd99b
9fcd99b
%posttrans
9fcd99b
/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
9fcd99b
9fcd99b
9fcd99b
%files
9fcd99b
%dir %{_defaultdocdir}/cube/
9fcd99b
%{_defaultdocdir}/cube/AUTHORS
9fcd99b
%{_defaultdocdir}/cube/ChangeLog
9fcd99b
%{_defaultdocdir}/cube/COPYING
9fcd99b
%{_defaultdocdir}/cube/README
9fcd99b
%{_bindir}/cube
9fcd99b
%{_bindir}/cube3to4
9fcd99b
%{_bindir}/cube4to3
9fcd99b
%{_bindir}/cube_calltree
9fcd99b
%{_bindir}/cube_canonize
9fcd99b
%{_bindir}/cube_clean
9fcd99b
%{_bindir}/cube_cmp
Orion Poplawski 4b6dc6d
%{_bindir}/cube_commoncalltree
9fcd99b
%{_bindir}/cube_cut
9fcd99b
%{_bindir}/cube_diff
9fcd99b
%{_bindir}/cube_dump
9fcd99b
%{_bindir}/cube_exclusify
9fcd99b
%{_bindir}/cube_inclusify
9fcd99b
%{_bindir}/cube_info
9fcd99b
%{_bindir}/cube_is_empty
9fcd99b
%{_bindir}/cube_mean
9fcd99b
%{_bindir}/cube_merge
9fcd99b
%{_bindir}/cube_nodeview
9fcd99b
%{_bindir}/cube_part
9fcd99b
%{_bindir}/cube_rank
9fcd99b
%{_bindir}/cube_regioninfo
9fcd99b
%{_bindir}/cube_remap2
9fcd99b
%{_bindir}/cube_sanity
9fcd99b
%{_bindir}/cube_score
9fcd99b
%{_bindir}/cube_stat
9fcd99b
%{_bindir}/cube_test
9fcd99b
%{_bindir}/cube_topoassist
9fcd99b
%{_bindir}/tau2cube
Orion Poplawski 4b6dc6d
%{_libdir}/lib%{name}*.so.7*
Orion Poplawski 4b6dc6d
%{_libdir}/libgraphwidgetcommon-plugin.so.7*
Orion Poplawski 4b6dc6d
%{_libdir}/cube-plugins/
Richard Hughes f965b29
%{_datadir}/appdata/*.appdata.xml
9fcd99b
%{_datadir}/applications/CUBE.desktop
Orion Poplawski 4b6dc6d
%{_datadir}/icons/*
Orion Poplawski 1f38d91
%{_datadir}/%{name}/
9fcd99b
9fcd99b
%files devel
9fcd99b
%{_bindir}/cube-config
9fcd99b
%{_bindir}/cube-config-backend
9fcd99b
%{_bindir}/cube-config-frontend
9fcd99b
%{_includedir}/%{name}*/
Orion Poplawski 4b6dc6d
%{_includedir}/cubegui/
9fcd99b
%{_libdir}/lib%{name}*.so
Orion Poplawski 4b6dc6d
%{_libdir}/libgraphwidgetcommon-plugin.so
Orion Poplawski 4b6dc6d
%{_defaultdocdir}/cube/example/
9fcd99b
9fcd99b
%files doc
9fcd99b
%{_defaultdocdir}/cube/
9fcd99b
9fcd99b
%files java
9fcd99b
%{_datadir}/java/CubeReader.jar
9fcd99b
9fcd99b
9fcd99b
%changelog
58d0812
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.3.1-2
58d0812
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
58d0812
Orion Poplawski 4b6dc6d
* Tue May 5 2015 Orion Poplawski <orion@cora.nwra.com> - 4.3.1-1
Orion Poplawski 4b6dc6d
- Update to 4.3.1
Orion Poplawski 4b6dc6d
cf1f6a2
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 4.2.3-5
cf1f6a2
- Rebuilt for GCC 5 C++11 ABI change
cf1f6a2
Richard Hughes f965b29
* Thu Mar 26 2015 Richard Hughes <rhughes@redhat.com> - 4.2.3-4
Richard Hughes f965b29
- Add an AppData file for the software center
Richard Hughes f965b29
2896ab7
* Tue Mar  3 2015 Peter Robinson <pbrobinson@fedoraproject.org> 4.2.3-3
2896ab7
- rebuild (gcc5)
2896ab7
4b51f9e
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.2.3-2
4b51f9e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
4b51f9e
Orion Poplawski d576f9f
* Thu Jul 17 2014 Orion Poplawski <orion@cora.nwra.com> - 4.2.3-1
Orion Poplawski d576f9f
- Update to 4.2.3
Orion Poplawski d576f9f
4c5a85b
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.2.2-2
4c5a85b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
4c5a85b
9fcd99b
* Mon Mar 3 2014 Orion Poplawski <orion@cora.nwra.com> - 4.2.2-1
9fcd99b
- Update to 4.2.2
9fcd99b
- Fix doc duplication
9fcd99b
- Add icon and destop-database scriptlets
9fcd99b
- Use chrpath to strip rpaths
9fcd99b
9fcd99b
* Fri Feb 28 2014 Orion Poplawski <orion@cora.nwra.com> - 4.2.1-2
9fcd99b
- Add %%check
9fcd99b
9fcd99b
* Wed Feb 26 2014 Orion Poplawski <orion@cora.nwra.com> - 4.2.1-1
9fcd99b
- Update to 4.2.1
9fcd99b
9fcd99b
* Fri Nov 8 2013 Orion Poplawski <orion@cora.nwra.com> - 4.2-3
9fcd99b
- Fix 32bit build
9fcd99b
9fcd99b
* Wed Oct 2 2013 Orion Poplawski <orion@cora.nwra.com> - 4.2-2
9fcd99b
- Use patch to fix up various libdir paths
9fcd99b
- Modify configure to remove rpath
9fcd99b
9fcd99b
* Fri Sep 27 2013 Orion Poplawski <orion@cora.nwra.com> - 4.2-1
9fcd99b
- Initial package