1#!/usr/bin/env python2 2# SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause) 3 4""" 5setup.py file for SWIG libfdt 6Copyright (C) 2017 Google, Inc. 7Written by Simon Glass <sjg@chromium.org> 8""" 9 10from distutils.core import setup, Extension 11import os 12import re 13import sys 14 15 16VERSION_PATTERN = '^#define DTC_VERSION "DTC ([^"]*)"$' 17 18 19def get_version(): 20 version_file = "../version_gen.h" 21 f = open(version_file, 'rt') 22 m = re.match(VERSION_PATTERN, f.readline()) 23 return m.group(1) 24 25 26setupdir = os.path.dirname(os.path.abspath(sys.argv[0])) 27os.chdir(setupdir) 28 29libfdt_module = Extension( 30 '_libfdt', 31 sources=['libfdt.i'], 32 include_dirs=['../libfdt'], 33 libraries=['fdt'], 34 library_dirs=['../libfdt'], 35 swig_opts=['-I../libfdt'], 36) 37 38setup( 39 name='libfdt', 40 version=get_version(), 41 author='Simon Glass <sjg@chromium.org>', 42 description='Python binding for libfdt', 43 ext_modules=[libfdt_module], 44 py_modules=['libfdt'], 45) 46