Re: pkgbase breakage in main due to libucl upgrade

Adrian Chadd <[email protected]>
Newsgroups gmane.os.freebsd.current
Message-ID <CAJ-Vmo=o9hWNfRi7sfMJ37q5RiOjsX2C+8ygbayfE=D6+g9Cow__31358.318943397$1775525541$gmane$org@mail.gmail.com>
hi!

On Mon, 6 Apr 2026 at 07:11, Lexi Winter <[email protected]> wrote:
>
> hello,
>
> as a couple of people already reported[0][1] the pkgbase build is
> currently broken in main.  this affects building packages for any
> version of FreeBSD when the build host is main abda442d92fd[2] or
> later.
>
> this is not trivial to fix.  the issue is that libucl changed the
> lua bindings in an incompatible way, specifically to disable use
> of macros (which includes ".include") by default[3].  that breaks
> the API that the pkgbase build scripts rely on, and those scripts
> use the host flua.
>
> as an immediate fix, i have three diffs for review:
>
> - "packages: Fix build with libucl 0.9.3"
>   https://reviews.freebsd.org/D56266
>
>   this change, which is backward-compatible with previous versions
>   of lua libucl, fixes the ABI breakage.
>
> - "flua: Always build as a bootstrap tool"
>   https://reviews.freebsd.org/D56270
>   "packages: Always use the bootstrap flua"
>   https://reviews.freebsd.org/D56271
>
>   these changes mean we'll use the version of flua and libucl from
>   the source tree to build packages, instead of the host versions,
>   which protects us from future API breaks.
>
> if you're running into this issue right now, you can apply the patch
> from D56266 to fix your build, and optionally the other two diffs if
> you like (but they aren't required).  this has to be done on the src
> tree being built, *not* the build system.
>
> unfortunately, none of these changes fix the general problem which is
> that we can't build FreeBSD 15.0 on FreeBSD 16-CURRENT.  i'm open to
> other suggestsions here, but i think the best approach is to revert the
> libucl commit that changed the ABI; while this is a security fix, the
> only things using flua are in the base system, and none of them should
> be affected by the issue being fixed.
>
> any thoughts?
>
> [0] https://lists.freebsd.org/archives/freebsd-current/2026-April/010080.html
> [1] https://lists.freebsd.org/archives/freebsd-pkgbase/2026-April/001284.html
> [2] https://cgit.freebsd.org/src/commit/?id=abda442d92fdbadcf81c79bc9ddba001d133c429
> [3] https://github.com/vstakhov/libucl/commit/8a0294f9eaa4e70342e562cb92792bbe3df90e70

*reads*

* I think your diffs / approach is good;
* I honestly don't think we should revert the libucl change; it'll
just end up making future work less fun as other random flua/libucl
shenanigans happen;
* I think we should document in the 15.0 errata that building 15.0 on
16.0 after date X is a known broken thing, and to either build on 15.x
or apply a workaround (eg a patch to disable the check, explaining
what it does and the security risk)
* and I think we should figure out what to backport to stable/15 to
unbreak things.



-adrian
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.