Windows make install
mike.thomas at brisbane.paradigmgeo.com
Wed May 19 18:57:16 EDT 2004
I'm fixing "make install" on Windows with the following assumptions, upon
which I invite comments from interested parties:
1. The install target directory is the "--prefix" configure option or, if
not provided, defaults to "c:/ghc". On Windows only, there are no version
subdirectories (eg ghc-5.2.1, hdirect-0.2.1 etc anymore).
2. The layout of that directory (including the MinGW32 tool locations) is
the same as the standard Windows GHC MSI installer regularly produced by
3. The MinGW32 compiler is installed from the configure "--with-gcc" option
(if that option is not set then MinGW32 is not copied).
4. Perl and its dll are installed from the configure --with-ghc option.
5. It is OK to change the HS_PROG ".bin" extension used by Happy, Alex and
Haddock to ".exe", even on Unix; ie wrapper shell scripts refer to
"alex.exe" rather than "alex.bin" etc.
6. Because the support utilities (Happy etc) default to reading templates
from the executable directory (at least I believe they do) I've shoved both
the executables and the templates into the "--prefix" directory for now. I
would rather they wound up in the bin directory, but their Makefiles
override the value of the "datadir" Makefile macro, and I am hesitant about
changing that without consultation.
The relatively minor "config.mk" changes I checked in the other day were
sufficient to build and install a working Windows GHC and GHCi (built with
MinGW32 gcc 3.3.1), but required hand copying of perl and MinGW32. (ie
Points 1 and 2 are under control).
I tested various utility Makefile changes to suupport points 5 and 6 today.
I am testing tonight and tommorrow changes to Makefile to copy MinGW32 and
Perl (points 3 and 4).
If there are concerns about changing ".bin" to ".exe", I can conditionalise
the suffix change for Windows only as currently done in the "ghc-pkg"
Makefile; it just seems silly to have two different extensions when one
should be sufficient.
If everything goes well and everyone is happy I will, in a few days,
hdirectly check the remaining changes into HEAD. As we don't have Haddock
here, I will then celebrate with some Mullet or Cod for dinner instead.
The next step after that will be to retrofit these changes to the nightly
build binary distribution I've been working on, which should be a major
I would like to emphasise that there will be NO change to the way Unix
packages are installed except for the .bin/.exe binary executable name
swap - Unix directory layouts remain the same. This stuff is for Windows
More information about the Cvs-ghc