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>