[mercury-users] mingw rotd

Fergus Henderson fjh at cs.mu.OZ.AU
Thu Mar 13 15:43:10 AEDT 2003


On 13-Mar-2003, Michael Day <mikeday at yeslogic.com> wrote:
> 
> Would it be possible to release some recent rotd for mingw?

Currently that procedure cannot be easily automated.  There are two
main problems.  Firstly, during the nightly builds on Windows (using
Cygwin), some test failures result in pop-up windows that require manual
intervention to continue the testing process.  Secondly, the Mingw version
is not yet self-hosting.  In fact the Mingw distribution of Mercury 0.11 was
produced by building the libraries with Mingw, but using the compiler
from the Cygwin version of Mercury 0.11.

Building binary distributions like this manually takes some time and
effort and as a result we only do it for official releases, not ROTDs.

> (Is there any description of the procedure for building Mercury using
> mingw for cross-compiling Mercury programs on Linux for Windows?)

For cross-compiling from Cygwin to Mingw?
- First, install the Cygwin version of Mercury, and put it in your PATH.
- Second, configure the source distribution of Mercury using
  --with-cc="gcc -mno-cygwin".
- Third, run "make" and "make install".
- Fourth, replace the following files in the installed Mingw Mercury
  directories with copies of the corresponding file from the installed
  Cygwin Mercury directories:
	mercury_compile.exe	(in <prefix>/lib/mercury/bin/<config>)
	mercury_profile.exe	(in <prefix>/lib/mercury/bin/<config>)
	mdemangle.exe		(in <prefix>/bin)
	mkinit.exe		(in <prefix>/bin)

For cross-compiling from Linux to Mingw? 
Not that I know of.  AFAIK no-one has done that yet.
But it is possible that something similar to the above technique would work:
- First, install the Linux native of Mercury, and put it in your PATH,
  and install the Mingw cross-compiler version of gcc.
- Second, configure the source distribution of Mercury using
  --with-cc="i686-pc-mingw-gcc".
- Third, run "make" and "make install".
- Fourth, replace the following files in the installed Mingw Mercury
  directories with copies of the corresponding file from the installed
  Linux native Mercury directories:
	mercury_compile	(in <prefix>/lib/mercury/bin/<config>)
	mercury_profile	(in <prefix>/lib/mercury/bin/<config>)
	mkinit		(in <prefix>/bin)
	mdemangle	(in <prefix>/bin)

(Let us know if it works.)

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
The University of Melbourne         |  of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh>  |     -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-users mailing list
post:  mercury-users at cs.mu.oz.au
administrative address: owner-mercury-users at cs.mu.oz.au
unsubscribe: Address: mercury-users-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-users-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the users mailing list