[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Process to build standalone Emacs + deps in Windows
From: |
Phillip Lord |
Subject: |
Re: Process to build standalone Emacs + deps in Windows |
Date: |
Wed, 25 Mar 2020 22:34:18 +0000 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.0.90 (gnu/linux) |
Juan José García-Ripoll <address@hidden> writes:
> Juan José García-Ripoll <address@hidden> writes:
>> I attach a patch file that changes build-dep-zips.py with the following
>> fixes
>
> As usual, the missing attachment below.
In reply to two of your emails, sorry:
+ if dependencies:
+ print(f"Package {pkg} depends on:")
+ for d in dependencies:
+ print(f" -> {d}")
+
I wouldn't add this. It's only useful some of the time, not in normal
usage, and anyway "pactree" does the same thing better.
def gather_deps(deps, arch, directory):
- os.mkdir(arch)
+ if not os.path.exists(arch):
+ os.mkdir(arch)
os.chdir(arch)
This is wrong, I think. IIRC, my script crashes out at this point if
"arch" exists. This is needed, otherwise I could run build-dep-zips.py
twice at different times and both old and new dependencies would get
added. This forces cleanliness.
+ ## exclude files
+ excludes=['lib/*.a', # No files to link against
+ 'lib/*/*.exe', # No hidden executables
+ 'libexec/*/*.exe',
+ 'include/*', # No development files
+ 'lib/cmake/*',
+ 'lib/pkgconfig/*',
+ 'lib/python*/*',
+ 'share/aclocal/*',
+ 'share/gettext/*',
+ 'share/doc/*', # No documentation from libraries
+ 'share/gtk-doc/*',
+ 'share/man/*',
+ 'share/info/*',
+ 'bin/*tiff*.exe', # No graphic manipulation tools
+ 'bin/img*.exe',
+ 'bin/*gif*.exe',
+ 'bin/*jpg*.exe',
+ 'bin/*jpeg*.exe',
+ 'bin/*png*.exe',
+ 'bin/*svg*.exe',
+ 'bin/*xpm*.exe',
+ 'bin/*icc.exe',
+ 'bin/fax2*.exe',
+ 'bin/pango-*.exe',
+ 'bin/gdk-*.exe',
+ 'bin/jasper.exe',
+ 'bin/fc-*.exe', # No font configuration tools
+ 'bin/gr2fonttest.exe',
+ 'bin/hb-*.exe',
+ 'bin/msg*.exe', # No tools to manipulate gettext catalogues
+ 'bin/*gettext.exe'
+ ]
This list would need to go near the front, so we have a clean
configuration section. It also displays the key problem -- it's really
long and non obvious so a maintenance burden
If we just did a few big top level directories, would that not solve all
the problems.
+# The dependency extraction relies on an English version of pacman
+# We need to configure the locale to match the expectations
+if 'LANG' in os.environ:
+ os_lang = os.environ['LANG']
+ if (len(os_lang) > 2) and (os_lang[0:2] != 'en'):
+ os.environ['LANG']='en_US'
+
I am vaguely curious what it looks like in Spanish. I thought the output
was fairly mechanistic.
- Since we are pulling in compression utilities, we may just as well tell the
configuration to compress the *.el files. Windows is the only platform where
this does not happen
No, because I generate the no-deps version first, then add the deps. The
-no-deps version doesn't have the compression utilities. Of course, we
do not need the *.el files at all.
a) Is there a way to test the resulting standalone distribution to
verify that Emacs is running properly?
No. The only testing I do is to start Emacs and see if it starts and
looks okay (literally looks okay -- the icons can get broken). The lack
of a test suite that I can run is what keeps me cautious, especially as
I don't use this build. I wrote a robot testing framework for
org-drill.el; we could do something similar for testing this version of
Emacs.
b) I realized that Cairo is pulled in as a dependency, but Emacs is
built without support for Cairo. Is this intentional?
No, it will be a transitive dependency of something. pactree will
reveal!
Phil
- Re: Process to build standalone Emacs + deps in Windows, (continued)
- Re: Process to build standalone Emacs + deps in Windows, Juan José García-Ripoll, 2020/03/25
- Re: Process to build standalone Emacs + deps in Windows, Eli Zaretskii, 2020/03/25
- Re: Process to build standalone Emacs + deps in Windows, Juan José García-Ripoll, 2020/03/25
- Re: Process to build standalone Emacs + deps in Windows, Eli Zaretskii, 2020/03/25
- Re: Process to build standalone Emacs + deps in Windows, Juan José García-Ripoll, 2020/03/25
- Re: Process to build standalone Emacs + deps in Windows, Eli Zaretskii, 2020/03/25
- Re: Process to build standalone Emacs + deps in Windows, Phillip Lord, 2020/03/25
- Re: Process to build standalone Emacs + deps in Windows, Juan José García-Ripoll, 2020/03/26
- Re: Process to build standalone Emacs + deps in Windows, Eli Zaretskii, 2020/03/26
- Re: Process to build standalone Emacs + deps in Windows, Phillip Lord, 2020/03/26
- Re: Process to build standalone Emacs + deps in Windows,
Phillip Lord <=
- Re: Process to build standalone Emacs + deps in Windows, Stefan Monnier, 2020/03/25
- Re: Process to build standalone Emacs + deps in Windows, Juan José García-Ripoll, 2020/03/26
- Re: Process to build standalone Emacs + deps in Windows, Phillip Lord, 2020/03/26
- Re: Process to build standalone Emacs + deps in Windows, Juan José García-Ripoll, 2020/03/26
- Re: Process to build standalone Emacs + deps in Windows, Eli Zaretskii, 2020/03/26
- Re: Process to build standalone Emacs + deps in Windows, Juan José García-Ripoll, 2020/03/28
- Re: Process to build standalone Emacs + deps in Windows, Eli Zaretskii, 2020/03/28
- Re: Process to build standalone Emacs + deps in Windows, Phillip Lord, 2020/03/28
- Re: Process to build standalone Emacs + deps in Windows, Eli Zaretskii, 2020/03/28
- Re: Process to build standalone Emacs + deps in Windows, Phillip Lord, 2020/03/26