diff --git a/_multibuild b/_multibuild deleted file mode 100644 index 81625e2..0000000 --- a/_multibuild +++ /dev/null @@ -1,4 +0,0 @@ - - libselinux-bindings - - diff --git a/libselinux-bindings.changes b/libselinux-bindings.changes deleted file mode 100644 index 4467f98..0000000 --- a/libselinux-bindings.changes +++ /dev/null @@ -1,481 +0,0 @@ -------------------------------------------------------------------- -Tue Jun 20 13:34:39 UTC 2023 - Johannes Segitz - -- Add explicit BuildRequires for python3-pip and python3-wheel on - 15.5, currently the macros don't do the right thing - -------------------------------------------------------------------- -Thu Jun 1 11:50:33 UTC 2023 - Johannes Kastl - -- allow building this with different python versions, to make this - usable for the new sle15 macro (using python3.11) - -------------------------------------------------------------------- -Fri May 5 12:35:31 UTC 2023 - Daniel Garcia - -- Add python-wheel build dependency to build correctly with latest - python-pip version. - -------------------------------------------------------------------- -Thu May 4 14:04:04 UTC 2023 - Frederic Crozat - -- Add _multibuild to define additional spec files as additional - flavors. - Eliminates the need for source package links in OBS. - - -------------------------------------------------------------------- -Thu Mar 23 15:39:15 UTC 2023 - Martin Liška - -- Enable LTO as it works fine now. - -------------------------------------------------------------------- -Fri Feb 24 07:42:25 UTC 2023 - Johannes Segitz - -- Update to version 3.5: - * check for truncations - * avoid newline in avc message - * bail out on path truncations - * add getpidprevcon to gather the previous context before the last - exec of a given process - * Workaround for heap overhead of pcre - * fix memory leaks on the audit2why module init - * ignore invalid class name lookup -- Drop restorecon_pin_file.patch, is upstream -- Refreshed python3.8-compat.patch -- Added additional developer key (Jason Zaman) - -------------------------------------------------------------------- -Mon May 9 10:23:32 UTC 2022 - Johannes Segitz - -- Update to version 3.4: - * Use PCRE2 by default - * Make selinux_log() and is_context_customizable() thread-safe - * Prevent leakeing file descriptors - * Correctly hash specfiles larger than 4G -- Refreshed skip_cycles.patch - -------------------------------------------------------------------- -Thu Nov 11 13:25:30 UTC 2021 - Johannes Segitz - -- Update to version 3.3: - * Lots of smaller issues fixed found by fuzzing - -------------------------------------------------------------------- -Wed Mar 17 15:17:27 UTC 2021 - Dominique Leuenberger - -- Switch to pcre2: - + Replace pcre-devel BuildRequires with pkgconfig(libpcre2-8) - + Pass USE_PCRE2=y to make. - -------------------------------------------------------------------- -Tue Mar 9 09:01:15 UTC 2021 - Johannes Segitz - -- Update to version 3.2: - * Use mmap()'ed kernel status page instead of netlink by default. - See "KERNEL STATUS PAGE" section in avc_init(3) for more details. - * New log callback levels for enforcing and policy load notices - - SELINUX_POLICYLOAD, SELINUX_SETENFORCE - * Changed userspace AVC setenforce and policy load messages to audit - format. - -------------------------------------------------------------------- -Tue Jul 14 08:24:20 UTC 2020 - Johannes Segitz - -- Update to version 3.1: - * selinux/flask.h, selinux/av_permissions.h and sepol/policydb/flask.h were - removed. All userspace object managers should have been updated to use the - dynamic class/perm mapping support. - - Use string_to_security_class(3) and string_to_av_perm(3) to map the class - and permission names to their policy values, or selinux_set_mapping(3) to - create a mapping from class and permission index values used by the - application to the policy values. - * Removed restrictions in libsepol and checkpolicy that required all declared - initial SIDs to be assigned a context. - * Support for new policy capability genfs_seclabel_symlinks - * selinuxfs is mounted with noexec and nosuid - * `security_compute_user()` was deprecated - * Refreshed python3.8-compat.patch - -------------------------------------------------------------------- -Tue Mar 3 11:13:12 UTC 2020 - Johannes Segitz - -- Update to version 3.0 - * Ignore the stem when looking up all matches in file context - * Save digest of all partial matches for directory - * Use Python distutils to install SELinux python bindings - * ensure that digest_len is not zero - * fix string conversion of unknown perms - * mark all exported function "extern" - -------------------------------------------------------------------- -Mon Dec 16 16:04:41 UTC 2019 - Johannes Segitz - -- Added swig4_moduleimport.patch to prevent import errors due to - SWIG 4 - -------------------------------------------------------------------- -Wed Oct 30 17:21:00 CET 2019 - Matej Cepl - -- Add python3.8-compat.patch which makes build possible even with - Python 3.8, which doesn’t automatically adds -lpython - -------------------------------------------------------------------- -Tue May 28 08:28:03 UTC 2019 - Martin Liška - -- Disable LTO (boo#1133244). - -------------------------------------------------------------------- -Fri May 24 11:22:19 UTC 2019 - - -- Set License: to correct value (bsc#1135710) - -------------------------------------------------------------------- -Wed Mar 20 15:05:35 UTC 2019 - jsegitz@suse.com - -- Update to version 2.9 - * Add security_reject_unknown(3) man page - * Change matchpathcon usage to match with matchpathcon manpage - * Do not define gettid() if glibc >= 2.30 is used - * Fix RESOURCE_LEAK defects reported by coverity scan - * Fix line wrapping in selabel_file.5 - * Do not dereference symlink with statfs in selinux_restorecon - * Fix overly strict validation of file_contexts.bin - * Fix selinux_restorecon() on non-SELinux hosts - * Fix the whatis line for the selinux_boolean_sub.3 manpage - * Fix printf format string specifier for uint64_t - * Fix handling of unknown classes/perms - * Set an appropriate errno in booleans.c -- Dropped python3.patch, is now upstream - -------------------------------------------------------------------- -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 - -- Updated spec file to use python3. Added python3.patch to fix - build - -------------------------------------------------------------------- -Fri Nov 24 09:09:02 UTC 2017 - jsegitz@suse.com - -- Update to version 2.6. Notable changes: - * selinux_restorecon: fix realpath logic - * sefcontext_compile: invert semantics of "-r" flag - * sefcontext_compile: Add "-i" flag - * Introduce configurable backends - * Add function to find security.restorecon_last entries - * Add openrc_contexts functions - * Add support for pcre2 - * Handle NULL pcre study data - * Add setfiles support to selinux_restorecon(3) - * Evaluate inodes in selinux_restorecon(3) - * Change the location of _selinux.so - * Explain how to free policy type from selinux_getpolicytype() - * Compare absolute pathname in matchpathcon -V - * Add selinux_snapperd_contexts_path() - * Modify audit2why analyze function to use loaded policy - * Avoid mounting /proc outside of selinux_init_load_policy() - * Fix location of selinuxfs mount point - * Only mount /proc if necessary - * procattr: return einval for <= 0 pid args - * procattr: return error on invalid pid_t input -- Dropped - * libselinux-2.2-ruby.patch - * libselinux-proc-mount-only-if-needed.patch - * python-selinux-swig-3.10.patch - -------------------------------------------------------------------- -Wed Jul 5 10:30:57 UTC 2017 - schwab@suse.de - -- readv-proto.patch: include for readv prototype - -------------------------------------------------------------------- -Sun Jul 17 15:30:05 UTC 2016 - jengelh@inai.de - -- Update RPM groups, trim description and combine filelist entries. - -------------------------------------------------------------------- -Thu Jul 14 07:59:04 UTC 2016 - jsegitz@novell.com - -- Adjusted source link - -------------------------------------------------------------------- -Tue Jul 5 16:44:44 UTC 2016 - i@marguerite.su - -- add patch: python-selinux-swig-3.10.patch, fixed boo#985368 - * swig-3.10 in Factory use importlib instead of imp to find - _selinux.so. imp searched the same directory as __init__.py - is while importlib searchs only standard paths. so we have - to move _selinux.so. fixed by upstream -- update version 2.5 - * Add selinux_restorecon function - * read_spec_entry: fail on non-ascii - * Add man information about thread specific functions - * Don't wrap rpm_execcon with DISABLE_RPM with SWIG - * Correct line count for property and service context files - * label_file: fix memory leaks and uninitialized jump - * Replace selabel_digest hash function - * Fix selabel_open(3) services if no digest requested - * Add selabel_digest function - * Flush the class/perm string mapping cache on policy reload - * Fix restorecon when path has no context - * Free memory when processing media and x specfiles - * Fix mmap memory release for file labeling - * Add policy context validation to sefcontext_compile - * Do not treat an empty file_contexts(.local) as an error - * Fail hard on invalid property_contexts entries - * Fail hard on invalid file_contexts entries - * Support context validation on file_contexts.bin - * Add selabel_cmp interface and label_file backend - * Support specifying file_contexts.bin file path - * Support file_contexts.bin without file_contexts - * Simplify procattr cache - * Use /proc/thread-self when available - * Add const to selinux_opt for label backends - * Fix binary file labels for regexes with metachars - * Fix file labels for regexes with metachars - * Fix if file_contexts not '\n' terminated - * Enhance file context support - * Fix property processing and cleanup formatting - * Add read_spec_entries function to replace sscanf - * Support consistent mode size for bin files - * Fix more bin file processing core dumps - * add selinux_openssh_contexts_path() - * setrans_client: minimize overhead when mcstransd is not present - * Ensure selabel_lookup_best_match links NULL terminated - * Fix core dumps with corrupt *.bin files - * Add selabel partial and best match APIs - * Use os.walk() instead of the deprecated os.path.walk() - * Remove deprecated mudflap option - * Mount procfs before checking /proc/filesystems - * Fix -Wformat errors with gcc-5.0.0 - * label_file: handle newlines in file names - * Fix audit2why error handling if SELinux is disabled - * pcre_study can return NULL without error - * Only check SELinux enabled status once in selinux_check_access -- changes in 2.4 - * Remove assumption that SHLIBDIR is ../../ relative to LIBDIR - * Fix bugs found by hardened gcc flags - * Set the system to permissive if failing to disable SELinux because - policy has already been loaded - * Add db_exception and db_datatype support to label_db backend - * Log an error on unknown classes and permissions - * Add pcre version string to the compiled file_contexts format - * Deprecate use of flask.h and av_permissions.h - * Compiled file_context files and the original should have the same DAC - permissions -------------------------------------------------------------------- -Wed May 27 11:53:54 UTC 2015 - dimstar@opensuse.org - -- Update libselinux-2.2-ruby.patch: use RbConfig instead of - deprecated Config. - -------------------------------------------------------------------- -Sun May 18 00:15:17 UTC 2014 - crrodriguez@opensuse.org - -- Update to version 2.3 -* Get rid of security_context_t and fix const declarations. -* Refactor rpm_execcon() into a new setexecfilecon() from Guillem Jover. - -------------------------------------------------------------------- -Thu Oct 31 13:43:41 UTC 2013 - p.drouand@gmail.com - -- Update to version 2.2 - * Fix avc_has_perm() returns -1 even when SELinux is in permissive mode. - * Support overriding Makefile RANLIB - * Update pkgconfig definition - * Mount sysfs before trying to mount selinuxfs. - * Fix man pages - * Support overriding PATH and LIBBASE in Makefile - * Fix LDFLAGS usage - * Avoid shadowing stat in load_mmap - * Support building on older PCRE libraries - * Fix handling of temporary file in sefcontext_compile - * Fix procattr cache - * Define python constants for getenforce result - * Fix label substitution handling of / - * Add selinux_current_policy_path from - * Change get_context_list to only return good matches - * Support udev-197 and higher - * Add support for local substitutions - * Change setfilecon to not return ENOSUP if context is already correct - * Python wrapper leak fixes - * Export SELINUX_TRANS_DIR definition in selinux.h - * Add selinux_systemd_contexts_path - * Add selinux_set_policy_root - * Add man page for sefcontext_compile -- Remove libselinux-rhat.patch; merged on upstream -- Adapt libselinux-ruby.patch to upstream changes -- Use fdupes to symlink duplicate manpages - -------------------------------------------------------------------- -Thu Jun 27 14:57:53 UTC 2013 - vcizek@suse.com - -- change the source url to the official 2.1.13 release tarball - -------------------------------------------------------------------- -Wed Jan 30 12:33:45 UTC 2013 - vcizek@suse.com - -- update to 2.1.12 -- added BuildRequires: pcre-devel - -------------------------------------------------------------------- -Mon Jan 7 22:34:03 UTC 2013 - jengelh@inai.de - -- Remove obsolete defines/sections - -------------------------------------------------------------------- -Wed Jul 25 11:15:02 UTC 2012 - meissner@suse.com - -- updated to 2.1.9 again (see below) - -------------------------------------------------------------------- -Fri Jun 1 18:34:04 CEST 2012 - mls@suse.de - -- update to libselinux-2.1.9 - * better man pages - * selinux_status interfaces - * simple interface for access checks - * multiple bug fixes -- fix build for ruby-1.9 - -------------------------------------------------------------------- -Mon Jun 28 06:38:35 UTC 2010 - jengelh@medozas.de - -- use %_smp_mflags - -------------------------------------------------------------------- -Thu Feb 25 14:57:16 UTC 2010 - prusnak@suse.cz - -- updated to 2.0.91 - * changes too numerous to list - -------------------------------------------------------------------- -Sat Dec 12 16:43:54 CET 2009 - jengelh@medozas.de - -- add baselibs.conf as a source - -------------------------------------------------------------------- -Fri Jul 24 17:09:50 CEST 2009 - thomas@novell.com - -- updated selinux-ready script - -------------------------------------------------------------------- -Wed Jul 22 15:17:25 CEST 2009 - prusnak@suse.cz - -- change libsepol-devel to libsepol-devel-static in dependencies - of python bindings - -------------------------------------------------------------------- -Wed Jul 1 12:26:48 CEST 2009 - prusnak@suse.cz - -- put libsepol-devel back to Requires of libselinux-devel - -------------------------------------------------------------------- -Mon Jun 29 21:24:16 CEST 2009 - prusnak@suse.cz - -- added selinux-ready tool to selinux-tools package - -------------------------------------------------------------------- -Tue Jun 9 20:17:54 CEST 2009 - crrodriguez@suse.de - -- remove static libraries -- libselinux-devel does not require libsepol-devel - -------------------------------------------------------------------- -Wed May 27 14:06:14 CEST 2009 - prusnak@suse.cz - -- updated to 2.0.80 - * deny_unknown wrapper function from KaiGai Kohei - * security_compute_av_flags API from KaiGai Kohei - * Netlink socket management and callbacks from KaiGai Kohei - * Netlink socket handoff patch from Adam Jackson - * AVC caching of compute_create results by Eric Paris - * fix incorrect conversion in discover_class code - -------------------------------------------------------------------- -Fri Apr 17 17:12:06 CEST 2009 - prusnak@suse.cz - -- fixed memory leak (memleak.patch) - -------------------------------------------------------------------- -Wed Jan 14 14:04:30 CET 2009 - prusnak@suse.cz - -- updated to 2.0.77 - * add new function getseuser which will take username and service - and return seuser and level; ipa will populate file in future - * change selinuxdefcon to return just the context by default - * fix segfault if seusers file does not work - * strip trailing / for matchpathcon - * fix restorecon python code - -------------------------------------------------------------------- -Mon Dec 1 11:32:50 CET 2008 - prusnak@suse.cz - -- updated to 2.0.76 - * allow shell-style wildcarding in X names - * add Restorecon/Install python functions - * correct message types in AVC log messages - * make matchpathcon -V pass mode - * add man page for selinux_file_context_cmp - * update flask headers from refpolicy trunk - -------------------------------------------------------------------- -Wed Oct 22 16:28:59 CEST 2008 - mrueckert@suse.de - -- fix debug_packages_requires define - -------------------------------------------------------------------- -Tue Sep 23 12:51:10 CEST 2008 - prusnak@suse.cz - -- require only version, not release [bnc#429053] - -------------------------------------------------------------------- -Tue Sep 2 12:09:22 CEST 2008 - prusnak@suse.cz - -- updated to 2.0.71 - * Add group support to seusers using %groupname syntax from Dan Walsh. - * Mark setrans socket close-on-exec from Stephen Smalley. - * Only apply nodups checking to base file contexts from Stephen Smalley. - * Merge ruby bindings from Dan Walsh. - -------------------------------------------------------------------- -Mon Sep 1 07:35:00 CEST 2008 - aj@suse.de - -- Fix build of debuginfo. - -------------------------------------------------------------------- -Fri Aug 22 14:45:29 CEST 2008 - prusnak@suse.cz - -- added baselibs.conf file -- split bindings into separate subpackage (libselinux-bindings) -- split tools into separate subpackage (selinux-tools) - -------------------------------------------------------------------- -Fri Aug 1 17:32:20 CEST 2008 - ro@suse.de - -- fix requires for debuginfo package - -------------------------------------------------------------------- -Tue Jul 15 16:26:31 CEST 2008 - prusnak@suse.cz - -- initial version 2.0.67 - * based on Fedora package by Dan Walsh - diff --git a/libselinux-bindings.spec b/libselinux-bindings.spec deleted file mode 100644 index 4f76098..0000000 --- a/libselinux-bindings.spec +++ /dev/null @@ -1,132 +0,0 @@ -# -# spec file for package libselinux-bindings -# -# Copyright (c) 2023 SUSE LLC -# -# All modifications and additions to the file contributed by third parties -# remain the property of their copyright owners, unless otherwise agreed -# upon. The license for this file, and modifications and additions to the -# file, is the same license as for the pristine package itself (unless the -# license for the pristine package is not an Open Source License, in which -# case the license is the MIT License). An "Open Source License" is a -# license that conforms to the Open Source Definition (Version 1.9) -# published by the Open Source Initiative. - -# Please submit bugfixes or comments via https://bugs.opensuse.org/ -# - - -%{?sle15_python_module_pythons} -%if 0%{?suse_version} < 1699 -# Leap15, SLES15 -# have some safe defaults -%define python_subpackage_name python3-selinux -%define python_base_requirement python3 -%if "%pythons" == "python36" -%define python_subpackage_name python36-selinux -%define python_base_requirement python36 -%endif -%if "%pythons" == "python310" -%define python_subpackage_name python310-selinux -%define python_base_requirement python310 -%endif -%if "%pythons" == "python311" -%define python_subpackage_name python311-selinux -%define python_base_requirement python311 -%endif -%else -# Tumbleweed -%define python_subpackage_name python3-selinux -%define python_base_requirement python3 -%endif - -%define libsepol_ver 3.5 -Name: libselinux-bindings -Version: 3.5 -Release: 0 -Summary: SELinux runtime library and simple utilities -License: SUSE-Public-Domain -Group: Development/Libraries/C and C++ -URL: https://github.com/SELinuxProject/selinux/wiki/Releases -Source0: https://github.com/SELinuxProject/selinux/releases/download/%{version}/libselinux-%{version}.tar.gz -Source1: https://github.com/SELinuxProject/selinux/releases/download/%{version}/libselinux-%{version}.tar.gz.asc -Source2: libselinux.keyring -Source3: selinux-ready -Source4: baselibs.conf -# PATCH-FIX-UPSTREAM Include for readv prototype -Patch4: readv-proto.patch -# PATCH-FIX-UPSTREAM python3.8-compat.patch mcepl@suse.com -# Make linking working even when default pkg-config doesn’t provide -lpython -Patch5: python3.8-compat.patch -Patch6: swig4_moduleimport.patch -BuildRequires: %{python_module setuptools} -%if 0%{?sle_version} == 150500 -BuildRequires: python3-pip -BuildRequires: python3-wheel -%else -BuildRequires: %{python_module pip} -BuildRequires: %{python_module wheel} -%endif -BuildRequires: libsepol-devel-static >= %{libsepol_ver} -BuildRequires: python-rpm-macros -BuildRequires: python3-devel -BuildRequires: ruby-devel -BuildRequires: swig -BuildRequires: pkgconfig(libpcre2-8) - -%description -libselinux provides an interface to get and set process and file -security contexts and to obtain security policy decisions. - -%package -n %{python_subpackage_name} -%define oldpython python -Summary: Python bindings for the SELinux runtime library -Group: Development/Libraries/Python -Requires: %{python_base_requirement} -Requires: libselinux1 = %{version} -%ifpython2 -Obsoletes: %{oldpython}-selinux < %{version} -Provides: %{oldpython}-selinux = %{version} -%endif - -%description -n %{python_subpackage_name} -libselinux provides an interface to get and set process and file -security contexts and to obtain security policy decisions. - -This subpackage contains Python extensions to use SELinux from that -language. - -%package -n ruby-selinux -Summary: Ruby bindings for the SELinux runtime library -Group: Development/Languages/Ruby -Requires: libselinux1 = %{version} -Requires: ruby - -%description -n ruby-selinux -libselinux provides an interface to get and set process and file -security contexts and to obtain security policy decisions. - -This subpackage contains Ruby extensions to use SELinux from that -language. - -%prep -%setup -q -n libselinux-%{version} -%autopatch -p1 - -%build -make %{?_smp_mflags} LIBDIR="%{_libdir}" CFLAGS="%{optflags} -fno-semantic-interposition" swigify V=1 USE_PCRE2=y -make %{?_smp_mflags} LIBDIR="%{_libdir}" CFLAGS="%{optflags} -fno-semantic-interposition" pywrap V=1 USE_PCRE2=y -make %{?_smp_mflags} LIBDIR="%{_libdir}" CFLAGS="%{optflags} -fno-semantic-interposition" rubywrap V=1 USE_PCRE2=y - -%install -make DESTDIR=%{buildroot} LIBDIR="%{_libdir}" SHLIBDIR="/%{_lib}" LIBSEPOLA=%{_libdir}/libsepol.a install-pywrap V=1 -make DESTDIR=%{buildroot} LIBDIR="%{_libdir}" SHLIBDIR="/%{_lib}" LIBSEPOLA=%{_libdir}/libsepol.a install-rubywrap V=1 -rm -rf %{buildroot}/%{_lib} %{buildroot}%{_libdir}/libselinux.* %{buildroot}%{_libdir}/pkgconfig - -%files -n %{python_subpackage_name} -%{python3_sitearch}/*selinux* - -%files -n ruby-selinux -%{_libdir}/ruby/vendor_ruby/%{rb_ver}/%{rb_arch}/selinux.so - -%changelog diff --git a/libselinux.changes b/libselinux.changes index 6d343d2..f49b74a 100644 --- a/libselinux.changes +++ b/libselinux.changes @@ -1,3 +1,26 @@ +------------------------------------------------------------------- +Fri Jun 23 14:50:33 UTC 2023 - Matej Cepl + +- Remove separate libselinux-bindings SPEC file (bsc#1212618). + +------------------------------------------------------------------- +Tue Jun 20 13:34:39 UTC 2023 - Johannes Segitz + +- Add explicit BuildRequires for python3-pip and python3-wheel on + 15.5, currently the macros don't do the right thing + +------------------------------------------------------------------- +Thu Jun 1 11:50:33 UTC 2023 - Johannes Kastl + +- allow building this with different python versions, to make this + usable for the new sle15 macro (using python3.11) + +------------------------------------------------------------------- +Fri May 5 12:35:31 UTC 2023 - Daniel Garcia + +- Add python-wheel build dependency to build correctly with latest + python-pip version. + ------------------------------------------------------------------- Thu May 4 14:04:04 UTC 2023 - Frederic Crozat @@ -29,6 +52,7 @@ Fri Feb 24 07:42:25 UTC 2023 - Johannes Segitz * fix memory leaks on the audit2why module init * ignore invalid class name lookup - Drop restorecon_pin_file.patch, is upstream +- Refreshed python3.8-compat.patch - Added additional developer key (Jason Zaman) ------------------------------------------------------------------- @@ -126,6 +150,7 @@ Tue Jul 14 08:24:20 UTC 2020 - Johannes Segitz * Support for new policy capability genfs_seclabel_symlinks * selinuxfs is mounted with noexec and nosuid * `security_compute_user()` was deprecated + * Refreshed python3.8-compat.patch ------------------------------------------------------------------- Thu Mar 26 15:43:41 UTC 2020 - Johannes Segitz @@ -146,6 +171,12 @@ Tue Mar 3 11:13:12 UTC 2020 - Johannes Segitz Dropped Use-Python-distutils-to-install-SELinux.patch, included upstream +------------------------------------------------------------------- +Mon Dec 16 16:04:41 UTC 2019 - Johannes Segitz + +- Added swig4_moduleimport.patch to prevent import errors due to + SWIG 4 + ------------------------------------------------------------------- Wed Nov 13 08:03:39 UTC 2019 - Johannes Segitz @@ -153,6 +184,12 @@ Wed Nov 13 08:03:39 UTC 2019 - Johannes Segitz Python's distutils instead of building and installing python bindings manually +------------------------------------------------------------------- +Wed Oct 30 17:21:00 CET 2019 - Matej Cepl + +- Add python3.8-compat.patch which makes build possible even with + Python 3.8, which doesn’t automatically adds -lpython + ------------------------------------------------------------------- Mon Jun 3 09:34:17 UTC 2019 - @@ -160,6 +197,10 @@ Mon Jun 3 09:34:17 UTC 2019 - * Removed check for selinux-policy package as we don't ship one (bsc#1136845) * Add check that restorecond is installed and enabled +------------------------------------------------------------------- +Tue May 28 08:28:03 UTC 2019 - Martin Liška + +- Disable LTO (boo#1133244). ------------------------------------------------------------------- Fri May 24 11:22:19 UTC 2019 - @@ -211,6 +252,12 @@ Mon May 14 22:45:54 UTC 2018 - mcepl@cepl.eu 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 + +- Updated spec file to use python3. Added python3.patch to fix + build + ------------------------------------------------------------------- Fri Nov 24 09:09:02 UTC 2017 - jsegitz@suse.com @@ -340,6 +387,12 @@ Thu Jul 30 12:00:27 UTC 2015 - jsegitz@novell.com - fixed selinux-ready to work with initrd files created by dracut (bsc#940006) +------------------------------------------------------------------- +Wed May 27 11:53:54 UTC 2015 - dimstar@opensuse.org + +- Update libselinux-2.2-ruby.patch: use RbConfig instead of + deprecated Config. + ------------------------------------------------------------------- Mon Sep 8 08:25:11 UTC 2014 - jsegitz@suse.com @@ -447,6 +500,7 @@ Fri Mar 29 15:12:50 UTC 2013 - vcizek@suse.com Wed Jan 30 11:44:45 UTC 2013 - vcizek@suse.com - update to 2.1.12 +- added BuildRequires: pcre-devel - added the recent libselinux-rhat.patch * Add support for lxc_contexts_path * utils: add service to getdefaultcon @@ -541,6 +595,7 @@ Fri Jun 1 18:34:04 CEST 2012 - mls@suse.de * selinux_status interfaces * simple interface for access checks * multiple bug fixes +- fix build for ruby-1.9 ------------------------------------------------------------------- Wed Oct 5 15:09:25 UTC 2011 - uli@suse.com diff --git a/libselinux.spec b/libselinux.spec index c3eca4d..f76a133 100644 --- a/libselinux.spec +++ b/libselinux.spec @@ -16,6 +16,8 @@ # +%{?sle15_python_module_pythons} +%define python_subpackage_only 1 %define libsepol_ver 3.5 Name: libselinux Version: 3.5 @@ -32,10 +34,23 @@ Source4: baselibs.conf # PATCH-FIX-UPSTREAM Include for readv prototype Patch4: readv-proto.patch Patch5: skip_cycles.patch +# PATCH-FIX-UPSTREAM python3.8-compat.patch mcepl@suse.com +# Make linking working even when default pkg-config doesn’t provide -lpython +Patch6: python3.8-compat.patch +Patch7: swig4_moduleimport.patch +BuildRequires: %{python_module devel} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} BuildRequires: fdupes BuildRequires: libsepol-devel >= %{libsepol_ver} +BuildRequires: libsepol-devel-static >= %{libsepol_ver} BuildRequires: pkgconfig +BuildRequires: python-rpm-macros +BuildRequires: ruby-devel +BuildRequires: swig BuildRequires: pkgconfig(libpcre2-8) +%python_subpackages %description libselinux provides an interface to get and set process and file @@ -57,8 +72,8 @@ Security.) %package -n selinux-tools Summary: SELinux command-line utilities Group: System/Base -Provides: libselinux-utils = %{version}-%{release} Requires: libselinux1 = %{version} +Provides: libselinux-utils = %{version}-%{release} %description -n selinux-tools Security-enhanced Linux is a feature of the kernel and some @@ -97,20 +112,63 @@ security contexts and to obtain security policy decisions. This package contains the static development files, which are necessary to develop your own software using libselinux. +%package -n python-%{name} +%define oldpython python +Summary: Python bindings for the SELinux runtime library +Group: Development/Libraries/Python +# Requires: %%{python_base_requirement} +Requires: libselinux1 = %{version} +Obsoletes: python-selinux < %{version} +Provides: python-selinux = %{version} +%ifpython2 +Obsoletes: %{oldpython}-selinux < %{version} +Provides: %{oldpython}-selinux = %{version} +%endif + +%description -n python-%{name} +libselinux provides an interface to get and set process and file +security contexts and to obtain security policy decisions. + +This subpackage contains Python extensions to use SELinux from that +language. + +%package -n ruby-selinux +Summary: Ruby bindings for the SELinux runtime library +Group: Development/Languages/Ruby +Requires: libselinux1 = %{version} +Requires: ruby + +%description -n ruby-selinux +libselinux provides an interface to get and set process and file +security contexts and to obtain security policy decisions. + +This subpackage contains Ruby extensions to use SELinux from that +language. + %prep -%setup -q -n libselinux-%{version} -%patch4 -p1 -%patch5 -p1 +%autosetup -p1 -n libselinux-%{version} %build -make %{?_smp_mflags} LIBDIR="%{_libdir}" CC="gcc" CFLAGS="%{optflags} -fno-semantic-interposition -ffat-lto-objects" USE_PCRE2=y +%{python_expand : +%make_build LIBDIR="%{_libdir}" CC="gcc" CFLAGS="%{optflags} -fno-semantic-interposition -ffat-lto-objects" USE_PCRE2=y PYTHON=$python +%make_build LIBDIR="%{_libdir}" CFLAGS="%{optflags} -fno-semantic-interposition" swigify USE_PCRE2=y PYTHON=$python +%make_build LIBDIR="%{_libdir}" CFLAGS="%{optflags} -fno-semantic-interposition" pywrap USE_PCRE2=y PYTHON=$python +%make_build LIBDIR="%{_libdir}" CFLAGS="%{optflags} -fno-semantic-interposition" rubywrap USE_PCRE2=y PYTHON=$python +} %install mkdir -p %{buildroot}/%{_lib} mkdir -p %{buildroot}%{_libdir} mkdir -p %{buildroot}%{_includedir} mkdir -p %{buildroot}%{_sbindir} -make DESTDIR=%{buildroot} LIBDIR="%{_libdir}" SHLIBDIR="%{_libdir}" BINDIR="%{_sbindir}" install +%{python_expand : +make DESTDIR=%{buildroot} LIBDIR="%{_libdir}" SHLIBDIR="%{_libdir}" PYTHON=$python BINDIR="%{_sbindir}" install +make DESTDIR=%{buildroot} LIBDIR="%{_libdir}" SHLIBDIR="/%{_lib}" PYTHON=$python LIBSEPOLA=%{_libdir}/libsepol.a install-pywrap V=1 +make DESTDIR=%{buildroot} LIBDIR="%{_libdir}" SHLIBDIR="/%{_lib}" PYTHON=$python LIBSEPOLA=%{_libdir}/libsepol.a install-rubywrap V=1 +# Remove unnecessary copy of the Python C extension +rm -v %{buildroot}%{$python_sitearch}/_selinux.*.so +} + mv %{buildroot}%{_sbindir}/getdefaultcon %{buildroot}%{_sbindir}/selinuxdefcon mv %{buildroot}%{_sbindir}/getconlist %{buildroot}%{_sbindir}/selinuxconlist install -m 0755 %{SOURCE3} %{buildroot}%{_sbindir}/selinux-ready @@ -165,4 +223,11 @@ install -m 0755 %{SOURCE3} %{buildroot}%{_sbindir}/selinux-ready %files devel-static %{_libdir}/libselinux.a +%files %{python_files %{name}} +%{python_sitearch}/selinux +%{python_sitearch}/selinux-%{version}*-info + +%files -n ruby-selinux +%{_libdir}/ruby/vendor_ruby/%{rb_ver}/%{rb_arch}/selinux.so + %changelog