Accepting request 762391 from home:pluskalm:branches:Base:System

- Update to version 2.30:
  * BUGFIX: arm and i386 fixes C and Go setgroups choice - used
    wrong syscall in 2.29.
  * cleaned up make clean and make install to actually work as
    intended
  * updated Gentoo libpsx.pc file from Lars Wendler
  * refactored the way libpsx linkage with libcap performed mutual
    discovery.
  * Previously (2.28) libpsx had an API call overridden by libcap
    using weak linkage function in libpsx. In 2.30 this is reversed,
    namely libpsx provides the stronger function and libcap has a
    weak "no-op" version.
  * a bit more consistency in handling the 'all' sets in libcap
    (C) and libcap/cap (Go). Namely, they both dynamically discover
    the number of capabilities named by the kernel and use this as
    the definition of 'all' for the current runtime.
    + libcap (C) exports cap_max_bit() to export the number of
      supported capabilities
    + libcap/cap (Go) exports cap.MaxBits() for this same value.
- For changes for older releases see:
  * https://sites.google.com/site/fullycapable/release-notes-for-libcap
- Add glibc-static-devel as build requirement as tests need it
- Install libpsx.a as it seems to be needed in some cases:
  * https://bugs.gentoo.org/703912

OBS-URL: https://build.opensuse.org/request/show/762391
OBS-URL: https://build.opensuse.org/package/show/Base:System/libcap?expand=0&rev=31
This commit is contained in:
Takashi Iwai 2020-01-10 16:37:07 +00:00 committed by Git OBS Bridge
parent 31075c8cee
commit 6da5c4781b
4 changed files with 47 additions and 17 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:693c8ac51e983ee678205571ef272439d83afe62dd8e424ea14ad9790bc35162
size 63672

3
libcap-2.30.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a287bae0b0d95e5230a1c4177b835c70774511b631f87c7bd29e91a03e027f11
size 98528

View File

@ -1,3 +1,31 @@
-------------------------------------------------------------------
Thu Jan 9 16:05:12 UTC 2020 - Martin Pluskal <mpluskal@suse.com>
- Update to version 2.30:
* BUGFIX: arm and i386 fixes C and Go setgroups choice - used
wrong syscall in 2.29.
* cleaned up make clean and make install to actually work as
intended
* updated Gentoo libpsx.pc file from Lars Wendler
* refactored the way libpsx linkage with libcap performed mutual
discovery.
* Previously (2.28) libpsx had an API call overridden by libcap
using weak linkage function in libpsx. In 2.30 this is reversed,
namely libpsx provides the stronger function and libcap has a
weak "no-op" version.
* a bit more consistency in handling the 'all' sets in libcap
(C) and libcap/cap (Go). Namely, they both dynamically discover
the number of capabilities named by the kernel and use this as
the definition of 'all' for the current runtime.
+ libcap (C) exports cap_max_bit() to export the number of
supported capabilities
+ libcap/cap (Go) exports cap.MaxBits() for this same value.
- For changes for older releases see:
* https://sites.google.com/site/fullycapable/release-notes-for-libcap
- Add glibc-static-devel as build requirement as tests need it
- Install libpsx.a as it seems to be needed in some cases:
* https://bugs.gentoo.org/703912
------------------------------------------------------------------- -------------------------------------------------------------------
Mon Dec 16 14:21:27 UTC 2019 - matthias.gerstner@suse.com Mon Dec 16 14:21:27 UTC 2019 - matthias.gerstner@suse.com

View File

@ -1,7 +1,7 @@
# #
# spec file for package libcap # spec file for package libcap
# #
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2020 SUSE LLC
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -17,16 +17,17 @@
Name: libcap Name: libcap
Version: 2.30
Release: 0
Summary: Library for Capabilities (linux-privs) Support Summary: Library for Capabilities (linux-privs) Support
License: BSD-3-Clause AND GPL-2.0-only License: BSD-3-Clause AND GPL-2.0-only
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
Version: 2.25 URL: https://sites.google.com/site/fullycapable/
Release: 0
Source: https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-%{version}.tar.xz Source: https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-%{version}.tar.xz
Source2: baselibs.conf Source2: baselibs.conf
Url: https://sites.google.com/site/fullycapable/
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: pkg-config BuildRequires: glibc-devel-static
BuildRequires: pkgconfig
%description %description
Capabilities are a measure to limit the omnipotence of the superuser. Capabilities are a measure to limit the omnipotence of the superuser.
@ -48,8 +49,6 @@ control. Without kernel patches, you can use this library to drop
capabilities within setuid binaries. If you use patches, this can be capabilities within setuid binaries. If you use patches, this can be
done automatically by the kernel. done automatically by the kernel.
%package devel %package devel
Summary: Development files for libcap Summary: Development files for libcap
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
@ -76,9 +75,10 @@ libcap.
%prep %prep
%setup -q %setup -q
%build %build
make prefix=%{_prefix} lib=%{_lib} LIBDIR=%{_libdir} SBINDIR=%{_sbindir} \ make prefix=%{_prefix} lib=%{_lib} LIBDIR=%{_libdir} SBINDIR=%{_sbindir} \
INCDIR=%{_includedir} MANDIR=%{_mandir} DEBUG="-g %{optflags}" INCDIR=%{_includedir} MANDIR=%{_mandir} DYNAMIC=yes DEBUG="-g %{optflags}"
%install %install
make install RAISE_SETFCAP=no \ make install RAISE_SETFCAP=no \
@ -88,34 +88,36 @@ make install RAISE_SETFCAP=no \
INCDIR=/%{_includedir} \ INCDIR=/%{_includedir} \
MANDIR=/%{_mandir}/ \ MANDIR=/%{_mandir}/ \
PKGCONFIGDIR=%{_libdir}/pkgconfig/ PKGCONFIGDIR=%{_libdir}/pkgconfig/
find %{buildroot} -type f -name '*.la' -print -delete find %{buildroot} -type f -name "*.la" -delete -print
# do not provide static libs # do not provide static libs
rm %{buildroot}%{_libdir}/libcap.a rm %{buildroot}%{_libdir}/libcap.a
%fdupes -s $RPM_BUILD_ROOT %fdupes -s %{buildroot}
%check
make test
%post -n libcap2 -p /sbin/ldconfig %post -n libcap2 -p /sbin/ldconfig
%postun -n libcap2 -p /sbin/ldconfig %postun -n libcap2 -p /sbin/ldconfig
%files -n libcap2 %files -n libcap2
%defattr(-,root,root)
%license License %license License
%{_libdir}/libcap.so.* %{_libdir}/libcap.so.*
%files progs %files progs
%defattr(-,root,root)
%{_mandir}/man1/* %{_mandir}/man1/*
%{_mandir}/man8/* %{_mandir}/man8/*
%{_sbindir}/* %{_sbindir}/*
%files devel %files devel
%defattr(-,root,root)
%license License %license License
%doc README CHANGELOG %doc README CHANGELOG
%{_includedir}/sys/capability.h %{_includedir}/sys/capability.h
%{_includedir}/sys/psx_syscall.h
%{_libdir}/*.so %{_libdir}/*.so
%{_libdir}/libpsx.a
%{_libdir}/pkgconfig/%{name}.pc %{_libdir}/pkgconfig/%{name}.pc
%{_libdir}/pkgconfig/libpsx.pc
%{_mandir}/man3/* %{_mandir}/man3/*
%changelog %changelog