mirror of
https://github.com/dgibson/dtc.git
synced 2025-10-13 16:27:39 -04:00
In commit "pylibfdt: Remove some apparently deprecated options from setup.py" the scm version tracking was removed. But it was not replaced with the fixed version. This causes the Python modules to be installed as version '0.0.0'. Signed-off-by: Brandon Maier <brandon.maier@collins.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
76 lines
2.1 KiB
Python
Executable file
76 lines
2.1 KiB
Python
Executable file
#!/usr/bin/env python3
|
|
# SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause)
|
|
|
|
# While Python 3 is the default, it's also possible to invoke
|
|
# this setup.py script with Python 2.
|
|
|
|
"""
|
|
setup.py file for SWIG libfdt
|
|
Copyright (C) 2017 Google, Inc.
|
|
Written by Simon Glass <sjg@chromium.org>
|
|
"""
|
|
|
|
from setuptools import setup, Extension
|
|
from setuptools.command.build_py import build_py as _build_py
|
|
|
|
import os
|
|
import re
|
|
import sys
|
|
|
|
srcdir = os.path.dirname(__file__)
|
|
|
|
with open(os.path.join(srcdir, "README.md"), "r") as fh:
|
|
long_description = fh.read()
|
|
|
|
with open(os.path.join(srcdir, "VERSION.txt"), "r") as fh:
|
|
version = fh.readline().strip()
|
|
|
|
def get_top_builddir():
|
|
if '--top-builddir' in sys.argv:
|
|
index = sys.argv.index('--top-builddir')
|
|
sys.argv.pop(index)
|
|
return sys.argv.pop(index)
|
|
else:
|
|
return srcdir
|
|
|
|
top_builddir = get_top_builddir()
|
|
|
|
libfdt_module = Extension(
|
|
'_libfdt',
|
|
sources=[os.path.join(srcdir, 'pylibfdt/libfdt.i')],
|
|
define_macros=[('PY_SSIZE_T_CLEAN', None)],
|
|
include_dirs=[os.path.join(srcdir, 'libfdt')],
|
|
libraries=['fdt'],
|
|
library_dirs=[os.path.join(top_builddir, 'libfdt')],
|
|
swig_opts=['-I' + os.path.join(srcdir, 'libfdt')],
|
|
)
|
|
|
|
class build_py(_build_py):
|
|
def run(self):
|
|
self.run_command("build_ext")
|
|
return super().run()
|
|
|
|
setup(
|
|
name='libfdt',
|
|
version=version,
|
|
cmdclass = {'build_py' : build_py},
|
|
author='Simon Glass',
|
|
author_email='sjg@chromium.org',
|
|
description='Python binding for libfdt',
|
|
ext_modules=[libfdt_module],
|
|
package_dir={'': os.path.join(srcdir, 'pylibfdt')},
|
|
py_modules=['libfdt'],
|
|
|
|
long_description=long_description,
|
|
long_description_content_type="text/plain",
|
|
url="https://git.kernel.org/pub/scm/utils/dtc/dtc.git",
|
|
license="BSD",
|
|
license_files=["GPL", "BSD-2-Clause"],
|
|
|
|
classifiers=[
|
|
"Programming Language :: Python :: 3",
|
|
"License :: OSI Approved :: BSD License",
|
|
"License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+)",
|
|
"Operating System :: OS Independent",
|
|
],
|
|
)
|