setools/setools.spec

228 lines
7.4 KiB
RPMSpec
Raw Normal View History

2017-02-15 12:54:11 +00:00
# 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
2017-08-07 16:11:14 +00:00
%global sepol_ver 2.7-1
%global selinux_ver 2.7-1
2017-02-15 12:54:11 +00:00
Name: setools
2017-08-07 16:11:14 +00:00
Version: 4.1.1
Release: 6%{?setools_pre_ver:.%{setools_pre_ver}}%{?dist}
2017-02-15 12:54:11 +00:00
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
Patch3: 0003-bswap_-macros-are-defined-in-byteswap.h.patch
2017-02-15 12:54:11 +00:00
Obsoletes: setools < 4.0.0, setools-devel < 4.0.0
BuildRequires: flex, bison
2017-02-23 09:54:52 +00:00
BuildRequires: glibc-devel, gcc, git
BuildRequires: libsepol-devel >= %{sepol_ver}, libsepol-static >= %{sepol_ver}
2017-02-15 12:54:11 +00:00
BuildRequires: qt5-qtbase-devel
BuildRequires: swig
BuildRequires: python2-devel
BuildRequires: python2-setuptools
BuildRequires: python3-devel
BuildRequires: python3-setuptools
2017-02-15 12:54:11 +00:00
# BuildArch:
Requires: python3-%{name} = %{version}-%{release}
2007-07-20 15:16:24 +00:00
%description
SETools is a collection of graphical tools, command-line tools, and
2017-02-15 12:54:11 +00:00
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: python3-setools = %{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:
2017-02-15 12:54:11 +00:00
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: python3-setools = %{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 -n python2-setools
2017-02-15 12:54:11 +00:00
Summary: Policy analysis tools for SELinux
Recommends: libselinux-python
%{?python_provide:%python_provide python2-setools}
# Remove before F30
Provides: %{name}-python = %{version}-%{release}
Provides: %{name}-python%{?_isa} = %{version}-%{release}
Obsoletes: %{name}-python < %{version}-%{release}
Requires: python2-enum34
%description -n python2-setools
2017-02-15 12:54:11 +00:00
SETools is a collection of graphical tools, command-line tools, and
Python 2 modules designed to facilitate SELinux policy analysis.
2011-10-26 20:58:38 +00:00
%package -n python3-setools
2017-02-15 12:54:11 +00:00
Summary: Policy analysis tools for SELinux
Obsoletes: setools-libs < 4.0.0, setools-libs-tcl
Recommends: libselinux-python3
%{?python_provide:%python_provide python2-setools}
# Remove before F30
Provides: %{name}-python3 = %{version}-%{release}
Provides: %{name}-python3%{?_isa} = %{version}-%{release}
Obsoletes: %{name}-python3 < %{version}-%{release}
2011-09-29 13:30:56 +00:00
%description -n python3-setools
2017-02-15 12:54:11 +00:00
SETools is a collection of graphical tools, command-line tools, and
Python 3 modules designed to facilitate SELinux policy analysis.
2011-04-21 16:07:11 +00:00
2017-02-15 12:54:11 +00:00
%package gui
Summary: Policy analysis graphical tools for SELinux
Requires: python3-qt5
Requires: python3-networkx
2011-04-15 18:20:18 +00:00
2017-02-15 12:54:11 +00:00
%description gui
SETools is a collection of graphical tools, command-line tools, and
Python modules designed to facilitate SELinux policy analysis.
2011-03-30 18:41:50 +00:00
2017-02-15 12:54:11 +00:00
%prep
2017-02-23 09:54:52 +00:00
%autosetup -p 1 -S git
cp -a ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}} ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}-python2
2010-11-05 11:30:34 +00:00
2017-02-15 12:54:11 +00:00
%build
# Remove CFLAGS=... for noarch packages (unneeded)
CFLAGS="%{optflags}" %{__python3} setup.py build
pushd ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}-python2
2017-02-15 12:54:11 +00:00
# Remove CFLAGS=... for noarch packages (unneeded)
CFLAGS="%{optflags}" %{__python2} setup.py build
2017-02-15 12:54:11 +00:00
popd
2017-02-15 12:54:11 +00:00
%install
rm -rf %{buildroot}
pushd ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}-python2
2017-02-15 12:54:11 +00:00
%{__python2} setup.py install --root %{buildroot}
popd
rm -rf %{buildroot}%{_bindir}
%{__python3} setup.py install --root %{buildroot}
2017-02-15 12:54:11 +00:00
%check
%if %{?_with_check:1}%{!?_with_check:0}
%{__python3} setup.py test
2017-02-15 12:54:11 +00:00
pushd ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}-python2
2017-02-15 12:54:11 +00:00
%{__python2} setup.py test
popd
%endif
2017-02-15 12:54:11 +00:00
%files
%defattr(-,root,root,-)
2010-05-12 14:48:40 +00:00
2017-02-15 12:54:11 +00:00
%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*
2010-05-12 14:29:18 +00:00
%files -n python2-setools
2017-02-15 12:54:11 +00:00
# %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 -n python3-setools
2017-02-15 12:54:11 +00:00
%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}/*
2009-07-28 13:43:02 +00:00
2017-02-15 12:54:11 +00:00
%files gui
%{_bindir}/apol
%{_mandir}/man1/apol*
2017-02-15 12:54:11 +00:00
%changelog
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Mon Sep 04 2017 Petr Lautrbach <plautrba@redhat.com> - 4.1.1-5
- setools-python2 requires python2-enum34
* Sun Aug 20 2017 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 4.1.1-4
- Add Provides for the old name without %%_isa
* Thu Aug 10 2017 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 4.1.1-3
- Python 2 binary package renamed to python2-setools
See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3
- Python 3 binary package renamed to python3-setools
* Thu Aug 10 2017 Petr Lautrbach <plautrba@redhat.com> - 4.1.1-2
- bswap_* macros are defined in byteswap.h
2017-08-07 16:11:14 +00:00
* Mon Aug 07 2017 Petr Lautrbach <plautrba@redhat.com> - 4.1.1-1
- New upstream release
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
2017-08-07 16:11:14 +00:00
* Mon May 22 2017 Petr Lautrbach <plautrba@redhat.com> - 4.1.0-3
- setools-python{,3} packages should have a weak dependency on libselinux-python{,3}
(#1447747)
* Thu Feb 23 2017 Petr Lautrbach <plautrba@redhat.com> - 4.1.0-2
- Move python networkx dependency to -gui and -console-analyses
- Ship sedta and seinfoflow in setools-console-analyses
2017-02-15 12:54:11 +00:00
* Wed Feb 15 2017 Petr Lautrbach <plautrba@redhat.com> - 4.1.0-1
2009-07-22 18:59:21 +00:00
- New upstream release.