From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: phillip.lord@russet.org.uk (Phillip Lord) Newsgroups: gmane.emacs.devel Subject: Re: Bloat in the Emacs Windows package Date: Thu, 18 Apr 2019 22:19:26 +0100 Message-ID: <87a7gnypsx.fsf@russet.org.uk> References: <87mukocyze.fsf@russet.org.uk> <83v9zceb3n.fsf@gnu.org> <87tvev1epx.fsf@russet.org.uk> <83v9zbcesn.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="245285"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) Cc: bjourne@gmail.com, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Apr 18 23:30:00 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hHEbY-0011bh-1F for ged-emacs-devel@m.gmane.org; Thu, 18 Apr 2019 23:30:00 +0200 Original-Received: from localhost ([127.0.0.1]:47688 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hHEbX-0000w1-35 for ged-emacs-devel@m.gmane.org; Thu, 18 Apr 2019 17:29:59 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:33628) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hHERQ-0002Aw-28 for emacs-devel@gnu.org; Thu, 18 Apr 2019 17:19:33 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hHERO-0008FB-Vx for emacs-devel@gnu.org; Thu, 18 Apr 2019 17:19:32 -0400 Original-Received: from cloud103.planethippo.com ([78.129.138.110]:59624) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hHERM-0008Bp-Sq; Thu, 18 Apr 2019 17:19:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:Message-ID: In-Reply-To:Date:References:Subject:Cc:To:From:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=KrBq+zsc2FMV4Mz43OF7pU/jOFbP+tAr2m0V2p4S4GA=; b=lYarVUxxI0Mnsjdi22WFliQJj zLw2sy1JzOSly9KibqJvsMAbx1ceTwhO79h3VNTYiTQKqZmKOItYpenh9guBxYsAFfjdclJkme7IH m56/3os+QBk6f8I5acKws8jToAfLkr7snXi+JqguKYJGWdcIPop2oHbSctBDccWirTarNXrkON6Vi AVUsLBtclregKsVmhaYdHpfxBZFrJG0mHr7SKF5xKVEi0VKrjtM7Ah/8SLdq47js+zx30ghFtZzxJ 5kw9Ndm9oMs0qEZC9FdmwdmGrWJkTvo02q19aJ8aIIrwWvwq1PmCxZHT17wANJDYyqpkPBsxiyTGB ghJ3N7j7w==; Original-Received: from cpc142652-benw12-2-0-cust953.16-2.cable.virginm.net ([82.21.43.186]:36374 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.91) (envelope-from ) id 1hHERK-0004fu-Vg; Thu, 18 Apr 2019 22:19:27 +0100 In-Reply-To: <83v9zbcesn.fsf@gnu.org> (Eli Zaretskii's message of "Thu, 18 Apr 2019 22:08:08 +0300") X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 78.129.138.110 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:235636 Archived-At: Eli Zaretskii writes: >> From: Phillip Lord >> Cc: bjourne@gmail.com, emacs-devel@gnu.org >> 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 themselves. - 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. Phil