+++ /dev/null
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
- <title>Building WinMerge Installer</title>
- <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
- <style type="text/css">
- <!--
- body {
- font-family: Verdana,Helvetica,Arial,sans-serif;
- font-size: small;
- }
- code,pre {
- font-family: "Courier New",Courier,monospace;
- font-size: 1em;
- }
- h3 {
- padding: 2px;
- border-left: 4px solid #FFCC00;
- border-bottom: 1px solid #FFCC00;
- }
- pre {
- margin-left: 25px;
- margin-right: 25px;
- padding: 5px;
- background-color: #EEEEEE;
- border-left: 10px solid #CCCCCC;
- }
- -->
- </style>
-</head>
-<body>
-
-<h2>Building WinMerge Installer</h2>
-
-<h3>Needed programs:</h3>
-<ul>
- <li>
- <a href="http://www.jrsoftware.org/">Inno Setup</a>
- </li>
- <li>
- <a href="https://sourceforge.net/projects/istool/">ISTool</a> <strong>recommended</strong>
- - great help managing Inno Setup installer scripts
- </li>
-</ul>
-
-<p>There is download package called "QuickStart Pack" available in Inno Setup
-downloads. It contains all needed components in one installer.</p>
-
-<h3>Installer script:</h3>
-Installer script is in <code>Installer/InnoSetup</code> folder: <code>WinMerge.iss</code>
-
-<h3>Checklist:</h3>
-<ul>
- <li>
- Installer reads version number from <code>WinMergeU.exe</code>. So make
- sure you have version resource correctly set.
- </li>
- <li>
- Installer checks that files listed are present. But some files are
- included as folder (like <code>/Plugins/Dlls</code>) or as filemask (like
- <code>*.flt</code>) so take extra care to make sure all needed files
- are present in locations shown below.
- </li>
-</ul>
-
-<h3>Folder structure and files needed:</h3>
-<p>First make sure you have all needed files compiled and available:
-<ul>
- <li>WinMerge executable: <code>WinMergeU.exe</code></li>
- <li>Executable translations: <code>/Translations/WinMerge/*.po</code></li>
- <li>Manual: <code>WinMerge.chm</code></li>
- <li>ShellExtension: <code>ShellExtensionU.dll</code>
- and <code>ShellExtensionX64.dll</code></li>
- <li>Documents: <code>/Docs/Users/*</code></li>
- <li>Filters: <code>/Filters/*</code></li>
- <li>Plugins: <code>/Plugins/dlls/*</code></li>
- <li>Frhed: <code>/Frhed/*</code></li>
- <li>WinIMerge: <code>/WinIMerge/*</code></li>
- <li>Archive Support: <code>/Merge7z/*</code></li>
- <li>Patch: <code>/GnuWin32/*</code></li>
-</ul>
-
-<p>These files are produced by compiling WinMerge, documentation etc, but
-that's not subject of this document.</p>
-
-<h4>Folder structure</h4>
-<ul>
- <li>
- <code>Build/</code>
- <ul>
- <li>
- <code>Frhed/</code>
- <ul>
- <li><code>*.*</code></li>
- </ul>
- </li>
- <li>
- <code>GnuWin32/</code>
- <ul>
- <li><code>*.*</code></li>
- </ul>
- </li>
- <li>
- <code>Manual/htmlhelp/</code>
- <ul>
- <li><code>WinMerge.chm</code></li>
- </ul>
- </li>
- <li>
- <code>Merge7z/</code>
- <ul>
- <li><code>*.*</code></li>
- </ul>
- </li>
- <li>
- <code>MergeUnicodeRelease/</code>
- <ul>
- <li><code>WinMergeU.exe</code></li>
- </ul>
- </li>
- <li>
- <code>WinIMerge/</code>
- <ul>
- <li><code>*.*</code></li>
- </ul>
- </li>
- <li>
- <code>ShellExtension/</code>
- <ul>
- <li><code>ShellExtensionU.dll</code></li>
- <li><code>ShellExtensionX64.dll</code></li>
- </ul>
- </li>
- </ul>
- </li>
- <li>
- <code>Docs/</code>
- <ul>
- <li>
- <code>Users/</code>
- <ul>
- <li><code>ChangeLog.txt</code></li>
- <li><code>Contributors.txt</code></li>
- <li><code>GPL.rtf</code></li>
- <li><code>ReadMe.txt</code></li>
- <li><code>ReleaseNotes.html</code></li>
- </ul>
- </li>
- </ul>
- </li>
- <li>
- <code>Filters/</code>
- <ul>
- <li><code>FileFilter.tmpl</code></li>
- <li><code>*.flt</code></li>
- </ul>
- </li>
- <li>
- <code>Plugins/</code>
- <ul>
- <li>
- <code>dlls/</code>
- <ul>
- <li><code>*.dll</code></li>
- <li><code>*.sct</code></li>
- </ul>
- </li>
- </ul>
- </li>
- <li>
- <code>Translations/</code>
- <ul>
- <li>
- <code>Docs/</code>
- <ul>
- <li><code>*.*</code></li>
- </ul>
- </li>
- <li>
- <code>InnoSetup/</code>
- <ul>
- <li><code>*.isl</code></li>
- </ul>
- </li>
- <li>
- <code>WinMerge/</code>
- <ul>
- <li><code>*.po</code></li>
- </ul>
- </li>
- </ul>
- </li>
-</ul>
-
-<h3>Running Inno Setup to create installer</h3>
-
-<p><code>WinMerge.iss</code> (in <code>InnoSetup</code> folder)
-is script used to create WinMerge installer.</p>
-
-<p>Rest of this section assumes ISTool is used. If not, then refer to
-InnoSetup manual for creating installer from script.</p>
-
-<ol>
- <li>
- Start ISTool and load <code>WinMerge.iss</code>
- </li>
- <li>
- Select "Project->Verify Files..." from ISTool menu to verify
- all needed files are present and in correct directories. Copy missing
- files to correct directories before continuing.
- </li>
- <li>
- Select "Project->Compile Setup" from ISTool menu to create
- installer. This takes a while...
- </li>
-</ol>
-
-<p>If compile succeeds you have <code>WinMerge-[version]-Setup.exe</code> in
-folder <code>/Build</code>. You probably want to remove unnecessary zeros
-from the filename before uploading: if filename is <code>WinMerge-2.6.0.0-Setup.exe</code>,
-you may want to rename it to <code>WinMerge-2.6-Setup.exe</code>. Not a rule, but a
-recommendation.</p>
-
-<p><strong>Test installer!</strong></p>
-
-</body>
-</html>
\ No newline at end of file
-# WinMerge InnoSetup
+# Building WinMerge Installer
-InnoSetup holds the source for the WinMerge setup program, which uses the
-InnoSetup setup engine.
+## Needed programs:
+
+ * [Inno Setup](http://www.jrsoftware.org/)
+ * [ISTool](https://sourceforge.net/projects/istool/) **recommended** - great help managing Inno Setup installer scripts
+
+There is download package called "QuickStart Pack" available in Inno Setup downloads. It contains all needed components in one installer.
+
+## Installer script:
+
+Installer script is in `Installer/InnoSetup` folder: `WinMerge.iss`
+
+## Checklist:
+
+ * Installer reads version number from `WinMergeU.exe`. So make sure you have version resource correctly set.
+ * Installer checks that files listed are present. But some files are included as folder (like `/Plugins/Dlls`) or as filemask (like `*.flt`) so take extra care to make sure all needed files are present in locations shown below.
+
+## Folder structure and files needed:
+
+First make sure you have all needed files compiled and available:
+
+ * WinMerge executable: `WinMergeU.exe`
+ * Executable translations: `/Translations/WinMerge/*.po`
+ * Manual: `WinMerge.chm`
+ * ShellExtension: `ShellExtensionU.dll` and `ShellExtensionX64.dll`
+ * Documents: `/Docs/Users/*`
+ * Filters: `/Filters/*`
+ * Plugins: `/Plugins/dlls/*`
+ * Other: *Frhed*, *WinIMerge*, *Merge7z* and *GnuWin32 Patch*
+
+These files are produced by compiling WinMerge, documentation etc, but that's not subject of this document.
+
+### Folder structure
+
+ * `Build/`
+ * `Frhed/`
+ * `*.*`
+ * `GnuWin32/`
+ * `*.*`
+ * `Manual/htmlhelp/`
+ * `WinMerge.chm`
+ * `Merge7z/`
+ * `*.*`
+ * `MergeUnicodeRelease/`
+ * `WinMergeU.exe`
+ * `WinIMerge/`
+ * `*.*`
+ * `ShellExtension/`
+ * `ShellExtensionU.dll`
+ * `ShellExtensionX64.dll`
+ * `x64`
+ * `Frhed/`
+ * `*.*`
+ * `Merge7z/`
+ * `*.*`
+ * `MergeUnicodeRelease/`
+ * `WinMergeU.exe`
+ * `Docs/`
+ * `Users/`
+ * `ChangeLog.txt`
+ * `Contributors.txt`
+ * `GPL.rtf`
+ * `ReadMe.txt`
+ * `ReleaseNotes.html`
+ * `Filters/`
+ * `FileFilter.tmpl`
+ * `*.flt`
+ * `Plugins/`
+ * `dlls/`
+ * `*.dll`
+ * `*.sct`
+ * `X64/`
+ * `*.dll`
+ * `WinMerge32BitPluginProxy/Release/`
+ * `WinMerge32BitPluginProxy.exe`
+ * `Translations/`
+ * `Docs/`
+ * `*.*`
+ * `InnoSetup/`
+ * `*.isl`
+ * `WinMerge/`
+ * `*.po`
+
+## Running Inno Setup to create installer
+
+`WinMerge.iss` (in InnoSetup folder) is script used to create WinMerge installer.
+
+Rest of this section assumes ISTool is used. If not, then refer to InnoSetup manual for creating installer from script.
+
+ 1. Start ISTool and load `WinMerge.iss`
+ 2. Select "Project->Verify Files..." from ISTool menu to verify all needed files are present and in correct directories. Copy missing files to correct directories before continuing.
+ 3. Select "Project->Compile Setup" from ISTool menu to create installer. This takes a while...
+
+If compile succeeds you have `WinMerge-[version]-Setup.exe` in folder `/Build`. You probably want to remove unnecessary zeros from the filename before uploading: if filename is `WinMerge-2.6.0.0-Setup.exe`, you may want to rename it to `WinMerge-2.6-Setup.exe`. Not a rule, but a recommendation.
+
+**Test installer**
\ No newline at end of file