d570700ddd
dta and infoflow modules require networkx which brings lot of dependencies. These dependencies are not necessary for setools module itself as it's used in policycoreutils. Therefore it's better to use setools.infoflow.InfoFlowAnalysis and setools.dta.DomainTransitionAnalysis and let the package containing sedta and seinfoflow to require python3-networkx Added new subpackage setools-console-analyses
179 lines
5.2 KiB
RPMSpec
179 lines
5.2 KiB
RPMSpec
# sitelib for noarch packages, sitearch for others (remove the unneeded one)
|
|
%{!?__python2: %global __python2 %__python}
|
|
%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
|
|
%{!?python2_sitearch: %global python2_sitearch %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
|
|
|
|
# % global setools_pre_ver beta.1.8e09d95
|
|
# % global gitver f1e5b20
|
|
|
|
%global sepol_ver 2.6-0
|
|
%global selinux_ver 2.6-0
|
|
|
|
Name: setools
|
|
Version: 4.1.0
|
|
Release: 1%{?setools_pre_ver:.%{setools_pre_ver}}%{?dist}
|
|
Summary: Policy analysis tools for SELinux
|
|
|
|
License: GPLv2
|
|
URL: https://github.com/TresysTechnology/setools/wiki
|
|
Source0: https://github.com/TresysTechnology/setools/archive/%{version}%{?setools_pre_ver:-%{setools_pre_ver}}.tar.gz
|
|
Source1: setools.pam
|
|
Source2: apol.desktop
|
|
Patch1: 0001-Do-not-use-Werror-during-build.patch
|
|
Patch2: 0002-Do-not-export-use-setools.InfoFlowAnalysis-and-setoo.patch
|
|
|
|
Obsoletes: setools < 4.0.0, setools-devel < 4.0.0
|
|
BuildRequires: flex, bison
|
|
BuildRequires: glibc-devel, gcc, git
|
|
BuildRequires: libsepol-devel, libsepol-static
|
|
BuildRequires: qt5-qtbase-devel
|
|
BuildRequires: swig
|
|
BuildRequires: python-devel
|
|
|
|
# BuildArch:
|
|
BuildRequires: python-devel
|
|
Requires: %{name}-python3 = %{version}-%{release}
|
|
BuildRequires: python3-devel
|
|
|
|
%description
|
|
SETools is a collection of graphical tools, command-line tools, and
|
|
Python modules designed to facilitate SELinux policy analysis.
|
|
|
|
%package console
|
|
Summary: Policy analysis command-line tools for SELinux
|
|
Group: System Environment/Base
|
|
License: GPLv2
|
|
Requires: setools-python3 = %{version}-%{release}
|
|
Requires: libselinux >= %{selinux_ver}
|
|
|
|
%description console
|
|
SETools is a collection of graphical tools, command-line tools, and
|
|
libraries designed to facilitate SELinux policy analysis.
|
|
|
|
This package includes the following console tools:
|
|
|
|
sediff Compare two policies to find differences.
|
|
seinfo List policy components.
|
|
sesearch Search rules (allow, type_transition, etc.)
|
|
|
|
|
|
%package console-analyses
|
|
Summary: Policy analysis command-line tools for SELinux
|
|
Group: System Environment/Base
|
|
License: GPLv2
|
|
Requires: setools-python3 = %{version}-%{release}
|
|
Requires: libselinux >= %{selinux_ver}
|
|
Requires: python3-networkx
|
|
|
|
%description console-analyses
|
|
SETools is a collection of graphical tools, command-line tools, and
|
|
libraries designed to facilitate SELinux policy analysis.
|
|
|
|
This package includes the following console tools:
|
|
|
|
sedta Perform domain transition analyses.
|
|
seinfoflow Perform information flow analyses.
|
|
|
|
|
|
%package python
|
|
Summary: Policy analysis tools for SELinux
|
|
|
|
%description python
|
|
SETools is a collection of graphical tools, command-line tools, and
|
|
Python 2 modules designed to facilitate SELinux policy analysis.
|
|
|
|
%package python3
|
|
Summary: Policy analysis tools for SELinux
|
|
Obsoletes: setools-libs < 4.0.0, setools-libs-tcl
|
|
|
|
%description python3
|
|
SETools is a collection of graphical tools, command-line tools, and
|
|
Python 3 modules designed to facilitate SELinux policy analysis.
|
|
|
|
|
|
%package gui
|
|
Summary: Policy analysis graphical tools for SELinux
|
|
Requires: python3-qt5
|
|
Requires: python3-networkx
|
|
|
|
%description gui
|
|
SETools is a collection of graphical tools, command-line tools, and
|
|
Python modules designed to facilitate SELinux policy analysis.
|
|
|
|
|
|
%prep
|
|
%autosetup -p 1 -S git
|
|
|
|
cp -a ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}} ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}-python2
|
|
|
|
|
|
%build
|
|
# Remove CFLAGS=... for noarch packages (unneeded)
|
|
CFLAGS="%{optflags}" %{__python3} setup.py build
|
|
|
|
pushd ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}-python2
|
|
# Remove CFLAGS=... for noarch packages (unneeded)
|
|
CFLAGS="%{optflags}" %{__python2} setup.py build
|
|
popd
|
|
|
|
|
|
%install
|
|
rm -rf %{buildroot}
|
|
pushd ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}-python2
|
|
%{__python2} setup.py install --root %{buildroot}
|
|
popd
|
|
|
|
rm -rf %{buildroot}%{_bindir}
|
|
%{__python3} setup.py install --root %{buildroot}
|
|
|
|
%check
|
|
%if %{?_with_check:1}%{!?_with_check:0}
|
|
%{__python3} setup.py test
|
|
|
|
pushd ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}-python2
|
|
%{__python2} setup.py test
|
|
popd
|
|
%endif
|
|
|
|
|
|
%files
|
|
%defattr(-,root,root,-)
|
|
|
|
%files console
|
|
%{_bindir}/sediff
|
|
%{_bindir}/seinfo
|
|
%{_bindir}/sesearch
|
|
%{_mandir}/man1/sediff*
|
|
%{_mandir}/man1/seinfo*
|
|
%{_mandir}/man1/sesearch*
|
|
|
|
%files console-analyses
|
|
%{_bindir}/sedta
|
|
%{_bindir}/seinfoflow
|
|
%{_mandir}/man1/sedta*
|
|
%{_mandir}/man1/seinfoflow*
|
|
|
|
%files python
|
|
# %doc AUTHORS ChangeLog KNOWN-BUGS NEWS README
|
|
%license COPYING COPYING.GPL COPYING.LGPL
|
|
# For noarch packages: sitelib
|
|
# %{python2_sitelib}/*
|
|
# For arch-specific packages: sitearch
|
|
%{python2_sitearch}/*
|
|
|
|
%files python3
|
|
%license COPYING COPYING.GPL COPYING.LGPL
|
|
# %doc AUTHORS ChangeLog KNOWN-BUGS NEWS README
|
|
# For noarch packages: sitelib
|
|
# %{python3_sitelib}/*
|
|
# For arch-specific packages: sitearch
|
|
%{python3_sitearch}/*
|
|
|
|
%files gui
|
|
%{_bindir}/apol
|
|
%{_mandir}/man1/apol*
|
|
|
|
%changelog
|
|
* Wed Feb 15 2017 Petr Lautrbach <plautrba@redhat.com> - 4.1.0-1
|
|
- New upstream release.
|