unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [feature/dll-only-windows] A new windows build, comments wanted
@ 2021-01-09 19:57 Phillip Lord
  2021-01-09 20:18 ` Eli Zaretskii
                   ` (2 more replies)
  0 siblings, 3 replies; 90+ messages in thread
From: Phillip Lord @ 2021-01-09 19:57 UTC (permalink / raw)
  To: emacs-devel



In preparation for making a native-comp build of Emacs on Windows, I
have revisited the windows packaging process.

The current version figures out dependencies using msys2 and as a result
has an awful lot of dependencies. Even with some efforts to reduce this
size (e.g. python isn't included any more) it's still pretty large.

So I have tried a new technique which is now on
feature/dll-only-windows. Essentially, I just name all of the DLLs that
Emacs uses directly and then figure out any dependencies of these using
`ntldd`. I've tried `ntldd` directly on emacs.exe which does not
work. The practical upshot of this is that the dependencies file is just
a pile of DLLs. The installer version of Emacs (which is the smallest
because it is most compressed) is now only 45Mb (vs 63) in size, with
zip being 130Mb (vs 160Mb).

The source download still using the same technique as before; i.e. the
source bundle will produce a lot more than just the DLLs included.


Some questions for now:

1) Does this seem reasonable? I can some upload some binaries to alpha
if anyone is prepared to try them.

2) harfbuzz is currently not working on i686. Before I fix this, I think
it is worth asking whether I still need to produce a i686 binary. It
doubles the build time, obviously.

3) Currently the "no-deps" version actually includes libXpm. Emacs
starts without it, but looks ugly. I would like to no longer special
case libXpm and just make the "no-deps" download really include no
deps. I think this is reasonable, because this download is now, really
special purpose and "with-deps" is the default.


Some questions for when I add a native-comp build

4) Currently, native-comp is an "--with-nativecomp" option even on the
native-comp branch. It is likely to be merged this way to master?
Currently, I build the Windows distribution of Emacs with all the
default options. I can make an alternative release "--with-nativecomp"
but needs some effort; it also does not address the question of how I
should build Emacs for Windows when a full release of Emacs-28
happens. If, the full release of Emacs-28 will be native-comp, I'd
rather start building snapshots with it as soon as it is merged.

5) Why is it "--with-nativecomp", shouldn't it be "--with-native-comp".

Thoughts welcome.

Phil



^ permalink raw reply	[flat|nested] 90+ messages in thread

end of thread, other threads:[~2021-04-26 13:27 UTC | newest]

