annotate contrib/packaging/inno/readme.rst @ 48303:2ce31dbde4b1

backout: backed out changeset f78d8b8c46d7 This and the following backout exist because the original patches break the Windows CI for some yet unknown reason. Differential Revision: https://phab.mercurial-scm.org/D11726
author Raphaël Gomès <rgomes@octobus.net>
date Wed, 27 Oct 2021 12:07:58 +0200
parents e933e66153f3
children b44678aeb460
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
41853
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
1 Requirements
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
2 ============
1291
a942bf419a64 Document Windows installer build process.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
3
41853
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
4 Building the Inno installer requires a Windows machine.
1291
a942bf419a64 Document Windows installer build process.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
5
41853
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
6 The following system dependencies must be installed:
18960
170fc0949fb6 check-code: check txt files for trailing whitespace
Mads Kiilerich <madski@unity3d.com>
parents: 13246
diff changeset
7
41853
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
8 * Python 2.7 (download from https://www.python.org/downloads/)
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
9 * Microsoft Visual C++ Compiler for Python 2.7
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
10 (https://www.microsoft.com/en-us/download/details.aspx?id=44266)
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
11 * Inno Setup (http://jrsoftware.org/isdl.php) version 5.4 or newer.
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
12 Be sure to install the optional Inno Setup Preprocessor feature,
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
13 which is required.
43513
081a77df7bc6 packaging: consolidate CLI functionality into packaging.py
Gregory Szorc <gregory.szorc@gmail.com>
parents: 42607
diff changeset
14 * Python 3.5+ (to run the ``packaging.py`` script)
1291
a942bf419a64 Document Windows installer build process.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
15
41853
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
16 Building
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
17 ========
7660
ceed5f8c4ebf Document how HTML documentation is built under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 5081
diff changeset
18
43513
081a77df7bc6 packaging: consolidate CLI functionality into packaging.py
Gregory Szorc <gregory.szorc@gmail.com>
parents: 42607
diff changeset
19 The ``packaging.py`` script automates the process of producing an
41853
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
20 Inno installer. It manages fetching and configuring the
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
21 non-system dependencies (such as py2exe, gettext, and various
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
22 Python packages).
1291
a942bf419a64 Document Windows installer build process.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
23
41853
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
24 The script requires an activated ``Visual C++ 2008`` command prompt.
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
25 A shortcut to such a prompt was installed with ``Microsoft Visual C++
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
26 Compiler for Python 2.7``. From your Start Menu, look for
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
27 ``Microsoft Visual C++ Compiler Package for Python 2.7`` then launch
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
28 either ``Visual C++ 2008 32-bit Command Prompt`` or
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
29 ``Visual C++ 2008 64-bit Command Prompt``.
4401
d1dd16256114 Update Windows build instructions.
Lee Cantey <lcantey@gmail.com>
parents: 2384
diff changeset
30
41853
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
31 From the prompt, change to the Mercurial source directory. e.g.
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
32 ``cd c:\src\hg``.
4401
d1dd16256114 Update Windows build instructions.
Lee Cantey <lcantey@gmail.com>
parents: 2384
diff changeset
33
43513
081a77df7bc6 packaging: consolidate CLI functionality into packaging.py
Gregory Szorc <gregory.szorc@gmail.com>
parents: 42607
diff changeset
34 Next, invoke ``packaging.py`` to produce an Inno installer. You will
42607
8f7c3f43e3ac inno: correct the path display in a literal block of the readme
Matt Harbison <matt_harbison@yahoo.com>
parents: 41854
diff changeset
35 need to supply the path to the Python interpreter to use.::
1291
a942bf419a64 Document Windows installer build process.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
36
46450
e933e66153f3 packaging: replace a documentation reference to `python3` on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 43513
diff changeset
37 $ py -3 contrib\packaging\packaging.py \
43513
081a77df7bc6 packaging: consolidate CLI functionality into packaging.py
Gregory Szorc <gregory.szorc@gmail.com>
parents: 42607
diff changeset
38 inno --python c:\python27\python.exe
41853
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
39
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
40 .. note::
7660
ceed5f8c4ebf Document how HTML documentation is built under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 5081
diff changeset
41
41853
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
42 The script validates that the Visual C++ environment is
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
43 active and that the architecture of the specified Python
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
44 interpreter matches the Visual C++ environment and errors
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
45 if not.
7660
ceed5f8c4ebf Document how HTML documentation is built under Windows
Patrick Mezard <pmezard@gmail.com>
parents: 5081
diff changeset
46
41853
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
47 If everything runs as intended, dependencies will be fetched and
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
48 configured into the ``build`` sub-directory, Mercurial will be built,
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
49 and an installer placed in the ``dist`` sub-directory. The final
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
50 line of output should print the name of the generated installer.
4401
d1dd16256114 Update Windows build instructions.
Lee Cantey <lcantey@gmail.com>
parents: 2384
diff changeset
51
43513
081a77df7bc6 packaging: consolidate CLI functionality into packaging.py
Gregory Szorc <gregory.szorc@gmail.com>
parents: 42607
diff changeset
52 Additional options may be configured. Run
081a77df7bc6 packaging: consolidate CLI functionality into packaging.py
Gregory Szorc <gregory.szorc@gmail.com>
parents: 42607
diff changeset
53 ``packaging.py inno --help`` to see a list of program flags.
12263
5f19416056b4 win32: 64-bit Inno Setup installer
Pascal Quantin <pascal.quantin@gmail.com>
parents: 12262
diff changeset
54
41853
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
55 MinGW
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
56 =====
4401
d1dd16256114 Update Windows build instructions.
Lee Cantey <lcantey@gmail.com>
parents: 2384
diff changeset
57
41853
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
58 It is theoretically possible to generate an installer that uses
43513
081a77df7bc6 packaging: consolidate CLI functionality into packaging.py
Gregory Szorc <gregory.szorc@gmail.com>
parents: 42607
diff changeset
59 MinGW. This isn't well tested and ``packaging.py`` and may properly
41853
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
60 support it. See old versions of this file in version control for
d7dc4ac1ff84 inno: script to automate building Inno installer
Gregory Szorc <gregory.szorc@gmail.com>
parents: 41849
diff changeset
61 potentially useful hints as to how to achieve this.