From a2faeb0c9d1fe4bd443867800a995e121658380e Mon Sep 17 00:00:00 2001 From: Danila Fedorin Date: Fri, 5 May 2017 19:58:40 -0700 Subject: [PATCH] Write setup.py to compile liblex and friends. --- setup.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 setup.py diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..3ba0c3c --- /dev/null +++ b/setup.py @@ -0,0 +1,23 @@ +from distutils.core import setup, Extension + +def source_paths(base_path, sources): + return [base_path + s for s in sources] + +liblex_path = 'external/liblex/' +liblex_sources = ['eval.c', 'pairmap.c', 'pattern.c'] +liblex_source_paths = source_paths(liblex_path + 'src/', liblex_sources) + +liblex_libds_path = 'external/libds/' +liblex_libds_sources = ['ht.c', 'libds.c', 'll.c', 'sprs.c', 'vec.c'] +liblex_libds_source_paths = source_paths(liblex_path + liblex_libds_path + 'src/', liblex_libds_sources) + + +liblex_all_source_paths = liblex_libds_source_paths + liblex_source_paths + +pyliblex = Extension('pyliblex', + sources = ['src/pyliblexmodule.c'] + liblex_all_source_paths, + include_dirs = [liblex_path + 'include', liblex_path + liblex_libds_path + 'include', 'include']) + +setup(name='pyliblex', + version='0.0', + ext_modules = [pyliblex])