[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bloat in the Emacs Windows package

From: Phillip Lord
Subject: Re: Bloat in the Emacs Windows package
Date: Thu, 18 Apr 2019 22:19:26 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux)

Eli Zaretskii <address@hidden> writes:

>> From: Phillip Lord <address@hidden>
>> Cc: address@hidden,  address@hidden
>> Date: Thu, 18 Apr 2019 17:05:14 +0100
>> > I can tell how to do the latter, if you want.  It boils down to
>> > running 2 objcopy commands.
>> So many options!
>> Again, happy to do whatever can be fitted into my shell script that I
>> use to build the zip files.
> Not sure if that's a yes, but anyway...
> Given an unstripped emacs.exe, you produce the stripped emacs.exe and
> the separate debug info file like this:
>   objcopy --only-keep-debug emacs.exe emacs.debug
>   strip -g emacs.exe
>   objcopy --add-gnu-debuglink=emacs.debug emacs.exe
> When unpacked, the emacs.debug file should install into the bin/.debug
> directory of the Emacs installation.

Would this impact on emacs-26.2.exe also or would I need to things like:

objcopy --only-keep-debug emacs.exe emacs.debug
strip -g emacs.exe
strip -g emacs-26.2.exe
objcopy --add-gnu-debuglink=emacs.debug emacs.exe
objcopy --add-gnu-debuglink=emacs.debug emacs-26.2.exe

To summarise my feelings about the thread so far:

 - I think most normal users don't need debug symbols, so I would be
   minded to remove them (or not put them). I don't know why I have
   added "-g3" to the default options. People who know what to do with
   debug symbols are likely to be able to build Emacs for

 - We currently install emacs.exe and emacs-26.2.exe. I think we should
   continue doing this because it is how we do it on other
   platforms. The disk space requirement is small (and will be smaller
   if  we remove debug symbols). It probably adds little to the
   download bandwith (because of zip) and will add nothing with the .exe
   installer for Emacs-27. And NTFS compression fixes the problem (and
   more) for those who really care about space (and they are probably
   using it already).

I am happy to be corrected here if I am missing some unintended
consequence, or if you disagree with my justifications.

Unanswered questions for me:

 - If we remove debug symbols, why not do -O3 which may produce some
   performance benefit?
 - Is it better to do "-g0" which I believe stops adding debug symbols,
   or switch "make install" for "make install-strip"?

Doing any of these things (adding -O3, -g0 or using make install-strip)
are trivial to implement and cost me nothing in ongoing maintenance.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]