18c38b5f6e
- Remove separate libselinux-bindings SPEC file (bsc#1212618). - Add explicit BuildRequires for python3-pip and python3-wheel on 15.5, currently the macros don't do the right thing - allow building this with different python versions, to make this usable for the new sle15 macro (using python3.11) - Add python-wheel build dependency to build correctly with latest python-pip version. - Add _multibuild to define additional spec files as additional flavors. Eliminates the need for source package links in OBS. - Add -ffat-lto-objects to CFLAGS to prevent rpmlint errors because of LTO - Enable LTO as it works fine now. - 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) - Fixed initrd check in selinux-ready (bnc#1186127) - Added restorecon_pin_file.patch. Fixes issus when running fixfiles/restorecon - 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 - Add Requires for exact libselinux1 version for selinux-tools - Simplyfied check for correct boot paramaters in selinux-ready (bsc#1195361) - Update to version 3.3: * Lots of smaller issues fixed found by fuzzing - Add missing libselinux-utils Provides to selinux-tools so that %selinux_requires works - Remove Recommends for selinux-autorelabel. It's better to have this in the policy package itself (bsc#1181837) - Switch to pcre2: + Replace pcre-devel BuildRequires with pkgconfig(libpcre2-8) + Pass USE_PCRE2=y to make. + Replace pkgconfig(libpcre) Requires in -devel static with pkgconfig(libpcre2-8). - 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. - Add Recommends: selinux-autorelabel, which is very important for healthy use of the SELinux on the system (/.autorelabel mechanism) (bsc#1181837). - install to /usr (boo#1029961) - 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 - Added skip_cycles.patch to skip directory cycles and not error out - 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" Dropped Use-Python-distutils-to-install-SELinux.patch, included upstream - Added swig4_moduleimport.patch to prevent import errors due to SWIG 4 - Added Use-Python-distutils-to-install-SELinux.patch to use Python's distutils instead of building and installing python bindings manually - Add python3.8-compat.patch which makes build possible even with Python 3.8, which doesn’t automatically adds -lpython<ver> - In selinux-ready * Removed check for selinux-policy package as we don't ship one (bsc#1136845) * Add check that restorecond is installed and enabled - Disable LTO (boo#1133244). - Set License: to correct value (bsc#1135710) - Disable LTO (boo#1133244). - 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 - Remove unneeded build requires for python3 (bsc#1120255) - 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 - 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 - Updated spec file to use python3. Added python3.patch to fix build - 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 - readv-proto.patch: include <sys/uio.h> for readv prototype - -devel static subpackage requires libpcre-devel and libsepol-devel - Avoid mounting /proc outside of selinux_init_load_policy(). (Stephen Smalley) reverts upstream 5a8d8c4, 9df4988, fixes among other things systemd seccomp sandboxing otherwise all filters must allow mount(2) (libselinux-proc-mount-only-if-needed.patch) - Update RPM groups, trim description and combine filelist entries. - Adjusted source link - 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 - fixed selinux-ready to work with initrd files created by dracut (bsc#940006) - Update libselinux-2.2-ruby.patch: use RbConfig instead of deprecated Config. - updated selinux-ready script to handle initrd files compressed with xz - 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. - 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 - change the source url to the official 2.1.13 release tarball - Reuse implicit dependencies injected by pkgconfig - fixed source url in libselinux-bindings.spec - removed old tarball - fix source url - document changes in libselinux-rhat.patch from previous submission: (most code of the removed code was integrated upstream) * Add matchpathcon -P /etc/selinux/mls support by allowing users to set alternate root * Add new constant SETRANS_DIR which points to the directory where mstransd can find the socket and libvirt can write its translations files -update to 2.1.13 * audit2why: make sure path is nul terminated * utils: new file context regex compiler * label_file: use precompiled filecontext when possible * do not leak mmapfd * sefcontontext_compile: Add error handling to help debug problems in libsemanage. * man: make selinux.8 mention service man pages * audit2why: Fix segfault if finish() called twice * audit2why: do not leak on multiple init() calls * mode_to_security_class: interface to translate a mode_t in to a security class * audit2why: Cleanup audit2why analysys function * man: Fix program synopsis and function prototypes in man pages * man: Fix man pages formatting * man: Fix typo in man page * man: Add references and man page links to _raw function variants * Use ENOTSUP instead of EOPNOTSUPP for getfilecon functions * man: context_new(3): fix the return value description * selinux_status_open: handle error from sysconf * selinux_status_open: do not leak statusfd on exec * Fix errors found by coverity * Change boooleans.subs to booleans.subs_dist. * optimize set*con functions * pkg-config do not specifc ruby version * unmap file contexts on selabel_close() * do not leak file contexts with mmap'd backend * sefcontext_compile: do not leak fd on error * matchmediacon: do not leak fd * src/label_android_property: do not leak fd on error - 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 * libsemanage: do not set soname needlessly * libsemanage: remove PYTHONLIBDIR and ruby equivalent * boolean name equivalency * getsebool: support boolean name substitution * Add man page for new selinux_boolean_sub function. * expose selinux_boolean_sub * matchpathcon: add -m option to force file type check * utils: avcstat: clear sa_mask set * seusers: Check for strchr failure * booleans: initialize pointer to silence coveriety * stop messages when SELinux disabled * Ensure that we only close the selinux netlink socket once. * improve the file_contexts.5 manual page * Fortify source now requires all code to be compiled with -O flag * asprintf return code must be checked * avc_netlink_recieve handle EINTR * audit2why: silence -Wmissing-prototypes warning * libsemanage: remove build warning when build swig c files * matchpathcon: bad handling of symlinks in / * seusers: remove unused lineno * seusers: getseuser: gracefully handle NULL service * New Android property labeling backend * label_android_property whitespace cleanups * additional makefile support for rubywrap * Remove jump over variable declaration * Fix old style function definitions * Fix const-correctness * Remove unused flush_class_cache method * Add prototype decl for destructor * Add more printf format annotations * Add printf format attribute annotation to die() method * Fix const-ness of parameters & make usage() methods static * Enable many more gcc warnings for libselinux/src/ builds * utils: Enable many more gcc warnings for libselinux/utils builds * Change annotation on include/selinux/avc.h to avoid upsetting SWIG * Ensure there is a prototype for 'matchpathcon_lib_destructor' * Update Makefiles to handle /usrmove * utils: Stop separating out matchpathcon as something special * pkg-config to figure out where ruby include files are located * build with either ruby 1.9 or ruby 1.8 * assert if avc_init() not called * take security_deny_unknown into account * security_compute_create_name(3) * Do not link against python library, this is considered * bad practice in debian * Hide unnecessarily-exported library destructors - Remove obsolete defines/sections - update selinux-ready script * use -L when stat()ing /etc/selinux/config * make sure that SELINUX isn't disabled in /etc/selinux/config * look for either of /sys/fs/selinux and /selinux directory * use systemctl to check for restorecond * don't look for booleans file (deprecated) - update selinux-ready script - updated to 2.1.9 again (see below) - go back even more - everything else requires the full SELinux stack (too late for 12.2) - revert back to 2.0.98 for 12.2 - 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 - cross-build fix: use %__cc macro - use %_smp_mflags - don't package /var/run/setrans in libselinux1 package - Feature#303793 - the directory will be created in initscript of mcstrans package - buildrequire pkg-config to fix provides - selinux-ready: added function to check for restorecond in runlevel 3/5 - selinux-ready: added functions for checking PAM config and policy boolean init_upstart - selinux-ready: fixed init ramfs checking - added new selinux-ready script - updated to 2.0.91 * changes too numerous to list - add baselibs.conf as a source - updated selinux-ready script - change libsepol-devel to libsepol-devel-static in dependencies of python bindings - put libsepol-devel back to Requires of libselinux-devel - added selinux-ready tool to selinux-tools package - remove static libraries - libselinux-devel does not require libsepol-devel - 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 - fixed memory leak (memleak.patch) - 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 - 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 - fix debug_packages_requires define - require only version, not release [bnc#429053] - 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. - Fix build of debuginfo. - added baselibs.conf file - split bindings into separate subpackage (libselinux-bindings) - split tools into separate subpackage (selinux-tools) - fix requires for debuginfo package - initial version 2.0.67 * based on Fedora package by Dan Walsh <dwalsh@redhat.com> OBS-URL: https://build.opensuse.org/request/show/1095431 OBS-URL: https://build.opensuse.org/package/show/security:SELinux/libselinux?expand=0&rev=159
234 lines
8.1 KiB
RPMSpec
234 lines
8.1 KiB
RPMSpec
#
|
||
# spec file for package libselinux
|
||
#
|
||
# 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}
|
||
%define python_subpackage_only 1
|
||
%define libsepol_ver 3.5
|
||
Name: libselinux
|
||
Version: 3.5
|
||
Release: 0
|
||
Summary: SELinux runtime library and 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}/%{name}-%{version}.tar.gz
|
||
Source1: https://github.com/SELinuxProject/selinux/releases/download/%{version}/%{name}-%{version}.tar.gz.asc
|
||
Source2: libselinux.keyring
|
||
Source3: selinux-ready
|
||
Source4: baselibs.conf
|
||
# PATCH-FIX-UPSTREAM Include <sys/uio.h> 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<ver>
|
||
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
|
||
security contexts and to obtain security policy decisions.
|
||
|
||
%package -n libselinux1
|
||
Summary: SELinux runtime library
|
||
Group: System/Libraries
|
||
|
||
%description -n libselinux1
|
||
libselinux provides an interface to get and set process and file
|
||
security contexts and to obtain security policy decisions.
|
||
|
||
(Security-enhanced Linux is a feature of the kernel and some
|
||
utilities that implement mandatory access control policies, such as
|
||
Type Enforcement, Role-based Access Control and Multi-Level
|
||
Security.)
|
||
|
||
%package -n selinux-tools
|
||
Summary: SELinux command-line utilities
|
||
Group: System/Base
|
||
Requires: libselinux1 = %{version}
|
||
Provides: libselinux-utils = %{version}-%{release}
|
||
|
||
%description -n selinux-tools
|
||
Security-enhanced Linux is a feature of the kernel and some
|
||
utilities that implement mandatory access control policies, such as
|
||
Type Enforcement, Role-based Access Control and Multi-Level
|
||
Security.
|
||
|
||
This subpackage contains utilities to inspect and administer the
|
||
system's SELinux state.
|
||
|
||
%package devel
|
||
Summary: Development files for the SELinux runtime library
|
||
Group: Development/Libraries/C and C++
|
||
Requires: glibc-devel
|
||
Requires: libselinux1 = %{version}
|
||
#Automatic dependency on libsepol-devel via pkgconfig
|
||
|
||
%description devel
|
||
libselinux provides an interface to get and set process and file
|
||
security contexts and to obtain security policy decisions.
|
||
|
||
This package contains the development files, which are
|
||
necessary to develop your own software using libselinux.
|
||
|
||
%package devel-static
|
||
Summary: Static archives for the SELinux runtime
|
||
Group: Development/Libraries/C and C++
|
||
Requires: libselinux-devel = %{version}
|
||
Requires: pkgconfig(libpcre2-8)
|
||
Requires: pkgconfig(libsepol)
|
||
|
||
%description devel-static
|
||
libselinux provides an interface to get and set process and file
|
||
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
|
||
%autosetup -p1 -n libselinux-%{version}
|
||
|
||
%build
|
||
%{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}
|
||
%{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
|
||
# Remove duplicate files
|
||
%fdupes -s %{buildroot}%{_mandir}
|
||
|
||
%post -n libselinux1 -p /sbin/ldconfig
|
||
%postun -n libselinux1 -p /sbin/ldconfig
|
||
|
||
%files -n selinux-tools
|
||
%{_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
|
||
%{_sbindir}/selinuxdefcon
|
||
%{_sbindir}/selinuxenabled
|
||
%{_sbindir}/setenforce
|
||
%{_sbindir}/togglesebool
|
||
%{_sbindir}/selinux-ready
|
||
%{_sbindir}/selinuxexeccon
|
||
%{_sbindir}/sefcontext_compile
|
||
%{_sbindir}/compute_*
|
||
%{_sbindir}/getfilecon
|
||
%{_sbindir}/getpidcon
|
||
%{_sbindir}/policyvers
|
||
%{_sbindir}/setfilecon
|
||
%{_sbindir}/getseuser
|
||
%{_sbindir}/selinux_check_securetty_context
|
||
%{_sbindir}/selabel_get_digests_all_partial_matches
|
||
%{_sbindir}/validatetrans
|
||
%{_sbindir}/getpidprevcon
|
||
%{_mandir}/man5/*
|
||
%{_mandir}/ru/man5/*
|
||
%{_mandir}/man8/*
|
||
%{_mandir}/ru/man8/*
|
||
|
||
%files -n libselinux1
|
||
%{_libdir}/libselinux.so.*
|
||
|
||
%files devel
|
||
%{_libdir}/libselinux.so
|
||
%{_includedir}/selinux/
|
||
%{_mandir}/man3/*
|
||
%{_libdir}/pkgconfig/libselinux.pc
|
||
|
||
%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
|