# fixme: # use https://github.com/LLNL/MountPointAttributes %global commit 03f232a78e29fea5f19022f8664c18eb88cfda97 %define short_name stat Name: STAT Summary: The Stack Trace Analysis Tool scalable debugger Version: 4.0.2 Release: 1%{?dist} License: BSD Group: Development/Debuggers Source: https://github.com/LLNL/STAT/archive/v%version/STAT-%version.tar.gz Source1: %{short_name}.module # Don't trash LDFLAGS in configure Patch3: stat-ldflags.patch URL: http://paradyn.org/STAT/STAT.html BuildRequires: libtool BuildRequires: libdwarf-devel BuildRequires: dyninst-devel BuildRequires: graphlib-devel >= 3.0.0 BuildRequires: launchmon-openmpi-devel BuildRequires: mrnet-devel >= 3.0 BuildRequires: swig BuildRequires: python2-devel BuildRequires: graphviz-devel BuildRequires: openmpi-devel BuildRequires: elfutils BuildRequires: binutils-devel BuildRequires: elfutils-libelf-devel BuildRequires: automake BuildRequires: pygtk2 BuildRequires: python2-pygments2 %global syslibdir %_libdir # maybe not: #%%define debug_package %{nil} %define _baseprefix /opt #%%define _prefix %{_baseprefix}/%{short_name}-%{version} #%%define _libdir %{_prefix}/lib %define module_path %{_sysconfdir}/modulefiles/%{short_name} %define module_file %{module_path}/%{version} %{?filter_setup: %filter_provides_in %python_sitearch/*.so %filter_setup } %description The Stack Trace Analysis Tool gathers and merges stack traces from a parallel application's processes. The tool produces call graphs: 2D spatial and 3D spatial-temporal; the graphs encode calling behavior of the application processes in the form of a prefix tree. The 2D spatial call prefix tree represents a single snapshot of the entire application. The 3D spatial-temporal call prefix tree represents a series of snapshots from the application taken over time. In these graphs, the nodes are labeled by function names. The directed edges, showing the calling sequence from caller to callee, are labeled by the set of tasks that follow that call path. Nodes that are visited by the same set of tasks are assigned the same color, giving a visual reference to the various equivalence classes. %package devel Summary: Development files for %name Requires: %name = %version-%release %description devel Development files for %name. %prep %setup -q %patch3 -p1 #./bootstrap autoreconf -fiv -I config %build %_openmpi_load export CPPFLAGS="-I/usr/include/libdwarf -I/usr/include/dyninst -I%syslibdir/mrnet-4.0.0/include -I%syslibdir/xplat-4.0.0/include" export CXXFLAGS="-I/usr/include/libdwarf -I/usr/include/dyninst" export LDFLAGS="-L/usr/lib64/dyninst -lm" # configure doesn't look for mpicxx -- see x_ac_mpicc.m4 %configure \ --enable-shared \ --enable-gui \ --with-python-debug \ --enable-rpath=no MPICXX=mpicxx sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool %make_build %install %make_install rm -r %{buildroot}%{_prefix}/doc find %{buildroot} -name \*.la -exec rm {} \; mkdir -p %{buildroot}%{_libexecdir}/STAT mv %{buildroot}%{_datadir}/stat/examples %{buildroot}%{_libexecdir}/STAT mv %{buildroot}/usr/etc %{buildroot}%{_sysconfdir} # turn on -a and -A options sed -i 's/STATbin/STATbin -a -A/' %{buildroot}%{_prefix}/bin/STAT sed -i 's/STATbin/STATbin -a -A/' %{buildroot}%{_prefix}/bin/stat-cl mkdir -p %{buildroot}%{_prefix}/share/STAT/bin # generate a mrnet_commnode script to set appropriate LD_LIBRARY_PATH cat >%{buildroot}%{_prefix}/share/STAT/bin/mrnet_commnode < - 4.0.2-1 - New version, with patch - Use %%license - Drop el6 * Thu Jul 19 2018 Dave Love - 4.0.0-2 - Conditionalize for el6 * Mon Jun 18 2018 Dave Love - 4.0.0-1 - New version * Wed Jul 26 2017 Dave Love - 3.0.1-1 - New version - Run bootstrap for build * Sun Oct 2 2016 Dave Love - 3.0.0-1 - New version - Update graphlib and launchmon BRs * Wed May 25 2016 Dave Love - 2.2.0-3 - Rebuild for updated launchmon * Sun Sep 6 2015 Dave Love - 2.2.0-2 - Fix /etc patch - Fix finding manual * Sun Jul 19 2015 Dave Love - 2.2.0-1 - New version - Use github archive * Wed Oct 22 2014 Dave Love - 2.1.0-1 - New version - Rename to STAT * Mon Sep 22 2014 Dave Love - 2.0.0-7 - Install under /usr - Don't avoid debuginfo * Sun Sep 21 2014 Dave Love - 2.0.0-6 - Build against mrnet 4.1.0 - Add -lm to LDFLAGS -- configure checks for pow * Thu Sep 4 2014 Dave Love - 2.0.0-5 - Don't require extra modules in modulefile * Sun Mar 9 2014 Dave Love - 2.0.0-4 - Build against openmpi and general libraries for RHEL - RHEL modules setup * Tue Mar 05 2013 Greg Lee 2.0.0.-2 - Updated build with new license and to pick up new dyninst lib names * Sat Mar 02 2013 Greg Lee 2.0.0.-1 - Initial package version