Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 23 Oct 2009 23:50:02 GMT
From:      Johannes 5 Joemann <joemann@beefree.free.de>
To:        freebsd-ports-bugs@FreeBSD.org
Subject:   Re: ports/139807: [MAINTAINER] lang/smlnj-devel: update to 110.71 and adapt devel/ml-doc accordingly
Message-ID:  <200910232350.n9NNo2lN029299@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR ports/139807; it has been noted by GNATS.

From: Johannes 5 Joemann <joemann@beefree.free.de>
To: bug-followup@FreeBSD.org, joemann@beefree.free.de
Cc:  
Subject: Re: ports/139807: [MAINTAINER] lang/smlnj-devel: update to 110.71
 and adapt devel/ml-doc accordingly
Date: Sat, 24 Oct 2009 01:19:48 +0200

 Oops:-)
 
  > Class Changed
  > From-To: maintainer-update->change-request
  > Why: Fix category (submitter is not maintainer) (via the GNATS Auto Assign Tool)
 
 I'm sorry if this was caused by the mangled portname in the synopsis:
 lang/smlnj-devel is wrong, lang/sml-nj-devel is right. (*)
 
  > State-Changed-From-To: open->feedback 
  > State-Changed-Why: Awaiting maintainers feedback (via the GNATS Auto Assign Tool) 
 
 I do approve my own patch, if this is what's missing to make this PR
 proceed:-)
 
 The patch [1] to devel/ml-doc was already approved by Timothy Bourke,
 the ml-doc maintainer, see above. I'll include that patch here for
 completeness. As explained above, it would be nice if devel/ml-doc
 could be patched simultaneously with or soon after updating
 lang/sml-nj-devel.
 
 Thanx!
 Johannes (maintainer of lang/sml-nj-devel)
 
 (*) See PR ports/139872 for an explanation of this mess:)
 
 --- ml-doc.patch.20091009 begins here ---
 (** new files:
 files/fix-cml-doc.sh.in
 files/patch-tools-lib-code_style-sml_token_scanner.sml
 **)
 --- Makefile	2007-09-12 04:53:51.000000000 +0200
 +++ Makefile	2009-10-08 21:04:20.000000000 +0200
 @@ -16,7 +16,7 @@
  MAINTAINER=	timbob@bigpond.com
  COMMENT=	Language and tools for documenting Standard ML libraries
  
 -BUILD_DEPENDS=	smlnj-devel>=110.65:${PORTSDIR}/lang/sml-nj-devel \
 +BUILD_DEPENDS=	smlnj-devel>=110.71:${PORTSDIR}/lang/sml-nj-devel \
  		nsgmls:${PORTSDIR}/textproc/jade
  RUN_DEPENDS=	nsgmls:${PORTSDIR}/textproc/jade
  
 @@ -25,7 +25,7 @@
  ALL_TARGET=	build
  MAKE_ENV+=	DATADIR=${DATADIR} SMLNJ_DEVEL=yes
  
 -SUB_FILES=	ml-doc.1 mkdoc.1
 +SUB_FILES=	ml-doc.1 mkdoc.1 fix-cml-doc.sh
  MAN1=		ml-doc.1 mkdoc.1
  MLINKS=		ml-doc.1 extract-sig.1 ml-doc.1 extract-info.1 \
  		ml-doc.1 merge-info.1 ml-doc.1 html-gen.1 \
 --- files/fix-cml-doc.sh.in	1970-01-01 01:00:00.000000000 +0100
 +++ files/fix-cml-doc.sh.in	2009-10-09 19:20:58.000000000 +0200
 @@ -0,0 +1,38 @@
 +#!/bin/sh
 +
 +# simple script to fix the sml-nj cml documentation
 +# source so that it can be used as a test for ml-doc.
 +
 +DOCSRCDIR='%%PREFIX%%/smlnj/cml/doc'
 +
 +if [ ! -d "$DOCSRCDIR" ]
 +then
 +	echo "CML doc sources not found in directory $DOCSRCDIR"
 +	echo "Install lang/sml-nj-devel with option WITH_EVERYTHING"
 +	exit 1
 +fi
 +
 +cp -r "$DOCSRCDIR" ./cml-doc
 +cd cml-doc/
 +
 +sed -i .orig -e 's#/Users/jhr/Work/sml-basis/Basis/##' Config.cfg
 +
 +mkdir Info
 +mkdir HTML
 +
 +mv ML-Doc/lib/* ML-Doc/
 +rmdir ML-Doc/lib 
 +
 +sed -i .orig -e 's#/Users/jhr/Work/Tools#%%PREFIX%%/share#' CATALOG 
 +
 +sed -i .orig \
 +    -e 's/STRID="CML"/STRID="RunCML"/' \
 +    -e 's/SIGID="CML"/SIGID="RunCML"/' \
 +    -e 's/FILE=CML-SIG/FILE=RUNCML-SIG/' \
 +    ML-Doc/run-cml.mldoc
 +
 +echo '<!ENTITY RUNCML SDATA "RUNCML">' >> Entities.sgml 
 +echo '<!ENTITY RUNCML-SIG SDATA "run-cml-sig.sml">' >> Entities.sgml 
 +
 +find ML-Doc -name '*.mldoc' -print | mk-mldoc-makefile 
 +make
 --- files/ml-doc.1.in	2007-09-07 14:01:00.000000000 +0200
 +++ files/ml-doc.1.in	2009-10-08 21:04:20.000000000 +0200
 @@ -117,12 +117,12 @@
  .Op Fl root Ar file
  .Ar mldoc-files
  .Sh DESCRIPTION
 -.ML-Doc
 +ML-Doc
  is a system for producing reference manuals for SML libraries. It can
  produce high quality documentation with extensive indexing, like the
  published SML Basis Library reference manual, and also HTML for online use.
  .Pp
 -.ML-Doc
 +ML-Doc
  is different to systems like javadoc that extract documentation from source
  files.
  Rather, the documentation
 @@ -132,14 +132,14 @@
  can be used to create source files from documentation. The
  .Xr mkdoc 1
  utility, however, can produce first drafts from source files.
 -.ML-Doc
 +ML-Doc
  is most useful for documenting stable library interfaces.
  .Pp
 -.ML-Doc
 +ML-Doc
  files, marked by the extension
  .Pa .mldoc ,
  are SGML documents conforming to the
 -.ML-Doc
 +ML-Doc
  document type definition.
  .Pp
  This manual has four major sections besides the present one:
 @@ -431,7 +431,7 @@
  .\"
  .Ss Directory structure
  An
 -.ML-Doc
 +ML-Doc
  .Em project
  comprises a set of files and directories that, at a minimum, will include:
  .Bl -tag -width ".Pa index.template"
 @@ -440,7 +440,7 @@
  Typically links to
  .Pa Entities.sgml
  in the same directory and the installed
 -.ML-Doc
 +ML-Doc
  .Pa CATALOG
  file.
  See
 @@ -608,7 +608,7 @@
  .\"
  .Ss Entities
  Entities are used within
 -.ML-Doc
 +ML-Doc
  to include mathematical and other
  specialised symbols, to abbreviate titles and other text, to reference
  files, and to name certain output files.
 @@ -643,7 +643,7 @@
  .D1 This feature requires the &SMLNJ; libraries.
  .Pp
  Documentation will sometimes need to reference the
 -.ML-Doc
 +ML-Doc
  descriptions of other libraries; such as those of the SML Basis, SML/NJ, or
  Concurrent ML.
  The reference tags described under
 @@ -691,7 +691,7 @@
  hyperlinks to the online documentation.
  .Pp
  Entities are also used within
 -.ML-Doc
 +ML-Doc
  to specify values for the
  .Li FILE
  attribute, which specifies an input file for the
 @@ -713,7 +713,7 @@
  .\"
  .Ss General Use
  A simplified sequence of steps for creating
 -.ML-Doc
 +ML-Doc
  documentation:
  .Bl -enum
  .\" **
 @@ -807,7 +807,7 @@
  .Pa ml-doc.dtd
  file.
  An
 -.ML-Doc
 +ML-Doc
  file begins with the declaration:
  .Dl <!DOCTYPE ML-DOC SYSTEM>
  and contains header elements followed by one or more, potentially nested,
 @@ -928,7 +928,7 @@
  file, for HTML output, and/or
  .Pa *.tex
  file, for LaTeX output, is generated for each
 -.ML-Doc
 +ML-Doc
  source file.
  A complete document is constructed by including, with
  .Li INCLFILE
 @@ -1859,7 +1859,7 @@
  .\" ----------------------------------------
  .Sh SGML vs HTML/XML
  Although the basics of editing
 -.ML-Doc
 +ML-Doc
  will be familiar to most authors of HTML and XML, SGML has some peculiarities
  that are designed to make editing
  .Sq by hand
 @@ -1899,7 +1899,7 @@
  .\" ----------------------------------------
  .Sh FILES
  System-wide
 -.ML-Doc
 +ML-Doc
  files and directories are stored at:
  .Dl %%PREFIX%%/share/ml-doc
  Notably:
 @@ -1908,7 +1908,7 @@
  Master catalog file.
  .It Pa lib/ml-doc.dtd
  DTD of
 -.ML-Doc
 +ML-Doc
  language.
  .It Pa lib/entities.sgml
  Entity definitions
 @@ -1923,7 +1923,14 @@
  .Pq see Sx Directory Structure ,
  and writing up the ML-Doc files
  .Pq see Sx WRITING DOCUMENTATION ,
 -create a
 +first edit the
 +.Pa CATALOG
 +file:
 +.Bd -literal -offset indent -compact
 +ENTITY    %document-entities    "Entities.sgml"
 +CATALOG                         "%%PREFIX%%/share/ml-doc/lib/catalog"
 +.Ed
 +Then, create a
  .Pa Makefile :
  .Dl find ML-Doc -name '*.mldoc' -print | mk-mldoc-makefile
  .Pp
 --- files/patch-tools-lib-code_style-sml_token_scanner.sml	1970-01-01 01:00:00.000000000 +0100
 +++ files/patch-tools-lib-code_style-sml_token_scanner.sml	2009-10-08 21:04:20.000000000 +0200
 @@ -0,0 +1,36 @@
 +--- tools/lib/code-style/sml-token-scanner.sml.orig	2006-11-27 23:41:58.000000000 +0100
 ++++ tools/lib/code-style/sml-token-scanner.sml	2009-09-24 00:05:48.000000000 +0200
 +@@ -37,20 +37,20 @@
 + 
 +     val comElem : E.element option = SOME E.IT
 + 
 +-    fun startCom (M.Match(SOME{pos as {comLevel, data}, len}, _)) =
 ++    fun startCom (M.Match({pos as {comLevel, data}, len}, _)) =
 + 	  (comElem, prefix(len, pos), {comLevel=comLevel+1, data=SS.triml len data})
 + 
 +-    fun endCom (M.Match(SOME{pos as {comLevel, data}, len}, _)) =
 ++    fun endCom (M.Match({pos as {comLevel, data}, len}, _)) =
 + 	  (comElem, prefix(len, pos), {comLevel=comLevel-1, data=SS.triml len data})
 + 
 +-    fun ident (M.Match(SOME{pos, len}, _)) = let
 ++    fun ident (M.Match({pos, len}, _)) = let
 + 	  val txt = prefix(len, pos)
 + 	  val kind = if SMLKeywords.isKW txt then SOME E.KW else NONE
 + 	  in
 + 	    (kind, txt, trim(len, pos))
 + 	  end
 + 
 +-    fun mkToken (kind : E.element option) (M.Match(SOME{pos, len}, _)) =
 ++    fun mkToken (kind : E.element option) (M.Match({pos, len}, _)) =
 + 	  (kind, prefix(len, pos), trim(len, pos))
 + 
 +     val tyvar = mkToken NONE
 +@@ -60,7 +60,7 @@
 +     val entity = mkToken NONE
 + 
 +   (* string gets called after we have seen either #" or " *)
 +-    fun string (M.Match(SOME{pos, len}, _)) = let
 ++    fun string (M.Match({pos, len}, _)) = let
 + 	  fun getS (ss, n) = (case SS.getc ss
 + 		 of NONE => raise Fail "unclosed string"
 + 		  | SOME(#"\\", ss') => getS'(ss', n+1)
 --- ml-doc.patch.20091009 ends here ---



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200910232350.n9NNo2lN029299>