Accepting request 741927 from home:StefanBruens:branches:devel:tools

- Use _multibuild for creating the client-headers subpackage. As
  the headers are just copied over, the package has no substantial
  build dependencies.

OBS-URL: https://build.opensuse.org/request/show/741927
OBS-URL: https://build.opensuse.org/package/show/devel:tools/valgrind?expand=0&rev=205
This commit is contained in:
Dirk Mueller 2019-11-20 13:16:58 +00:00 committed by Git OBS Bridge
parent 56061a2f10
commit 805a59b7de
3 changed files with 58 additions and 16 deletions

3
_multibuild Normal file
View File

@ -0,0 +1,3 @@
<multibuild>
<package>client-headers</package>
</multibuild>

View File

@ -3,6 +3,13 @@ Tue Oct 29 12:10:39 UTC 2019 - Dirk Mueller <dmueller@suse.com>
- move s390-*xml files to main package (bsc#1147071) - move s390-*xml files to main package (bsc#1147071)
-------------------------------------------------------------------
Tue Oct 22 16:46:06 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Use _multibuild for creating the client-headers subpackage. As
the headers are just copied over, the package has no substantial
build dependencies.
------------------------------------------------------------------- -------------------------------------------------------------------
Thu Oct 17 22:43:21 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de> Thu Oct 17 22:43:21 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de>

View File

@ -20,9 +20,15 @@
%define glibc_main_version %(getconf GNU_LIBC_VERSION | cut -d' ' -f2 | cut -d. -f1) %define glibc_main_version %(getconf GNU_LIBC_VERSION | cut -d' ' -f2 | cut -d. -f1)
%define glibc_major_version %(getconf GNU_LIBC_VERSION | cut -d' ' -f2 | cut -d. -f2) %define glibc_major_version %(getconf GNU_LIBC_VERSION | cut -d' ' -f2 | cut -d. -f2)
%global flavor @BUILD_FLAVOR@%{nil}
%if "%{flavor}" == "client-headers"
%define psuffix -client-headers-source
%endif
%bcond_without docs %bcond_without docs
Name: valgrind Name: valgrind%{?psuffix}
Version: 3.15.0 Version: 3.15.0
Release: 0 Release: 0
Summary: Memory Management Debugger Summary: Memory Management Debugger
@ -33,8 +39,10 @@ Source0: ftp://sourceware.org/pub/valgrind/valgrind-%{version}.tar.bz2
# https://bugs.kde.org/show_bug.cgi?id=390553 # https://bugs.kde.org/show_bug.cgi?id=390553
# https://github.com/olafhering/valgrind/compare/olh-base-master...olh-fixes-master # https://github.com/olafhering/valgrind/compare/olh-base-master...olh-fixes-master
Patch0: valgrind.xen.patch Patch0: valgrind.xen.patch
Patch1: jit-register-unregister.diff # PATCH-NEEDS-REBASE
# Patch1: jit-register-unregister.diff
Patch2: armv6-support.diff Patch2: armv6-support.diff
%if "%{flavor}" == ""
%if %{with docs} %if %{with docs}
BuildRequires: docbook-xsl-stylesheets BuildRequires: docbook-xsl-stylesheets
BuildRequires: libxslt BuildRequires: libxslt
@ -60,6 +68,8 @@ BuildRequires: gcc-c++-32bit
%endif %endif
BuildRequires: glibc-devel-32bit BuildRequires: glibc-devel-32bit
%endif %endif
%else
%endif
%description %description
Valgrind checks all memory operations in an application, like read, Valgrind checks all memory operations in an application, like read,
@ -91,7 +101,7 @@ Requires: %{name}-client-headers = %{version}
%description devel %description devel
This package contains the Valgrind header files. This package contains the Valgrind header files.
%package client-headers %package -n valgrind-client-headers
Summary: Header files for for Valgrind Summary: Header files for for Valgrind
# The client headers are permissively licensed under a BSD-style # The client headers are permissively licensed under a BSD-style
# license. SPDX License Request filed. # license. SPDX License Request filed.
@ -99,8 +109,9 @@ Summary: Header files for for Valgrind
License: GPL-2.0-or-later AND GFDL-1.2-only License: GPL-2.0-or-later AND GFDL-1.2-only
Group: Development/Tools/Debuggers Group: Development/Tools/Debuggers
Provides: valgrind-devel:%{_includedir}/valgrind/valgrind.h Provides: valgrind-devel:%{_includedir}/valgrind/valgrind.h
BuildArch: noarch
%description client-headers %description -n valgrind-client-headers
This package contains the BSD-style licensed Valgrind header This package contains the BSD-style licensed Valgrind header
files for inclusion into regular programs. The program can files for inclusion into regular programs. The program can
detect if it is running under Valgrind and interact with the detect if it is running under Valgrind and interact with the
@ -138,13 +149,14 @@ but it has been successfully used to optimize several KDE applications.
%endif %endif
%prep %prep
%setup -q %setup -q -n valgrind-%{version}
%patch0 -p1 %patch0 -p1
# needs porting to 3.11 # needs porting to 3.11
##%patch1 # %%patch1
%patch2 %patch2
%build %build
%if "%{flavor}" == ""
%define _lto_cflags %{nil} %define _lto_cflags %{nil}
%if 0%{?suse_version} < 1320 %if 0%{?suse_version} < 1320
export CC="%{_bindir}/gcc-8" export CC="%{_bindir}/gcc-8"
@ -184,8 +196,10 @@ pushd docs
make FAQ.txt man-pages html-docs make FAQ.txt man-pages html-docs
popd popd
%endif %endif
%endif
%install %install
%if "%{flavor}" == ""
make DESTDIR=%{buildroot} install %{?_smp_mflags} make DESTDIR=%{buildroot} install %{?_smp_mflags}
rm %{buildroot}/%{_libdir}/valgrind/lib*.a # drop unreproducible unused files to fix boo#1118163 rm %{buildroot}/%{_libdir}/valgrind/lib*.a # drop unreproducible unused files to fix boo#1118163
@ -197,7 +211,20 @@ if test -d %{buildroot}%{_datadir}/doc/valgrind; then
fi fi
mkdir -p %{buildroot}%{_docdir}/%{name} mkdir -p %{buildroot}%{_docdir}/%{name}
rm %{buildroot}/%{_includedir}/valgrind/{valgrind,callgrind,drd,helgrind,memcheck}.h
%else
install -m 755 -d %{buildroot}/%{_includedir}/valgrind
install -m 644 -t %{buildroot}/%{_includedir}/valgrind \
include/valgrind.h \
callgrind/callgrind.h \
drd/drd.h \
helgrind/helgrind.h \
memcheck/memcheck.h
%endif
%check %check
%if "%{flavor}" == ""
# OBS doesn't have a z13 # OBS doesn't have a z13
%ifnarch s390x %ifnarch s390x
# has too many spurious failures # has too many spurious failures
@ -205,27 +232,22 @@ mkdir -p %{buildroot}%{_docdir}/%{name}
#patent pending self test #patent pending self test
VALGRIND_LIB=$PWD/.in_place VALGRIND_LIB_INNER=$PWD/.in_place ./coregrind/valgrind /usr/bin/perl -wc tests/vg_regtest VALGRIND_LIB=$PWD/.in_place VALGRIND_LIB_INNER=$PWD/.in_place ./coregrind/valgrind /usr/bin/perl -wc tests/vg_regtest
%endif %endif
%endif
%if "%{flavor}" == ""
%files devel %files devel
%dir %{_includedir}/valgrind
%{_includedir}/valgrind/config.h %{_includedir}/valgrind/config.h
%{_includedir}/valgrind/vki %{_includedir}/valgrind/vki
%{_includedir}/valgrind/libvex*.h %{_includedir}/valgrind/libvex*.h
%{_includedir}/valgrind/pub_tool*.h %{_includedir}/valgrind/pub_tool*.h
%{_libdir}/pkgconfig/valgrind.pc %{_libdir}/pkgconfig/valgrind.pc
%files client-headers %files -n valgrind
%dir %{_includedir}/valgrind
%{_includedir}/valgrind/callgrind.h
%{_includedir}/valgrind/drd.h
%{_includedir}/valgrind/helgrind.h
%{_includedir}/valgrind/memcheck.h
%{_includedir}/valgrind/valgrind.h
%files
%license COPYING COPYING.DOCS %license COPYING COPYING.DOCS
%{_bindir}/* %{_bindir}/*
%doc README* NEWS AUTHORS %doc README* NEWS AUTHORS
%doc %{_defaultdocdir}/%{name}/ %doc %{_defaultdocdir}/%{name}/*
%doc %{_mandir}/*/* %doc %{_mandir}/*/*
%dir %{_libdir}/valgrind %dir %{_libdir}/valgrind
%ifarch aarch64 %ifarch aarch64
@ -346,4 +368,14 @@ VALGRIND_LIB=$PWD/.in_place VALGRIND_LIB_INNER=$PWD/.in_place ./coregrind/valgri
%{_libdir}/valgrind/powerpc-altivec64l-valgrind.xml %{_libdir}/valgrind/powerpc-altivec64l-valgrind.xml
%{_libdir}/valgrind/powerpc-altivec64l.xml %{_libdir}/valgrind/powerpc-altivec64l.xml
%else
%files -n valgrind-client-headers
%dir %{_includedir}/valgrind
%{_includedir}/valgrind/callgrind.h
%{_includedir}/valgrind/drd.h
%{_includedir}/valgrind/helgrind.h
%{_includedir}/valgrind/memcheck.h
%{_includedir}/valgrind/valgrind.h
%endif
%changelog %changelog