Browse Source

2015-02-08 Ryoichi INAGAKI <ryo1@toki.waseda.jp>

	* libpfm, papi: new package
	


git-svn-id: http://trac.vinelinux.org/repos/projects/specs@9342 ec354946-7b23-47d6-9f5a-488ba84defc7
inagaki 10 years ago
parent
commit
6b6f82d7c8
2 changed files with 520 additions and 0 deletions
  1. 181 0
      lib/libp/libpfm/libpfm-vl.spec
  2. 339 0
      p/papi/papi-vl.spec

+ 181 - 0
lib/libp/libpfm/libpfm-vl.spec

@@ -0,0 +1,181 @@
+%bcond_without python
+%if %{with python}
+%define python_sitearch %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")
+%define python_prefix %(python -c "import sys; print sys.prefix")
+%{?filter_setup:
+%filter_provides_in %{python_sitearch}/perfmon/.*\.so$
+%filter_setup
+}
+%endif
+
+Name:		libpfm
+Version:	4.5.0
+Release:	6%{?_dist_release}
+
+Summary:	Library to encode performance events for use by perf tool
+Summary(ja):	プロファイラが用いるパフォーマンスイベントをエンコードするライブラリ
+
+Group:		System Environment/Libraries
+License:	MIT
+URL:		http://perfmon2.sourceforge.net/
+Source0:	http://sourceforge.net/projects/perfmon2/files/libpfm4/%{name}-%{version}.tar.gz
+Patch12:	libpfm-ac57.patch
+Patch13:	libpfm-ac53.patch
+
+%if %{with python}
+BuildRequires:	python-devel
+BuildRequires:	python-setuptools
+BuildRequires:	swig
+%endif
+
+%description
+libpfm4 is a library to help encode events for use with operating system
+kernels performance monitoring interfaces. The current version provides support
+for the perf_events interface available in upstream Linux kernels since v2.6.31.
+
+%package devel
+Summary:	Development library to encode performance events for perf_events based tools
+Summary(ja):	パフォーマンスイベントをエンコードするための開発用ライブラリ
+Group:		Development/Libraries
+Requires:	%{name} = %{version}-%{release}
+
+%description devel
+Development library and header files to create performance monitoring
+applications for the perf_events interface.
+
+%package static
+Summary:	Static library to encode performance events for perf_events based tools
+Summary(ja):	パフォーマンスイベントをエンコードするための静的ライブラリ
+Group:		Development/Libraries
+Requires:	%{name}-devel = %{version}-%{release}
+
+%description static
+Static version of the libpfm library for performance monitoring
+applications for the perf_events interface.
+
+%if %{with python}
+%package python
+Summary:	Python bindings for libpfm and perf_event_open system call
+Group:		Development/Libraries
+Requires:	%{name} = %{version}-%{release}
+
+%description python
+Python bindings for libpfm4 and perf_event_open system call.
+%endif
+
+%prep
+%setup -q
+
+%patch12 -p1
+%patch13 -p1
+
+%build
+%if %{with python}
+%global python_config CONFIG_PFMLIB_NOPYTHON=n
+%else
+%global python_config CONFIG_PFMLIB_NOPYTHON=y
+%endif
+make %{python_config} %{?_smp_mflags}
+
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+%if %{with python}
+%global python_config CONFIG_PFMLIB_NOPYTHON=n PYTHON_PREFIX=$RPM_BUILD_ROOT/%{python_prefix}
+%else
+%global python_config CONFIG_PFMLIB_NOPYTHON=y
+%endif
+
+make \
+    PREFIX=$RPM_BUILD_ROOT%{_prefix} \
+    LIBDIR=$RPM_BUILD_ROOT%{_libdir} \
+    %{python_config} \
+    LDCONFIG=/bin/true \
+    install
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post -p /sbin/ldconfig
+%postun	-p /sbin/ldconfig
+
+
+%files
+%doc README
+%{_libdir}/lib*.so.*
+
+%files devel
+%{_includedir}/*
+%{_mandir}/man3/*
+%{_libdir}/lib*.so
+
+%files static
+%{_libdir}/lib*.a
+
+%if %{with python}
+%files python
+%{python_sitearch}/*
+%endif
+
+%changelog
+* Fri Feb  6 2015 Ryoichi INAGAKI <ryo1@toki.waseda.jp> 4.5.0-6
+- initial build for Vine Linux
+
+* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.5.0-5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
+
+* Mon Jun 30 2014 Toshio Kuratomi <toshio@fedoraproject.org> - 4.5.0-4
+- Replace python-setuptools-devel BR with python-setuptools
+
+* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.5.0-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
+
+* Fri May 23 2014 William Cohen <wcohen@redhat.com> 4.5.0-2
+- Add cortex a53 support.
+
+* Fri May 23 2014 William Cohen <wcohen@redhat.com> 4.5.0-1
+- Rebase on libpfm-4.5.0.
+
+* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.4.0-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
+
+* Fri Jul 19 2013 William Cohen <wcohen@redhat.com> 4.4.0-2
+- Add IBM power 8 support.
+
+* Mon Jun 17 2013 William Cohen <wcohen@redhat.com> 4.4.0-1
+- Rebase on libpfm-4.4.0.
+
+* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.3.0-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
+
+* Tue Aug 28 2012 William Cohen <wcohen@redhat.com> 4.3.0-2
+- Turn off LDCONFIG and remove patch.
+
+* Tue Aug 28 2012 William Cohen <wcohen@redhat.com> 4.3.0-1
+- Rebase on libpfm-4.3.0.
+
+* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.2.0-8
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
+
+* Fri Jun 8 2012 William Cohen <wcohen@redhat.com> 4.2.0-7
+- Eliminate swig error.
+
+* Thu Jun 7 2012 William Cohen <wcohen@redhat.com> 4.2.0-6
+- Eliminate rpm_build_root macro in build section.
+- Correct location of shared library files.
+
+* Thu Jun 7 2012 William Cohen <wcohen@redhat.com> 4.2.0-5
+- Use siginfo_t for some examples.
+
+* Mon Jun 4 2012 William Cohen <wcohen@redhat.com> 4.2.0-4
+- Correct python files.
+
+* Wed Mar 28 2012 William Cohen <wcohen@redhat.com> 4.2.0-3
+- Additional spec file fixup for rhbz804666.
+
+* Wed Mar 14 2012 William Cohen <wcohen@redhat.com> 4.2.0-2
+- Some spec file fixup.
+
+* Wed Jan 12 2011 Arun Sharma <asharma@fb.com> 4.2.0-0
+Initial revision

+ 339 - 0
p/papi/papi-vl.spec

@@ -0,0 +1,339 @@
+%bcond_with bundled_libpfm
+
+Summary: Performance Application Programming Interface
+Summary(ja): パフォーマンス計測 API
+Name: papi
+Version: 5.4.0
+Release: 3%{?_dist_release}
+License: BSD
+Group: Development/Tools
+URL: http://icl.cs.utk.edu/papi/
+
+Source0: http://icl.cs.utk.edu/projects/papi/downloads/%{name}-%{version}.tar.gz
+
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
+BuildRequires: autoconf
+BuildRequires: doxygen
+BuildRequires: ncurses-devel
+BuildRequires: gcc-gfortran
+BuildRequires: kernel-headers >= 2.6.32
+BuildRequires: chrpath
+BuildRequires: lm-sensors-devel >= 3.0.0
+%if %{without bundled_libpfm}
+BuildRequires: libpfm-devel >= 4.4.0-5
+BuildRequires: libpfm-static >= 4.4.0-5
+%endif
+# Following required for net component
+BuildRequires: net-tools
+# Following required for inifiband component
+# BuildRequires: libibmad-devel
+
+Requires: papi-libs = %{version}-%{release}
+
+# Right now libpfm does not know anything about s390 and will fail
+ExcludeArch: s390 s390x
+
+%description
+PAPI provides a programmer interface to monitor the performance of
+running programs.
+
+%package libs
+Summary: Libraries for PAPI clients
+Summary(ja): PAPI クライアント用のライブラリ
+Group: System Environment/Libraries
+
+%description libs
+This package contains the run-time libraries for any application that wishes
+to use PAPI.
+
+%package devel
+Summary: Header files for the compiling programs with PAPI
+Summary(ja): PAPI を用いたプログラムのコンパイルに必要なヘッダファイル
+Group: Development/Libraries
+Requires: papi = %{version}-%{release}
+
+%description devel
+PAPI-devel includes the C header files that specify the PAPI user-space
+libraries and interfaces. This is required for rebuilding any program
+that uses PAPI.
+
+%package testsuite
+Summary: Set of tests for checking PAPI functionality
+Summary(ja): PAPI の機能を確認するためのテストプログラム集
+Group: Development/Libraries
+Requires: papi = %{version}-%{release}
+
+%description testsuite
+PAPI-testuiste includes compiled versions of papi tests to ensure
+that PAPI functions on particular hardware.
+
+%package static
+Summary: Static libraries for the compiling programs with PAPI
+Summary(ja): PAPI を用いたプログラムのコンパイルに必要な静的ライブラリ
+Group: Development/Libraries
+Requires: papi-devel = %{version}-%{release}
+
+%description static
+PAPI-static includes the static versions of the library files for
+the PAPI user-space libraries and interfaces.
+
+%prep
+%setup -q
+
+%build
+%if %{without bundled_libpfm}
+# Build our own copy of libpfm.
+%global libpfm_config --with-pfm-incdir=%{_includedir} --with-pfm-libdir=%{_libdir}
+%endif
+
+cd src
+#autoconf
+
+%configure \
+    --with-perf-events \
+    %{?libpfm_config} \
+    --with-static-lib=yes --with-shared-lib=yes --with-shlib \
+    --with-components='appio coretemp example lmsensors lustre micpower net rapl stealtime'
+
+# implicit enabled components: perf_event perf_event_uncore
+#components currently removed from configure: infiniband, mx
+#components currently left out because of build configure/build issues
+# --with-components="bgpm coretemp_freebsd cuda host_micpower nvml vmware"
+
+cd components/lmsensors
+%configure --with-sensors_incdir=%{_includedir}/sensors \
+	   --with-sensors_libdir=%{_libdir}
+cd ../..
+
+#DBG workaround to make sure libpfm just uses the normal CFLAGS
+DBG="" make %{?_smp_mflags}
+
+#generate updated versions of the documentation
+#DBG workaround to make sure libpfm just uses the normal CFLAGS
+pushd ../doc
+DBG="" make
+DBG="" make install
+popd
+
+%install
+rm -rf $RPM_BUILD_ROOT
+cd src
+make DESTDIR=$RPM_BUILD_ROOT LDCONFIG=/bin/true install-all
+
+chrpath --delete $RPM_BUILD_ROOT%{_libdir}/*.so*
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post libs -p /sbin/ldconfig
+%postun libs -p /sbin/ldconfig
+
+
+%files
+%defattr(-,root,root,-)
+%{_bindir}/*
+%dir /usr/share/papi
+/usr/share/papi/papi_events.csv
+%doc INSTALL.txt README LICENSE.txt RELEASENOTES.txt
+%doc %{_mandir}/man1/*
+
+%files libs
+%defattr(-,root,root,-)
+%{_libdir}/*.so.*
+%doc INSTALL.txt README LICENSE.txt RELEASENOTES.txt
+
+%files devel
+%defattr(-,root,root,-)
+%{_includedir}/*.h
+%if %{with bundled_libpfm}
+%{_includedir}/perfmon/*.h
+%endif
+%{_libdir}/*.so
+%doc %{_mandir}/man3/*
+
+%files testsuite
+%defattr(-,root,root,-)
+/usr/share/papi/run_tests*
+/usr/share/papi/ctests
+/usr/share/papi/ftests
+/usr/share/papi/components
+/usr/share/papi/testlib
+
+%files static
+%defattr(-,root,root,-)
+%{_libdir}/*.a
+
+%changelog
+* Fri Feb  6 2015 Ryoichi INAGAKI <ryo1@toki.waseda.jp> - 5.4.0-3
+- initial build for Vine Linux
+
+* Thu Dec 18 2014 William Cohen <wcohen@redhat.com> - 5.4.0-2
+- Split out papi-libs as separate subpackage. (#1172875)
+
+* Mon Nov 17 2014 William Cohen <wcohen@redhat.com> - 5.4.0-1
+- Rebase to papi-5.4.0.
+
+* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.3.2-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
+
+* Mon Aug 4 2014 William Cohen <wcohen@redhat.com> - 5.3.2-1
+- Rebase to 5.3.2.
+
+* Fri Jun 06 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.3.0-2.16.ga7f6159
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
+
+* Fri Jan 17 2014 Lukas Berk <lberk@redhat.com> - 5.3.0-1.16.ga7f6159
+- Automated weekly rawhide release
+
+* Thu Jan 16 2014 William Cohen <wcohen@redhat.com> - 5.3.0-1
+- Rebase to 5.3.0.
+
+* Tue Jan 14 2014 William Cohen <wcohen@redhat.com> - 5.2.0-5
+- Add presets for Intel Silvermont.
+
+* Mon Jan 13 2014 William Cohen <wcohen@redhat.com> - 5.2.0-4
+- Add presets for Haswell and Ivy Bridge.
+
+* Wed Aug 14 2013 William Cohen <wcohen@redhat.com> - 5.2.0-2
+- Enable infiniband and stealtime components.
+
+* Wed Aug 07 2013 William Cohen <wcohen@redhat.com> - 5.2.0-1
+- Rebase to 5.2.0
+
+* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.1.1-8
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
+
+* Wed Jul 24 2013 William Cohen <wcohen@redhat.com> - 5.1.1-7
+- rhbz830275 - Add support for POWER8 processor to PAPI
+
+* Mon Jul 22 2013 William Cohen <wcohen@redhat.com> - 5.1.1-6
+- Add autoconf buildrequires.
+
+* Mon Jul 22 2013 William Cohen <wcohen@redhat.com> - 5.1.1-5
+- rhbz986673 - /usr/lib64/libpapi.so is unowned
+- Package files in /usr/share/papi only once.
+- Avoid dependency problem with parallel make of man pages.
+
+* Fri Jul 19 2013 William Cohen <wcohen@redhat.com> - 5.1.1-4
+- Correct changelog.
+
+* Fri Jul 5 2013 William Cohen <wcohen@redhat.com> - 5.1.1-3
+- Add man page corrections/updates.
+
+* Fri Jun 28 2013 William Cohen <wcohen@redhat.com> - 5.1.1-2
+- Add testsuite subpackage.
+
+* Thu May 30 2013 William Cohen <wcohen@redhat.com> - 5.1.1-1
+- Rebase to 5.1.1
+
+* Mon Apr 15 2013 William Cohen <wcohen@redhat.com> - 5.1.0.2-2
+- Fix arm FTBS rhbz 951806.
+
+* Tue Apr 9 2013 William Cohen <wcohen@redhat.com> - 5.1.0.2-1
+- Rebase to 5.1.0.2
+
+* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.0.1-6
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
+
+* Mon Jan 14 2013 William Cohen <wcohen@redhat.com> - 5.0.1-5
+- Add armv7 cortex a15 presets.
+
+* Tue Dec 04 2012 William Cohen <wcohen@redhat.com> - 5.0.1-4
+- Disable ldconfig on install.
+
+* Thu Nov 08 2012 William Cohen <wcohen@redhat.com> - 5.0.1-3
+- Avoid duplicated shared library.
+
+* Wed Oct 03 2012 William Cohen <wcohen@redhat.com> - 5.0.1-2
+- Make sure using compatible version of libpfm.
+
+* Thu Sep 20 2012 William Cohen <wcohen@redhat.com> - 5.0.1-1
+- Rebase to 5.0.1.
+
+* Mon Sep 10 2012 William Cohen <wcohen@redhat.com> - 5.0.0-6
+- Back port fixes for Intel Ivy Bridge event presets.
+
+* Thu Aug 30 2012 William Cohen <wcohen@redhat.com> - 5.0.0-5
+- Fixes to make papi with unbundled libpfm.
+
+* Mon Aug 27 2012 William Cohen <wcohen@redhat.com> - 5.0.0-2
+- Keep libpfm unbundled.
+
+* Fri Aug 24 2012 William Cohen <wcohen@redhat.com> - 5.0.0-1
+- Rebase to 5.0.0.
+
+* Fri Jul 20 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.4.0-5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
+
+* Mon Jun 11 2012 William Cohen <wcohen@redhat.com> - 4.4.0-4
+- Use siginfo_t rather than struct siginfo.
+
+* Mon Jun 11 2012 William Cohen <wcohen@redhat.com> - 4.4.0-3
+- Correct build requires.
+
+* Mon Jun 11 2012 William Cohen <wcohen@redhat.com> - 4.4.0-2
+- Unbundle libpfm4 from papi.
+- Correct description spellings.
+- Remove unused test section.
+
+* Fri Apr 20 2012 William Cohen <wcohen@redhat.com> - 4.4.0-1
+- Rebase to 4.4.0.
+
+* Fri Mar 9 2012 William Cohen <wcohen@redhat.com> - 4.2.1-2
+- Fix overrun in lmsensor component. (rhbz797692)
+
+* Tue Feb 14 2012 William Cohen <wcohen@redhat.com> - 4.2.1-1
+- Rebase to 4.2.1.
+
+* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.2.0-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
+
+* Wed Nov 02 2011 William Cohen <wcohen@redhat.com> - 4.2.0-3
+- Remove unwanted man1/*.c.1 files. (rhbz749725)
+
+* Mon Oct 31 2011 William Cohen <wcohen@redhat.com> - 4.2.0-2
+- Include appropirate man pages with papi rpm. (rhbz749725)
+- Rebase to papi-4.2.0, fixup for coretemp component. (rhbz746851)
+
+* Thu Oct 27 2011 William Cohen <wcohen@redhat.com> - 4.2.0-1
+- Rebase to papi-4.2.0.
+
+* Fri Aug 12 2011 William Cohen <wcohen@redhat.com> - 4.1.3-3
+- Provide papi-static.
+
+* Thu May 12 2011 William Cohen <wcohen@redhat.com> - 4.1.3-2
+- Use corrected papi-4.1.3.
+
+* Thu May 12 2011 William Cohen <wcohen@redhat.com> - 4.1.3-1
+- Rebase to papi-4.1.3
+
+* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.1.2.1-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
+
+* Mon Jan 24 2011 William Cohen <wcohen@redhat.com> - 4.1.2.1-1
+- Rebase to papi-4.1.2.1
+
+* Fri Oct 1 2010 William Cohen <wcohen@redhat.com> - 4.1.1-1
+- Rebase to papi-4.1.1
+
+* Tue Jun 22 2010 William Cohen <wcohen@redhat.com> - 4.1.0-1
+- Rebase to papi-4.1.0
+
+* Mon May 17 2010 William Cohen <wcohen@redhat.com> - 4.0.0-5
+- Test run with upstream cvs version.
+
+* Wed Feb 10 2010 William Cohen <wcohen@redhat.com> - 4.0.0-4
+- Resolves: rhbz562935 Rebase to papi-4.0.0 (correct ExcludeArch).
+
+* Wed Feb 10 2010 William Cohen <wcohen@redhat.com> - 4.0.0-3
+- Resolves: rhbz562935 Rebase to papi-4.0.0 (bump nvr).
+
+* Wed Feb 10 2010 William Cohen <wcohen@redhat.com> - 4.0.0-2
+- correct the ctests/shlib test
+- have PAPI_set_multiplex() return proper value
+- properly handle event unit masks
+- correct PAPI_name_to_code() to match events
+- Resolves: rhbz562935 Rebase to papi-4.0.0 
+
+* Wed Jan 13 2010 William Cohen <wcohen@redhat.com> - 4.0.0-1
+- Generate papi.spec file for papi-4.0.0.