From: rrt Date: Tue, 30 Oct 2001 18:58:46 +0000 (+0000) Subject: [project @ 2001-10-30 18:58:46 by rrt] X-Git-Tag: Approximately_9120_patches~673 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=e9ad5510c532d12e9eae59b7ab60fcc8c513f770;p=ghc-hetmet.git [project @ 2001-10-30 18:58:46 by rrt] Much more in-depth description. Switch to the new more automated process, and concentrate on dukin' it out with InstallShield. --- diff --git a/ghc/WindowsInstaller/MakeInstaller.txt b/ghc/WindowsInstaller/MakeInstaller.txt index 02c6844..9a48c6b 100644 --- a/ghc/WindowsInstaller/MakeInstaller.txt +++ b/ghc/WindowsInstaller/MakeInstaller.txt @@ -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. ). + 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 + 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