From: Pekka Riikonen Date: Tue, 22 Oct 2002 13:05:49 +0000 (+0000) Subject: Added support for creating PostScript Toolkit Reference Manual. X-Git-Tag: 1.2.beta1~1031 X-Git-Url: http://git.silcnet.org/gitweb/?p=crypto.git;a=commitdiff_plain;h=ea97e7c34a15fd0fbe74bc0705c804e92cfbed6f Added support for creating PostScript Toolkit Reference Manual. --- diff --git a/scripts/silcdoc/silcdoc b/scripts/silcdoc/silcdoc index 3d1ea72d..bf5069aa 100755 --- a/scripts/silcdoc/silcdoc +++ b/scripts/silcdoc/silcdoc @@ -21,8 +21,8 @@ # Arguments checking if [ $# -lt "4" ]; then - echo "Usage: ./silcdoc " - echo "Supported types: HTML" + echo "Usage: ./silcdoc " + echo "Supported types: HTML PS" # echo "Supported types: HTML, ASCII, LATEX or RTF" exit 1 fi @@ -35,6 +35,51 @@ ROBO=$4 # Get all headers in the source directory headers=`find $SRC -name "silc*.h"` +# +# PS documentation (from LATEX) +# +if [ "$TYPE" = "PS" ]; then + TYPE="LATEX" + rm -rf /tmp/silcdoc.tex + mkdir /tmp/silcdoc.tex + cp $headers /tmp/silcdoc.tex + + path=`pwd` + cd /tmp/silcdoc.tex + + # Generate cross reference files + headers=`find . -name "silc*.h" |cut -d/ -f2 |cut -d. -f1` + touch silcdoc_xref + for i in $headers + do + $ROBO $i.h $i.h.tex $TYPE INTERNAL GENXREF $i.h.xref + echo $i.h.xref >>silcdoc_xref + done + + # Generate the detailed documentation + headers=`find . -name "silc*.h" |cut -d/ -f2 |cut -d. -f1` + for i in $headers + do + # remove internals + rm -rf $i_i.h + $ROBO $i.h $i.h.tex XREF silcdoc_xref $TYPE C SORT NOSOURCE SINGLEDOC + done + + # Generate the index + $ROBO silcdoc_xref toolkit_mi INDEX $TYPE TITLE "SILC Toolkit Reference Manual" + + # Generate the postscript + latex toolkit_mi + makeindex toolkit_mi + latex toolkit_mi + latex toolkit_mi + dvips toolkit_mi.dvi -o $DST + + cd $path + +# rm -rf /tmp/silcdoc.tex +fi + # # ASCII documentation # diff --git a/util/robodoc/Source/generator.c b/util/robodoc/Source/generator.c index 7c43a30b..79a93467 100644 --- a/util/robodoc/Source/generator.c +++ b/util/robodoc/Source/generator.c @@ -167,7 +167,7 @@ RB_Generate_Doc_Start ( else fprintf (dest_doc, "@database %s\n", name); fprintf (dest_doc, "@rem Source: %s\n", src_name); - fprintf (dest_doc, "@rem " COMMENT_ROBODOC); +/* fprintf (dest_doc, "@rem " COMMENT_ROBODOC); */ fprintf (dest_doc, "@rem " COMMENT_COPYRIGHT); fprintf (dest_doc, "@node Main %s\n", name); fprintf (dest_doc, "@{jcenter}\n"); @@ -364,11 +364,22 @@ RB_Generate_Doc_Start ( case LATEX: fprintf (dest_doc, "%% Document: %s\n", name); - fprintf (dest_doc, "%% Source: %s\n", src_name); - fprintf (dest_doc, "%% " COMMENT_ROBODOC); + fprintf (dest_doc, "%% Source: %s\n", src_name); +/* fprintf (dest_doc, "%% " COMMENT_ROBODOC);*/ fprintf (dest_doc, "%% " COMMENT_COPYRIGHT); if (course_of_action & DO_SINGLEDOC) { - fprintf (dest_doc, "\\section{%s}\n", src_name); + if (!strchr(src_name, '_')) { + fprintf (dest_doc, "\\section{%s}\n", src_name); + } else { + char *tmp = calloc(strlen(src_name) + 2, sizeof(*tmp)); + *strchr(src_name, '_') = '\\'; + strncat(tmp, src_name, strcspn(src_name, "\\") + 1); + strncat(tmp, "_", 1); + strncat(tmp, src_name + strcspn(src_name, "\\") + 1, + strlen(src_name) - strcspn(src_name, "\\") - 1); + fprintf (dest_doc, "\\section{%s}\n", tmp); + free(tmp); + } } else { fprintf (dest_doc, "\\documentclass{article}\n"); fprintf (dest_doc, "\\usepackage{makeidx}\n"); @@ -392,7 +403,7 @@ RB_Generate_Doc_Start ( } else { fprintf (dest_doc, "\\title{API Reference}\n"); } - fprintf (dest_doc, "\\author{%s}\n", COMMENT_ROBODOC); +/* fprintf (dest_doc, "\\author{%s}\n", COMMENT_ROBODOC); */ fprintf (dest_doc, "\\makeindex\n"); fprintf (dest_doc, "\\begin{document}\n"); fprintf (dest_doc, "\\maketitle\n"); @@ -427,7 +438,6 @@ RB_Generate_Doc_Start ( "{\\title %s}" "{\\comment\n" " Source: %s\n" - " " COMMENT_ROBODOC " " COMMENT_COPYRIGHT "}" "}", name, src_name);