From 1d73d0a074b121e5537bc9ec267ec7bc07e90082 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 18 Apr 2020 19:10:56 +0100 Subject: Build oniguruma and jq in _deps directory --- .gitignore | 7 +------ setup.py | 17 +++++++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.gitignore b/.gitignore index 62785af..e34e364 100644 --- a/.gitignore +++ b/.gitignore @@ -5,9 +5,4 @@ /jq.so /.tox /*.egg-info -/_jq-lib -/jq-jq-1.5 -/_jq-lib-1.5.tar.gz -/_onig-5.9.6.tar.gz -/onig-5.9.6/ -/onig-install-5.9.6/ +/_deps diff --git a/setup.py b/setup.py index b095fa6..a225565 100644 --- a/setup.py +++ b/setup.py @@ -23,20 +23,25 @@ def urlretrieve(source_url, destination_path): def path_in_dir(relative_path): return os.path.abspath(os.path.join(os.path.dirname(__file__), relative_path)) +def dependency_path(relative_path): + return os.path.join(path_in_dir("_deps"), relative_path) + def read(fname): return open(os.path.join(os.path.dirname(__file__), fname)).read() -jq_lib_tarball_path = path_in_dir("_jq-lib-1.5.tar.gz") -jq_lib_dir = path_in_dir("jq-jq-1.5") +jq_lib_tarball_path = dependency_path("jq-lib-1.5.tar.gz") +jq_lib_dir = dependency_path("jq-jq-1.5") oniguruma_version = "6.9.4" -oniguruma_lib_tarball_path = path_in_dir("_onig-{}.tar.gz".format(oniguruma_version)) -oniguruma_lib_build_dir = path_in_dir("onig-{}".format(oniguruma_version)) -oniguruma_lib_install_dir = path_in_dir("onig-install-{}".format(oniguruma_version)) +oniguruma_lib_tarball_path = dependency_path("onig-{}.tar.gz".format(oniguruma_version)) +oniguruma_lib_build_dir = dependency_path("onig-{}".format(oniguruma_version)) +oniguruma_lib_install_dir = dependency_path("onig-install-{}".format(oniguruma_version)) class jq_build_ext(build_ext): def run(self): + if not os.path.exists(dependency_path(".")): + os.makedirs(dependency_path(".")) self._build_oniguruma() self._build_libjq() build_ext.run(self) @@ -87,7 +92,7 @@ class jq_build_ext(build_ext): if os.path.exists(jq_lib_dir): shutil.rmtree(jq_lib_dir) - tarfile.open(tarball_path, "r:gz").extractall(path_in_dir(".")) + tarfile.open(tarball_path, "r:gz").extractall(dependency_path(".")) jq_extension = Extension( -- cgit v1.2.3