[m-rev.] for review: Suggested readme patches

Julien Fischer juliensf at cs.mu.OZ.AU
Mon Mar 6 14:30:54 AEDT 2006


On Wed, 1 Mar 2006, Jonathan Morgan wrote:

> Below are some changes that I think need making to the README files.

Thanks for that.  There were a bunch of other changes that needed to be
made as well.  (BTW, in future could you please not send attachements as
HTML.)

> Estimated hours taken: 0.5
> Branches: main
>
> Update README files.
>
> README.Cygwin:
>	 Remove references to the old Cygwin binary package, which has
>	 been superseded by MinGW packages.

Just because we now supply MinGW binaries doesn't mean we won't also
supply ones for Cygwin (I know we didn't for 0.12 but that's mainly
because we didn't get around to building any.)

> README.DotNet:
>	Mention that the IL backend has been tested on .NET 1.1, as well
> 	as 1.0.

Done.

> README.MS-VisualC
>             Mention that the Visual C backend may need the Platform SDK.

Done.

Here's a revised diff incorporating the above changes plus a few others.

Estimated hours taken: 0.5 (by Jonathan Morgan) + 0.2 (by me)
Branches: main

README.Cygwin:
	Put angle brackets around URLs.

README.Dotnet:
	Put angle brackets around URLs and fix inconsistent indentation.

	Mention that the IL backend has been tested on .NET 1.1, as well
 	as 1.0.

	Fix the C# foreign_proc example so that it is valid Mercury.

README.MS-VisualC:
	Mention that the Visual C backend may need the Platform SDK.

	Don't be so specific about the Mercury version.

	s/ie/i.e./

Index: README.Cygwin
===================================================================
RCS file: /home/mercury1/repository/mercury/README.Cygwin,v
retrieving revision 1.1
diff -u -r1.1 README.Cygwin
--- README.Cygwin	4 Oct 2005 10:34:36 -0000	1.1
+++ README.Cygwin	6 Mar 2006 02:35:34 -0000
@@ -22,13 +22,13 @@
 Cygwin 1.1.* or Cygwin 1.3.2 or later should be OK.  Recent versions of
 Cygwin can be installed directly from:

-	http://sources.redhat.com/cygwin/setup.exe
+	<http://sources.redhat.com/cygwin/setup.exe>

 This program will download and install the required components.

 If you want more information on Cygwin, see the site:

-	http://sources.redhat.com/cygwin/
+	<http://sources.redhat.com/cygwin/>

 If you're going to use a binary distribution of Mercury for Windows,
 you need to make sure that you get a version of Cygwin that is
@@ -143,13 +143,16 @@
 If you want to use the mtags tool from the Mercury distribution, you'll
 need to install perl.  A binary distribution of Perl is available at the
 Cygwin porting project:
-	http://www.student.uni-koeln.de/cygwin/
+
+	<http://www.student.uni-koeln.de/cygwin/>

 If you want to build your own Mercury releases from the CVS sources, you
 will need a previously installed Mercury compiler (for example, one of
 the recent releases of the day).  You will also need GNU autoconf, which
-can be downloaded from
-	ftp://ftp.gnu.org/pub/gnu/autoconf/
+can be downloaded from:
+
+	<ftp://ftp.gnu.org/pub/gnu/autoconf/>
+
 Autoconf should configure, build and install directly from the source
 package.

Index: README.DotNet
===================================================================
RCS file: /home/mercury1/repository/mercury/README.DotNet,v
retrieving revision 1.13
diff -u -r1.13 README.DotNet
--- README.DotNet	19 Feb 2004 06:38:48 -0000	1.13
+++ README.DotNet	6 Mar 2006 03:09:55 -0000
@@ -13,15 +13,18 @@
 compiler, and to pass more than 90% of the applicable tests in the Mercury
 test suite.

-The port is currently targetted at the Microsoft .NET Framework SDK version 1.
+The port is currently targeted at the Microsoft .NET Framework SDK versions
+1 and 1.1.  We recommend version 1.1.

 PREREQUISITES

 In order to try this system you will need

-	- The Microsoft .NET Framework SDK version 1, which can be
-	  downloaded for free from
-		<http://msdn.microsoft.com/net/>
+	- The Microsoft .NET Framework SDK version 1 or 1.1, which can be
+	  downloaded for free from:
+
+		<http://msdn.microsoft.com/netframework/>
+
 	  If you are an MSDN Universal subscriber you can also order
 	  CDs as part of your subscription.

@@ -35,7 +38,8 @@
 		  Microsoft Windows 2000 (SP 2 recommended)
 		  Microsoft Windows XP Professional

-	  We have tested only on Windows 2000 (with SP 2).
+	  We have tested only on Windows 2000 (with SP 2) and
+	  Windows XP Home.

 	- Cygwin (see README.MS-Windows for how to install).
   	  The Mercury compiler still runs as a native compiler, built
@@ -56,7 +60,7 @@

 call "C:\Program Files\Microsoft Visual Studio.NET\Common7\Tools\vsvars32.bat"

-	  into your cygwin.bat file (installed on the desktop by cygwin),
+	  into your cygwin.bat file (installed on the desktop by Cygwin),
 	  after the line that says @echo off.
 	  Substitute your Visual Studio installation path for the default path
 	  given here.
@@ -69,7 +73,8 @@
 	  from either the source or binary distribution.

 	  If you're reading this file from somewhere other than the
-	  Mercury distribution, try the Mercury homepage at
+	  Mercury distribution, try the Mercury homepage at:
+
 	  	<http://www.cs.mu.oz.au/mercury/>

 -----------------------------------------------------------------------------
@@ -128,14 +133,17 @@

 For example:

-:- pred to_string(T::in, string::out) is det.
-:- pragma foreign_proc("C#", to_string(T::in, Str::out), [],
-"{
-        Str = T.ToString();
-}").
+	:- pred to_string(T::in, string::out) is det.
+	:- pragma foreign_proc("C#",
+		to_string(T::in, Str::out),
+		[promise_pure, will_not_call_mercury],
+	"
+		Str = T.ToString();
+	").

 For more information about the foreign language interface, refer to the Mercury
 Language Reference Manual, which you can find at:
+
 	<http://www.cs.mu.oz.au/mercury/information/documentation.html>

 The implementation will put this C# in a separate file, which will be
@@ -178,11 +186,11 @@

 You might find the following pages useful:

-	http://www.cs.mu.oz.au/research/mercury/dotnet.html
+	<http://www.cs.mu.oz.au/research/mercury/dotnet.html>

-	http://msdn.microsoft.com/net/
+	<http://msdn.microsoft.com/netframework/>

-	http://www.gotdotnet.com/
+	<http://www.gotdotnet.com/>

 -----------------------------------------------------------------------------

Index: README.MS-VisualC
===================================================================
RCS file: /home/mercury1/repository/mercury/README.MS-VisualC,v
retrieving revision 1.7
diff -u -r1.7 README.MS-VisualC
--- README.MS-VisualC	2 Apr 2004 08:53:39 -0000	1.7
+++ README.MS-VisualC	6 Mar 2006 03:10:50 -0000
@@ -4,9 +4,12 @@

 Mercury has been ported to use the Microsoft Visual C++ compiler.  It
 has been tested with both version 6.0 and 7.0.  However not all
-dependencies on Cygwin have been removed and cygwin is still required
+dependencies on Cygwin have been removed and Cygwin is still required
 for installation (see README.MS-Windows).

+If you wish to use Microsoft Visual C++ Toolkit 2003, or Microsoft
+Visual C++ Express 2005, you will require the Platform SDK.
+
 -----------------------------------------------------------------------------

 CONFIGURATION
@@ -20,7 +23,7 @@
 Visual C runtime, instead of the standard libC runtime.

 Also ensure that the environment variable TMPDIR exists and is set to
-".".  This avoids problems with mixing cygwin and windows paths.
+".".  This avoids problems with mixing Cygwin and Windows paths.

 -----------------------------------------------------------------------------

@@ -30,26 +33,41 @@
 prebuilt C files.  These C files are generated using the asm_fast grade
 which is incompatible with hlc.gc.  In order to alleviate this problem:

-1. Install cygwin (avoid the bug in sscanf with 1.3.1-1)
+1. Install Cygwin (avoid the bug in sscanf with 1.3.1-1)

 2. Install an asm_fast grade version of the compiler which uses gcc as
    the C compiler.  This can be done from a source or binary
    distribution.  Follow standard instructions.  I suggest:

-   a) configure --prefix /usr/local/mercury-0.10.1
+   a) configure --prefix /usr/local/mercury-<VERSION>
+      (See the file VERSION in the top-level directory of the Mercury
+       distribution for details of the Mercury version number scheme.)
    b) make install

    Ensure your path has been modified so you can see the new mmc once it
    is built.  For example:

