Subject: Re: [PATCH] Makefile: do not compile git with debugging symbols by default

From: Jeff King <[email-masked]>
Date: Thu, 22 Jan 2015 08:00:36 -0500

On Thu, Jan 22, 2015 at 06:50:37PM +0600, Alexander Kuleshov wrote:

> Standard user has no need in debugging information. This patch adds
> DEBUG=1 option to compile git with debugging symbols and compile without
> it by default.

This explanation is missing why it is beneficial _not_ to have the
debugging information.

I expect the answer is "it makes the executable smaller". And that is
true, but it gets smaller still if you run "strip" on the result:

  $ make CFLAGS= >/dev/null 2>&1 && wc -c <git
  2424248

  $ make CFLAGS=-g >/dev/null 2>&1 && wc -c <git
  4500816

  $ strip git && wc -c <git
  2109200

So I am not sure who this is helping. If you are size-conscious, you
should use strip, in which case the "-g" flag does not matter (and we
even have "make strip" to help you).

Is there some other reason to avoid the debugging information?

-Peff