[m-rev.] for review: install release documentation on web page

Simon Taylor stayl at cs.mu.OZ.AU
Mon Oct 8 15:40:04 AEST 2001


Pete, could you please review this. There's an installed version in
/home/earth/stayl/opt/mercury/installed_w3.

Simon.


Estimated hours taken: 4

Put the documentation for the current release on the web page,
as well as the documentation for the latest snapshot.

w3/RELEASE_INFO:
	Contains `make' variables describing the name and CVS tag of
	the current official release.

compiler/notes/release_checklist.html:
	w3/RELEASE_INFO needs to be updated for each release.

w3/include/globals.inc.in:
	Add a variable containing the name of the current official release.

w3/include/globals.inc:
	Removed.

w3/Makefile:
	Build globals.inc by filling in the name of the current release
	in globals.inc.in with the name from RELEASE_INFO.

w3/Makefile.common:
	All HTML files depend on globals.inc.	

w3/information/Makefile:
	Check out and build the documentation for both the
	release branch and the main branch.

w3/include/menubar.inc:
w3/information/include/documentation.inc:
	Add the release versions of the documentation to the
	`Documentation' page and menubar.

w3/information/developers/remote_cvs.html:
w3/information/include/developer.inc:
w3/news/newsdb.inc:
w3/tutorial/defs.m4:
	Update the location of the documentation on the web page
	(`doc-release' or `doc-latest' rather than just `doc').


Index: w3/Makefile
===================================================================
RCS file: /home/mercury1/repository/w3/Makefile,v
retrieving revision 1.14
diff -u -u -r1.14 Makefile
--- w3/Makefile	28 Mar 2001 12:28:50 -0000	1.14
+++ w3/Makefile	6 Oct 2001 04:09:20 -0000
@@ -4,6 +4,8 @@
 # Public License - see the file COPYING in the Mercury distribution.
 #-----------------------------------------------------------------------------#
 
+include RELEASE_INFO
+
 HTML=	index.html 		\
 	mcorba.html		\
 	news.html 		\
@@ -23,6 +25,13 @@
 
 target: html
 
+html: globals.inc
+
+globals.inc: include/globals.inc
+
+include/globals.inc: include/globals.inc.in
+	sed -e "s/<RELEASE_VERSION>/$(RELEASE_VERSION)/" < $< > $@
+
 index.html: latest_news.inc newsdb.inc
 news.html: latest_news.inc newsdb.inc
 mcorba.html: mcorba_newsdb.inc
@@ -34,6 +43,10 @@
 	chgrp -R mercury $(INSTALL_WEBDIR)/images
 	chmod -R g+w,a+r $(INSTALL_WEBDIR)/images
 
+clean: local_clean
+
+local_clean:
+	rm -f include/globals.inc
 
 #-----------------------------------------------------------------------------#
 
Index: w3/Makefile.common
===================================================================
RCS file: /home/mercury1/repository/w3/Makefile.common,v
retrieving revision 1.12
diff -u -u -r1.12 Makefile.common
--- w3/Makefile.common	6 Dec 1999 23:57:08 -0000	1.12
+++ w3/Makefile.common	5 Oct 2001 08:50:18 -0000
@@ -13,7 +13,7 @@
 vpath %.inc $(ROOT)/include
 vpath %.inc $(ROOT)/news
 
-$(HTML): %.html: %.php3 %.inc menubar.inc template.inc functions.inc
+$(HTML): %.html: %.php3 %.inc globals.inc menubar.inc template.inc functions.inc
 
 #-----------------------------------------------------------------------------#
 
