[ovs-dev] [PATCH] Add setuptools for Python lib for PyPI
Terry Wilson
twilson at redhat.com
Sun Mar 29 03:55:06 UTC 2015
This adds very basic support for setuptools so that the OVS Python
lib can be added to PyPI.
This currently uses the Open vSwitch version number and the
generated dirs.py, though there is no real reason to tie the
Python libraries releases or version numbers to the main project's.
---
python/.gitignore | 2 ++
python/README.rst | 1 +
python/automake.mk | 6 ++++++
python/setup.py | 34 ++++++++++++++++++++++++++++++++++
4 files changed, 43 insertions(+)
create mode 100644 python/.gitignore
create mode 100644 python/README.rst
create mode 100644 python/setup.py
diff --git a/python/.gitignore b/python/.gitignore
new file mode 100644
index 0000000..60ace6f
--- /dev/null
+++ b/python/.gitignore
@@ -0,0 +1,2 @@
+dist/
+*.egg-info
diff --git a/python/README.rst b/python/README.rst
new file mode 100644
index 0000000..4f4742c
--- /dev/null
+++ b/python/README.rst
@@ -0,0 +1 @@
+Python library for working with Open vSwitch
diff --git a/python/automake.mk b/python/automake.mk
index f6ab606..7053eff 100644
--- a/python/automake.mk
+++ b/python/automake.mk
@@ -62,6 +62,12 @@ ovs-install-data-local:
$(MKDIR_P) $(DESTDIR)$(pkgdatadir)/python/ovs
$(INSTALL_DATA) python/ovs/dirs.py.tmp $(DESTDIR)$(pkgdatadir)/python/ovs/dirs.py
rm python/ovs/dirs.py.tmp
+
+python-sdist: $(srcdir)/python/ovs/version.py $(ovs_pyfiles) python/ovs/dirs.py
+ (cd python/ && $(PYTHON) setup.py sdist)
+
+pypi-upload: $(srcdir)/python/ovs/version.py $(ovs_pyfiles) python/ovs/dirs.py
+ (cd python/ && $(PYTHON) setup.py sdist upload)
else
ovs-install-data-local:
@:
diff --git a/python/setup.py b/python/setup.py
new file mode 100644
index 0000000..3e543b1
--- /dev/null
+++ b/python/setup.py
@@ -0,0 +1,34 @@
+from __future__ import print_function
+import sys
+
+import setuptools
+
+VERSION = "unknown"
+
+try:
+ # Try to set the version from the generated ovs/version.py
+ execfile("ovs/version.py")
+except IOError:
+ print("Ensure version.py is created by running make python/ovs/version.py",
+ file=sys.stderr)
+ sys.exit(-1)
+
+
+setuptools.setup(
+ name='ovs',
+ description='Open vSwitch library',
+ version=VERSION,
+ url='http://www.openvswitch.org/',
+ author='Open vSwitch',
+ author_email='dev at openvswitch.org',
+ packages=['ovs', 'ovs.db', 'ovs.unixctl'],
+ keywords=['openvswitch', 'ovs', 'OVSDB'],
+ license='Apache 2.0',
+ classifiers=[
+ 'Development Status :: 5 - Production/Stable',
+ 'Topic :: Database :: Front-Ends',
+ 'Topic :: Software Development :: Libraries :: Python Modules',
+ 'Topic :: System :: Networking',
+ 'License :: OSI Approved :: Apache Software License'
+ ]
+)
--
1.9.3
More information about the dev
mailing list