Use devtools x86_64.conf as /etc/makepkg.conf
Merge request reports
Activity
I've investigated why I filed this patch and it was because the current
options=(!lto)
situation is very confusing. There are many tools directly building on top of makepkg and /etc/makepkg.conf (claiming it's a "clean chroot" Arch Linux build environment). Some AUR users argue PKGBUILD has to containoptions=(!lto)
if it doesn't build with LTO (e.g. because they usepkgctl build
and the build uses both gcc and llvm, which have incompatible LTO formats), yet depending on the build tool you use you won't be able to reproduce the build failure, even with identical PKGBUILDs and a "clean chroot" Arch Linux build environment. There is a related email thread with even experienced Arch users getting tripped up by this (also irl with people who have used Arch for longer than I have), and there was further discussion in #archlinux-packaging irc on 2023-06-15, with people concluding that keeping them in sync might be a good idea.Shipping a fully vanilla /etc/makepkg.conf (which we currently don't) would align with the idea of makepkg being a "lower-level tool for when you build your own Linux distribution", but a lot of people consider makepkg "the official user-facing build tool for Arch Linux packages" and "Latest /etc/makepkg.conf from Arch Linux" the official and canonical build configuration for Arch Linux packages. If we consider makepkg a library we should be more explicit about
pkgctl build
and discourage direct use of makepkg (unless one has a good reason).If we don't and still keep them out-of-sync this is probably also going to trip up a bunch of people when RFC-0017 Increase _FORTIFY_SOURCE level to 3 lands because running
makepkg
alone won't be enough to reproduce any issues some people might be having. Even if they're aware "it's because Arch Linux switched to -D_FORTIFY_SOURCE=3 recently" they might not be aware "makepkg from Arch Linux" is going to keep building with_FORTIFY_SOURCE=2
, and some people (plus all official packages) use something that's more equivalent tomakepkg --config /usr/share/devtools/makepkg.conf.d/x86_64.conf
instead.@heftig me and anthraxx had a chat. Either we follow devtools 1:1 or we don't. Making micro adjustments defeats the point here.
So we'll merge this as-is and rather reevaluate if we should do something else.
added statusunconfirmed label
added statusconfirmed label and removed statusunconfirmed label
added priority3-normal severity3-medium labels
removed severity3-medium label
- Resolved by Levente Polyak
@anthraxx Some opinions please
mentioned in issue #9 (closed)
mentioned in merge request !7 (closed)
mentioned in issue #23 (closed)