summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacek Konieczny2015-05-13 12:06:38 (GMT)
committerJacek Konieczny2015-05-13 12:08:10 (GMT)
commit11f148ce03e24ce4a4c0cbf549181e35f01d75ee (patch)
tree68f0f6e16e1f66987f00826efe03fd28caac004a
downloadpython-execnet-11f148ce03e24ce4a4c0cbf549181e35f01d75ee.zip
python-execnet-11f148ce03e24ce4a4c0cbf549181e35f01d75ee.tar.gz
-rw-r--r--python-execnet.spec110
-rw-r--r--setup_deps.patch15
2 files changed, 125 insertions, 0 deletions
diff --git a/python-execnet.spec b/python-execnet.spec
new file mode 100644
index 0000000..332038f
--- /dev/null
+++ b/python-execnet.spec
@@ -0,0 +1,110 @@
+#
+# Conditional build:
+%bcond_without python2 # CPython 2.x module
+%bcond_without python3 # CPython 3.x module
+
+%define module execnet
+Summary: Rapid multi-Python deployment
+Name: python-%{module}
+Version: 1.3.0
+Release: 0.1
+License: MIT
+Group: Libraries/Python
+Source0: https://pypi.python.org/packages/source/e/execnet/%{module}-%{version}.tar.gz
+# Source0-md5: 426c1a963cee5f671a3e8187b983c915
+Patch0: setup_deps.patch
+URL: http://codespeak.net/execnet
+BuildRequires: rpm-pythonprov
+BuildRequires: rpmbuild(macros) >= 1.219
+BuildRequires: sed >= 4.0
+%if %{with python2}
+BuildRequires: python-setuptools >= 7.0
+%endif
+%if %{with python3}
+BuildRequires: python3-modules
+BuildRequires: python3-setuptools >= 7.0
+%endif
+Requires: python-modules
+BuildArch: noarch
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+execnet provides carefully tested means to ad-hoc interact with Python
+interpreters across version, platform and network barriers. It
+provides a minimal and fast API targetting the following uses:
+
+- distribute tasks to local or remote processes
+- write and deploy hybrid multi-process applications
+- write scripts to administer multiple hosts
+
+%package -n python3-%{module}
+Summary: Rapid multi-Python deployment
+Group: Libraries/Python
+Requires: python3-modules
+
+%description -n python3-%{module}
+execnet provides carefully tested means to ad-hoc interact with Python
+interpreters across version, platform and network barriers. It
+provides a minimal and fast API targetting the following uses:
+
+- distribute tasks to local or remote processes
+- write and deploy hybrid multi-process applications
+- write scripts to administer multiple hosts
+
+%prep
+%setup -q -n %{module}-%{version}
+%patch0 -p1
+
+sed -i -e's/get_version_from_scm=True/version="%{version}"/' setup.py
+
+%build
+%if %{with python2}
+%{__python} setup.py build --build-base build-2
+%endif
+
+%if %{with python3}
+%{__python3} setup.py build --build-base build-3
+%endif
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+%if %{with python2}
+%{__python} setup.py \
+ build --build-base build-2 \
+ install --skip-build \
+ --optimize=2 \
+ --root=$RPM_BUILD_ROOT
+
+# no %%py_postclean !
+# the source code might be run on a remote machine
+%endif
+
+%if %{with python3}
+%{__python3} setup.py \
+ build --build-base build-3 \
+ install --skip-build \
+ --optimize=2 \
+ --root=$RPM_BUILD_ROOT
+%endif
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%if %{with python2}
+%files
+%defattr(644,root,root,755)
+%doc README.txt ISSUES.txt CHANGELOG
+%{py_sitescriptdir}/%{module}
+%if "%{py_ver}" > "2.4"
+%{py_sitescriptdir}/%{module}-%{version}-py*.egg-info
+%endif
+%endif
+
+%if %{with python3}
+%files -n python3-%{module}
+%defattr(644,root,root,755)
+%doc README.txt ISSUES.txt CHANGELOG
+%{py3_sitescriptdir}/%{module}
+%{py3_sitescriptdir}/%{module}-%{version}-py*.egg-info
+%endif
diff --git a/setup_deps.patch b/setup_deps.patch
new file mode 100644
index 0000000..0f52c50
--- /dev/null
+++ b/setup_deps.patch
@@ -0,0 +1,15 @@
+diff -dur execnet-1.3.0.orig/setup.py execnet-1.3.0/setup.py
+--- execnet-1.3.0.orig/setup.py 2015-02-13 23:16:29.000000000 +0100
++++ execnet-1.3.0/setup.py 2015-05-13 10:18:58.000000000 +0200
+@@ -60,11 +60,6 @@
+ 'Programming Language :: Python',
+ 'Programming Language :: Python :: 3'],
+ packages=['execnet', 'execnet.script'],
+- setup_requires=[
+- # this is a setup/release time dependency
+- # we are supposed to use wheels
+- 'hgdistver',
+- ]
+ )
+
+ if __name__ == '__main__':