diff --git a/libselinux-2.6.tar.gz b/libselinux-2.6.tar.gz deleted file mode 100644 index 7602e2b..0000000 --- a/libselinux-2.6.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4ea2dde50665c202253ba5caac7738370ea0337c47b251ba981c60d24e1a118a -size 203119 diff --git a/libselinux-2.8.tar.gz b/libselinux-2.8.tar.gz new file mode 100644 index 0000000..8bfdf6e --- /dev/null +++ b/libselinux-2.8.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31db96ec7643ce10912b3c3f98506a08a9116dcfe151855fd349c3fda96187e1 +size 187759 diff --git a/libselinux-bindings.changes b/libselinux-bindings.changes index e23b0dc..ee269dd 100644 --- a/libselinux-bindings.changes +++ b/libselinux-bindings.changes @@ -1,3 +1,20 @@ +------------------------------------------------------------------- +Wed Oct 17 11:48:30 UTC 2018 - jsegitz@suse.com + +- Update to version 2.8 (bsc#1111732). + For changes please see + https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20180524/RELEASE-20180524.txt +- ran spec-cleaner on spec files + +------------------------------------------------------------------- +Mon May 14 22:50:42 UTC 2018 - mcepl@cepl.eu + +- Update to version 2.7. + * %files needed to be heavily modified + * Based expressly on python3, not just python + For changes please see + https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20170804/RELEASE-20170804.txt + ------------------------------------------------------------------- Fri Mar 16 15:25:10 UTC 2018 - jsegitz@suse.com diff --git a/libselinux-bindings.spec b/libselinux-bindings.spec index 29a2990..6fe5bbe 100644 --- a/libselinux-bindings.spec +++ b/libselinux-bindings.spec @@ -1,7 +1,7 @@ # # spec file for package libselinux-bindings # -# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,25 +17,21 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} - -%define libsepol_ver 2.6 - +%define libsepol_ver 2.8 Name: libselinux-bindings -Version: 2.6 +Version: 2.8 Release: 0 Summary: SELinux runtime library and simple utilities -License: GPL-2.0 and SUSE-Public-Domain +License: GPL-2.0-only AND SUSE-Public-Domain Group: Development/Libraries/C and C++ -Url: https://github.com/SELinuxProject/selinux/wiki/Releases - +URL: https://github.com/SELinuxProject/selinux/wiki/Releases # embedded is the MD5 -Source: https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20161014/libselinux-%{version}.tar.gz +Source: libselinux-%{version}.tar.gz Source1: selinux-ready Source2: baselibs.conf +Patch3: python3.patch # PATCH-FIX-UPSTREAM Include for readv prototype Patch4: readv-proto.patch -Patch5: python3.patch -BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: libsepol-devel-static >= %{libsepol_ver} BuildRequires: pcre-devel BuildRequires: python-rpm-macros @@ -48,16 +44,16 @@ libselinux provides an interface to get and set process and file security contexts and to obtain security policy decisions. %package -n python3-selinux +%define oldpython python Summary: Python bindings for the SELinux runtime library License: SUSE-Public-Domain Group: Development/Libraries/Python -%define oldpython python +Requires: libselinux1 = %{version} +Requires: python3 %ifpython2 Obsoletes: %{oldpython}-selinux < %{version} Provides: %{oldpython}-selinux = %{version} %endif -Requires: libselinux1 = %{version} -Requires: python3 %description -n python3-selinux libselinux provides an interface to get and set process and file @@ -82,28 +78,32 @@ language. %prep %setup -q -n libselinux-%{version} +%patch3 -p1 %patch4 -p1 -%patch5 -p1 %build -make %{?_smp_mflags} LIBDIR="%{_libdir}" CFLAGS="$RPM_OPT_FLAGS" -C src -make %{?_smp_mflags} LIBDIR="%{_libdir}" CFLAGS="$RPM_OPT_FLAGS" -C src swigify -make %{?_smp_mflags} LIBDIR="%{_libdir}" CFLAGS="$RPM_OPT_FLAGS" PYTHON=/usr/bin/python3 -C src pywrap -make %{?_smp_mflags} LIBDIR="%{_libdir}" CFLAGS="$RPM_OPT_FLAGS" -C src rubywrap +make %{?_smp_mflags} LIBDIR="%{_libdir}" CFLAGS="%{optflags}" -C src V=1 +make %{?_smp_mflags} LIBDIR="%{_libdir}" CFLAGS="%{optflags}" -C src swigify V=1 +make %{?_smp_mflags} LIBDIR="%{_libdir}" CFLAGS="%{optflags}" -C src pywrap V=1 +make %{?_smp_mflags} LIBDIR="%{_libdir}" CFLAGS="%{optflags}" -C src rubywrap V=1 %install -make DESTDIR="$RPM_BUILD_ROOT" LIBDIR="$RPM_BUILD_ROOT%{_libdir}" SHLIBDIR="$RPM_BUILD_ROOT/%{_lib}" -C src install -make DESTDIR="$RPM_BUILD_ROOT" LIBDIR="$RPM_BUILD_ROOT%{_libdir}" SHLIBDIR="$RPM_BUILD_ROOT/%{_lib}" -C src install-pywrap -make DESTDIR="$RPM_BUILD_ROOT" LIBDIR="$RPM_BUILD_ROOT%{_libdir}" SHLIBDIR="$RPM_BUILD_ROOT/%{_lib}" -C src install-rubywrap -rm -rf $RPM_BUILD_ROOT/%{_lib} $RPM_BUILD_ROOT%{_libdir}/libselinux.* $RPM_BUILD_ROOT%{_libdir}/pkgconfig +make DESTDIR=%{buildroot} LIBDIR="%{_libdir}" \ + SHLIBDIR="/%{_lib}" LIBSEPOLA=%{_libdir}/libsepol.a \ + -C src install V=1 +make DESTDIR=%{buildroot} LIBDIR="%{_libdir}" \ + SHLIBDIR="/%{_lib}" LIBSEPOLA=%{_libdir}/libsepol.a \ + -C src install-pywrap V=1 +make DESTDIR=%{buildroot} LIBDIR="%{_libdir}" \ + SHLIBDIR="/%{_lib}" LIBSEPOLA=%{_libdir}/libsepol.a \ + -C src install-rubywrap V=1 +rm -rf %{buildroot}/%{_lib} %{buildroot}%{_libdir}/libselinux.* \ + %{buildroot}%{_libdir}/pkgconfig %files -n python3-selinux -%defattr(-,root,root,-) -%{python3_sitearch}/selinux/ -%{python3_sitearch}/_selinux.so +%{python3_sitearch}/*selinux* %files -n ruby-selinux -%defattr(-,root,root,-) %{_libdir}/ruby/vendor_ruby/%{rb_ver}/%{rb_arch}/selinux.so %changelog diff --git a/libselinux.changes b/libselinux.changes index fdc217a..597734f 100644 --- a/libselinux.changes +++ b/libselinux.changes @@ -1,3 +1,25 @@ +------------------------------------------------------------------- +Fri Jan 4 14:18:42 UTC 2019 - jsegitz@suse.com + +- Remove unneeded build requires for python3 (bsc#1120255) + +------------------------------------------------------------------- +Wed Oct 17 11:48:30 UTC 2018 - jsegitz@suse.com + +- Update to version 2.8 (bsc#1111732) + For changes please see + https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20180524/RELEASE-20180524.txt +- ran spec-cleaner on spec files + +------------------------------------------------------------------- +Mon May 14 22:45:54 UTC 2018 - mcepl@cepl.eu + +- Update to version 2.7. + * %files needed to be heavily modified + * Based expressly on python3, not just python + For changes please see + https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20170804/RELEASE-20170804.txt + ------------------------------------------------------------------- Fri Nov 24 09:09:02 UTC 2017 - jsegitz@suse.com diff --git a/libselinux.spec b/libselinux.spec index 08a338e..a7807e5 100644 --- a/libselinux.spec +++ b/libselinux.spec @@ -1,7 +1,7 @@ # # spec file for package libselinux # -# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,26 +16,24 @@ # -%define libsepol_ver 2.6 - +%define libsepol_ver 2.8 Name: libselinux -Version: 2.6 +Version: 2.8 Release: 0 Summary: SELinux runtime library and utilities -License: GPL-2.0 and SUSE-Public-Domain +License: GPL-2.0-only AND SUSE-Public-Domain Group: Development/Libraries/C and C++ -Url: https://github.com/SELinuxProject/selinux/wiki/Releases - -Source: https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20161014/%{name}-%{version}.tar.gz +URL: https://github.com/SELinuxProject/selinux/wiki/Releases +Source: libselinux-%{version}.tar.gz Source1: selinux-ready Source2: baselibs.conf +Patch3: python3.patch # PATCH-FIX-UPSTREAM Include for readv prototype Patch4: readv-proto.patch -BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: fdupes BuildRequires: libsepol-devel >= %{libsepol_ver} BuildRequires: pcre-devel -BuildRequires: pkg-config +BuildRequires: pkgconfig %description libselinux provides an interface to get and set process and file @@ -97,48 +95,48 @@ necessary to develop your own software using libselinux. %prep %setup -q +%patch3 -p1 %patch4 -p1 %build -make %{?_smp_mflags} LIBDIR="%{_libdir}" CC="%{__cc}" CFLAGS="$RPM_OPT_FLAGS" +make %{?_smp_mflags} LIBDIR="%{_libdir}" CC="gcc" CFLAGS="%{optflags}" %install -mkdir -p $RPM_BUILD_ROOT/%{_lib} -mkdir -p $RPM_BUILD_ROOT%{_libdir} -mkdir -p $RPM_BUILD_ROOT%{_includedir} -mkdir -p $RPM_BUILD_ROOT%{_sbindir} -make DESTDIR="$RPM_BUILD_ROOT" LIBDIR="$RPM_BUILD_ROOT%{_libdir}" SHLIBDIR="$RPM_BUILD_ROOT/%{_lib}" BINDIR="$RPM_BUILD_ROOT%{_sbindir}" install -rm -f $RPM_BUILD_ROOT%{_sbindir}/compute_* -rm -f $RPM_BUILD_ROOT%{_sbindir}/deftype -rm -f $RPM_BUILD_ROOT%{_sbindir}/execcon -rm -f $RPM_BUILD_ROOT%{_sbindir}/getenforcemode -rm -f $RPM_BUILD_ROOT%{_sbindir}/getfilecon -rm -f $RPM_BUILD_ROOT%{_sbindir}/getpidcon -rm -f $RPM_BUILD_ROOT%{_sbindir}/mkdircon -rm -f $RPM_BUILD_ROOT%{_sbindir}/policyvers -rm -f $RPM_BUILD_ROOT%{_sbindir}/setfilecon -rm -f $RPM_BUILD_ROOT%{_sbindir}/selinuxconfig -rm -f $RPM_BUILD_ROOT%{_sbindir}/selinuxdisable -rm -f $RPM_BUILD_ROOT%{_sbindir}/getseuser -rm -f $RPM_BUILD_ROOT%{_sbindir}/selinux_check_securetty_context -mv $RPM_BUILD_ROOT%{_sbindir}/getdefaultcon $RPM_BUILD_ROOT%{_sbindir}/selinuxdefcon -mv $RPM_BUILD_ROOT%{_sbindir}/getconlist $RPM_BUILD_ROOT%{_sbindir}/selinuxconlist -install -m 0755 %{SOURCE1} $RPM_BUILD_ROOT%{_sbindir}/selinux-ready +mkdir -p %{buildroot}/%{_lib} +mkdir -p %{buildroot}%{_libdir} +mkdir -p %{buildroot}%{_includedir} +mkdir -p %{buildroot}%{_sbindir} +make DESTDIR=%{buildroot} LIBDIR="%{_libdir}" SHLIBDIR="/%{_lib}" BINDIR="%{_sbindir}" install +rm -f %{buildroot}%{_sbindir}/compute_* +rm -f %{buildroot}%{_sbindir}/deftype +rm -f %{buildroot}%{_sbindir}/execcon +rm -f %{buildroot}%{_sbindir}/getenforcemode +rm -f %{buildroot}%{_sbindir}/getfilecon +rm -f %{buildroot}%{_sbindir}/getpidcon +rm -f %{buildroot}%{_sbindir}/mkdircon +rm -f %{buildroot}%{_sbindir}/policyvers +rm -f %{buildroot}%{_sbindir}/setfilecon +rm -f %{buildroot}%{_sbindir}/selinuxconfig +rm -f %{buildroot}%{_sbindir}/selinuxdisable +rm -f %{buildroot}%{_sbindir}/getseuser +rm -f %{buildroot}%{_sbindir}/selinux_check_securetty_context +mv %{buildroot}%{_sbindir}/getdefaultcon %{buildroot}%{_sbindir}/selinuxdefcon +mv %{buildroot}%{_sbindir}/getconlist %{buildroot}%{_sbindir}/selinuxconlist +install -m 0755 %{SOURCE1} %{buildroot}%{_sbindir}/selinux-ready # Remove duplicate files %fdupes -s %{buildroot}%{_mandir} %post -n libselinux1 -p /sbin/ldconfig - %postun -n libselinux1 -p /sbin/ldconfig %files -n selinux-tools -%defattr(-,root,root,-) %{_sbindir}/avcstat %{_sbindir}/getenforce %{_sbindir}/getsebool %{_sbindir}/matchpathcon %{_sbindir}/selabel_digest %{_sbindir}/selabel_lookup +%{_sbindir}/selinux_check_access %{_sbindir}/selabel_lookup_best_match %{_sbindir}/selabel_partial_match %{_sbindir}/selinuxconlist @@ -146,7 +144,7 @@ install -m 0755 %{SOURCE1} $RPM_BUILD_ROOT%{_sbindir}/selinux-ready %{_sbindir}/selinuxenabled %{_sbindir}/setenforce %{_sbindir}/togglesebool -%{_sbindir}/selinux_restorecon +#%#{_sbindir}/selinux_restorecon %{_sbindir}/selinux-ready %{_sbindir}/selinuxexeccon %{_sbindir}/sefcontext_compile @@ -154,18 +152,15 @@ install -m 0755 %{SOURCE1} $RPM_BUILD_ROOT%{_sbindir}/selinux-ready %{_mandir}/man8/* %files -n libselinux1 -%defattr(-,root,root,-) /%{_lib}/libselinux.so.* %files devel -%defattr(-,root,root,-) %{_libdir}/libselinux.so %{_includedir}/selinux/ %{_mandir}/man3/* %{_libdir}/pkgconfig/libselinux.pc %files devel-static -%defattr(-,root,root,-) %{_libdir}/libselinux.a %changelog diff --git a/python3.patch b/python3.patch index ae023b5..58a2136 100644 --- a/python3.patch +++ b/python3.patch @@ -1,13 +1,13 @@ -Index: libselinux-2.6/src/Makefile +Index: libselinux-2.7/src/Makefile =================================================================== ---- libselinux-2.6.orig/src/Makefile 2016-10-14 17:31:26.000000000 +0200 -+++ libselinux-2.6/src/Makefile 2018-03-22 11:33:36.527385495 +0100 +--- libselinux-2.7.orig/src/Makefile ++++ libselinux-2.7/src/Makefile @@ -1,7 +1,7 @@ # Support building the Python bindings multiple times, against various Python # runtimes (e.g. Python 2 vs Python 3) by optionally prefixing the build # targets with "PYPREFIX": -PYTHON ?= python +PYTHON ?= python3 - PYPREFIX ?= $(notdir $(PYTHON)) + PYPREFIX ?= $(shell $(PYTHON) -c 'import sys;print("python-%d.%d" % sys.version_info[:2])') RUBY ?= ruby RUBYPREFIX ?= $(notdir $(RUBY))