119 lines
3.8 KiB
RPMSpec
119 lines
3.8 KiB
RPMSpec
|
|
%define libsepol_version 2.8-1
|
||
|
|
%define libselinux_version 2.8-1
|
||
|
|
|
||
|
|
Name: libsemanage
|
||
|
|
Version: 2.9
|
||
|
|
Release: 1
|
||
|
|
License: LGPLv2+
|
||
|
|
Summary: SELinux binary policy manipulation library
|
||
|
|
URL: https://github.com/SELinuxProject/selinux/wiki
|
||
|
|
Source0: https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20180524/libsemanage-2.9.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}
|
||
|
|
|
||
|
|
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
|
||
|
|
Obsoletes: libsemanage-static
|
||
|
|
|
||
|
|
%description devel
|
||
|
|
The libsemanage-devel package contains the libraries and header files
|
||
|
|
needed for developing applications that manipulate SELinux policies.
|
||
|
|
|
||
|
|
%package -n python2-libsemanage
|
||
|
|
Summary: python2 bindings for libsemanage
|
||
|
|
Provides: %{name}-python = %{version}-%{release}
|
||
|
|
Obsoletes: %{name}-python < %{version}-%{release}
|
||
|
|
Requires: %{name} = %{version}-%{release}
|
||
|
|
|
||
|
|
%description -n python2-libsemanage
|
||
|
|
The python3-libsemanage package contains the python bindings for developing
|
||
|
|
SELinux management applications.
|
||
|
|
|
||
|
|
%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 %{__python2} LIBDIR="%{_libdir}" CFLAGS="-g %{optflags}" pywrap
|
||
|
|
%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=%{__python2} DESTDIR="%{buildroot}" LIBDIR="%{_libdir}" SHLIBDIR="%{_lib}" install-pywrap
|
||
|
|
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 python2-libsemanage
|
||
|
|
%{python2_sitearch}/_semanage.so
|
||
|
|
%{python2_sitearch}/semanage.py*
|
||
|
|
|
||
|
|
%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
|
||
|
|
* Thu Sep 5 2019 openEuler Buildteam <buildteam@openeuler.org> - 2.9-1
|
||
|
|
- Package init
|