X-Git-Url: https://git.tld-linux.org/?p=packages%2Fsystemtap.git;a=blobdiff_plain;f=systemtap.spec;h=ac26b4e753df69b368fc19e1d6190454f326baa0;hp=5f08c11331269a3d8d67263c068d3946ce46cf7b;hb=HEAD;hpb=af290101b146bc70597e7297a372bd992496cb43 diff --git a/systemtap.spec b/systemtap.spec index 5f08c11..04c911e 100644 --- a/systemtap.spec +++ b/systemtap.spec @@ -1,31 +1,34 @@ # # Conditional build: -%bcond_with doc # documentation build -%bcond_with publican # publican guides build (requires functional publican+wkhtmltopdf) +%bcond_without doc # documentation build +%bcond_with publican # publican guides build [as of 3.0 not rebuilt automatically, PDFs are included] %bcond_without crash # crash extension -%bcond_without dyninst # dyninst support +%bcond_with dyninst # dyninst support %bcond_without java # Java runtime support -# -%ifnarch %{ix86} %{x8664} alpha arm ia64 ppc64 s390 s390x +%bcond_without python2 # Python 2.x runtime support +%bcond_without python3 # Python 3.x runtime support + +%ifnarch %{ix86} %{x8664} x32 alpha arm ia64 ppc64 s390 s390x %undefine with_crash %endif -%ifnarch %{ix86} %{x8664} ppc ppc64 +%ifnarch %{ix86} %{x8664} x32 ppc ppc64 aarch64 %undefine with_dyninst %endif Summary: Instrumentation System Summary(pl.UTF-8): System oprzyrządowania Name: systemtap -Version: 2.6 -Release: 3 +Version: 3.3 +Release: 6 License: GPL v2+ Group: Base Source0: http://sourceware.org/systemtap/ftp/releases/%{name}-%{version}.tar.gz -# Source0-md5: 65e6745f0ec103758c711dd1d12fb6bf +# Source0-md5: 7f80117649a9eb663781b5372e8a4f96 Patch0: %{name}-configure.patch Patch1: %{name}-build.patch -Patch2: %{name}-rpm5-support.patch -Patch3: %{name}-dtrace-flexibility.patch +Patch2: %{name}-rpm-4.5-support.patch +Patch3: %{name}-no-werror.patch Patch4: format-security.patch +Patch5: %{name}-dyninst.patch URL: http://sourceware.org/systemtap/ BuildRequires: autoconf >= 2.63 BuildRequires: automake @@ -35,19 +38,34 @@ BuildRequires: boost-devel BuildRequires: docbook-dtd412-xml %{?with_dyninst:BuildRequires: dyninst-devel >= 8.0} BuildRequires: elfutils-devel >= 0.148 -BuildRequires: gettext-tools >= 0.18.2 -BuildRequires: glib2-devel +BuildRequires: gettext-devel >= 0.19.4 +BuildRequires: gettext-tools >= 0.19.4 +BuildRequires: glib2-devel >= 2.0 +BuildRequires: json-c-devel >= 0.12 %{?with_java:BuildRequires: jdk} %if %{with dyninst} || %{with java} BuildRequires: libselinux-devel %endif -BuildRequires: libstdc++-devel +BuildRequires: libstdc++-devel >= 6:4.5 BuildRequires: libvirt-devel >= 1.0.2 BuildRequires: libxml2-devel >= 2.0 BuildRequires: mysql-devel +BuildRequires: ncurses-devel BuildRequires: nss-devel >= 3 +BuildRequires: pkgconfig +%if %{with python2} +BuildRequires: python-devel >= 1:2.6 +BuildRequires: python-setuptools +%endif +%if %{with python3} +BuildRequires: python3-devel >= 1:3.2 +BuildRequires: python3-setuptools +%endif +BuildRequires: readline-devel BuildRequires: rpm-devel -BuildRequires: sqlite3-devel >= 3 +%{?with_java:BuildRequires: rpm-javaprov} +BuildRequires: rpmbuild(macros) >= 1.219 +BuildRequires: sqlite3-devel >= 3.7 BuildRequires: xmlto %if %{with doc} BuildRequires: latex2html @@ -56,6 +74,8 @@ BuildRequires: texlive-dvips BuildRequires: texlive-fonts-bitstream BuildRequires: texlive-fonts-type1-bitstream BuildRequires: texlive-latex +BuildRequires: texlive-latex-psnfss +BuildRequires: texlive-xetex %endif # let base mean client+local development package Requires: %{name}-client = %{version}-%{release} @@ -78,6 +98,7 @@ lokalnego tworzenia i wykonywania skryptów systemtap. Summary: Programmable system-wide instrumentation system - runtime Summary(pl.UTF-8): Programowalny systemowy system oprzyrządowania - środowisko uruchomieniowe Group: Applications/System +Requires: json-c >= 0.12 %description runtime SystemTap runtime contains the components needed to execute a @@ -103,8 +124,38 @@ runtimes using Byteman. %description runtime-java -l pl.UTF-8 Ten pakiet zawiera pliki niezbędne do uruchamiania skryptów systemtap -sondujące procesy Javy działające w środowiskach OpenJDK 1.6 i OpenJDK -1.7 przy użyciu Bytemana. +sondujących procesy Javy działające w środowiskach OpenJDK 1.6 i +OpenJDK 1.7 przy użyciu Bytemana. + +%package runtime-python2 +Summary: SystemTap Python 2 Runtime Support +Summary(pl.UTF-8): Obsługa Pythona 2 dla środowiska uruchomieniowego SystemTap +Group: Development/Tools +Requires: %{name}-runtime = %{version}-%{release} +Requires: python-modules >= 1:2.6 + +%description runtime-python2 +This package includes support files needed to run systemtap scripts +that probe Python 2 processes. + +%description runtime-python2 -l pl.UTF-8 +Ten pakiet zawiera pliki niezbędne do uruchamiania skryptów systemtap +sondujących procesy Pythona 2. + +%package runtime-python3 +Summary: SystemTap Python 3 Runtime Support +Summary(pl.UTF-8): Obsługa Pythona 3 dla środowiska uruchomieniowego SystemTap +Group: Development/Tools +Requires: %{name}-runtime = %{version}-%{release} +Requires: python3-modules >= 1:3.2 + +%description runtime-python3 +This package includes support files needed to run systemtap scripts +that probe Python 3 processes. + +%description runtime-python3 -l pl.UTF-8 +Ten pakiet zawiera pliki niezbędne do uruchamiania skryptów systemtap +sondujących procesy Pythona 3. %package client Summary: Programmable system-wide instrumentation system - client @@ -140,7 +191,6 @@ Summary(pl.UTF-8): Programowalny systemowy system oprzyrządowania - pliki nagł Group: Development/Tools Requires: %{name}-client = %{version}-%{release} Requires: gcc -Requires: kernel-module-build Requires: make %description devel @@ -216,15 +266,25 @@ przestrzeni użytkownika, wraz z opcjonalnym preprocesorem zgodności z dtrace, który przetwarza pliki .d na pliki nagłówkowe .h z makrami śledzącymi. +%package doc +Summary: SystemTap guides and tutorials +Summary(pl.UTF-8): Przewodniki i dokumentacja wprowadzająca do SystemTap +Group: Documentation + +%description doc +SystemTap guides and tutorials. + +%description doc -l pl.UTF-8 +Przewodniki i dokumentacja wprowadzająca do SystemTap. + %prep %setup -q %patch0 -p1 %patch1 -p1 +%patch2 -p1 %patch3 -p1 %patch4 -p1 -%if "%{_rpmversion}" >= "5.0" -%patch2 -p1 -%endif +%patch5 -p1 %build %{__gettextize} @@ -237,7 +297,6 @@ dtrace, który przetwarza pliki .d na pliki nagłówkowe .h z makrami %{?with_crash:--enable-crash} \ --enable-docs%{!?with_doc:=no} \ --enable-pie \ - --enable-publican%{!?with_publican:=no} \ --enable-server \ --enable-sqlite \ --with-dyninst%{!?with_dyninst:=no} \ @@ -254,14 +313,14 @@ install -d $RPM_BUILD_ROOT/var/{cache,run}/%{name} \ DESTDIR=$RPM_BUILD_ROOT # not installed by make -install stap-prep $RPM_BUILD_ROOT%{_bindir}/stap-prep +install -p stap-prep $RPM_BUILD_ROOT%{_bindir}/stap-prep -install initscript/systemtap $RPM_BUILD_ROOT/etc/rc.d/init.d -install initscript/config.systemtap $RPM_BUILD_ROOT%{_sysconfdir}/systemtap/config +install -p initscript/systemtap $RPM_BUILD_ROOT/etc/rc.d/init.d +cp -p initscript/config.systemtap $RPM_BUILD_ROOT%{_sysconfdir}/systemtap/config -install initscript/stap-server $RPM_BUILD_ROOT/etc/rc.d/init.d -install initscript/config.stap-server $RPM_BUILD_ROOT/etc/sysconfig/stap-server -install initscript/logrotate.stap-server $RPM_BUILD_ROOT/etc/logrotate.d/stap-server +install -p initscript/stap-server $RPM_BUILD_ROOT/etc/rc.d/init.d +cp -p initscript/config.stap-server $RPM_BUILD_ROOT/etc/sysconfig/stap-server +cp -p initscript/logrotate.stap-server $RPM_BUILD_ROOT/etc/logrotate.d/stap-server install -d $RPM_BUILD_ROOT%{_sysconfdir}/systemtap/{conf.d,script.d} install -d $RPM_BUILD_ROOT/var/lib/stap-server/.systemtap @@ -269,6 +328,10 @@ install -d $RPM_BUILD_ROOT/var/log/stap-server %{__mv} $RPM_BUILD_ROOT%{_docdir}/systemtap docs-installed +%if %{with python2} +%py_postclean +%endif + %find_lang %{name} %clean @@ -282,55 +345,106 @@ rm -rf $RPM_BUILD_ROOT %doc AUTHORS NEWS README* %attr(755,root,root) %{_bindir}/stap-merge %attr(755,root,root) %{_bindir}/stap-report +%attr(755,root,root) %{_bindir}/stapbpf %{?with_dyninst:%attr(755,root,root) %{_bindir}/stapdyn} %attr(755,root,root) %{_bindir}/stapsh # XXX: %attr(4754,root,stapusr) staprun ? %attr(755,root,root) %{_bindir}/staprun +%dir %{_libexecdir}/%{name} +%attr(755,root,root) %{_libexecdir}/%{name}/stap-authorize-cert +%attr(755,root,root) %{_libexecdir}/%{name}/stapio +%if %{with crash} +%if "%{_libdir}" != "%{_libexecdir}" %dir %{_libdir}/%{name} -%attr(755,root,root) %{_libdir}/%{name}/stap-authorize-cert -%attr(755,root,root) %{_libdir}/%{name}/stapio -%{?with_crash:%attr(755,root,root) %{_libdir}/%{name}/staplog.so} +%endif +%attr(755,root,root) %{_libdir}/%{name}/staplog.so +%endif %{_mandir}/man1/stap-merge.1* %{_mandir}/man1/stap-report.1* -#%{_mandir}/man3/function::*.3stap* -#%{_mandir}/man3/probe::*.3stap* +%{_mandir}/man1/stapref.1* %{_mandir}/man3/stapex.3stap* %{_mandir}/man3/stapfuncs.3stap* %{_mandir}/man3/stapprobes.3stap* %{_mandir}/man3/stapvars.3stap* -#%{_mandir}/man3/tapset::*.3stap* +%if %{with doc} +%{_mandir}/man3/function::*.3stap* +%{_mandir}/man3/macro::*.3stap* +%{_mandir}/man3/probe::*.3stap* +%{_mandir}/man3/tapset::*.3stap* +%endif %{_mandir}/man7/error::*.7stap* %{_mandir}/man7/stappaths.7* %{_mandir}/man7/warning::debuginfo.7stap* %{_mandir}/man7/warning::symbols.7stap* +%{_mandir}/man8/stapbpf.8* %{?with_dyninst:%{_mandir}/man8/stapdyn.8*} %{_mandir}/man8/staprun.8* %{_mandir}/man8/stapsh.8* %{_mandir}/man8/systemtap.8* +%lang(cs) %{_mandir}/cs/man1/stap-merge.1* +%lang(cs) %{_mandir}/cs/man1/stap-report.1* +%lang(cs) %{_mandir}/cs/man1/stapref.1* +%lang(cs) %{_mandir}/cs/man3/stapex.3stap* +%lang(cs) %{_mandir}/cs/man3/stapfuncs.3stap* +%lang(cs) %{_mandir}/cs/man3/stapprobes.3stap* +%lang(cs) %{_mandir}/cs/man3/stapvars.3stap* +%lang(cs) %{_mandir}/cs/man7/error::*.7stap* +%lang(cs) %{_mandir}/cs/man7/stappaths.7* +%lang(cs) %{_mandir}/cs/man7/warning::debuginfo.7stap* +%lang(cs) %{_mandir}/cs/man7/warning::symbols.7stap* +%lang(cs) %{_mandir}/cs/man8/stapsh.8* +%lang(cs) %{_mandir}/cs/man8/systemtap.8* %if %{with java} %files runtime-java %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/%{name}/stapbm -%attr(755,root,root) %{_libdir}/%{name}/libHelperSDT_*.so -%{_libdir}/%{name}/HelperSDT.jar +%attr(755,root,root) %{_libexecdir}/%{name}/stapbm +%attr(755,root,root) %{_libexecdir}/%{name}/libHelperSDT_*.so +%{_libexecdir}/%{name}/HelperSDT.jar +%endif + +%if %{with python2} +%files runtime-python2 +%defattr(644,root,root,755) +%dir %{py_sitedir}/HelperSDT +%attr(755,root,root) %{py_sitedir}/HelperSDT/_HelperSDT.so +%{py_sitedir}/HelperSDT/*.py[co] +%{py_sitedir}/HelperSDT-0.1.0-py*.egg-info +%endif + +%if %{with python3} +%files runtime-python3 +%defattr(644,root,root,755) +%dir %{py3_sitedir}/HelperSDT +%attr(755,root,root) %{py3_sitedir}/HelperSDT/_HelperSDT.cpython-*.so +%{py3_sitedir}/HelperSDT/*.py +%{py3_sitedir}/HelperSDT/__pycache__ +%{py3_sitedir}/HelperSDT-0.1.0-py*.egg-info %endif %files client %defattr(644,root,root,755) -%doc docs-installed/examples %{?with_docs:docs-installed/{tapsets,langref.pdf,tutorial.pdf}} %attr(755,root,root) %{_bindir}/stap %attr(755,root,root) %{_bindir}/stap-prep %attr(755,root,root) %{_bindir}/stapvirt %dir %{_datadir}/%{name} +%{_datadir}/%{name}/examples %{_datadir}/%{name}/tapset %{_mandir}/man1/stap.1* %{_mandir}/man1/stap-prep.1* %{_mandir}/man1/stapvirt.1* +%lang(cs) %{_mandir}/cs/man1/stap.1* +%lang(cs) %{_mandir}/cs/man1/stap-prep.1* +%lang(cs) %{_mandir}/cs/man1/stapvirt.1* %files devel %defattr(644,root,root,755) %{_datadir}/%{name}/runtime +%if %{with python2} || %{with python3} +%dir %{_libexecdir}/%{name} +%dir %{_libexecdir}/%{name}/python +%attr(755,root,root) %{_libexecdir}/systemtap/python/stap-resolve-module-function.py +%endif %files initscript %defattr(644,root,root,755) @@ -345,12 +459,12 @@ rm -rf $RPM_BUILD_ROOT %files server %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/stap-server -%attr(755,root,root) %{_libdir}/%{name}/stap-env -%attr(755,root,root) %{_libdir}/%{name}/stap-gen-cert -%attr(755,root,root) %{_libdir}/%{name}/stap-serverd -%attr(755,root,root) %{_libdir}/%{name}/stap-sign-module -%attr(755,root,root) %{_libdir}/%{name}/stap-start-server -%attr(755,root,root) %{_libdir}/%{name}/stap-stop-server +%attr(755,root,root) %{_libexecdir}/%{name}/stap-env +%attr(755,root,root) %{_libexecdir}/%{name}/stap-gen-cert +%attr(755,root,root) %{_libexecdir}/%{name}/stap-serverd +%attr(755,root,root) %{_libexecdir}/%{name}/stap-sign-module +%attr(755,root,root) %{_libexecdir}/%{name}/stap-start-server +%attr(755,root,root) %{_libexecdir}/%{name}/stap-stop-server %dir %{_sysconfdir}/stap-server %dir %{_sysconfdir}/stap-server/conf.d %attr(754,root,root) /etc/rc.d/init.d/stap-server @@ -362,6 +476,7 @@ rm -rf $RPM_BUILD_ROOT #%attr(755,stap-server,stap-server) %dir /var/log/stap-server #%attr(755,stap-server,stap-server) %dir /var/run/stap-server %{_mandir}/man8/stap-server.8* +%lang(cs) %{_mandir}/cs/man8/stap-server.8* %files sdt-devel %defattr(644,root,root,755) @@ -369,3 +484,10 @@ rm -rf $RPM_BUILD_ROOT %{_includedir}/sys/sdt.h %{_includedir}/sys/sdt-config.h %{_mandir}/man1/dtrace.1* +%lang(cs) %{_mandir}/cs/man1/dtrace.1* + +%if %{with doc} +%files doc +%defattr(644,root,root,755) +%doc doc/{langref,tutorial}.pdf doc/beginners/SystemTap_Beginners_Guide.pdf docs-installed/tapsets.pdf +%endif