From 01a95ecbbff1448e62219ba865dc771a0a19e3e2 Mon Sep 17 00:00:00 2001 From: Breadway Date: Sat, 13 Jun 2026 16:52:54 +0800 Subject: [PATCH] Disable LTO in PKGBUILD to fix vendored Lua static link makepkg's default -flto=auto made mlua's vendored liblua5.4.a contain GCC LTO bitcode that the Rust (lld) link couldn't read, leaving all lua_* symbols undefined. options=(!lto) produces a clean static link. Verified building in a clean archlinux container. Co-Authored-By: Claude Opus 4.8 --- packaging/arch/PKGBUILD | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packaging/arch/PKGBUILD b/packaging/arch/PKGBUILD index d2bb31e..55649a7 100644 --- a/packaging/arch/PKGBUILD +++ b/packaging/arch/PKGBUILD @@ -7,6 +7,10 @@ pkgdesc="A reactive automation fabric for Linux desktops" arch=('x86_64') url="https://github.com/Breadway/bread" license=('MIT') +# mlua builds Lua from vendored C source. makepkg's default -flto=auto would +# emit GCC LTO bitcode into liblua5.4.a, which the Rust (lld) link can't read, +# leaving all lua_* symbols undefined. Disable LTO for a clean static link. +options=(!lto) depends=('glibc' 'libgit2') optdepends=( 'libnotify: desktop notifications via bread.notify()'