You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
1.0 KiB
48 lines
1.0 KiB
#!/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 distutils.core import setup, Extension |
|
import os |
|
import re |
|
import sys |
|
|
|
|
|
VERSION_PATTERN = '^#define DTC_VERSION "DTC ([^"]*)"$' |
|
|
|
|
|
def get_version(): |
|
version_file = "../version_gen.h" |
|
f = open(version_file, 'rt') |
|
m = re.match(VERSION_PATTERN, f.readline()) |
|
return m.group(1) |
|
|
|
|
|
setupdir = os.path.dirname(os.path.abspath(sys.argv[0])) |
|
os.chdir(setupdir) |
|
|
|
libfdt_module = Extension( |
|
'_libfdt', |
|
sources=['libfdt.i'], |
|
include_dirs=['../libfdt'], |
|
libraries=['fdt'], |
|
library_dirs=['../libfdt'], |
|
swig_opts=['-I../libfdt'], |
|
) |
|
|
|
setup( |
|
name='libfdt', |
|
version=get_version(), |
|
author='Simon Glass <sjg@chromium.org>', |
|
description='Python binding for libfdt', |
|
ext_modules=[libfdt_module], |
|
py_modules=['libfdt'], |
|
)
|
|
|