From nobody Mon Jul 22 10:23:46 2024 X-Original-To: freebsd-ports@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WSGbx4d8Xz5QNXW for ; Mon, 22 Jul 2024 10:24:29 +0000 (UTC) (envelope-from junho.choi@gmail.com) Received: from mail-lf1-x12c.google.com (mail-lf1-x12c.google.com [IPv6:2a00:1450:4864:20::12c]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WSGbw68jSz4h7Q for ; Mon, 22 Jul 2024 10:24:28 +0000 (UTC) (envelope-from junho.choi@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=XNN13wNR; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of junho.choi@gmail.com designates 2a00:1450:4864:20::12c as permitted sender) smtp.mailfrom=junho.choi@gmail.com Received: by mail-lf1-x12c.google.com with SMTP id 2adb3069b0e04-52efa16aad9so2367209e87.0 for ; Mon, 22 Jul 2024 03:24:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1721643865; x=1722248665; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Cnrwu/qSIKOYFtUvo8kea/FnXMkEuPDgAYMHNxiyjyg=; b=XNN13wNR5t7qGjn8lG730JGU62FVICD2kxVAms8eFU3ndjZDbqgdh7A4sWtzEESK/M yQWjV6/r4MJb7bna2m5frKjmAC/ylwM9vrOc3wy486FeY3kSHOsuocTjjXOdmgqhPVMI 2B6V/+4spfXrQOJTAhpszEqN6e6cF5BpXt1vylDH+hDhN7+0nGcUWU1I5x3JRmQ8ecVS 0FX+N8xiL3ajC9WDAQz9gQ/VQJdaRR+03DW1hIeCvtkbciov/exeGzAEKybg3MTdbMSV iLIST658nB2RkI5Zd3WfR+nG5jdW343gWG+jXUq9fa669QVQ1B0XRHiNCILmwPSfE93O zTRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1721643865; x=1722248665; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Cnrwu/qSIKOYFtUvo8kea/FnXMkEuPDgAYMHNxiyjyg=; b=JDCv0YvCAPju8AtYBNZAkdPkhSoKgPc6kESZvR7To9ON5Qwago4ow9m+Y3JjsT7VwQ Yz6zTPhC1QvGnBvGBpPHqHu6ooQeUIxhFM9ijn552oahMTCcbEkUaN3lh56BBhZwPJBj /UgbCJ93YXs4j3FQ88VplRhq/QR9IaJBHkMJdfh7d/0qecuD3mv/GeTQ0sERtRLtjTJx f4uiXBjTk8XF5+Un75dMQgogxkt5aOS39GNyQlSzOktRqBsA1sE9n/YsU6Elw5TxVeql zrXJWeFDb4kv5nkQQ+ar24usCchQc2toFX3+4DSnLLfv766O5QV690FfB57ATefjFLwL wR/g== X-Gm-Message-State: AOJu0Yy03KrnEHdkHs+k/eGI/LLhpbLA37UBHsey6PSK2RVg9+CZyyL+ uzsBPh5uGMJ3xnmn2HAxsKTu9aVoOvDRtOEblJlTdmCt0Gu7ZR7L6hUa72mN3+d3dFVN3iM8MAe 2Z3oZayWgTUS6ebcYUxJdwctagYg= X-Google-Smtp-Source: AGHT+IGkN1MHSRuOz+UxTnI7tQO+kImbOQQrQUd92cwKVYOeQuId1pnAD2Vpp0s90sqYC3ysJcwDE4G8atnXorQV47M= X-Received: by 2002:a05:6512:696:b0:52c:da09:ae65 with SMTP id 2adb3069b0e04-52efb524012mr3807113e87.9.1721643864529; Mon, 22 Jul 2024 03:24:24 -0700 (PDT) List-Id: Porting software to FreeBSD List-Archive: https://lists.freebsd.org/archives/freebsd-ports List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-ports@freebsd.org Sender: owner-freebsd-ports@FreeBSD.org MIME-Version: 1.0 References: In-Reply-To: From: Junho Choi Date: Mon, 22 Jul 2024 19:23:46 +0900 Message-ID: Subject: Re: quiche dependency issue in FreeBSD To: =?UTF-8?Q?Yann_Kerherv=C3=A9?= Cc: freebsd-ports@freebsd.org Content-Type: multipart/alternative; boundary="000000000000f9a771061dd372ae" X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.70 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-0.999]; NEURAL_HAM_SHORT(-0.70)[-0.701]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36:c]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; RCPT_COUNT_TWO(0.00)[2]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; RCVD_TLS_LAST(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; TO_DN_SOME(0.00)[]; TAGGED_FROM(0.00)[]; FREEMAIL_TO(0.00)[gmail.com]; MIME_TRACE(0.00)[0:+,1:+,2:~]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; MISSING_XM_UA(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; PREVIOUSLY_DELIVERED(0.00)[freebsd-ports@freebsd.org]; TO_MATCH_ENVRCPT_SOME(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; DKIM_TRACE(0.00)[gmail.com:+]; MID_RHS_MATCH_FROMTLD(0.00)[]; TAGGED_RCPT(0.00)[]; MLMMJ_DEST(0.00)[freebsd-ports@freebsd.org]; RCVD_COUNT_ONE(0.00)[1]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US]; RCVD_IN_DNSWL_NONE(0.00)[2a00:1450:4864:20::12c:from] X-Rspamd-Queue-Id: 4WSGbw68jSz4h7Q --000000000000f9a771061dd372ae Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable This is solved by updating quiche and dnsdist to handle the .so version properly. Best, On Sun, Jul 14, 2024 at 9:49=E2=80=AFPM Junho Choi w= rote: > Yann, > > I filed a patch to update quiche to 0.22.0, with a correct .so > installation. > > With this port, I don't get "dnsdist is missing a required shared > library: libquiche.so" any more. > > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D280274 > > It'd be great if any committer will pick it up! > > Best, > > > On Thu, Jun 27, 2024 at 11:29=E2=80=AFAM Junho Choi wrote: > >> quiche 0.22.0 with the soname fix released: >> https://github.com/cloudflare/quiche/releases/tag/0.22.0 >> >> On Tue, Apr 30, 2024 at 9:23=E2=80=AFPM Junho Choi wrote: >> >>> I was looking into pkg source and found a relevant line: >>> >>> >>> https://github.com/freebsd/pkg/blob/b0a68a933f42aec97c8f37543bcac41149c= 28e2e/libpkg/pkg_elf.c#L402-L410 >>> >>> It seems to look for soname in the shared libs to be added to "shlibs >>> provided" section, but currently >>> quiche has no soname in the .so file: >>> https://github.com/cloudflare/quiche/issues/598 >>> >>> I made a PR to fix this: >>> https://github.com/cloudflare/quiche/pull/1769 >>> >>> After that, I made a fix on the port and now it looks ok: >>> >>> Shared Libs provided: >>> libquiche.so.0 >>> >>> Let's see how it is merged. I'll update the quiche port when it's ready= . >>> >>> On Tue, Apr 30, 2024 at 12:17=E2=80=AFPM Junho Choi >>> wrote: >>> > >>> > (Cross posting to ports@) >>> > >>> > Yann - yes I can reproduce it but have no idea why. >>> > >>> > It seems quiche doesn't have a "Shared Lib provided" section like >>> > other libs. (see below) >>> > >>> > Other than USE_LDCONFIG, what affects it? Any advice from committers? >>> > >>> > % pkg info quiche >>> > quiche-0.20.1 >>> > Name : quiche >>> > Version : 0.20.1 >>> > Installed on : Tue Apr 30 03:14:32 2024 UTC >>> > Origin : net/quiche >>> > Architecture : FreeBSD:14:amd64 >>> > Prefix : /usr/local >>> > Categories : net >>> > Licenses : BSD2CLAUSE >>> > Maintainer : junho.choi@gmail.com >>> > WWW : https://crates.io/crates/quiche >>> > Comment : Savoury implementation of the QUIC transport protoco= l >>> > and HTTP/3 >>> > Options : >>> > DOCS : on >>> > QLOG : on >>> > Annotations : >>> > FreeBSD_version: 1400097 >>> > build_timestamp: 2024-04-04T20:02:03+0000 >>> > built_by : poudriere-git-3.4.1-1-g1e9f97d6 >>> > port_checkout_unclean: no >>> > port_git_hash : 0e1153d3a5 >>> > ports_top_checkout_unclean: no >>> > ports_top_git_hash: f5d16d08a6 >>> > repo_type : binary >>> > repository : FreeBSD >>> > Flat size : 48.2MiB >>> > >>> > >>> > Other example (libnghttp2 has "Shared Lib Provided" section) >>> > >>> > % pkg info libnghttp2 >>> > libnghttp2-1.61.0 >>> > Name : libnghttp2 >>> > Version : 1.61.0 >>> > Installed on : Sun Apr 21 12:06:36 2024 UTC >>> > Origin : www/libnghttp2 >>> > Architecture : FreeBSD:14:amd64 >>> > Prefix : /usr/local >>> > Categories : www net >>> > Licenses : MIT >>> > Maintainer : sunpoet@FreeBSD.org >>> > WWW : https://nghttp2.org/ >>> > Comment : HTTP/2.0 C Library >>> > Shared Libs provided: >>> > libnghttp2.so.14 >>> > Annotations : >>> > FreeBSD_version: 1400097 >>> > build_timestamp: 2024-04-11T01:12:38+0000 >>> > built_by : poudriere-git-3.4.1-1-g1e9f97d6 >>> > cpe : cpe:2.3:a:nghttp2:nghttp2:1.61.0:::::freebsd14:x= 64 >>> > port_checkout_unclean: no >>> > port_git_hash : 2b3fb39407 >>> > ports_top_checkout_unclean: no >>> > ports_top_git_hash: 2910ff97e7 >>> > repo_type : binary >>> > repository : FreeBSD >>> > Flat size : 801KiB >>> > >>> > On Fri, Apr 26, 2024 at 11:32=E2=80=AFAM Yann Kerherv=C3=A9 < >>> yann.kerherve@gmail.com> wrote: >>> > > >>> > > Hello, >>> > > >>> > > I have an issue with `pkg check` reporting a dependency missing: >>> > > >>> > > root@dev:~ # pkg check -d -a >>> > > Checking all packages: 100% >>> > > dnsdist is missing a required shared library: libquiche.so >>> > > >>> > > (in FreeBSD 13.3 and 14.0) >>> > > >>> > > This is bogus: >>> > > root@dev:~ # ldd /usr/local/sbin/dnsdist | grep quiche >>> > > libquiche.so =3D> /usr/local/lib/libquiche.so (0x3af8e91e0000) >>> > > >>> > > It seems like the package build missed that dependency and doesn't >>> report as a shared lib provided by quiche? >>> > > >>> > > # pkg info -b quiche >>> > > quiche-0.20.1: >>> > > >>> > > Should there be a shared lib provided there: >>> > > >>> > > quiche-0.20.1: >>> > > libquiche.so >>> > > >>> > > I thought that the USE_LDCONFIG=3D yes in the Makefile was taking c= are >>> of that automatically. And this is correctly set in the Makefile... >>> > > >>> > > Thanks! >>> > > >>> > > Yann >>> > > >>> > > >>> > > >>> > >>> > >>> > -- >>> > Junho Choi | https://saturnsoft.net >>> >>> >>> >>> -- >>> Junho Choi | https://saturnsoft.net >>> >> >> >> -- >> Junho Choi | https://saturnsoft.net >> > > > -- > Junho Choi | https://saturnsoft.net > --=20 Junho Choi | https://saturnsoft.net --000000000000f9a771061dd372ae Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
This is solved by updating quiche and dnsdist to hand= le the .so version properly.

Best,
=
On Sun= , Jul 14, 2024 at 9:49=E2=80=AFPM Junho Choi <junho.choi@gmail.com> wrote:
Yann,

I filed a patch to update quiche to 0.22.0, with a correct = .so installation.

With this port, I don't get = "dnsdist is missing a required shared library= : libquiche.so" any more.


It= 'd be great if any committer will pick it up!

= Best,


On Thu, Jun 27, 2024 at 11:29=E2=80=AFAM Junh= o Choi <junho.= choi@gmail.com> wrote:
quiche 0.22.0 with the soname fix released: = https://github.com/cloudflare/quiche/releases/tag/0.22.0
On = Tue, Apr 30, 2024 at 9:23=E2=80=AFPM Junho Choi <junho.choi@gmail.com> wrote:
<= /div>
I was looking into p= kg source and found a relevant line:

https://github.com/freebsd/pkg/blob/b0a68a933f42aec97c8f37543bcac41149c2= 8e2e/libpkg/pkg_elf.c#L402-L410

It seems to look for soname in the shared libs to be added to "shlibs<= br> provided" section, but currently
quiche has no soname in the .so file:
https://github.com/cloudflare/quiche/issues/598
I made a PR to fix this:
https://github.com/cloudflare/quiche/pull/1769

After that, I made a fix on the port and now it looks ok:

Shared Libs provided:
=C2=A0 =C2=A0 libquiche.so.0

Let's see how it is merged. I'll update the quiche port when it'= ;s ready.

On Tue, Apr 30, 2024 at 12:17=E2=80=AFPM Junho Choi <junho.choi@gmail.com> wrote:<= br> >
> (Cross posting to ports@)
>
> Yann - yes I can reproduce it but have no idea why.
>
> It seems quiche doesn't have a "Shared Lib provided" sec= tion like
> other libs. (see below)
>
> Other than USE_LDCONFIG, what affects it? Any advice from committers?<= br> >
> % pkg info quiche
> quiche-0.20.1
> Name=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0: quiche
> Version=C2=A0 =C2=A0 =C2=A0 =C2=A0 : 0.20.1
> Installed on=C2=A0 =C2=A0: Tue Apr 30 03:14:32 2024 UTC
> Origin=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0: net/quiche
> Architecture=C2=A0 =C2=A0: FreeBSD:14:amd64
> Prefix=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0: /usr/local
> Categories=C2=A0 =C2=A0 =C2=A0: net
> Licenses=C2=A0 =C2=A0 =C2=A0 =C2=A0: BSD2CLAUSE
> Maintainer=C2=A0 =C2=A0 =C2=A0: junho.choi@gmail.com
> WWW=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 : https://crates.io= /crates/quiche
> Comment=C2=A0 =C2=A0 =C2=A0 =C2=A0 : Savoury implementation of the QUI= C transport protocol
> and HTTP/3
> Options=C2=A0 =C2=A0 =C2=A0 =C2=A0 :
>=C2=A0 =C2=A0 =C2=A0DOCS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0: on >=C2=A0 =C2=A0 =C2=A0QLOG=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0: on > Annotations=C2=A0 =C2=A0 :
>=C2=A0 =C2=A0 =C2=A0FreeBSD_version: 1400097
>=C2=A0 =C2=A0 =C2=A0build_timestamp: 2024-04-04T20:02:03+0000
>=C2=A0 =C2=A0 =C2=A0built_by=C2=A0 =C2=A0 =C2=A0 =C2=A0: poudriere-git-= 3.4.1-1-g1e9f97d6
>=C2=A0 =C2=A0 =C2=A0port_checkout_unclean: no
>=C2=A0 =C2=A0 =C2=A0port_git_hash=C2=A0 : 0e1153d3a5
>=C2=A0 =C2=A0 =C2=A0ports_top_checkout_unclean: no
>=C2=A0 =C2=A0 =C2=A0ports_top_git_hash: f5d16d08a6
>=C2=A0 =C2=A0 =C2=A0repo_type=C2=A0 =C2=A0 =C2=A0 : binary
>=C2=A0 =C2=A0 =C2=A0repository=C2=A0 =C2=A0 =C2=A0: FreeBSD
> Flat size=C2=A0 =C2=A0 =C2=A0 : 48.2MiB
>
>
> Other example (libnghttp2 has "Shared Lib Provided" section)=
>
> % pkg info libnghttp2
> libnghttp2-1.61.0
> Name=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0: libnghttp2
> Version=C2=A0 =C2=A0 =C2=A0 =C2=A0 : 1.61.0
> Installed on=C2=A0 =C2=A0: Sun Apr 21 12:06:36 2024 UTC
> Origin=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0: www/libnghttp2
> Architecture=C2=A0 =C2=A0: FreeBSD:14:amd64
> Prefix=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0: /usr/local
> Categories=C2=A0 =C2=A0 =C2=A0: www net
> Licenses=C2=A0 =C2=A0 =C2=A0 =C2=A0: MIT
> Maintainer=C2=A0 =C2=A0 =C2=A0: sunpoet@FreeBSD.org
> WWW=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 : https://nghttp2.org/
> Comment=C2=A0 =C2=A0 =C2=A0 =C2=A0 : HTTP/2.0 C Library
> Shared Libs provided:
>=C2=A0 =C2=A0 =C2=A0libnghttp2.so.14
> Annotations=C2=A0 =C2=A0 :
>=C2=A0 =C2=A0 =C2=A0FreeBSD_version: 1400097
>=C2=A0 =C2=A0 =C2=A0build_timestamp: 2024-04-11T01:12:38+0000
>=C2=A0 =C2=A0 =C2=A0built_by=C2=A0 =C2=A0 =C2=A0 =C2=A0: poudriere-git-= 3.4.1-1-g1e9f97d6
>=C2=A0 =C2=A0 =C2=A0cpe=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 : cpe:= 2.3:a:nghttp2:nghttp2:1.61.0:::::freebsd14:x64
>=C2=A0 =C2=A0 =C2=A0port_checkout_unclean: no
>=C2=A0 =C2=A0 =C2=A0port_git_hash=C2=A0 : 2b3fb39407
>=C2=A0 =C2=A0 =C2=A0ports_top_checkout_unclean: no
>=C2=A0 =C2=A0 =C2=A0ports_top_git_hash: 2910ff97e7
>=C2=A0 =C2=A0 =C2=A0repo_type=C2=A0 =C2=A0 =C2=A0 : binary
>=C2=A0 =C2=A0 =C2=A0repository=C2=A0 =C2=A0 =C2=A0: FreeBSD
> Flat size=C2=A0 =C2=A0 =C2=A0 : 801KiB
>
> On Fri, Apr 26, 2024 at 11:32=E2=80=AFAM Yann Kerherv=C3=A9 <yann.kerherve@gmail.= com> wrote:
> >
> > Hello,
> >
> > I have an issue with `pkg check` reporting a dependency missing:<= br> > >
> > root@dev:~ # pkg check -d -a
> > Checking all packages: 100%
> > dnsdist is missing a required shared library: libquiche.so
> >
> > (in FreeBSD 13.3 and 14.0)
> >
> > This is bogus:
> > root@dev:~ # ldd /usr/local/sbin/dnsdist | grep quiche
> > libquiche.so =3D> /usr/local/lib/libquiche.so (0x3af8e91e0000)=
> >
> > It seems like the package build missed that dependency and doesn&= #39;t report as a shared lib provided by quiche?
> >
> > # pkg info -b quiche
> > quiche-0.20.1:
> >
> > Should there be a shared lib provided there:
> >
> > quiche-0.20.1:
> >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0libquiche.so
> >
> > I thought that the USE_LDCONFIG=3D yes in the Makefile was taking= care of that automatically. And this is correctly set in the Makefile... > >
> > Thanks!
> >
> > Yann
> >
> >
> >
>
>
> --
> Junho Choi <junho dot choi at gmail.com> | https://saturnsoft.net


--
Junho Choi <junho dot choi at gmail.com> | https://saturnsoft.net


--
Junho Choi <junho dot choi at gmail.com> | https://saturnsoft.net


--
Junho Choi <junho dot choi at gmail.com> | https://saturnsoft.net


--
Junho Choi <junho dot choi at gmail.com> | https://saturnsoft.net
--000000000000f9a771061dd372ae--