%define libsepol_version 3.1-1 %define libselinux_version 3.1-1 Name: libsemanage Version: 3.1 Release: 1 License: LGPLv2+ Summary: SELinux binary policy manipulation library URL: https://github.com/SELinuxProject/selinux/wiki Source0: https://github.com/SELinuxProject/selinux/releases/download/20200710/libsemanage-3.1.tar.gz Source1: semanage.conf BuildRequires: gcc python3-devel python2-devel bison flex bzip2-devel audit-libs-devel BuildRequires: libselinux-devel >= %{libselinux_version} swig ustr-devel libsepol-devel >= %{libsepol_version} BuildRequires: gdb Requires: bzip2-libs audit-libs Requires: libselinux >= %{libselinux_version} %description libsemanage is the policy management library. Using libsepol and libselinux to interact with the SELinux system, it also calls helper programs for loading policy and for checking whether the file_contexts configuration is valid. %package devel Summary: Header files and libraries used to build policy manipulation tools Requires: %{name} = %{version}-%{release} ustr Provides: libsemanage-static = %{version}-%{release} Obsoletes: libsemanage-static < %{version}-%{release} %description devel The libsemanage-devel package contains the libraries and header files needed for developing applications that manipulate SELinux policies. %package -n python3-libsemanage Summary: python3 bindings for libsemanage Requires: %{name} = %{version}-%{release} libselinux-python3 Provides: %{name}-python3 = %{version}-%{release} Obsoletes: %{name}-python3 < %{version}-%{release} %description -n python3-libsemanage The python3-libsemanage package contains the python bindings for developing SELinux management applications. %package_help %prep %autosetup -n libsemanage-%{version} -p1 %build export LDFLAGS="%{?__global_ldflags}" make clean %make_build CFLAGS="%{optflags}" swigify %make_build CFLAGS="%{optflags}" LIBDIR="%{_libdir}" SHLIBDIR="%{_lib}" all %make_build %{__python3} LIBDIR="%{_libdir}" CFLAGS="-g %{optflags}" pywrap %install mkdir -p %{buildroot}%{_libdir} mkdir -p %{buildroot}%{_includedir} mkdir -p %{buildroot}%{_sharedstatedir}/selinux mkdir -p %{buildroot}%{_sharedstatedir}/selinux/tmp make DESTDIR="%{buildroot}" LIBDIR="%{_libdir}" SHLIBDIR="%{_libdir}" install make PYTHON=%{__python3} DESTDIR="%{buildroot}" LIBDIR="%{_libdir}" SHLIBDIR="%{_lib}" install-pywrap cp %{SOURCE1} %{buildroot}/etc/selinux/semanage.conf ln -sf %{_libdir}/libsemanage.so.1 %{buildroot}/%{_libdir}/libsemanage.so %ldconfig_scriptlets %files %license COPYING %dir %{_sysconfdir}/selinux %config(noreplace) %{_sysconfdir}/selinux/semanage.conf %{_libdir}/libsemanage.so.1 %dir %{_libexecdir}/selinux %dir %{_sharedstatedir}/selinux %dir %{_sharedstatedir}/selinux/tmp %files devel %{_libdir}/libsemanage.a %{_libdir}/libsemanage.so %{_libdir}/pkgconfig/libsemanage.pc %dir %{_includedir}/semanage %{_includedir}/semanage/*.h %files -n python3-libsemanage %{python3_sitearch}/*.so %{python3_sitearch}/semanage.py* %{python3_sitearch}/__pycache__/semanage* %{_libexecdir}/selinux/semanage_migrate_store %files help %{_mandir}/man3/* %{_mandir}/man5/* %{_mandir}/ru/man5/* %changelog * Sat Jul 25 2020 openEuler Buildteam - 3.1-1 - update to 3.1 * Thu Mar 19 2020 openEuler Buildteam - 2.9-2 - add BuildRequires: gdb * Thu Sep 5 2019 openEuler Buildteam - 2.9-1 - Package init