Thread overview: 90+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-09 19:57 [feature/dll-only-windows] A new windows build, comments wanted Phillip Lord
2021-01-09 20:18 ` Eli Zaretskii
2021-01-09 21:31   ` Phillip Lord
2021-01-10  8:49     ` Arash Esbati
2021-01-10 15:19       ` Phillip Lord
2021-01-10 16:45     ` Eli Zaretskii
2021-01-10 18:23       ` Phillip Lord
2021-01-10 19:05         ` Eli Zaretskii
2021-01-10 19:20           ` Óscar Fuentes
2021-01-10 19:37             ` Eli Zaretskii
2021-01-10 20:52           ` `gzip` dependency (was: [feature/dll-only-windows] A new windows build, comments wanted) Stefan Monnier
2021-01-11  3:27             ` Eli Zaretskii
2021-01-11 10:00               ` `gzip` dependency Phillip Lord
2021-01-11 15:22                 ` Eli Zaretskii
2021-01-11 14:59               ` Stefan Monnier
2021-01-11 15:15                 ` Phillip Lord
2021-01-11 15:46                 ` Eli Zaretskii
2021-01-20 19:29             ` [feature/internal-msys] thoughts of a more function windows package Phillip Lord
2021-01-21 12:36               ` Stephen Leake
2021-01-21 16:11                 ` Phillip Lord
2021-01-21 18:22                 ` Stephen Leake
2021-01-21 18:44                   ` phillip.lord
2021-01-23  2:51                     ` Stephen Leake
2021-01-21 18:53                   ` Óscar Fuentes
2021-01-21 14:11               ` Eli Zaretskii
2021-01-21 16:44                 ` Phillip Lord
2021-01-21 20:17                   ` Eli Zaretskii
2021-01-21 21:37                     ` Phillip Lord
2021-01-22  7:24                       ` Eli Zaretskii
2021-01-22 16:14                         ` Phillip Lord
2021-01-22 17:03                           ` Eli Zaretskii
2021-01-24 22:13                             ` Phillip Lord
2021-01-24 22:56                               ` Óscar Fuentes
2021-01-24 23:34                                 ` Phillip Lord
2021-01-25  0:12                                   ` Óscar Fuentes
2021-01-25 15:24                                   ` Eli Zaretskii
2021-01-25 19:49                                     ` chad
2021-01-25 19:57                                       ` Eli Zaretskii
2021-01-25 20:42                                       ` Stefan Monnier
2021-01-25 22:13                                         ` chad
2021-01-25 22:28                                         ` Dmitry Gutov
2021-01-26  3:26                                         ` Eli Zaretskii
2021-01-25 15:20                               ` Eli Zaretskii
2021-01-25 20:01                                 ` Richard Copley
2021-01-25 21:17                                   ` Óscar Fuentes
2021-01-26  3:29                                     ` Eli Zaretskii
2021-01-26  5:43                                       ` Óscar Fuentes
2021-01-26  6:56                                         ` Eli Zaretskii
2021-01-26  7:37                                           ` Óscar Fuentes
2021-01-26  9:57                                             ` Eli Zaretskii
2021-01-26 15:58                                               ` martin rudalics
2021-01-27 14:55                                             ` Stephen Leake
2021-01-27 18:36                                               ` Eli Zaretskii
2021-01-26 16:35                                   ` Stephen Leake
2021-01-26 10:43                                 ` Phillip Lord
2021-04-03 11:34               ` Nikolay Kudryavtsev
2021-04-20  9:25                 ` Phillip Lord
2021-04-20 14:38                   ` Wayne Harris via Emacs development discussions.
2021-04-21 15:51                     ` Phillip Lord
2021-04-21 17:11                       ` Nikolay Kudryavtsev
2021-04-24 11:46                       ` Wayne Harris via Emacs development discussions.
2021-04-26 13:27                         ` Phillip Lord
2021-04-21 17:19                     ` Nikolay Kudryavtsev
2021-04-21 23:03                       ` Óscar Fuentes
2021-04-22 19:44                         ` Nikolay Kudryavtsev
2021-04-22 14:55                       ` Wayne Harris via Emacs development discussions.
2021-01-11  9:59           ` [feature/dll-only-windows] A new windows build, comments wanted Phillip Lord
2021-01-11 15:21             ` Eli Zaretskii
2021-01-11 18:29               ` Phillip Lord
2021-01-09 21:36   ` Óscar Fuentes
2021-01-10 16:46     ` Eli Zaretskii
2021-01-10 18:34       ` Phillip Lord
2021-01-09 21:51   ` Andrea Corallo via Emacs development discussions.
2021-01-10  3:33     ` Eli Zaretskii
2021-01-10 15:09     ` Phillip Lord
2021-01-10 19:06       ` Andrea Corallo via Emacs development discussions.
2021-01-11  9:47         ` Phillip Lord
2021-01-11 11:01           ` Andrea Corallo via Emacs development discussions.
2021-01-11 16:29             ` Phillip Lord
2021-01-11 17:21               ` Andrea Corallo via Emacs development discussions.
2021-01-10 15:14   ` Phillip Lord
2021-01-10 17:23     ` Eli Zaretskii
2021-01-09 20:47 ` Alan Third
2021-01-09 21:33   ` Phillip Lord
2021-01-10  0:04     ` Alan Third
2021-01-10  3:28   ` Eli Zaretskii
2021-01-10 15:43 ` Phillip Lord
2021-01-12  6:01   ` Corwin Brust
2021-01-12  9:48     ` Phillip Lord
2021-01-12 10:27       ` Corwin Brust

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).