mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
From: Alexander Dahl via ptxdist <ptxdist@pengutronix.de>
To: Alexander Dahl via ptxdist <ptxdist@pengutronix.de>
Cc: Alexander Dahl <ada@thorsis.com>,
	Andreas Helmcke <ahelmcke@ela-soft.com>
Subject: Re: [ptxdist] [PATCH 0/1] jq: license update and version bump
Date: Mon, 2 Jun 2025 13:59:34 +0200	[thread overview]
Message-ID: <20250602-linguist-lurch-0f0a6433d879@thorsis.com> (raw)
In-Reply-To: <20250602103057.299742-1-ada@thorsis.com>

Moin,

Am Mon, Jun 02, 2025 at 12:30:56PM +0200 schrieb Alexander Dahl via ptxdist:
> Hello,
> 
> jq 1.8.0 [1] was announced yesterday and fixes some security issues.
> When trying to upgrade the package I noticed several things:
> 
> 1. when I introduced the jq package back in 2018, ./configure was called
>    with `--without-oniguruma`
> 2. that was silently dropped by Andreas with the version bump to 1.7 two
>    years ago, and from there libonig was installed to the target
> 3. the version bump to 1.7.1 brought back the configure parameter like
>    this: `--with-oniguruma=prefix`
> 
> The attached patch accounts for that extra lib and adds its license.
> 
> Now after upgrading to jq v1.8.0 I get linker errors I don't understand
> (see below), and I have no time to further investigate this.
> (Maybe this is related to my old ptxdist version?  Same failing result
> with 2024.05.0 and 2024.11.0.)
> 
> liboniguruma is an abandoned regex library.  Is it really necessary for
> us?  What extra features does jq provide if compiled with that lib?

Maybe that lib could be put into a separate package like buildroot or
Debian have it?  Might simplify the build and the license issue here.

A

