diff options
author | roland <roland> | 2005-07-25 19:31:42 +0000 |
---|---|---|
committer | roland <roland> | 2005-07-25 19:31:42 +0000 |
commit | a2c9eba7508e9338050572efb9f50771b63690f3 (patch) | |
tree | c116160c30b48f872358fa144b6f160f8139d5c1 | |
parent | f00a8372e0503272cbff64b41956e2d7c15e9a24 (diff) | |
download | systemtap-steved-a2c9eba7508e9338050572efb9f50771b63690f3.tar.gz systemtap-steved-a2c9eba7508e9338050572efb9f50771b63690f3.tar.xz systemtap-steved-a2c9eba7508e9338050572efb9f50771b63690f3.zip |
Clean up spec file, fix build of bundled elfutils.
-rw-r--r-- | systemtap.spec.in | 86 |
1 files changed, 57 insertions, 29 deletions
diff --git a/systemtap.spec.in b/systemtap.spec.in index 4b879529..829457af 100644 --- a/systemtap.spec.in +++ b/systemtap.spec.in @@ -1,45 +1,53 @@ -%define bundled_elfutils 0 -%define elfutils_version 0.XXX +%define bundled_elfutils 1 +%define elfutils_version 0.109 -Release: 1 +Name: systemtap Version: @VERSION@ +Release: 1 Summary: Instrumentation System -Name: systemtap -License: GPL Group: Development/System -# -Source0: %{name}-%{version}.tar.gz +License: GPL +URL: http://sourceware.org/systemtap/ +Source: ftp://sourceware.org/pub/%{name}/%{name}-%{version}.tar.gz + +ExclusiveArch: %{ix86} x86_64 + +BuildRoot: %{_tmppath}/%{name}-root + +Requires: kernel >= 2.6.9-11 +Requires: tcl gcc make +BuildRequires: doxygen %if %{bundled_elfutils} Source1: elfutils-%{elfutils_version}.tar.gz Patch1: elfutils-portability.patch %define setup_elfutils -a1 +%else +BuildRequires: elfutils-devel >= %{elfutils_version} %endif -URL: http://sourceware.org/systemtap/ -ExclusiveArch: %{ix86} x86_64 - -Requires: kernel >= 2.6.9-11 -Requires: tcl gcc make -BuildRequires: kernel-devel doxygen -BuildRoot: %{_tmppath}/%{name}-root - %description -SystemTap is a instrumentation system for systems running -Linux 2.6. Developers can write instrumentation to collect data on -the operation of the system. +SystemTap is an instrumentation system for systems running Linux 2.6. +Developers can write instrumentation to collect data on the operation +of the system. See the HTML documentation for further details. %prep -%setup -q -n %{name}-%{version} %{?setup_elfutils} +%setup -q %{?setup_elfutils} + %if %{bundled_elfutils} cd elfutils-%{elfutils_version} %patch1 -p1 +sleep 1 +find . \( -name Makefile.in -o -name aclocal.m4 \) -print | xargs touch +sleep 1 +find . \( -name configure -o -name config.h.in \) -print | xargs touch cd .. %endif %build + %if %{bundled_elfutils} # Build our own copy of elfutils. elfutils_includedir="`pwd`/include-elfutils" @@ -57,15 +65,27 @@ for dir in libelf libebl libdw libdwfl; do make -C $dir install includedir=$elfutils_includedir libdir=$elfutils_libdir done cd .. +libdwfl_h=$elfutils_includedir/elfutils/libdwfl.h +sed 's%<libdw.h>%<elfutils/libdw.h>%' ${libdwfl_h} > ${libdwfl_h}.new +mv -f ${libdwfl_h}.new ${libdwfl_h} # We'll configure with these options to use the local headers and libraries. CPPFLAGS="-I${elfutils_includedir}" -LDFLAGS="-L${elfutils_libdir} -Wl,-rpath-link,${elfutils_libdir}" +LDFLAGS="-L${elfutils_libdir} -Wl,-rpath-link,${elfutils_libdir} \ +-Wl,--enable-new-dtags,-rpath,\\\$\$\$\$ORIGIN/../\\\$\$\$\$LIB/%{name}" export CPPFLAGS LDFLAGS + +# We have to prevent the standard dependency generation from identifying +# our private elfutils libraries in our provides and requires. +%define _use_internal_dependency_generator 0 +%define filter_eulibs() /bin/sh -c "%{1} | sed '/libelf/d;/libdw/d;/libebl/d'" +%define __find_provides %{filter_eulibs /usr/lib/rpm/find-provides} +%define __find_requires %{filter_eulibs /usr/lib/rpm/find-requires} %endif %configure -make +make %{?_smp_mflags} +make docs %install rm -rf ${RPM_BUILD_ROOT} @@ -83,21 +103,29 @@ rm -rf ${RPM_BUILD_ROOT} %files %defattr(-,root,root) + +%doc README AUTHORS NEWS runtime/docs/html + +%{_bindir}/stap +%{_libexecdir}/stpd + +%dir %{_datadir}/systemtap +%{_datadir}/systemtap/runtime + %if %{bundled_elfutils} %dir %{_libdir}/%{name} %{_libdir}/%{name}/lib*.so* %endif -%{_bindir}/stap -/usr/libexec/stpd -/usr/share/systemtap -/usr/share/doc/systemtap + %changelog +* Mon Jul 25 2005 Roland McGrath <roland@redhat.com> +- Clean up spec file, build bundled elfutils. + * Thu Jul 21 2005 Martin Hunt <hunt@redhat.com> - Set Version to use version from autoconf. - Fix up some of the path names. -- Addes Requires and BuildRequires. -* Thu Jul 21 2005 Roland McGrath <roland@redhat.com> - 0.1-1 -- Clean up spec file, build bundled elfutils. -* Tue Jul 19 2005 Will Cohen <wcohen@redhat.com> +- Add Requires and BuildRequires. + +* Wed Jul 19 2005 Will Cohen <wcohen@redhat.com> - Initial creation of RPM. |