setools.spec files cleanup

- drop %{with python3}
- build python3 sources in setools-x.y.z and python2 in
setools-x.y.z-python2
- clean %{buildroot}%{_bindir} before installing python3 sources
This commit is contained in:
Petr Lautrbach 2017-02-23 10:51:31 +01:00
parent 689c214584
commit 12efca860a

View File

@ -3,12 +3,6 @@
%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} %{!?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))")} %{!?python2_sitearch: %global python2_sitearch %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
%if 0%{?fedora}
%bcond_without python3
%else
%bcond_with python3
%endif
# % global setools_pre_ver beta.1.8e09d95 # % global setools_pre_ver beta.1.8e09d95
# % global gitver f1e5b20 # % global gitver f1e5b20
@ -36,12 +30,8 @@ BuildRequires: python-devel
# BuildArch: # BuildArch:
BuildRequires: python-devel BuildRequires: python-devel
%if %{with python3}
Requires: %{name}-python3 = %{version}-%{release} Requires: %{name}-python3 = %{version}-%{release}
BuildRequires: python3-devel BuildRequires: python3-devel
%else
Requires: %{name}-python = %{version}-%{release}
%endif # with python3
%description %description
SETools is a collection of graphical tools, command-line tools, and SETools is a collection of graphical tools, command-line tools, and
@ -75,7 +65,6 @@ Requires: python-networkx
SETools is a collection of graphical tools, command-line tools, and SETools is a collection of graphical tools, command-line tools, and
Python 2 modules designed to facilitate SELinux policy analysis. Python 2 modules designed to facilitate SELinux policy analysis.
%if %{with python3}
%package python3 %package python3
Summary: Policy analysis tools for SELinux Summary: Policy analysis tools for SELinux
Obsoletes: setools-libs < 4.0.0, setools-libs-tcl Obsoletes: setools-libs < 4.0.0, setools-libs-tcl
@ -85,7 +74,6 @@ Requires: python3-networkx
SETools is a collection of graphical tools, command-line tools, and SETools is a collection of graphical tools, command-line tools, and
Python 3 modules designed to facilitate SELinux policy analysis. Python 3 modules designed to facilitate SELinux policy analysis.
%endif # with python3
%package gui %package gui
Summary: Policy analysis graphical tools for SELinux Summary: Policy analysis graphical tools for SELinux
@ -100,57 +88,36 @@ Python modules designed to facilitate SELinux policy analysis.
%setup %setup
sed -i "s%'-Werror', '-Wextra'%'-Wextra'%" setup.py sed -i "s%'-Werror', '-Wextra'%'-Wextra'%" setup.py
# mv setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}} python2 cp -a ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}} ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}-python2
%if %{with python3}
cp -a ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}} ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}-python3
%endif # with python4
%build %build
# pushd setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}
# Remove CFLAGS=... for noarch packages (unneeded)
CFLAGS="%{optflags}" %{__python2} setup.py build
# popd
%if %{with python3}
pushd ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}-python3
# Remove CFLAGS=... for noarch packages (unneeded) # Remove CFLAGS=... for noarch packages (unneeded)
CFLAGS="%{optflags}" %{__python3} setup.py build 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 popd
%endif # with python3
%install %install
rm -rf %{buildroot} rm -rf %{buildroot}
# REMOVEME this comment pushd ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}-python2
# Must do the python3 install first because the scripts in /usr/bin are
# overwritten with every setup.py install (and we want the python2 version
# to be the default for now).
# pushd setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}
%{__python2} setup.py install --root %{buildroot} %{__python2} setup.py install --root %{buildroot}
# popd
%if %{with python3}
pushd ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}-python3
%{__python3} setup.py install --root %{buildroot}
popd popd
%endif # with python3
rm -rf %{buildroot}%{_bindir}
%{__python3} setup.py install --root %{buildroot}
%check %check
%if %{?_with_check:1}%{!?_with_check:0} %if %{?_with_check:1}%{!?_with_check:0}
# pushd setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}} %{__python3} setup.py test
%{__python2} setup.py test
# popd
%if %{with python3} pushd ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}-python2
pushd ../setools-%{version}%{?setools_pre_ver:-%{setools_pre_ver}}-python3
%{__python2} setup.py test %{__python2} setup.py test
popd popd
%endif %endif
%endif
%files %files
@ -172,7 +139,6 @@ popd
# For arch-specific packages: sitearch # For arch-specific packages: sitearch
%{python2_sitearch}/* %{python2_sitearch}/*
%if %{with python3}
%files python3 %files python3
%license COPYING COPYING.GPL COPYING.LGPL %license COPYING COPYING.GPL COPYING.LGPL
# %doc AUTHORS ChangeLog KNOWN-BUGS NEWS README # %doc AUTHORS ChangeLog KNOWN-BUGS NEWS README
@ -180,7 +146,6 @@ popd
# %{python3_sitelib}/* # %{python3_sitelib}/*
# For arch-specific packages: sitearch # For arch-specific packages: sitearch
%{python3_sitearch}/* %{python3_sitearch}/*
%endif # with python3
%files gui %files gui
%{_bindir}/apol %{_bindir}/apol