From edf46220e76c8e1126d2ec3fa81f5177091be713 Mon Sep 17 00:00:00 2001 From: RunningDroid Date: Sat, 24 Sep 2022 01:50:05 -0400 Subject: [PATCH] python3-jq: update to 1.3.0. replace Arch's patch with FreeBSD's patch --- srcpkgs/python3-jq/patches/jq-py-setup.patch | 143 ------------------- srcpkgs/python3-jq/patches/setup.py.patch | 24 ++++ srcpkgs/python3-jq/template | 8 +- 3 files changed, 28 insertions(+), 147 deletions(-) delete mode 100644 srcpkgs/python3-jq/patches/jq-py-setup.patch create mode 100644 srcpkgs/python3-jq/patches/setup.py.patch diff --git a/srcpkgs/python3-jq/patches/jq-py-setup.patch b/srcpkgs/python3-jq/patches/jq-py-setup.patch deleted file mode 100644 index 1eb4f28e7aa9..000000000000 --- a/srcpkgs/python3-jq/patches/jq-py-setup.patch +++ /dev/null @@ -1,143 +0,0 @@ -From bef841b73ba7c9a79211146798ac888fce9bb55a Mon Sep 17 00:00:00 2001 -From: "Robert T. McGibbon" -Date: Fri, 7 May 2021 19:14:20 -0400 -Subject: [PATCH 1/1] Vastly simplify setup.py for distro compatibility - ---- - setup.py | 98 +------------------------------------------------------- - 1 file changed, 1 insertion(+), 97 deletions(-) - -diff --git a/setup.py b/setup.py -index 663792c..3ebcabe 100644 ---- a/setup.py -+++ b/setup.py -@@ -1,113 +1,19 @@ - #!/usr/bin/env python - - import os --import subprocess --import tarfile --import shutil --import sysconfig - --import requests - from setuptools import setup --from setuptools.command.build_ext import build_ext - from setuptools.extension import Extension - - --def urlretrieve(source_url, destination_path): -- response = requests.get(source_url, stream=True) -- if response.status_code != 200: -- raise Exception("status code was: {}".format(response.status_code)) -- -- with open(destination_path, "wb") as fileobj: -- for chunk in response.iter_content(chunk_size=128): -- fileobj.write(chunk) -- --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 = dependency_path("jq-lib-1.6.tar.gz") --jq_lib_dir = dependency_path("jq-1.6") -- --oniguruma_version = "6.9.4" --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) -- -- def _build_oniguruma(self): -- self._build_lib( -- source_url="https://github.com/kkos/oniguruma/releases/download/v{0}/onig-{0}.tar.gz".format(oniguruma_version), -- tarball_path=oniguruma_lib_tarball_path, -- lib_dir=oniguruma_lib_build_dir, -- commands=[ -- ["./configure", "CFLAGS=-fPIC", "--prefix=" + oniguruma_lib_install_dir], -- ["make"], -- ["make", "install"], -- ]) -- -- -- def _build_libjq(self): -- self._build_lib( -- source_url="https://github.com/stedolan/jq/releases/download/jq-1.6/jq-1.6.tar.gz", -- tarball_path=jq_lib_tarball_path, -- lib_dir=jq_lib_dir, -- commands=[ -- ["./configure", "CFLAGS=-fPIC -pthread", "--disable-maintainer-mode", "--with-oniguruma=" + oniguruma_lib_install_dir], -- ["make"], -- ]) -- -- def _build_lib(self, source_url, tarball_path, lib_dir, commands): -- self._download_tarball( -- source_url=source_url, -- tarball_path=tarball_path, -- lib_dir=lib_dir, -- ) -- -- macosx_deployment_target = sysconfig.get_config_var("MACOSX_DEPLOYMENT_TARGET") -- if macosx_deployment_target: -- os.environ['MACOSX_DEPLOYMENT_TARGET'] = str(macosx_deployment_target) -- -- def run_command(args): -- print("Executing: %s" % ' '.join(args)) -- subprocess.check_call(args, cwd=lib_dir) -- -- for command in commands: -- run_command(command) -- -- def _download_tarball(self, source_url, tarball_path, lib_dir): -- if os.path.exists(tarball_path): -- os.unlink(tarball_path) -- print("Downloading {}".format(source_url)) -- urlretrieve(source_url, tarball_path) -- print("Downloaded {}".format(source_url)) -- -- if os.path.exists(lib_dir): -- shutil.rmtree(lib_dir) -- tarfile.open(tarball_path, "r:gz").extractall(dependency_path(".")) -- -- - jq_extension = Extension( - "jq", - sources=["jq.c"], -- include_dirs=[os.path.join(jq_lib_dir, "src")], -- extra_link_args=["-lm"], -- extra_objects=[ -- os.path.join(jq_lib_dir, ".libs/libjq.a"), -- os.path.join(oniguruma_lib_install_dir, "lib/libonig.a"), -- ], -+ libraries=["jq"] - ) - - setup( -@@ -120,7 +26,6 @@ setup( - python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*', - license='BSD 2-Clause', - ext_modules = [jq_extension], -- cmdclass={"build_ext": jq_build_ext}, - classifiers=[ - 'Development Status :: 5 - Production/Stable', - 'Intended Audience :: Developers', -@@ -137,4 +42,3 @@ setup( - 'Programming Language :: Python :: 3.9', - ], - ) -- --- -2.29.3 diff --git a/srcpkgs/python3-jq/patches/setup.py.patch b/srcpkgs/python3-jq/patches/setup.py.patch new file mode 100644 index 000000000000..9ccffed61039 --- /dev/null +++ b/srcpkgs/python3-jq/patches/setup.py.patch @@ -0,0 +1,24 @@ +--- a/setup.py.orig 2022-09-19 15:51:09 UTC ++++ b/setup.py +@@ -36,8 +36,6 @@ class jq_build_ext(build_ext): + def run(self): + if not os.path.exists(_dep_build_path(".")): + os.makedirs(_dep_build_path(".")) +- self._build_oniguruma() +- self._build_libjq() + build_ext.run(self) + + def _build_oniguruma(self): +@@ -87,11 +85,7 @@ jq_extension = Extension( + "jq", + sources=["jq.c"], + include_dirs=[os.path.join(jq_lib_dir, "src")], +- extra_link_args=["-lm"], +- extra_objects=[ +- os.path.join(jq_lib_dir, ".libs/libjq.a"), +- os.path.join(oniguruma_lib_install_dir, "lib/libonig.a"), +- ], ++ extra_link_args=["-lm", "-ljq", "-lonig"], + ) + + setup( diff --git a/srcpkgs/python3-jq/template b/srcpkgs/python3-jq/template index 443318c6bbd7..1a91caae99cb 100644 --- a/srcpkgs/python3-jq/template +++ b/srcpkgs/python3-jq/template @@ -1,11 +1,11 @@ # Template file for 'python3-jq' pkgname=python3-jq -version=1.2.3 +version=1.3.0 revision=1 wrksrc="${pkgname#*-}.py-${version}" build_style=python3-module hostmakedepends="python3-setuptools python3-Cython" -makedepends="python3-devel jq-devel" +makedepends="python3-devel jq-devel oniguruma-devel" depends="python3" short_desc="Python bindings for jq" maintainer="RunningDroid " @@ -13,10 +13,10 @@ license="BSD-2-Clause" homepage="https://pypi.org/project/jq/" changelog="https://raw.githubusercontent.com/mwilliamson/jq.py/master/CHANGELOG.rst" distfiles="https://github.com/mwilliamson/jq.py/archive/${version}.tar.gz" -checksum=52392e001cd90769d68f4e46821c645e277b9c1db01528a6bbc9d1875b81fcf5 +checksum=736e0d42d719592189cdd9921eab19d5bb4b65a3ce41a8f8f13794153fc5a5b1 pre_build() { - cython jq.pyx + cython -X language_level=3 jq.pyx } post_install() {