> 
> If it is really necessary, maybe someone else wants to jump in for that
> version bump and fix the linker problems, otherwise we could change back
> to --without-oniguruma ?
> 
> Greets
> Alex
> 
> Output of `ptxdist compile jq` with jq 1.8.0:
> 
>     libtool: link: /usr/bin/grep -E -e "^j[qv]_" ".libs/libjq.exp" > ".libs/libjq.expT"
>     libtool: link: mv -f ".libs/libjq.expT" ".libs/libjq.exp"
>     libtool: link: echo "{ global:" > .libs/libjq.ver
>     libtool: link:  cat .libs/libjq.exp | /usr/local/lib/ptxdist-2024.05.0/bin/sed -e "s/\(.*\)/\1;/" >> .libs/libjq.ver
>     libtool: link:  echo "local: *; };" >> .libs/libjq.ver
>     libtool: link:  arm-v5te-linux-gnueabi-gcc -shared  -fPIC -DPIC  src/.libs/builtin.o src/.libs/bytecode.o src/.libs/compile.o src/.libs/execute.o src/.libs/jq_test.o src/.libs/jv.o src/.libs/jv_alloc.o src/.libs/jv_aux.o src/.libs/jv_dtoa.o src/.libs/jv_file.o src/.libs/jv_parse.o src/.libs/jv_print.o src/.libs/jv_unicode.o src/.libs/linker.o src/.libs/locfile.o src/.libs/util.o src/.libs/jv_dtoa_tsd.o vendor/decNumber/.libs/decContext.o vendor/decNumber/.libs/decNumber.o src/.libs/lexer.o src/.libs/parser.o   -L./vendor/oniguruma/src -lm vendor/oniguruma/src/.libs/libonig.so -lpthread  -g -O2 -Wl,-rpath -Wl,/usr/lib   -pthread -Wl,-soname -Wl,libjq.so.1 -Wl,-version-script -Wl,.libs/libjq.ver -o .libs/libjq.so.1.0.4
>     libtool: link: (cd ".libs" && rm -f "libjq.so.1" && ln -s "libjq.so.1.0.4" "libjq.so.1")
>     libtool: link: (cd ".libs" && rm -f "libjq.so" && ln -s "libjq.so.1.0.4" "libjq.so")
>     libtool: link: ( cd ".libs" && rm -f "libjq.la" && ln -s "../libjq.la" "libjq.la" )
>     /bin/bash ./libtool  --tag=CC   --mode=link arm-v5te-linux-gnueabi-gcc -Wextra -Wall -Wno-unused-parameter -Wno-unused-function -Woverlength-strings -Wstrict-prototypes     -I./vendor/oniguruma/src -g -O2 -pthread   -o jq src/main.o libjq.la -lm -lpthread
>     libtool: link: arm-v5te-linux-gnueabi-gcc -Wextra -Wall -Wno-unused-parameter -Wno-unused-function -Woverlength-strings -Wstrict-prototypes -I./vendor/oniguruma/src -g -O2 -o jq src/main.o  ./.libs/libjq.so -lm -lpthread -pthread
>     /opt/OSELAS.Toolchain-2023.07.1/arm-v5te-linux-gnueabi/gcc-13.2.1-glibc-2.37-binutils-2.40-kernel-6.3.6-sanitized/lib/gcc/arm-v5te-linux-gnueabi/13.2.1/../../../../arm-v5te-linux-gnueabi/bin/ld: warning: libonig.so.5, needed by ./.libs/libjq.so, not found (try using -rpath or -rpath-link)
>     /opt/OSELAS.Toolchain-2023.07.1/arm-v5te-linux-gnueabi/gcc-13.2.1-glibc-2.37-binutils-2.40-kernel-6.3.6-sanitized/lib/gcc/arm-v5te-linux-gnueabi/13.2.1/../../../../arm-v5te-linux-gnueabi/bin/ld: ./.libs/libjq.so: undefined reference to `onig_error_code_to_str'
>     /opt/OSELAS.Toolchain-2023.07.1/arm-v5te-linux-gnueabi/gcc-13.2.1-glibc-2.37-binutils-2.40-kernel-6.3.6-sanitized/lib/gcc/arm-v5te-linux-gnueabi/13.2.1/../../../../arm-v5te-linux-gnueabi/bin/ld: ./.libs/libjq.so: undefined reference to `onig_free'
>     /opt/OSELAS.Toolchain-2023.07.1/arm-v5te-linux-gnueabi/gcc-13.2.1-glibc-2.37-binutils-2.40-kernel-6.3.6-sanitized/lib/gcc/arm-v5te-linux-gnueabi/13.2.1/../../../../arm-v5te-linux-gnueabi/bin/ld: ./.libs/libjq.so: undefined reference to `onig_region_free'
>     /opt/OSELAS.Toolchain-2023.07.1/arm-v5te-linux-gnueabi/gcc-13.2.1-glibc-2.37-binutils-2.40-kernel-6.3.6-sanitized/lib/gcc/arm-v5te-linux-gnueabi/13.2.1/../../../../arm-v5te-linux-gnueabi/bin/ld: ./.libs/libjq.so: undefined reference to `onig_new'
>     /opt/OSELAS.Toolchain-2023.07.1/arm-v5te-linux-gnueabi/gcc-13.2.1-glibc-2.37-binutils-2.40-kernel-6.3.6-sanitized/lib/gcc/arm-v5te-linux-gnueabi/13.2.1/../../../../arm-v5te-linux-gnueabi/bin/ld: ./.libs/libjq.so: undefined reference to `OnigSyntaxPerl_NG'
>     /opt/OSELAS.Toolchain-2023.07.1/arm-v5te-linux-gnueabi/gcc-13.2.1-glibc-2.37-binutils-2.40-kernel-6.3.6-sanitized/lib/gcc/arm-v5te-linux-gnueabi/13.2.1/../../../../arm-v5te-linux-gnueabi/bin/ld: ./.libs/libjq.so: undefined reference to `onig_foreach_name'
>     /opt/OSELAS.Toolchain-2023.07.1/arm-v5te-linux-gnueabi/gcc-13.2.1-glibc-2.37-binutils-2.40-kernel-6.3.6-sanitized/lib/gcc/arm-v5te-linux-gnueabi/13.2.1/../../../../arm-v5te-linux-gnueabi/bin/ld: ./.libs/libjq.so: undefined reference to `onig_search'
>     /opt/OSELAS.Toolchain-2023.07.1/arm-v5te-linux-gnueabi/gcc-13.2.1-glibc-2.37-binutils-2.40-kernel-6.3.6-sanitized/lib/gcc/arm-v5te-linux-gnueabi/13.2.1/../../../../arm-v5te-linux-gnueabi/bin/ld: ./.libs/libjq.so: undefined reference to `OnigEncodingUTF8'
>     /opt/OSELAS.Toolchain-2023.07.1/arm-v5te-linux-gnueabi/gcc-13.2.1-glibc-2.37-binutils-2.40-kernel-6.3.6-sanitized/lib/gcc/arm-v5te-linux-gnueabi/13.2.1/../../../../arm-v5te-linux-gnueabi/bin/ld: ./.libs/libjq.so: undefined reference to `onig_region_new'
>     collect2: error: ld returned 1 exit status
>     make[2]: *** [Makefile:990: jq] Error 1
> 
> [1] https://github.com/jqlang/jq/releases/tag/jq-1.8.0
> 
> Alexander Dahl (1):
>   jq: Add liboniguruma license
> 
>  rules/jq.make | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> 
> base-commit: 31866e0b9c1215fa5e8b4dc8573adc8feb7428aa
> -- 
> 2.39.5
> 
> 



  parent reply	other threads:[~2025-06-02 11:59 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-06-02 10:30 Alexander Dahl via ptxdist
2025-06-02 10:30 ` [ptxdist] [PATCH 1/1] jq: Add liboniguruma license Alexander Dahl via ptxdist
2025-06-02 11:59 ` Alexander Dahl via ptxdist [this message]
2025-06-02 17:13   ` [ptxdist] [PATCH 0/1] jq: license update and version bump Andreas Helmcke

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250602-linguist-lurch-0f0a6433d879@thorsis.com \
    --to=ptxdist@pengutronix.de \
    --cc=ada@thorsis.com \
    --cc=ahelmcke@ela-soft.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox