diff --git a/fence-agents.spec b/fence-agents.spec index 0ca8a94..91c0848 100644 --- a/fence-agents.spec +++ b/fence-agents.spec @@ -96,6 +96,11 @@ BuildRequires: python3-pexpect python3-pycurl python3-requests BuildRequires: python3-suds openwsman-python3 python3-boto3 BuildRequires: python3-google-api-client +# turn off the brp-python-bytecompile script +# (for F28+ or equivalent, the latter is the preferred form) +%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompilespace:.*$!!g') +#undefine __brp_python_bytecompile + %prep %setup -q -n %{name}-%{version} %autopatch -p1 @@ -110,6 +115,9 @@ CFLAGS="$(echo '%{optflags}')" make %{_smp_mflags} %install rm -rf %{buildroot} make install DESTDIR=%{buildroot} +# bytecompile Python source code in a non-standard location +%py_byte_compile %{__python3} %{buildroot}%{_datadir}/fence +# XXX unsure if /usr/sbin/fence_* should be compiled as well ## tree fix up # fix libfence permissions @@ -135,8 +143,10 @@ Red Hat Fence Agents is a collection of scripts and libraries to handle remote p %files common %doc doc/COPYING.* doc/COPYRIGHT doc/README.licence %{_datadir}/fence -%exclude %{_datadir}/fence/azure_fence.py -%exclude %{_datadir}/fence/XenAPI.py +%exclude %{_datadir}/fence/azure_fence.* +%exclude %{_datadir}/fence/__pycache__/azure_fence.* +%exclude %{_datadir}/fence/XenAPI.* +%exclude %{_datadir}/fence/__pycache__/XenAPI.* %{_datadir}/cluster %exclude %{_datadir}/cluster/fence_scsi_check* %exclude %{_sbindir}/* @@ -250,7 +260,8 @@ Obsoletes: fence-agents The fence-agents-azure-arm package contains a fence agent for Azure Resource Manager instances. %files azure-arm %{_sbindir}/fence_azure_arm -%{_datadir}/fence/azure_fence.py +%{_datadir}/fence/azure_fence.py* +%{_datadir}/fence/__pycache__/azure_fence.* %{_mandir}/man8/fence_azure_arm.8* %package bladecenter @@ -920,7 +931,8 @@ BuildArch: noarch The fence-agents-xenapi package contains a fence agent for Citrix XenServer accessed over XenAPI. %files xenapi %{_sbindir}/fence_xenapi -%{_datadir}/fence/XenAPI.py +%{_datadir}/fence/XenAPI.py* +%{_datadir}/fence/__pycache__/XenAPI.* %{_mandir}/man8/fence_xenapi.8* %endif @@ -941,6 +953,7 @@ The fence-agents-zvm package contains a fence agent for IBM z/VM over IP. #- move azure_fence.py and XenAPI.py to respective subpackages from -common #- sanitize allfenceagents internally defined enumeration #- sanitize BuildRequires with respect to packaging guidelines +#- bytecompile native Python modules and ship these bytecodes properly * Fri Jul 13 2018 Fedora Release Engineering - 4.2.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild