Changeset View
Changeset View
Standalone View
Standalone View
head/devel/py-pyjq/files/patch-setup.py
Property | Old Value | New Value |
---|---|---|
fbsd:nokeywords | null | yes \ No newline at end of property |
svn:eol-style | null | native \ No newline at end of property |
svn:mime-type | null | text/plain \ No newline at end of property |
--- setup.py.orig 2019-09-18 06:52:51 UTC | |||||
+++ setup.py | |||||
@@ -12,86 +12,20 @@ from setuptools import setup | |||||
from setuptools.extension import Extension | |||||
from setuptools.command.build_ext import _build_ext | |||||
- | |||||
-dependencies_dir_path = join(abspath(dirname(__file__)), "dependencies") | |||||
- | |||||
-onig_tarball_path = join(dependencies_dir_path, "onig-6.9.0.tar.gz") | |||||
-onig_install_path = join(dependencies_dir_path, "onig_install") | |||||
-onig_source_path = join(dependencies_dir_path, "onig-6.9.0") | |||||
- | |||||
-jq_tarball_path = join(dependencies_dir_path, "jq-1.5.tar.gz") | |||||
-jq_install_path = join(dependencies_dir_path, "jq_install") | |||||
-jq_source_path = join(dependencies_dir_path, "jq-jq-1.5") | |||||
- | |||||
- | |||||
class build_ext(_build_ext): | |||||
def run(self): | |||||
- self._build_oniguruma() | |||||
- self._build_libjq() | |||||
_build_ext.run(self) | |||||
- def _build_oniguruma(self): | |||||
- self._safe_rmtree(onig_install_path) | |||||
- self._safe_rmtree(onig_source_path) | |||||
- | |||||
- self._extract_tarball(onig_tarball_path, dependencies_dir_path) | |||||
- self._build_lib( | |||||
- lib_dir=onig_source_path, | |||||
- commands=[ | |||||
- ["./configure", "CFLAGS=-fPIC", "--disable-shared", "--prefix", onig_install_path], | |||||
- ["make"], | |||||
- ["make", "install"], | |||||
- ] | |||||
- ) | |||||
- | |||||
- def _build_libjq(self): | |||||
- self._safe_rmtree(jq_install_path) | |||||
- self._safe_rmtree(jq_source_path) | |||||
- | |||||
- self._extract_tarball(jq_tarball_path, dependencies_dir_path) | |||||
- self._build_lib( | |||||
- lib_dir=jq_source_path, | |||||
- commands=[ | |||||
- ["autoreconf", "-i"], | |||||
- ["./configure", "CFLAGS=-fPIC", "--disable-maintainer-mode", | |||||
- "--enable-all-static", "--disable-shared", | |||||
- "--with-oniguruma=" + onig_install_path, "--prefix", jq_install_path], | |||||
- ["make", "install-libLTLIBRARIES", "install-includeHEADERS"], | |||||
- ] | |||||
- ) | |||||
- | |||||
- def _build_lib(self, lib_dir, commands): | |||||
- macosx_deployment_target = sysconfig.get_config_var("MACOSX_DEPLOYMENT_TARGET") | |||||
- if macosx_deployment_target: | |||||
- os.environ['MACOSX_DEPLOYMENT_TARGET'] = macosx_deployment_target | |||||
- | |||||
- for command in commands: | |||||
- subprocess.check_call(command, cwd=lib_dir) | |||||
- | |||||
- def _extract_tarball(self, tarball_path, workdir_path): | |||||
- tarfile.open(tarball_path, "r:gz").extractall(workdir_path) | |||||
- | |||||
- def _safe_rmtree(self, d): | |||||
- try: | |||||
- shutil.rmtree(d) | |||||
- except OSError: | |||||
- pass | |||||
- | |||||
libraries = ["jq", "onig"] | |||||
-if platform.architecture()[1] == 'WindowsPE': | |||||
- libraries.append("shlwapi") | |||||
pyjq = Extension( | |||||
"_pyjq", | |||||
sources=["_pyjq.c"], | |||||
- include_dirs=["dependencies/jq_install/include"], | |||||
libraries=libraries, | |||||
- library_dirs=["dependencies/jq_install/lib", "dependencies/onig_install/lib"] | |||||
) | |||||
setup( | |||||
test_suite='test_pyjq', | |||||
ext_modules=[pyjq], | |||||
cmdclass={"build_ext": build_ext}, | |||||
- package_data={'': [onig_tarball_path, jq_tarball_path]}, | |||||
) |