From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: passt.top; dmarc=none (p=none dis=none) header.from=gibson.dropbear.id.au Authentication-Results: passt.top; dkim=pass (2048-bit key; secure) header.d=gibson.dropbear.id.au header.i=@gibson.dropbear.id.au header.a=rsa-sha256 header.s=202602 header.b=EYhP5Vx0; dkim-atps=neutral Received: from mail.ozlabs.org (mail.ozlabs.org [IPv6:2404:9400:2221:ea00::3]) by passt.top (Postfix) with ESMTPS id 2AAFB5A026E for ; Wed, 20 May 2026 04:05:56 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gibson.dropbear.id.au; s=202602; t=1779242753; bh=8VNlyMcRcujfOB8ca2c0cl/43SMi2YdLTE9X3S9qPM0=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=EYhP5Vx0YaDO7gtQP2WULI0VNp184r95CghSoWOxjso3wRow4lTpf5ejXNR4HjhwK eWlp0BbHVP5CnuvAtnRyiirVJfBfHXh8U8FjMXUkmj7dqWPmoQoxJAcuunp0SsiYZS oVuqA0vGxgtBhTSEBBuB00/FJp9JiVQQBSMPwf4iDq1izFHkewhPdmK6Dh5D5B2N9N eDBwtrCm14WK3xbWsUyZOukhtXoeJ3M/ZRbYCA/OyF3sX7a+daOBa89klQ9CDPelyd xv/cjmhE2TE51DlmMwy9HJF29raFXpevqC+uQv6I4Ri1sKaasVkQ+4+Q898imWIIFo +UXltco7W/Z0A== Received: by gandalf.ozlabs.org (Postfix, from userid 1007) id 4gKvyn4FXvz4wLX; Wed, 20 May 2026 12:05:53 +1000 (AEST) Date: Wed, 20 May 2026 12:01:33 +1000 From: David Gibson To: Stefano Brivio Subject: Re: [PATCH v3 00/12] Improvements to static checker invocation Message-ID: References: <20260512055256.1800449-1-david@gibson.dropbear.id.au> <20260516174557.007a0d7b@elisabeth> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="qZxrGeYC89LBCOoe" Content-Disposition: inline In-Reply-To: <20260516174557.007a0d7b@elisabeth> Message-ID-Hash: VWW2SNXOUJLPPLNIA2HOL3NBCDLAORXG X-Message-ID-Hash: VWW2SNXOUJLPPLNIA2HOL3NBCDLAORXG X-MailFrom: dgibson@gandalf.ozlabs.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: passt-dev@passt.top X-Mailman-Version: 3.3.8 Precedence: list List-Id: Development discussion and patches for passt Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: --qZxrGeYC89LBCOoe Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, May 16, 2026 at 05:45:58PM +0200, Stefano Brivio wrote: > On Tue, 12 May 2026 15:52:44 +1000 > David Gibson wrote: >=20 > > While working on pesto, I ran into a number of awkward errors with the > > static checkers. This series reworks the invocation of the checkers > > in a way that will let us deal with that. As a bonus, it also gives > > us static checking for passt-repair. It also a number of other > > cleanups to the Makefile that seemed natural along the way. > >=20 > > v3: > > - Rework changes to $(FLAGS) so they're much less likely to have > > side effects we're not ready for. > > v2: > > - Fixed nasty test failure in test/build/build.py >=20 > Tested with current packaging rules / build scripts on Alpine, Debian, > Fedora, openSUSE, and applied (dropping extra whitespace in 4/12 as > noted). >=20 > I think it would be nice, as a follow-up, to drop the comments that 4/12 > introduced: >=20 > +# Mandatory preprocessor flags that won't be overridden with $(CFLAGS) > +# FIXME: Could some of these be default, rather than required? >=20 > (same for CPPFLAGS), because, as we discussed, those are all default, > can actually be overridden as distribution packages already do (so this > is misleading for distribution maintainers), and I don't see a > particular value in distinguishing what flags *could* be perhaps > dropped to have something strictly building. They are all useful for a > reason or another. >=20 > But I didn't touch those, I didn't feel like sneaking in a substantial > change like that and I didn't want to delay this series further, either. Fair enough. Follow up sent. >=20 > I had a quick look at package recipes of Chimera, PLD, and Void Linux, > I didn't test things there but I don't see any way this series could > cause issues there. >=20 > Somewhat interestingly, I came across many different ways to override > flags, taking -D_FORTIFY_SOURCE as example: >=20 > - Alpine doesn't override / set it at all, the test in our Makefile > doesn't set it there, either. Notably, this test was added in commit > 38363964fc96 ("Makefile: Enable _FORTIFY_SOURCE iff needed"), > specifically for Gentoo >=20 > - Debian and Void Linux append -D_FORTIFY_SOURCE=3D2, that is, they > duplicate our flag, in CFLAGS >=20 > - Fedora (with my spec file, where I didn't set any %_fortify_level) > overrides it with -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3D3 in CFLAGS >=20 > - openSUSE used to append -D_FORTIFY_SOURCE=3D3 (similar to Debian and > Void Linux), but now uses -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3D3 >=20 > - PLD Linux appends -Wp,-D_FORTIFY_SOURCE=3D2 >=20 > I found a rather impressive summary here: >=20 > https://www.anthes.is/nix-internals-cflags.html Gosh. --=20 David Gibson (he or they) | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you, not the other way | around. http://www.ozlabs.org/~dgibson --qZxrGeYC89LBCOoe Content-Type: application/pgp-signature; name=signature.asc -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEO+dNsU4E3yXUXRK2zQJF27ox2GcFAmoNFfUACgkQzQJF27ox 2GdkUxAAmVpaKEaAU0C5DNxEOLuCXA0B8n+x6Cqap9tjjinvHYog6KOSXtu5E95a rB1uofRjANyLd2cg28iat7moW0yukvzIEaWb2vkdW7mPn1IpeIPp0GFguT0/1sc/ hMleSDkvHWEYJ1dBR99xQ2c+CTwjC6vy9yobsLgs59l9BuhJKJRfDDNKXfBqnklo oA8ubyNAoC19Igx7+J/eTkIZDCMpZF8JLujj01qy1Lcw6VNAh9X0RpJt2bbrwxQH qYi4hqJFfeRdfOc0t/dasUmsJMRFePXl5Njvc3AzqzZt1GAdEmV/bbQmuvwJmNN5 20/kR8t1MkfD5JoFVTpjXiBVSyw9kaxWEqRgjPUeJmrm/BjVGYCwHN25HU85pSos 11ji46lKkKRdjZK0EoxCM5jnXDcqRkpSLgREJ2HCRDLva1iyfRurbzlHyrTVjeot xehBn/TGMP9g9jOyfzsINZkFmw6wXIzsVWGhx23gt69itxaIBAJI6AFJ4qqKC7Xd 3nTP4mFyl9ZWYiA+HmDDoRNoCwv07lJ916t3yME5edMWI0k86GDQ7gyP+sbauLEK j39JK/khU6MYkiU4dj63tv420qb7u8spxAxGlxLkNn3HPvVAxAUFF3MXdDv73TLh cRM7bXlt49DTcOLX5lXdG9lCs0R5yn4MteHSn3ssAJDJgojK+bU= =/8IT -----END PGP SIGNATURE----- --qZxrGeYC89LBCOoe--