Index: w3/RELEASE_INFO
===================================================================
RCS file: w3/RELEASE_INFO
diff -N w3/RELEASE_INFO
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ w3/RELEASE_INFO	6 Oct 2001 07:34:30 -0000
@@ -0,0 +1,5 @@
+# A descriptive name for the release. See mercury/VERSION
+RELEASE_VERSION=0.10.1
+
+# The CVS tag of the release.
+RELEASE_TAG=version-0_10_y
Index: w3/include/globals.inc
===================================================================
RCS file: w3/include/globals.inc
diff -N w3/include/globals.inc
--- w3/include/globals.inc	2 Aug 2001 09:44:14 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,3 +0,0 @@
-<?
-	$installed_path="/home/mercury5/installed_w3";
-?>
Index: w3/include/globals.inc.in
===================================================================
RCS file: w3/include/globals.inc.in
diff -N w3/include/globals.inc.in
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ w3/include/globals.inc.in	6 Oct 2001 04:06:46 -0000
@@ -0,0 +1,4 @@
+<?
+	$installed_path="/home/mercury5/installed_w3";
+	$current_release="<RELEASE_VERSION>";
+?>
Index: w3/include/menubar.inc
===================================================================
RCS file: /home/mercury1/repository/w3/include/menubar.inc,v
retrieving revision 1.16
diff -u -u -r1.16 menubar.inc
--- w3/include/menubar.inc	2 Aug 2001 09:44:15 -0000	1.16
+++ w3/include/menubar.inc	6 Oct 2001 09:40:00 -0000
@@ -42,10 +42,18 @@
 ?>
 <SMALL>
     <a href="<?echo $root?>/tutorial/index.html">Tutorial</a><BR>
-    <a href="<?echo $root?>/information/doc/reference_manual_toc.html">Reference Manual</a><BR>
-    <a href="<?echo $root?>/information/doc/user_guide_toc.html">User Guide</a><BR>
-    <a href="<?echo $root?>/information/doc/library_toc.html">Library Reference</a><BR>
-    <a href="<?echo $root?>/information/doc/transition_guide_toc.html">cf. Prolog</a><BR>
+    Reference Manual<BR>
+    &nbsp&nbsp<a href="<?echo $root?>/information/doc-release/reference_manual_toc.html">Version <?echo $current_release?></a><BR>
+    &nbsp&nbsp<a href="<?echo $root?>/information/doc-latest/reference_manual_toc.html">Snapshot</a><BR>
+    User's Guide<BR>
+      <a href="<?echo $root?>/information/doc-release/user_guide_toc.html">Version <?echo $current_release?></a><BR>
+      <a href="<?echo $root?>/information/doc-latest/user_guide_toc.html">Snapshot</a><BR>
+    Library Reference<BR>
+      <a href="<?echo $root?>/information/doc-release/library_toc.html">Version <?echo $current_release?></a><BR>
+      <a href="<?echo $root?>/information/doc-latest/library_toc.html">Snapshot</a><BR>
+    cf. Prolog<BR>
+      <a href="<?echo $root?>/information/doc-release/transition_guide_toc.html">Version <?echo $current_release?></a><BR>
+      <a href="<?echo $root?>/information/doc-latest/transition_guide_toc.html">Snapshot</a><BR>
     <a href="<?echo $root?>/information/comparison_with_haskell.html">cf. Haskell</a><BR>
     <a href="http://hydra.cs.mu.oz.au/cgi-bin/fom">FAQ</a><BR>
 </SMALL>
Index: w3/information/Makefile
===================================================================
RCS file: /home/mercury1/repository/w3/information/Makefile,v
retrieving revision 1.18
diff -u -u -r1.18 Makefile
--- w3/information/Makefile	3 Oct 2001 11:38:06 -0000	1.18
+++ w3/information/Makefile	8 Oct 2001 04:51:39 -0000
@@ -1,6 +1,8 @@
 target: html
 
 ROOT=..
+include $(ROOT)/RELEASE_INFO
+
 HTML= 	benchmarks.html 	\
 	comparison_with_haskell.html \
 	deep_demo.html		\
@@ -17,12 +19,15 @@
 	bench			\
 	deep_demo		\
 	developers		\
-	doc			\
+	doc-release		\
+	doc-latest		\
 	dotnet			\
 	events			\
 	papers			\
 	reports
 
+CHECKOUT_DIRS = mercury/doc mercury/compiler/notes mercury/library
+
 all:     local
 install: local_install
 clean:   local_clean
