[project @ 2001-10-30 18:58:46 by rrt]
authorrrt <unknown>
Tue, 30 Oct 2001 18:58:46 +0000 (18:58 +0000)
committerrrt <unknown>
Tue, 30 Oct 2001 18:58:46 +0000 (18:58 +0000)
Much more in-depth description. Switch to the new more automated
process, and concentrate on dukin' it out with InstallShield.

ghc/WindowsInstaller/MakeInstaller.txt

index 02c6844..9a48c6b 100644 (file)
@@ -1,12 +1,82 @@
-In order to get a build tree into a state in which it can be used to
-make an InstallShield, the following steps must be performed; these
-should be put into the build system itself (under make install) so
-that this "laying on of hands" is unnecessary.
-
-1. cp ghc/compiler/ghc-x.yy ghc/compiler/ghc.exe
-2. cp ghc/utils/ghc-pkg/ghc-pkg.bin ghc/utils/ghc-pkg/ghc-pkg.exe
-3. strip ghc/compiler/ghc.exe ghc/driver/ghci/ghci.exe hslibs/tools/*/*.exe ghc/utils/*/*.exe
-4. (cd ghc/docs/set && make set.html set.ps && ps2pdf[.bat] set.ps set.pdf)
-5. Make License and ANNOUNCE into RTF, and overwrite the old versions
-in ghc/WindowsInstaller.
+How to make an InstallShield in 357 frustrating steps
+-----------------------------------------------------
 
+The recipe below is correct in theory, but unfortunately some bits
+don't work in practice. These are noted below.
+
+0. Build a stage 1 tree.
+1. Set "SGMLDocWays=html pdf" in stage 2's build.mk.
+2. Build stage 2.
+3. Convert ANNOUNCE and LICENSE (if it has changed) to RTF (use Word),
+and put them in the WindowsInstaller directory.
+4. Iff the layout of the directory tree has changed since last time
+(the addition or removal of files in existing directories doesn't
+matter):
+
+  a. Set Project->Path Variables->Project->SourceFiles to point to
+  the installed tree.
+  b. Make sure GHCBITS (in the same place) points to the tree
+  containing gcc, perl &c.
+  c. Delete all the DLS_TopLevelFiles_x components.
+  d. Add the entire install tree to TopLevelFiles as a dynamic link.
+  e. Re-add the Start menu shortcuts for
+      i. GHCi
+     ii. PDF manual
+    iii. HTML User's Guide
+     iv. HTML Libraries Guide
+
+     For each one, find the right DLS_TopLevelFiles_xx directory, go
+     to Shortcuts, add a folder Program Files->Glasgow Haskell
+     Compiler, and preferably copy the exact name for the file from an
+     installed compiler. Add the file name, which is relative to the
+     *installed* tree (i.e. <InstallDir>).
+  f. Re-add the registry keys (under Registry Data for the
+     TopLevelFiles component): HKEY_LOCAL_MACHINE->SOFTWARE->Glasgow
+     Haskell Compiler->x.yy->{Path,Version}, where Path is set to
+     <INSTALLDIR> and Version to the current version.
+
+5. Build the InstallShield.
+7-356. Deal with the awkward points mentioned below.
+357. Freeze & sell.
+
+
+Documentation
+-------------
+
+  jadetex
+  -------
+
+I couldn't work out how to set the config parameters of MikTeX 2.1 to
+make jadetex compile the user guide and libraries book without falling
+over owing to running out of hash_size.
+
+Since MikTeX 1.2 seemed to work fine, the suggested workaround is to
+use that.
+
+Hopefully at some point Cygwin's tetex package will come with jadetex,
+and there won't be any need to install MikTeX.
+
+  ghostscript
+  -----------
+
+I couldn't get Cygwin's ps2pdf to work; hopefully it will in the
+future (or even more likely, I was just being useless). I have used
+AFPL's Ghostscript 6.50 for Windows happily; note that whatever
+version is used should be at least 6.50; earlier versions put
+low-quality bitmap fonts in PDFs.
+
+
+Tweaking the UI
+---------------
+
+The only dialog that has so far been changed is SetupCompleteSuccess
+(under User Interface). Note that this dialog is used for both install
+(string IDS__IsExitDialog_5) and uninstall (string
+IDS__IsExitDialog_6).
+
+
+Version number and other strings
+--------------------------------
+
+Most of the useful string resources are under the top-most entries in
+the tree on the Project View.
\ No newline at end of file