Re: [PATCH] Makefile: do not compile git with debugging symbols by default
- From
Jeff King <peff@peff.net>
- Date
- Jan 22, 2015, 18:35 UTC
- Message-ID
- <20150122183538.GA20085@peff.net>
- In-Reply-To
- <vpqa91ahg46.fsf@anie.imag.fr>
On Thu, Jan 22, 2015 at 06:36:41PM +0100, Matthieu Moy wrote:
> > Yes, main point is size of executable. > > The Git executable is a few megabytes, i.e. 0.001% the size of a really > small hard disk. The benefit seems really negligible to me.
I don't know the layout of the symbols with respect to the code, or whether the stripped version might reduce memory pressure. So in theory it could have a performance impact.
But...
> OTOH, debug information allow users to do better bug reports in case of > crash (gdb, valgrind), which outweights by far the benefit of saving a > handfull of megabytes IMHO.
Me too. Especially for people who are building git themselves, I feel like leaving the symbols is a sane default. Package builders are already using "make strip", or some feature of their package-build system (e.g., "dh_strip") to take care of this for the "normal" users. But fundamentally this is a packaging issue, not a build issue.
-Peff
PS We could still add a "DEBUG" knob to the Makefile and default it to off. But I do not see much point. If you want to change the CFLAGS, then change the CFLAGS knob. It's much more flexible.