@@ -30,23 +35,34 @@
 reports.html: reportsdb.inc
 
 local:
-	[ -d doc ] || mkdir doc
-	[ ! -d mercury ] || (cvs update mercury-doc)
-	[ -d mercury-doc ] || (cvs checkout -d mercury-doc mercury/doc)
-	[ -d library ] || (cvs checkout -d library mercury/library)
-	[ -d notes ] || (cvs checkout -d notes mercury/compiler/notes)
-	echo "LIBRARY_DIR=`pwd`/library"  > Mmake.common
-	echo "PERL=perl"  >> Mmake.common
-	echo "INFO=info"  >> Mmake.common
-	echo "DVIPS=dvips"  >> Mmake.common
-	echo 'include $$(MERCURY_DIR)/VERSION'  >> Mmake.common
-	echo "VERSION=rotd-`date '+%Y-%m-%d'`" > VERSION
-	(cd notes; mmake MERCURY_DIR=.. )
-	(cd mercury-doc; mmake split_html ps)
-	$(CP) notes/*.text doc
-	$(CP) mercury-doc/*.html notes/*.html doc
-	$(CP) mercury-doc/*.ps doc
-	(cd doc; gzip -f -9 *.ps)
+	[ -d doc-release ] || mkdir doc-release
+	[ -d doc-latest ] || mkdir doc-latest
+	[ -d mercury-release ] || mkdir mercury-release
+	[ -d mercury-latest ] || mkdir mercury-latest
+	(cd mercury-latest; cvs checkout $(CHECKOUT_DIRS))
+	(cd mercury-release; cvs checkout -r$(RELEASE_TAG) $(CHECKOUT_DIRS))
+	echo "VERSION=rotd-`date '+%Y-%m-%d'`" > mercury-latest/mercury/VERSION
+	echo "VERSION=$(RELEASE_VERSION)" > mercury-release/mercury/VERSION
+	for branch in release latest; do \
+		info_dir=`pwd`; \
+		doc_dir=$$info_dir/doc-$$branch; \
+		cd mercury-$$branch/mercury; \
+		echo "LIBRARY_DIR=`pwd`/library"  > Mmake.common; \
+		echo "PERL=perl"  >> Mmake.common; \
+		echo "INFO=info"  >> Mmake.common; \
+		echo "DVIPS=dvips"  >> Mmake.common; \
+		echo 'include $$(MERCURY_DIR)/VERSION'  >> Mmake.common; \
+		(cd doc; mmake split_html ps); \
+		$(CP) doc/*.html doc/*.ps $$doc_dir; \
+		(cd $$doc_dir; gzip -f -9 *.ps); \
+		cd $$info_dir; \
+	done
+	# It's not worth installing the release branch versions of
+	# these files. Developers should normally be working with
+	# the latest versions.
+	(cd mercury-latest/mercury/compiler/notes; mmake)
+	$(CP) mercury-latest/mercury/compiler/notes/*.text \
+		mercury-latest/mercury/compiler/notes/*.html doc-latest
 
 local_install: all
 	for dir in $(SUBDIRS) ;					\
@@ -57,6 +73,6 @@
 	done
 
 local_clean:
-	-rm -rf doc
+	-rm -rf doc-release doc-latest mercury-release mercury-latest
 
 include ../Makefile.common
Index: w3/information/developers/remote_cvs.html
===================================================================
RCS file: /home/mercury1/repository/w3/information/developers/remote_cvs.html,v
retrieving revision 1.4
diff -u -u -r1.4 remote_cvs.html
--- w3/information/developers/remote_cvs.html	1 Aug 2001 12:12:35 -0000	1.4
+++ w3/information/developers/remote_cvs.html	8 Oct 2001 05:06:55 -0000
@@ -196,7 +196,7 @@
 	  </ul>
 	  or
 	  <ul>
-	  	<li>on the <a href="http://www.mercury.cs.mu.oz.au/information/doc/reviews.html">web</a>
+	  	<li>on the <a href="http://www.mercury.cs.mu.oz.au/information/doc-latest/reviews.html">web</a>
 	  </ul>
 	  Basically, we don't commit broken code into the repository,
 	  and we don't commit un-reviewed code.
Index: w3/information/include/developer.inc
===================================================================
RCS file: /home/mercury1/repository/w3/information/include/developer.inc,v
retrieving revision 1.6
diff -u -u -r1.6 developer.inc
--- w3/information/include/developer.inc	17 Jan 2001 00:49:50 -0000	1.6
+++ w3/information/include/developer.inc	8 Oct 2001 04:56:44 -0000
@@ -35,84 +35,84 @@
 	Outlines reviewing procedure. <p>
 
 	Available in
-	<a href="doc/reviews.html">HTML</a> and 
-	<a href="doc/reviews.text">Plain text</a>
+	<a href="doc-latest/reviews.html">HTML</a> and 
+	<a href="doc-latest/reviews.text">Plain text</a>
 	<p>
 
 <li>	<strong>Mercury Coding Standards</strong> <br>
 	Standard for Mercury code. <p>
 
 	Available in
-	<a href="doc/coding_standards.html">HTML</a> and 
-	<a href="doc/coding_standards.text">Plain text</a>
+	<a href="doc-latest/coding_standards.html">HTML</a> and 
+	<a href="doc-latest/coding_standards.text">Plain text</a>
 	<p>
 
 <li>	<strong>Compiler Design</strong> <br>
 	Details of the compiler design. <p>
 
 	Available in
-	<a href="doc/compiler_design.html">HTML</a> and
-	<a href="doc/compiler_design.text">Plain text</a>
+	<a href="doc-latest/compiler_design.html">HTML</a> and
+	<a href="doc-latest/compiler_design.text">Plain text</a>
 	<p>
 
 <li>	<strong>Allocation</strong> <br>
 	Details of the allocation scheme currently being implemented. <p>
 
 	Available in
-	<a href="doc/allocation.html">HTML</a> and
-	<a href="doc/allocation.text">Plain text</a>
+	<a href="doc-latest/allocation.html">HTML</a> and
+	<a href="doc-latest/allocation.text">Plain text</a>
 	<p>
 
 <li>	<strong>Module system</strong> <br>
 	Details of the module system. <p>
 
 	Available in
-	<a href="doc/module_system.html">HTML</a> and
-	<a href="doc/module_system.text">Plain text</a>
+	<a href="doc-latest/module_system.html">HTML</a> and
+	<a href="doc-latest/module_system.text">Plain text</a>
 	<p>
 
 <li>	<strong>Release checklist</strong> <br>
 	The release procedure. <p>
 
 	Available in
-	<a href="doc/release_checklist.html">HTML</a> and
-	<a href="doc/release_checklist.text">Plain text</a>
+	<a href="doc-latest/release_checklist.html">HTML</a> and
+	<a href="doc-latest/release_checklist.text">Plain text</a>
 	<p>
 
 <li>	<strong>Garbage collection and C code</strong> <br>
 	<p>
 
 	Available in
-	<a href="doc/gc_and_c_code.html">HTML</a> and
-	<a href="doc/gc_and_c_code.text">Plain text</a>
+	<a href="doc-latest/gc_and_c_code.html">HTML</a> and
+	<a href="doc-latest/gc_and_c_code.text">Plain text</a>
 	<p>
 
 <li>	<strong>Glossary</strong> <br>
 	Terms used in the Mercury implementation.  <p>
 
 	Available in
-	<a href="doc/glossary.html">HTML</a> and
-	<a href="doc/glossary.text">Plain text</a>
+	<a href="doc-latest/glossary.html">HTML</a> and
+	<a href="doc-latest/glossary.text">Plain text</a>
 	<p>
 
 <li>	<strong>To do list</strong> <br>
 	Things still to do in the Mercury project.  <p>
 
 	Available in
-	<a href="doc/todo.html">HTML</a> and
-	<a href="doc/todo.text">Plain text</a>
+	<a href="doc-latest/todo.html">HTML</a> and
+	<a href="doc-latest/todo.text">Plain text</a>
 	<p>
 
 <li>	<strong>Bootstrapping</strong> <br>
 	What to do when a change requires bootstrapping. <p>
 
 	Available in
-	<a href="doc/bootstrapping.html">HTML</a>
+	<a href="doc-latest/bootstrapping.html">HTML</a>
 	<p>
 
 <li>	<strong>HOWTO add a new user.</strong> <br>
 	Information on what needs to be done when a new person joins the
-    mercury project.  <p>
+	Mercury project.  <p>
 
 	Available in
 	<a href="developers/add_new_user.html">HTML</a>
Index: w3/information/include/documentation.inc
===================================================================
RCS file: /home/mercury1/repository/w3/information/include/documentation.inc,v
retrieving revision 1.5
diff -u -u -r1.5 documentation.inc
--- w3/information/include/documentation.inc	12 Mar 2001 19:48:42 -0000	1.5
+++ w3/information/include/documentation.inc	6 Oct 2001 10:15:09 -0000
@@ -1,12 +1,18 @@
 <h2>Mercury Documentation</h2>
 
+This page contains documentation for 
+<a href=<? echo $root ?>/download/release.html>Mercury version <? echo $current_release ?></a>,
+and for the latest
+<a href=<? echo $root ?>/download/rotd.html>development snapshot</a>.
+<p>
+
 The HTML versions are set up for browsing, however, if you'd prefer a
 copy of the entire document, links to postscript copies are provided.
 Please note that the postscript files are compressed using gzip and are
 in a4 format.
 <p>
 <ul>
-	<li> <a href="mailto:rwab1 at cam.sri.com">Ralph Becket</a>'s
+	<li> <a href="mailto:rafe at cs.mu.oz.au">Ralph Becket</a>'s
 	     <strong>Mercury tutorial</strong><br>
 	A beginner's introduction to Mercury.
 	This is still under development. 
@@ -23,9 +29,14 @@
 	the module system, foreign language interface and higher-order
 	programming.<p>
 
-	Available in 
-	<a href="doc/reference_manual_toc.html">HTML</a> or
-	<a href="doc/reference_manual.ps.gz">Postscript</a>
+	<dl compact>
+	<dt> Version <? echo $current_release ?>: <dd>
+	<a href="doc-release/reference_manual_toc.html">HTML</a> or
+	<a href="doc-release/reference_manual.ps.gz">Postscript</a>.
+	<dt> Snapshot: <dd>
+	<a href="doc-latest/reference_manual_toc.html">HTML</a> or
+	<a href="doc-latest/reference_manual.ps.gz">Postscript</a>.
+	</dl>
 	<p>
 
 	<li> <strong>Mercury User's Guide</strong><br>
@@ -33,18 +44,28 @@
 	how to compile, using multiple modules, profiling, debugging,
 	and compilation options. <p>
 
-	Available in 
-	<a href="doc/user_guide_toc.html">HTML</a> or
-	<a href="doc/user_guide.ps.gz">Postscript</a>
+	<dl compact>
+	<dt> Version <? echo $current_release ?>: <dd>
+	<a href="doc-release/user_guide_toc.html">HTML</a> or
+	<a href="doc-release/user_guide.ps.gz">Postscript</a>.
+	<dt> Snapshot: <dd>
+	<a href="doc-latest/user_guide_toc.html">HTML</a> or
+	<a href="doc-latest/user_guide.ps.gz">Postscript</a>.
+	</dl>
 	<p>
 
 	<li> <strong>Mercury Library Reference Manual</strong><br>
 	Descriptions of the interfaces to the library
 	which comes with the Mercury distribution.<p>
 
-	Available in 
-	<a href="doc/library_toc.html">HTML</a> or
-	<a href="doc/library.ps.gz">Postscript</a>
+	<dl compact>
+	<dt> Version <? echo $current_release ?>: <dd>
+	<a href="doc-release/library_toc.html">HTML</a> or
+	<a href="doc-release/library.ps.gz">Postscript</a>.
+	<dt> Snapshot: <dd>
+	<a href="doc-latest/library_toc.html">HTML</a> or
+	<a href="doc-latest/library.ps.gz">Postscript</a>.
+	</dl>
 	<p>
 
 	<li> <strong>Prolog to Mercury Transition Guide</strong><br>
@@ -52,9 +73,14 @@
 	programs to Mercury. Includes information on differences in
 	the languages and common programming styles.<p>
 
-	Available in 
-	<a href="doc/transition_guide_toc.html">HTML</a> or
-	<a href="doc/transition_guide.ps.gz">Postscript</a>
+	<dl compact>
+	<dt> Version <? echo $current_release ?>: <dd>
+	<a href="doc-release/transition_guide_toc.html">HTML</a> or
+	<a href="doc-release/transition_guide.ps.gz">Postscript</a>.
+	<dt> Snapshot: <dd>
+	<a href="doc-latest/transition_guide_toc.html">HTML</a> or
+	<a href="doc-latest/transition_guide.ps.gz">Postscript</a>.
+	</dl>
 	<p>
 
 	<li> <strong>Comparing Mercury and Haskell</strong><br>
Index: w3/news/newsdb.inc
===================================================================
RCS file: /home/mercury1/repository/w3/news/newsdb.inc,v
retrieving revision 1.60
diff -u -u -r1.60 newsdb.inc
--- w3/news/newsdb.inc	13 Aug 2001 05:49:34 -0000	1.60
+++ w3/news/newsdb.inc	8 Oct 2001 05:09:28 -0000
@@ -282,7 +282,7 @@
 "The Mercury debugger now includes support for interactive queries.
 See the \"Interactive query commands\" subsection of the \"Debugger commands\"
 section of the \"Debugging\" chapter of the
-<A HREF=\"http://www.cs.mu.oz.au/research/mercury/information/doc/user_guide_toc.html\">Mercury User's Guide</A>.  
+<A HREF=\"http://www.cs.mu.oz.au/research/mercury/information/doc-latest/user_guide_toc.html\">Mercury User's Guide</A>.  
 "),
 
 
Index: w3/tutorial/defs.m4
===================================================================
RCS file: /home/mercury1/repository/tutorial/defs.m4,v
retrieving revision 1.3
diff -u -u -r1.3 defs.m4
--- w3/tutorial/defs.m4	6 Dec 1999 06:54:50 -0000	1.3
+++ w3/tutorial/defs.m4	8 Oct 2001 05:00:46 -0000
@@ -85,7 +85,7 @@
 
 
 # define(LIBDOCS, `file:/usr/local/mercury-0.8/lib/mercury/html/library')
-define(LIBDOCS, `http://www.cs.mu.oz.au/research/mercury/information/doc/library')
+define(LIBDOCS, `http://www.cs.mu.oz.au/research/mercury/information/doc-release/library')
 # define(LIBENDING, `.html#SEC$1')
 define(LIBENDING, `_$1.html')
 define(LIB, `LINK(LIBDOCS`'LIBENDING(LIBSEC$1), TT($1))')
Index: compiler/notes/release_checklist.html
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/notes/release_checklist.html,v
retrieving revision 1.18
diff -u -u -r1.18 release_checklist.html
--- compiler/notes/release_checklist.html	28 Feb 2001 13:26:11 -0000	1.18
+++ compiler/notes/release_checklist.html	6 Oct 2001 05:06:21 -0000
@@ -35,6 +35,9 @@
      Note that the sources for these HTML documents are in the files named
      include/*.inc and *.php3.
      <ul>
+     <li> Update the RELEASE_INFO file with the name and CVS tag
+          of the new release.
+
      <li> For minor releases, update release.html with a new entry about
 	  this release (put it at the top of the page), and provide a
 	  new link to download the release. See old-release.html for
--------------------------------------------------------------------------
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