Re: [PATCH v2 1/1] git-compat-util: add a test balloon for C99 support
- From
brian m. carlson <sandals@crustytoothpaste.net>
- Date
- Nov 17, 2021, 23:18 UTC
- Message-ID
- <YZWNumAlsek9Gi22@camp.crustytoothpaste.net>
- In-Reply-To
- <YZRwpekXlilhOEx4@coredump.intra.peff.net>
On 2021-11-17 at 03:01:57, Jeff King wrote:
> Yes, but I'm not at all worried about breaking our CI. That's just a > patch away from fixing. I'm much more worried about confused users > building from source, because helping them is more difficult to scale.
That's one of the reasons I had proposed the current patch, because it pukes in a very noticeable way with directives on where to look to continue. Just using C99 features means that Git breaks in a very subtle way where the user compiling may not be familiar with C and may not know how to fix it otherwise. For example, my previous employer ships Git, but many of the folks who are doing the package updates are not C programmers.
> My thinking was that breaking older compilers was preferable to breaking > non-gnu ones, because at least old ones go away eventually. But your > other email makes me wonder if those non-GNU ones may already be > overriding CFLAGS.
Our only problem platform, as far as I can tell, is RHEL/CentOS 7. That uses GCC 4.8, and even Ubuntu 18.04 ships with GCC 7.
> Still, if we can come up with a solution that breaks neither (with some > light auto-detection or heuristics in the Makefile), that could be the > best of both worlds.
I can move COMPILER_FEATURES out of config.mak.dev and into Makefile so that we can make use of it. We'll need to depend on GCC 6 for this because we lack a way to distinguish 5.1 (which should work) from 5.0 (which will not).
-- brian m. carlson (he/him or they/them) Toronto, Ontario, CA