-   a) edit /etc/profile and add /usr/local/mercury-0.10.1 to PATH
+   a) edit /etc/profile and add /usr/local/mercury-<VERSION> to PATH

 3. To build a version of the mercury compiler with MSVC++ instead of
    gcc, remotely check out a fresh version of the compiler, eg.

    a) cvs -d :pserver:guest at cvs.mercury.cs.mu.oz.au:/home/mercury1/repository login
    (password is guest)
-   b) cvs -d :pserver:guest at cvs.mercury.cs.mu.oz.au:/home/mercury1/repository co -r version-0_10_1 mercury
+   b) cvs -d :pserver:guest at cvs.mercury.cs.mu.oz.au:/home/mercury1/repository co mercury
+
+   Alternatively, you can just run mmake realclean to create a fresh version
+   of the compiler.
+
+   If you wish to checkout a specific release of Mercury, use the -r option
+   to co and one of the following release tags:
+
+   	Release		Release Tag
+	-------		-----------
+	0.11.0		version-0_11_0
+	0.12.0		version-0_12_0
+	0.12.1		version-0_12_1
+	0.12.2		version-0_12_2

    Then to use MSVC++ to build the compiler issue the following configure
    command.  (You must be able to run MSVC++ from command line):
@@ -72,13 +90,13 @@
 you need to add `--prefix //foo/usr/local' as an option to configure.

 Then ensure that the directory that you wish to install into is mounted
-somewhere, ie
+somewhere, i.e.

-mount //foo/usr/local /temp_mount_point
+	mount //foo/usr/local /temp_mount_point

 and then use that mount point as the location to install into

-make install INSTALL_PREFIX=/temp_mount_point
+	make install INSTALL_PREFIX=/temp_mount_point

 This avoids the problem that
--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list