Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

app-misc/jq: update to 1.7.1 #1544

Merged
merged 3 commits into from
Jan 5, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog/updates/2024-01-05-jq-1.7.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
- jq ([1.7.1](https://github.com/jqlang/jq/releases/tag/jq-1.7.1))
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,9 @@
# Keep versions on both arches in sync.
=app-misc/pax-utils-1.3.7 ~amd64

# Needed for addressing CVE-2023-50246, CVE-2023-50268
=app-misc/jq-1.7.1 ~amd64 ~arm64

# Required for addressing CVE-2022-3715.
=app-shells/bash-5.2_p15-r7 ~amd64 ~arm64

Expand Down
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
DIST jq-1.7.1.gh.tar.gz 1323338 BLAKE2B 17e3b68e23f9a7f1aa8749ede6c0b8fe435990899886f0c96da36d130c17d13609ba7f910321316f0c3b35985360f8cb5e6a3b12caea5e9bc7792e128798f137 SHA512 af9c444e5306423182f467a53acdf45bb8aefa058a47f490ce16395f0aebfb7627e3843f65e96f41cd9d4b72b8ad274ab0bdb061abc6990b1158f86d2256d4ec
DIST jq-1.7.gh.tar.gz 1267139 BLAKE2B b6a54f9beaabd7915d7a8f14cda9621573f1796af53fe1645561a7a199787a7e9b2b2df038208f23e63f339dec567851b70696ffb8194986250527333d36d44e SHA512 01676319fe98d5ab1e278430b2c58ec594191cc9485a20312d658c0e199ac7ea5f5e934817ce98da0864ec7e0a018aae9b87525260e8ab6a7bde918db483bd84
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

inherit autotools

MY_PV="${PV/_/}"
MY_P="${PN}-${MY_PV}"
DESCRIPTION="A lightweight and flexible command-line JSON processor"
HOMEPAGE="https://stedolan.github.io/jq/"
SRC_URI="https://github.com/jqlang/jq/archive/refs/tags/${MY_P}.tar.gz -> ${P}.gh.tar.gz"
S="${WORKDIR}/${PN}-${MY_P}"

LICENSE="MIT CC-BY-3.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="+oniguruma static-libs test"

ONIGURUMA_MINPV='>=dev-libs/oniguruma-6.9.3' # Keep this in sync with bundled modules/oniguruma/
DEPEND="
>=sys-devel/bison-3.0
sys-devel/flex
oniguruma? ( ${ONIGURUMA_MINPV}:=[static-libs?] )
"
RDEPEND="
!static-libs? (
oniguruma? ( ${ONIGURUMA_MINPV}[static-libs?] )
)
"
PATCHES=(
"${FILESDIR}"/jq-1.6-r3-never-bundle-oniguruma.patch
"${FILESDIR}"/jq-1.7-runpath.patch
)

RESTRICT="!test? ( test )"
REQUIRED_USE="test? ( oniguruma )"

src_prepare() {
sed -e '/^dist_doc_DATA/d; s:-Wextra ::' -i Makefile.am || die
printf "#!/bin/sh\\nprintf '%s'\\n\n" "${MY_PV}" > scripts/version || die

# jq-1.6-r3-never-bundle-oniguruma makes sure we build with the system oniguruma,
# but the bundled copy of oniguruma still gets eautoreconf'd since it
# exists; save the cycles by nuking it.
sed -e '/modules\/oniguruma/d' -i Makefile.am || die
rm -rf "${S}"/modules/oniguruma || die

default

sed -i "s/\[jq_version\]/[${MY_PV}]/" configure.ac || die

eautoreconf
}

src_configure() {
local econfargs=(
# don't try to rebuild docs
--disable-docs
--disable-valgrind
--disable-maintainer-mode
--enable-rpathhack
$(use_enable static-libs static)
$(use_with oniguruma oniguruma yes)
)
econf "${econfargs[@]}"
}

src_test() {
if ! LD_LIBRARY_PATH="${S}/.libs" nonfatal emake check; then
if [[ -r "${S}/test-suite.log" ]]; then
eerror "Tests failed, outputting testsuite log"
cat "${S}/test-suite.log"
fi
die "Tests failed"
fi
}

src_install() {
local DOCS=( AUTHORS NEWS.md README.md SECURITY.md )
default

use static-libs || { find "${D}" -name '*.la' -delete || die; }
}