From: Derrick Brashear Date: Wed, 27 May 2009 20:44:48 +0000 (+0000) Subject: DEVEL15-xml-doc-building-glue-20090527 X-Git-Tag: openafs-devel-1_5_60~4 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=fb88450783ae900cb2b5e3b925c3541d6a2c5f87;p=packages%2Fo%2Fopenafs.git DEVEL15-xml-doc-building-glue-20090527 LICENSE IPL10 FIXES 124804 add configure switches for building docs. generate version files needed. (cherry picked from commit e452c704c59700496227dccb3161efd34ca709ba) --- diff --git a/acinclude.m4 b/acinclude.m4 index 199862127..023ac1e2a 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -305,6 +305,17 @@ AC_ARG_ENABLE([optimize-pam], , [enable_optimize_pam="yes"]) +AC_ARG_WITH([xslt-processor], + AS_HELP_STRING([--with-xslt-processor=ARG], + [which XSLT processor to use (possible choices are: libxslt, saxon, xalan-j, xsltproc)]), + XSLTPROC="$withval", + XSLTPROC="libxslt") + +AC_ARG_WITH([html-xsl], + AS_HELP_STRING([--with-html-xsl], + [build HTML documentation using Norman Walsh's DocBook XSL stylesheets (default is no; specify a path to chunk.xsl or docbook.xsl)]), + HTML_XSL="$withval", + HTML_XSL=no) enable_login="no" @@ -1658,6 +1669,9 @@ if test "x$enable_pthreaded_ubik" = "xyes"; then ENABLE_PTHREADED_UBIK=yes fi +VERSFILE=AFS_component_version_number +AC_SUBST(VERSFILE) + AC_SUBST(AFS_SYSNAME) AC_SUBST(AFS_PARAM_COMMON) AC_SUBST(ENABLE_KERNEL_MODULE) @@ -1678,6 +1692,8 @@ AC_SUBST(DEST) AC_SUBST(WITH_OBSOLETE) AC_SUBST(DARWIN_INFOFILE) AC_SUBST(IRIX_BUILD_IP35) +AC_SUBST(HTML_XSL) +AC_SUBST(XSLTPROC) OPENAFS_OSCONF OPENAFS_KRB5CONF diff --git a/configure.in b/configure.in index 332adcdf4..64625ed27 100644 --- a/configure.in +++ b/configure.in @@ -20,10 +20,28 @@ if test -d 'doc/man-pages' ; then else MAN_MAKEFILE= fi +if test -f 'doc/xml/AdminGuide/Makefile.in' ; then + ADMINGUIDE_MAKEFILE="doc/xml/AdminGuide/Makefile" +else + ADMINGUIDE_MAKEFILE= +fi +if test -f 'doc/xml/QuickStartUnix/Makefile.in' ; then + QSUNIX_MAKEFILE="doc/xml/QuickStartUnix/Makefile" +else + QSUNIX_MAKEFILE= +fi +if test -f 'doc/xml/UserGuide/Makefile.in' ; then + USERGUIDE_MAKEFILE="doc/xml/UserGuide/Makefile" +else + USERGUIDE_MAKEFILE= +fi AC_OUTPUT( \ Makefile \ ${MAN_MAKEFILE} \ +${ADMINGUIDE_MAKEFILE} \ +${QSUNIX_MAKEFILE} \ +${USERGUIDE_MAKEFILE} \ src/afs/Makefile \ src/afsd/Makefile \ src/afsmonitor/Makefile \ @@ -47,6 +65,7 @@ src/comerr/Makefile \ src/comerr/test/Makefile \ src/config/Makefile \ src/config/Makefile.config \ +src/config/Makefile.version-CML \ src/config/Makefile.version-NOCML \ src/dauth/Makefile \ src/des/Makefile \ diff --git a/doc/xml/AdminGuide/Makefile b/doc/xml/AdminGuide/Makefile deleted file mode 100644 index 42d2a528f..000000000 --- a/doc/xml/AdminGuide/Makefile +++ /dev/null @@ -1,37 +0,0 @@ -# Makefile to build the AFS Admin Guide for Unix. -# -# This makefile assumes that various utilities are available on the system. -# On Debian lenny, installing the packages: -# -# dblatex -# docbook-xsl -# libxml2-utils -# xsltproc -# -# gave me all the utilities needed. -# -# HTML_XSL is possibly specific to Debian and may need to be modified on other -# systems. - -BOOK = auagd000.xml -SRCS = $(BOOK) auagd005.xml auagd006.xml auagd007.xml auagd008.xml \ - auagd009.xml auagd010.xml auagd011.xml auagd012.xml auagd013.xml \ - auagd014.xml auagd015.xml auagd016.xml auagd017.xml auagd018.xml \ - auagd019.xml auagd020.xml auagd021.xml auagd022.xml auagd023.xml \ - auagd024.xml auagd025.xml -HTML_XSL = /usr/share/xml/docbook/stylesheet/nwalsh/html/chunk.xsl - -all: pdf html - -html: $(SRCS) - xsltproc --param navig.graphics 1 \ - --stringparam navig.graphics.path ../ $(HTML_XSL) $(BOOK) - -pdf: $(SRCS) - dblatex $(BOOK) - -check: - xmllint --noout --valid $(BOOK) - -clean: - rm -f *.html *.pdf diff --git a/doc/xml/AdminGuide/Makefile.in b/doc/xml/AdminGuide/Makefile.in new file mode 100644 index 000000000..55befc478 --- /dev/null +++ b/doc/xml/AdminGuide/Makefile.in @@ -0,0 +1,42 @@ +# Makefile to build the AFS Admin Guide for Unix. +# +# This makefile assumes that various utilities are available on the system. +# On Debian lenny, installing the packages: +# +# dblatex +# docbook-xsl +# libxml2-utils +# xsltproc +# +# gave me all the utilities needed. +# +# HTML_XSL is possibly specific to Debian and may need to be modified on other +# systems. + +all: pdf html + +include @TOP_OBJDIR@/src/config/Makefile.config +VERSFILE=version +include @TOP_OBJDIR@/src/config/Makefile.version + +BOOK = auagd000.xml +SRCS = $(BOOK) auagd005.xml auagd006.xml auagd007.xml auagd008.xml \ + auagd009.xml auagd010.xml auagd011.xml auagd012.xml auagd013.xml \ + auagd014.xml auagd015.xml auagd016.xml auagd017.xml auagd018.xml \ + auagd019.xml auagd020.xml auagd021.xml auagd022.xml auagd023.xml \ + auagd024.xml auagd025.xml +HTML_XSL = @HTML_XSL@ +XSLTPROC = @XSLTPROC@ + +html: $(SRCS) $(VERSFILE).xml + $(XSLTPROC) --param navig.graphics 1 \ + --stringparam navig.graphics.path ../ $(HTML_XSL) $(BOOK) + +pdf: $(SRCS) + dblatex $(BOOK) + +check: + xmllint --noout --valid $(BOOK) + +clean: + rm -f *.html *.pdf diff --git a/doc/xml/QuickStartUnix/Makefile b/doc/xml/QuickStartUnix/Makefile deleted file mode 100644 index 3ce5d8260..000000000 --- a/doc/xml/QuickStartUnix/Makefile +++ /dev/null @@ -1,34 +0,0 @@ -# Makefile to build the AFS QuickStart guide for Unix. -# -# This makefile assumes that various utilities are available on the system. -# On Debian lenny, installing the packages: -# -# dblatex -# docbook-xsl -# libxml2-utils -# xsltproc -# -# gave me all the utilities needed. -# -# HTML_XSL is specific to Debian and will need to be modified on other -# systems until we have a better mechanism for finding the correct path. - -BOOK = auqbg000.xml -SRCS = $(BOOK) auqbg003.xml auqbg004.xml auqbg005.xml auqbg006.xml \ - auqbg007.xml auqbg008.xml appendix.xml -HTML_XSL = /usr/share/xml/docbook/stylesheet/nwalsh/html/chunk.xsl - -all: pdf html - -html: $(SRCS) - xsltproc --param navig.graphics 1 \ - --stringparam navig.graphics.path ../ $(HTML_XSL) $(BOOK) - -pdf: $(SRCS) - dblatex $(BOOK) - -check: - xmllint --noout --valid $(BOOK) - -clean: - rm -f *.html *.pdf diff --git a/doc/xml/QuickStartUnix/Makefile.in b/doc/xml/QuickStartUnix/Makefile.in new file mode 100644 index 000000000..30cb05cc3 --- /dev/null +++ b/doc/xml/QuickStartUnix/Makefile.in @@ -0,0 +1,39 @@ +# Makefile to build the AFS QuickStart guide for Unix. +# +# This makefile assumes that various utilities are available on the system. +# On Debian lenny, installing the packages: +# +# dblatex +# docbook-xsl +# libxml2-utils +# xsltproc +# +# gave me all the utilities needed. +# +# HTML_XSL is specific to Debian and will need to be modified on other +# systems until we have a better mechanism for finding the correct path. + +all: pdf html + +include @TOP_OBJDIR@/src/config/Makefile.config +VERSFILE=version +include @TOP_OBJDIR@/src/config/Makefile.version + +BOOK = auqbg000.xml +SRCS = $(BOOK) auqbg003.xml auqbg004.xml auqbg005.xml auqbg006.xml \ + auqbg007.xml auqbg008.xml appendix.xml +HTML_XSL = @HTML_XSL@ +XSLTPROC = @XSLTPROC@ + +html: $(SRCS) $(VERSFILE).xml + $(XSLTPROC) --param navig.graphics 1 \ + --stringparam navig.graphics.path ../ $(HTML_XSL) $(BOOK) + +pdf: $(SRCS) + dblatex $(BOOK) + +check: + xmllint --noout --valid $(BOOK) + +clean: + rm -f *.html *.pdf diff --git a/doc/xml/UserGuide/Makefile b/doc/xml/UserGuide/Makefile deleted file mode 100644 index 7b4077733..000000000 --- a/doc/xml/UserGuide/Makefile +++ /dev/null @@ -1,35 +0,0 @@ -# Makefile to build the AFS Admin Guide for Unix. -# -# This makefile assumes that various utilities are available on the system. -# On Debian lenny, installing the packages: -# -# dblatex -# docbook-xsl -# libxml2-utils -# xsltproc -# -# gave me all the utilities needed. -# -# HTML_XSL is possibly specific to Debian and may need to be modified on other -# systems. - -BOOK = auusg000.xml -SRCS = $(BOOK) auusg003.xml auusg004.xml auusg005.xml auusg006.xml \ - auusg007.xml auusg008.xml auusg009.xml auusg010.xml auusg011.xml \ - auusg012.xml -HTML_XSL = /usr/share/xml/docbook/stylesheet/nwalsh/html/chunk.xsl - -all: pdf html - -html: $(SRCS) - xsltproc --param navig.graphics 1 \ - --stringparam navig.graphics.path ../ $(HTML_XSL) $(BOOK) - -pdf: $(SRCS) - dblatex $(BOOK) - -check: - xmllint --noout --valid $(BOOK) - -clean: - rm -f *.html *.pdf diff --git a/doc/xml/UserGuide/Makefile.in b/doc/xml/UserGuide/Makefile.in new file mode 100644 index 000000000..40409dab6 --- /dev/null +++ b/doc/xml/UserGuide/Makefile.in @@ -0,0 +1,40 @@ +# Makefile to build the AFS Admin Guide for Unix. +# +# This makefile assumes that various utilities are available on the system. +# On Debian lenny, installing the packages: +# +# dblatex +# docbook-xsl +# libxml2-utils +# xsltproc +# +# gave me all the utilities needed. +# +# HTML_XSL is possibly specific to Debian and may need to be modified on other +# systems. + +all: pdf html + +include @TOP_OBJDIR@/src/config/Makefile.config +VERSFILE=version +include @TOP_OBJDIR@/src/config/Makefile.version + +BOOK = auusg000.xml +SRCS = $(BOOK) auusg003.xml auusg004.xml auusg005.xml auusg006.xml \ + auusg007.xml auusg008.xml auusg009.xml auusg010.xml auusg011.xml \ + auusg012.xml +HTML_XSL = @HTML_XSL@ +XSLTPROC = @XSLTPROC@ + +html: $(SRCS) $(VERSFILE).xml + $(XSLTPROC) --param navig.graphics 1 \ + --stringparam navig.graphics.path ../ $(HTML_XSL) $(BOOK) + +pdf: $(SRCS) + dblatex $(BOOK) + +check: + xmllint --noout --valid $(BOOK) + +clean: + rm -f *.html *.pdf diff --git a/src/config/Makefile.component b/src/config/Makefile.component new file mode 100644 index 000000000..c1ec1dd0b --- /dev/null +++ b/src/config/Makefile.component @@ -0,0 +1,2 @@ +include Makefile.config +include Makefile.version diff --git a/src/config/Makefile.config.in b/src/config/Makefile.config.in index bae554c08..8cfb97a5e 100644 --- a/src/config/Makefile.config.in +++ b/src/config/Makefile.config.in @@ -140,3 +140,6 @@ LDFLAGS=${XLDFLAGS} ${ARCHFLAGS} .c.o: $(CCOBJ) $(CFLAGS) -c $< + +# Default component version file, will be overridden later if necessary +VERSFILE=@VERSFILE@ \ No newline at end of file diff --git a/src/config/Makefile.in b/src/config/Makefile.in index 8d4e184c1..0379b57e7 100644 --- a/src/config/Makefile.in +++ b/src/config/Makefile.in @@ -23,7 +23,7 @@ all: config mkvers \ Makefile.version: ${srcdir}/Makefile.version-CML Makefile.version-NOCML $(RM) -f Makefile.version - if [ -r SRC/../CML/state ] ; \ + if [ -r @TOP_SRCDIR@/CML/state ] ; \ then $(CP) ${srcdir}/Makefile.version-CML Makefile.version ; \ else $(CP) Makefile.version-NOCML Makefile.version ; \ fi @@ -32,7 +32,7 @@ Makefile.version: ${srcdir}/Makefile.version-CML Makefile.version-NOCML # AFS component version string file generation targets # AFS_component_version_number.c: Makefile.version - $(MAKE) -f Makefile.version AFS_component_version_number.c + $(MAKE) -f Makefile.component AFS_component_version_number.c # # App build/install targets diff --git a/src/config/Makefile.version-CML b/src/config/Makefile.version-CML deleted file mode 100644 index 7df4aaf00..000000000 --- a/src/config/Makefile.version-CML +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -VERSFILE=AFS_component_version_number - -$(VERSFILE).o: $(VERSFILE).c - -# mkvers checks timestamps - -$(VERSFILE).c: - $(TOP_SRCDIR)/config/mkvers -o $(VERSFILE).c -# only done for RX in NT -# -c $(CML_PREFIX) - -$(VERSFILE).h: - $(TOP_SRCDIR)/config/mkvers -o $(VERSFILE).h -v - -$(VERSFILE).txt: - $(TOP_SRCDIR)/config/mkvers -o $(VERSFILE).txt -t - -$(VERSFILE).xml: - $(TOP_SRCDIR)/config/mkvers -o $(VERSFILE).xml -x - -noversion: install diff --git a/src/config/Makefile.version-CML.in b/src/config/Makefile.version-CML.in new file mode 100644 index 000000000..e77e110ce --- /dev/null +++ b/src/config/Makefile.version-CML.in @@ -0,0 +1,29 @@ +# Copyright 2000, International Business Machines Corporation and others. +# All Rights Reserved. +# +# This software has been released under the terms of the IBM Public +# License. For details, see the LICENSE file in the top-level source +# directory or online at http://www.openafs.org/dl/license10.html + +PACKAGE=@PACKAGE@ +VERSION=@VERSION@ + +$(VERSFILE).o: $(VERSFILE).c + +# mkvers checks timestamps + +$(VERSFILE).c: + $(TOP_SRCDIR)/config/mkvers -o $(VERSFILE).c +# only done for RX in NT +# -c $(CML_PREFIX) + +$(VERSFILE).h: + $(TOP_SRCDIR)/config/mkvers -o $(VERSFILE).h -v + +$(VERSFILE).txt: + $(TOP_SRCDIR)/config/mkvers -o $(VERSFILE).txt -t + +$(VERSFILE).xml: + $(TOP_SRCDIR)/config/mkvers -o $(VERSFILE).xml -x + +noversion: install diff --git a/src/config/Makefile.version-NOCML.in b/src/config/Makefile.version-NOCML.in index e42cee234..179a92904 100644 --- a/src/config/Makefile.version-NOCML.in +++ b/src/config/Makefile.version-NOCML.in @@ -7,7 +7,6 @@ PACKAGE=@PACKAGE@ VERSION=@VERSION@ -VERSFILE=AFS_component_version_number $(VERSFILE).o: $(VERSFILE).c