Or even still -g as it now, because anyway debugging info will be removed with stripping 2015-01-22 22:51 GMT+06:00 Alexander Kuleshov <kuleshovmail@xxxxxxxxx>: > Hello Jeff, > > Yes, main point is size of executable. I'm sorry, didn't see 'strip' target. > > What if we will strip git and other executable files by default and > add -g option and don't strip it if DEBUG=1 passed to make. Something > like this: > > git$X: git.o GIT-LDFLAGS $(BUILTIN_OBJS) $(GITLIBS) > > $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) git.o \ > > $(BUILTIN_OBJS) $(LIBS) > > ifneq ($(DEBUG),1) > > $(MAKE) strip > > endif > > > Thank you. > > 2015-01-22 19:00 GMT+06:00 Jeff King <peff@xxxxxxxx>: >> 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 > > > > -- > _________________________ > 0xAX -- _________________________ 0xAX -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html