|
1 | 1 | import os, sys
|
2 | 2 | from setuptools import setup, Extension
|
3 | 3 |
|
4 |
| -VERSION = "0.9.0" # Remember to change CHANGES.txt and netfilterqueue.pyx when version changes. |
| 4 | +exec(open("netfilterqueue/_version.py", encoding="utf-8").read()) |
5 | 5 |
|
6 | 6 | setup_requires = []
|
7 | 7 | try:
|
|
10 | 10 |
|
11 | 11 | ext_modules = cythonize(
|
12 | 12 | Extension(
|
13 |
| - "netfilterqueue", ["netfilterqueue.pyx"], libraries=["netfilter_queue"] |
| 13 | + "netfilterqueue.__init__", |
| 14 | + ["netfilterqueue/__init__.pyx"], |
| 15 | + libraries=["netfilter_queue"], |
14 | 16 | ),
|
15 | 17 | compiler_directives={"language_level": "3str"},
|
16 | 18 | )
|
|
21 | 23 | # setup_requires below.
|
22 | 24 | setup_requires = ["cython"]
|
23 | 25 | elif not os.path.exists(
|
24 |
| - os.path.join(os.path.dirname(__file__), "netfilterqueue.c") |
| 26 | + os.path.join(os.path.dirname(__file__), "netfilterqueue/__init__.c") |
25 | 27 | ):
|
26 | 28 | sys.stderr.write(
|
27 | 29 | "You must have Cython installed (`pip install cython`) to build this "
|
|
31 | 33 | )
|
32 | 34 | sys.exit(1)
|
33 | 35 | ext_modules = [
|
34 |
| - Extension("netfilterqueue", ["netfilterqueue.c"], libraries=["netfilter_queue"]) |
| 36 | + Extension( |
| 37 | + "netfilterqueue.__init__", |
| 38 | + ["netfilterqueue/__init__.c"], |
| 39 | + libraries=["netfilter_queue"], |
| 40 | + ) |
35 | 41 | ]
|
36 | 42 |
|
37 | 43 | setup(
|
38 |
| - ext_modules=ext_modules, |
39 |
| - setup_requires=setup_requires, |
40 |
| - python_requires=">=3.6", |
41 | 44 | name="NetfilterQueue",
|
42 |
| - version=VERSION, |
| 45 | + version=__version__, |
43 | 46 | license="MIT",
|
44 | 47 | author="Matthew Fox",
|
45 | 48 | author_email="matt@tansen.ca",
|
46 | 49 | url="https://github.com/oremanj/python-netfilterqueue",
|
47 | 50 | description="Python bindings for libnetfilter_queue",
|
48 |
| - long_description=open("README.rst").read(), |
| 51 | + long_description=open("README.rst", encoding="utf-8").read(), |
| 52 | + packages=["netfilterqueue"], |
| 53 | + ext_modules=ext_modules, |
| 54 | + include_package_data=True, |
| 55 | + setup_requires=setup_requires, |
| 56 | + python_requires=">=3.6", |
49 | 57 | classifiers=[
|
50 | 58 | "Development Status :: 5 - Production/Stable",
|
51 | 59 | "License :: OSI Approved :: MIT License",
|
|
0 commit comments