Skip to content
Snippets Groups Projects
Commit 12248e4c authored by Goik Martin's avatar Goik Martin
Browse files

common make rules

parent 352d8516
No related branches found
No related tags found
No related merge requests found
SHELL = /bin/bash
SCRIPTBASENAME=lectures
BUILDROOT=target
#+++ no changes below this line ++++++++++++++++++++++++++++++++++++
#
DIR := ${CURDIR}
numCores=$(shell nproc --all)
BUILDROOT_PROFILE=${BUILDROOT}/profile
BUILDROOT_WEBHELP=${BUILDROOT}/webhelp
BUILDROOT_EPUB=${BUILDROOT}/epub
DBOOK=/usr/share/hdm-docbook-xsl
DBOOK_XSL=${DBOOK}/docbook-xsl
DBOOK_XSL_CUSTOM=${DBOOK}/CustomLayer
DBOOK_XSL_PREPROCESS=${DBOOK}/Preprocess
# Common Docbook transformation parameter
dbookXslCommonParam=\
keep.relative.image.uris=0 \
callout.graphics=0 \
callout.unicode=1 \
graphicsize.use.img.src.path=1 \
highlight.source=1 \
id.warnings=1 \
olink.debug=1
# Pdf related Docbook transformation parameter
dbookXslPdfParam=${dbookXslCommonParam} \
fop1.extensions=1 \
paper.type=A4
# Slide related Docbook transformation parameter
dbookXslSlideParam=${dbookXslCommonParam}
# Epub related Docbook transformation parameter
dbookXslEpubParam=${dbookXslCommonParam} \
generate.manifest=1 \
base.dir=.
# Webhelp related Docbook transformation parameter
dbookXslWebhelpParam=${dbookXslCommonParam} \
generate.toc='appendix toc,title \
article/appendix nop \
article toc,title \
book toc,title,figure,table,example,equation \
chapter toc,title \
appendix toc,title \
part toc,title \
preface toc,title \
reference toc,title \
sect1 toc \
sect2 toc \
sect3 toc \
sect4 toc \
sect5 toc \
section toc \
set toc,title' \
webhelp.base.dir=.
# Required for docbook Xsl 1.0 based stylesheets
SAXON6CMD=java -cp "${DBOOK_XSL}/extensions/saxon65.jar:${DBOOK_XSL}/tools/lib/saxon.jar:${DBOOK}/lib/xslthl-2.1.3.jar" \
'-Dxslthl.config=file://${DBOOK_XSL}/highlighting/xslthl-config.xml' \
com.icl.saxon.StyleSheet
# XSL 2.0 processor
SAXONCMD=java -cp "${DBOOK_XSL}/tools/lib/saxon9he.jar:/usr/share/java/xercesImpl.jar:${DBOOK}/lib/xslthl-2.1.3.jar" \
-Djavax.xml.parsers.DocumentBuilderFactory=org.apache.xerces.jaxp.DocumentBuilderFactoryImpl \
-Djavax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp.SAXParserFactoryImpl \
-Dorg.apache.xerces.xni.parser.XMLParserConfiguration=org.apache.xerces.parsers.XIncludeParserConfiguration \
-Dxslthl.config=file://${DBOOK_XSL}/highlighting/xslthl-config.xml \
net.sf.saxon.Transform
# Docbook related build rules
#
# Basic profiling
%.print.xml %.html.xml: %.xml
mkdir -p $(@D); ln -sf /usr/share/hdmwebhelp/extern $(@D)/..
${SAXONCMD} -s:$(<F) \
-xsl:${DBOOK_XSL_PREPROCESS}/Xsl/docbook2docbook.xsl > ${*}.xml
${SAXONCMD} -s:$*.xml \
-xsl:${DBOOK_XSL_PREPROCESS}/Xsl/docbook2html.xsl > ${*}.html.xml
${SAXONCMD} -s:$*.xml \
-xsl:${DBOOK_XSL_PREPROCESS}/Xsl/docbook2slide.xsl > ${*}.slide.xml
${SAXONCMD} -s:$*.xml \
-xsl:${DBOOK_XSL_PREPROCESS}/Xsl/docbook2print.xsl > ${*}.print.xml
cd $(@D); ${SAXONCMD} -s:$(<F) -xsl:${DBOOK_XSL_PREPROCESS}/Xsl/docbookExtractFig.xsl
tar cv- `find . -name Ref -and -type d|grep -v ^\./target`|tar -x -C $(@D)
cp -f ${DBOOK_XSL_PREPROCESS}/make.image $(@D)
cd $(@D); $(MAKE) -j ${numCores} -f make.image; rm -rf `find . -name Generate`
# Webhelp and indexing
%.webhelp: %.html.xml
${SAXON6CMD} $< ${DBOOK_XSL_CUSTOM}/webhelp/webhelpHdm.xsl ${dbookXslWebhelpParam}
rsync -a ${DBOOK_XSL}/webhelp/template/* . # Images, Css
cat ${DBOOK_XSL_CUSTOM}/webhelp/common/css/positioning.supp.css >> common/css/positioning.css # highlighting supplements
cp ${DBOOK_XSL_CUSTOM}/webhelp/common/images/hdmlogo.svg common/images
cp ${DBOOK_XSL_CUSTOM}/webhelp/common/images/favicon.ico .
rsync -a --exclude='.git' /usr/share/hdmwebhelp/extern/libs/mathjax .
cd ${DBOOK_XSL}/webhelp/template/search; \
cp nwSearchFnt.js default.props punctuation.props en-us.props stemmers/en_stemmer.js \
${DIR}/search
java \
-DhtmlDir=. \
'-DindexerLanguage=en' \
'-DhtmlExtension=html' \
'-DdoStem=true' \
'-DtocFile=$${toc.file}' \
'-DindexerExcludedFiles=index.html' \
'-Dorg.xml.sax.driver=org.ccil.cowan.tagsoup.Parser' \
'-Djavax.xml.parsers.SAXParserFactory=org.ccil.cowan.tagsoup.jaxp.SAXFactoryImpl' \
-cp '${DBOOK_XSL}/extensions/webhelpindexer.jar:${DBOOK_XSL}/extensions/lucene-analyzers-3.0.0.jar:${DBOOK_XSL}/extensions/lucene-core-3.0.0.jar:${DBOOK_XSL}/extensions/tagsoup-1.2.1.jar' \
com.nexwave.nquindexer.IndexerMain
touch $*.webhelp
# Epub
%.epub: %.html.xml
${SAXON6CMD} $< ${DBOOK_XSL_CUSTOM}/epub/chunkHdm.xsl ${dbookXslEpubParam}
cd ..; rm -rf mimetype META-INF ${*}.epub
rsync -av --delete ${DBOOK_XSL}/images OEBPS # Images, Css
cat ${DBOOK_XSL_CUSTOM}/webhelp/common/css/positioning.supp.css >> OEBPS/docbook-epub.css # highlighting supplements
zip -rX ${*}.epub mimetype META-INF OEBPS
%.slide: %.slide.xml
${SAXONCMD} -s:$< -xsl:${DBOOK_XSL_CUSTOM}/slide/slideHdm.xsl ${dbookXslSlideParam}
rsync -a /usr/share/reveal.js .
touch $*.slide
# PDF
# See http://stackoverflow.com/questions/39786947/how-to-convert-to-pdf-from-xsl-fo-with-mathml/39796975
%.pdf: %.print.xml
${SAXON6CMD} $*.print.xml ${DBOOK_XSL_CUSTOM}/pdf/docbookHdm.xsl ${dbookXslPdfParam} > $*.fo
/usr/share/hdm-fop/fop-2.2/fop/fop -fo $*.fo -pdf ${*}.pdf
all: ${BUILDROOT}/${SCRIPTBASENAME}.zip ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.epub ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.pdf
${BUILDROOT_PROFILE}/${SCRIPTBASENAME}.print.xml \
${BUILDROOT_PROFILE}/${SCRIPTBASENAME}.html.xml \
${BUILDROOT_PROFILE}/${SCRIPTBASENAME}.xml: ${SCRIPTBASENAME}.xml
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.xml \
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.html.xml \
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.print.xml :\
${BUILDROOT_PROFILE}/${SCRIPTBASENAME}.html.xml
rsync -a --delete ${BUILDROOT_PROFILE}/* ${BUILDROOT_WEBHELP}
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.webhelp: ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.html.xml
cd ${BUILDROOT_WEBHELP}; ${MAKE} -f ../../Makefile ${SCRIPTBASENAME}.webhelp
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.epub: ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.html.xml
mkdir -p ${BUILDROOT_WEBHELP}/OEBPS
rsync -a ${BUILDROOT_PROFILE}/* ${BUILDROOT_WEBHELP}/OEBPS
cd ${BUILDROOT_WEBHELP}; ${MAKE} -f ../../Makefile ${SCRIPTBASENAME}.epub
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.slide: ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.html.xml
cd ${BUILDROOT_WEBHELP}; ${MAKE} -f ../../Makefile ${SCRIPTBASENAME}.slide
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.pdf: ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.print.xml
cd ${BUILDROOT_WEBHELP}; ${MAKE} -f ../../Makefile ${SCRIPTBASENAME}.pdf
${BUILDROOT}/${SCRIPTBASENAME}.zip:${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.webhelp \
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.slide
cd ${BUILDROOT}; zip -r ${SCRIPTBASENAME}.zip --exclude=webhelp/OEBPS/\* \
--exclude=${SCRIPTBASENAME}.epub --exclude=${SCRIPTBASENAME}.pdf webhelp
clean:
rm -rf ${BUILDROOT}
#end
include ${DBOOK_XSL_PREPROCESS}/make.rules
......@@ -80,7 +80,7 @@
<listitem xml:id="prefaceFormatEpub">
<para><filename
xlink:href="https://freedocs.mi.hdm-stuttgart.de/webhelp/lectures.epub">lectures.epub</filename>
xlink:href="https://freedocs.mi.hdm-stuttgart.de/lectures.epub">lectures.epub</filename>
featuring the <xref linkend="glo_EPUB"/> 3 format containing <xref
linkend="glo_SVG"/> images and MathML formulas based on <link
xlink:href="https://www.mathjax.org">MathJax JavaScript</link>
......@@ -108,15 +108,15 @@
</listitem>
<listitem>
<para>The author very much welcomes hints to appropriate software
accessing these pages.</para>
<para>The author very much welcomes hints to appropriate <xref
linkend="glo_EPUB"/> reader software accessing these pages.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem xml:id="prefaceFormatPdf">
<para><filename
xlink:href="https://freedocs.mi.hdm-stuttgart.de/webhelp/lectures.pdf">printversion.pdf</filename>
xlink:href="https://freedocs.mi.hdm-stuttgart.de/lectures.pdf">lectures.pdf</filename>
featuring the <xref linkend="glo_PDF"/> format (hopefully) providing
improved printout typography.</para>
......@@ -129,12 +129,12 @@
<listitem xml:id="prefaceFormatZip">
<para>Self contained zip archive <link
xlink:href="https://freedocs.mi.hdm-stuttgart.de/webhelp/lectures.zip">lectures.zip</link>
of above offline resources including <filename
xlink:href="https://freedocs.mi.hdm-stuttgart.de/webhelp/printversion.pdf">printversion.pdf</filename>
xlink:href="https://freedocs.mi.hdm-stuttgart.de/lectures.zip">lectures.zip</link>
of above resources for offline usage excluding <filename
xlink:href="https://freedocs.mi.hdm-stuttgart.de/lectures.pdf">lectures.pdf</filename>
and <filename
xlink:href="https://freedocs.mi.hdm-stuttgart.de/webhelp/lectures.epub">lectures.epub</filename>
for offline usage.</para>
xlink:href="https://freedocs.mi.hdm-stuttgart.de/lectures.epub">lectures.epub</filename>
.</para>
</listitem>
</itemizedlist>
</preface>
......
SHELL = /bin/bash
SCRIPTBASENAME=fig
BUILDROOT=target
#+++ no changes below this line ++++++++++++++++++++++++++++++++++++
#
DIR := ${CURDIR}
numCores=$(shell nproc --all)
BUILDROOT_PROFILE=${BUILDROOT}/profile
BUILDROOT_WEBHELP=${BUILDROOT}/webhelp
BUILDROOT_EPUB=${BUILDROOT}/epub
DBOOK=/usr/share/hdm-docbook-xsl
DBOOK_XSL=${DBOOK}/docbook-xsl
DBOOK_XSL_CUSTOM=${DBOOK}/CustomLayer
DBOOK_XSL_PREPROCESS=${DBOOK}/Preprocess
# Common Docbook transformation parameter
dbookXslCommonParam=\
keep.relative.image.uris=0 \
callout.graphics=0 \
callout.unicode=1 \
graphicsize.use.img.src.path=1 \
highlight.source=1 \
id.warnings=1 \
olink.debug=1
# Pdf related Docbook transformation parameter
dbookXslPdfParam=${dbookXslCommonParam} \
fop1.extensions=1 \
paper.type=A4
# Slide related Docbook transformation parameter
dbookXslSlideParam=${dbookXslCommonParam}
# Epub related Docbook transformation parameter
dbookXslEpubParam=${dbookXslCommonParam} \
generate.manifest=1 \
base.dir=.
# Webhelp related Docbook transformation parameter
dbookXslWebhelpParam=${dbookXslCommonParam} \
generate.toc='appendix toc,title \
article/appendix nop \
article toc,title \
book toc,title,figure,table,example,equation \
chapter toc,title \
appendix toc,title \
part toc,title \
preface toc,title \
reference toc,title \
sect1 toc \
sect2 toc \
sect3 toc \
sect4 toc \
sect5 toc \
section toc \
set toc,title' \
webhelp.base.dir=.
# Required for docbook Xsl 1.0 based stylesheets
SAXON6CMD=java -cp "${DBOOK_XSL}/extensions/saxon65.jar:${DBOOK_XSL}/tools/lib/saxon.jar:${DBOOK}/lib/xslthl-2.1.3.jar" \
'-Dxslthl.config=file://${DBOOK_XSL}/highlighting/xslthl-config.xml' \
com.icl.saxon.StyleSheet
# XSL 2.0 processor
SAXONCMD=java -cp "${DBOOK_XSL}/tools/lib/saxon9he.jar:/usr/share/java/xercesImpl.jar:${DBOOK}/lib/xslthl-2.1.3.jar" \
-Djavax.xml.parsers.DocumentBuilderFactory=org.apache.xerces.jaxp.DocumentBuilderFactoryImpl \
-Djavax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp.SAXParserFactoryImpl \
-Dorg.apache.xerces.xni.parser.XMLParserConfiguration=org.apache.xerces.parsers.XIncludeParserConfiguration \
-Dxslthl.config=file://${DBOOK_XSL}/highlighting/xslthl-config.xml \
net.sf.saxon.Transform
# Docbook related build rules
#
# Basic profiling
%.print.xml %.html.xml: %.xml
mkdir -p $(@D); ln -sf /usr/share/hdmwebhelp/extern $(@D)/..
${SAXONCMD} -s:$(<F) \
-xsl:${DBOOK_XSL_PREPROCESS}/Xsl/docbook2docbook.xsl > ${*}.xml
${SAXONCMD} -s:$*.xml \
-xsl:${DBOOK_XSL_PREPROCESS}/Xsl/docbook2html.xsl > ${*}.html.xml
${SAXONCMD} -s:$*.xml \
-xsl:${DBOOK_XSL_PREPROCESS}/Xsl/docbook2slide.xsl > ${*}.slide.xml
${SAXONCMD} -s:$*.xml \
-xsl:${DBOOK_XSL_PREPROCESS}/Xsl/docbook2print.xsl > ${*}.print.xml
cd $(@D); ${SAXONCMD} -s:$(<F) -xsl:${DBOOK_XSL_PREPROCESS}/Xsl/docbookExtractFig.xsl
tar cv- `find . -name Ref -and -type d|grep -v ^\./target`|tar -x -C $(@D)
cp -f ${DBOOK_XSL_PREPROCESS}/make.image $(@D)
cd $(@D); $(MAKE) -j ${numCores} -f make.image; rm -rf `find . -name Generate`
# Webhelp and indexing
%.webhelp: %.html.xml
${SAXON6CMD} $< ${DBOOK_XSL_CUSTOM}/webhelp/webhelpHdm.xsl ${dbookXslWebhelpParam}
rsync -a ${DBOOK_XSL}/webhelp/template/* . # Images, Css
cat ${DBOOK_XSL_CUSTOM}/webhelp/common/css/positioning.supp.css >> common/css/positioning.css # highlighting supplements
cp ${DBOOK_XSL_CUSTOM}/webhelp/common/images/hdmlogo.svg common/images
cp ${DBOOK_XSL_CUSTOM}/webhelp/common/images/favicon.ico .
rsync -a --exclude='.git' /usr/share/hdmwebhelp/extern/libs/mathjax .
cd ${DBOOK_XSL}/webhelp/template/search; \
cp nwSearchFnt.js default.props punctuation.props en-us.props stemmers/en_stemmer.js \
${DIR}/search
java \
-DhtmlDir=. \
'-DindexerLanguage=en' \
'-DhtmlExtension=html' \
'-DdoStem=true' \
'-DtocFile=$${toc.file}' \
'-DindexerExcludedFiles=index.html' \
'-Dorg.xml.sax.driver=org.ccil.cowan.tagsoup.Parser' \
'-Djavax.xml.parsers.SAXParserFactory=org.ccil.cowan.tagsoup.jaxp.SAXFactoryImpl' \
-cp '${DBOOK_XSL}/extensions/webhelpindexer.jar:${DBOOK_XSL}/extensions/lucene-analyzers-3.0.0.jar:${DBOOK_XSL}/extensions/lucene-core-3.0.0.jar:${DBOOK_XSL}/extensions/tagsoup-1.2.1.jar' \
com.nexwave.nquindexer.IndexerMain
touch $*.webhelp
# Epub
%.epub: %.html.xml
${SAXON6CMD} $< ${DBOOK_XSL_CUSTOM}/epub/chunkHdm.xsl ${dbookXslEpubParam}
cd ..; rm -rf mimetype META-INF ${*}.epub
rsync -av --delete ${DBOOK_XSL}/images OEBPS # Images, Css
cat ${DBOOK_XSL_CUSTOM}/webhelp/common/css/positioning.supp.css >> OEBPS/docbook-epub.css # highlighting supplements
zip -rX ${*}.epub mimetype META-INF OEBPS
%.slide: %.slide.xml
${SAXONCMD} -s:$< -xsl:${DBOOK_XSL_CUSTOM}/slide/slideHdm.xsl ${dbookXslSlideParam}
rsync -a /usr/share/reveal.js .
touch $*.slide
# PDF
# See http://stackoverflow.com/questions/39786947/how-to-convert-to-pdf-from-xsl-fo-with-mathml/39796975
%.pdf: %.print.xml
${SAXON6CMD} $*.print.xml ${DBOOK_XSL_CUSTOM}/pdf/docbookHdm.xsl ${dbookXslPdfParam} > $*.fo
/usr/share/hdm-fop/fop-2.2/fop/fop -fo $*.fo -pdf ${*}.pdf
all: ${BUILDROOT}/${SCRIPTBASENAME}.zip ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.epub ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.pdf
${BUILDROOT_PROFILE}/${SCRIPTBASENAME}.print.xml \
${BUILDROOT_PROFILE}/${SCRIPTBASENAME}.html.xml \
${BUILDROOT_PROFILE}/${SCRIPTBASENAME}.xml: ${SCRIPTBASENAME}.xml
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.xml \
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.html.xml \
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.print.xml :\
${BUILDROOT_PROFILE}/${SCRIPTBASENAME}.html.xml
rsync -a --delete ${BUILDROOT_PROFILE}/* ${BUILDROOT_WEBHELP}
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.webhelp: ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.html.xml
cd ${BUILDROOT_WEBHELP}; ${MAKE} -f ../../Makefile ${SCRIPTBASENAME}.webhelp
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.epub: ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.html.xml
mkdir -p ${BUILDROOT_WEBHELP}/OEBPS
rsync -a ${BUILDROOT_PROFILE}/* ${BUILDROOT_WEBHELP}/OEBPS
cd ${BUILDROOT_WEBHELP}; ${MAKE} -f ../../Makefile ${SCRIPTBASENAME}.epub
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.slide: ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.html.xml
cd ${BUILDROOT_WEBHELP}; ${MAKE} -f ../../Makefile ${SCRIPTBASENAME}.slide
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.pdf: ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.print.xml
cd ${BUILDROOT_WEBHELP}; ${MAKE} -f ../../Makefile ${SCRIPTBASENAME}.pdf
${BUILDROOT}/${SCRIPTBASENAME}.zip:${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.webhelp \
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.slide
cd ${BUILDROOT}; zip -r ${SCRIPTBASENAME}.zip --exclude=webhelp/OEBPS/\* \
--exclude=${SCRIPTBASENAME}.epub --exclude=${SCRIPTBASENAME}.pdf webhelp
clean:
rm -rf ${BUILDROOT}
#end
include ${DBOOK_XSL_PREPROCESS}/make.rules
SHELL = /bin/bash
DIR := ${CURDIR}
numCores=$(shell nproc --all)
BUILDROOT=target
BUILDROOT_PROFILE=${BUILDROOT}/profile
BUILDROOT_WEBHELP=${BUILDROOT}/webhelp
BUILDROOT_EPUB=${BUILDROOT}/epub
DBOOK_XSL=${DBOOK}/docbook-xsl
DBOOK_XSL_CUSTOM=${DBOOK}/CustomLayer
# Common Docbook transformation parameter
dbookXslCommonParam=\
keep.relative.image.uris=0 \
callout.graphics=0 \
callout.unicode=1 \
graphicsize.use.img.src.path=1 \
highlight.source=1 \
id.warnings=1 \
olink.debug=1
# Pdf related Docbook transformation parameter
dbookXslPdfParam=${dbookXslCommonParam} \
fop1.extensions=1 \
paper.type=A4
# Slide related Docbook transformation parameter
dbookXslSlideParam=${dbookXslCommonParam}
# Epub related Docbook transformation parameter
dbookXslEpubParam=${dbookXslCommonParam} \
generate.manifest=1 \
base.dir=.
# Webhelp related Docbook transformation parameter
dbookXslWebhelpParam=${dbookXslCommonParam} \
generate.toc='appendix toc,title \
article/appendix nop \
article toc,title \
book toc,title,figure,table,example,equation \
chapter toc,title \
appendix toc,title \
part toc,title \
preface toc,title \
reference toc,title \
sect1 toc \
sect2 toc \
sect3 toc \
sect4 toc \
sect5 toc \
section toc \
set toc,title' \
webhelp.base.dir=.
# Required for docbook Xsl 1.0 based stylesheets
SAXON6CMD=java -cp "${DBOOK_XSL}/extensions/saxon65.jar:${DBOOK_XSL}/tools/lib/saxon.jar:${DBOOK}/lib/xslthl-2.1.3.jar" \
'-Dxslthl.config=file://${DBOOK_XSL}/highlighting/xslthl-config.xml' \
com.icl.saxon.StyleSheet
# XSL 2.0 processor
SAXONCMD=java -cp "${DBOOK_XSL}/tools/lib/saxon9he.jar:/usr/share/java/xercesImpl.jar:${DBOOK}/lib/xslthl-2.1.3.jar" \
-Djavax.xml.parsers.DocumentBuilderFactory=org.apache.xerces.jaxp.DocumentBuilderFactoryImpl \
-Djavax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp.SAXParserFactoryImpl \
-Dorg.apache.xerces.xni.parser.XMLParserConfiguration=org.apache.xerces.parsers.XIncludeParserConfiguration \
-Dxslthl.config=file://${DBOOK_XSL}/highlighting/xslthl-config.xml \
net.sf.saxon.Transform
# Docbook related build rules
#
# Basic profiling
%.print.xml %.html.xml: %.xml
mkdir -p $(@D); ln -sf /usr/share/hdmwebhelp/extern $(@D)/..
${SAXONCMD} -s:$(<F) \
-xsl:${DBOOK_XSL_PREPROCESS}/Xsl/docbook2docbook.xsl > ${*}.xml
${SAXONCMD} -s:$*.xml \
-xsl:${DBOOK_XSL_PREPROCESS}/Xsl/docbook2html.xsl > ${*}.html.xml
${SAXONCMD} -s:$*.xml \
-xsl:${DBOOK_XSL_PREPROCESS}/Xsl/docbook2slide.xsl > ${*}.slide.xml
${SAXONCMD} -s:$*.xml \
-xsl:${DBOOK_XSL_PREPROCESS}/Xsl/docbook2print.xsl > ${*}.print.xml
cd $(@D); ${SAXONCMD} -s:$(<F) -xsl:${DBOOK_XSL_PREPROCESS}/Xsl/docbookExtractFig.xsl
tar cv- `find . -name Ref -and -type d|grep -v ^\./target`|tar -x -C $(@D)
cp -f ${DBOOK_XSL_PREPROCESS}/make.image $(@D)
cd $(@D); $(MAKE) -j ${numCores} -f make.image; rm -rf `find . -name Generate`
# Webhelp and indexing
%.webhelp: %.html.xml
${SAXON6CMD} $< ${DBOOK_XSL_CUSTOM}/webhelp/webhelpHdm.xsl ${dbookXslWebhelpParam}
rsync -a ${DBOOK_XSL}/webhelp/template/* . # Images, Css
cat ${DBOOK_XSL_CUSTOM}/webhelp/common/css/positioning.supp.css >> common/css/positioning.css # highlighting supplements
cp ${DBOOK_XSL_CUSTOM}/webhelp/common/images/hdmlogo.svg common/images
cp ${DBOOK_XSL_CUSTOM}/webhelp/common/images/favicon.ico .
rsync -a --exclude='.git' /usr/share/hdmwebhelp/extern/libs/mathjax .
cd ${DBOOK_XSL}/webhelp/template/search; \
cp nwSearchFnt.js default.props punctuation.props en-us.props stemmers/en_stemmer.js \
${DIR}/search
java \
-DhtmlDir=. \
'-DindexerLanguage=en' \
'-DhtmlExtension=html' \
'-DdoStem=true' \
'-DtocFile=$${toc.file}' \
'-DindexerExcludedFiles=index.html' \
'-Dorg.xml.sax.driver=org.ccil.cowan.tagsoup.Parser' \
'-Djavax.xml.parsers.SAXParserFactory=org.ccil.cowan.tagsoup.jaxp.SAXFactoryImpl' \
-cp '${DBOOK_XSL}/extensions/webhelpindexer.jar:${DBOOK_XSL}/extensions/lucene-analyzers-3.0.0.jar:${DBOOK_XSL}/extensions/lucene-core-3.0.0.jar:${DBOOK_XSL}/extensions/tagsoup-1.2.1.jar' \
com.nexwave.nquindexer.IndexerMain
touch $*.webhelp
# Epub
%.epub: %.html.xml
${SAXON6CMD} $< ${DBOOK_XSL_CUSTOM}/epub/chunkHdm.xsl ${dbookXslEpubParam}
cd ..; rm -rf mimetype META-INF ${*}.epub
rsync -av --delete ${DBOOK_XSL}/images OEBPS # Images, Css
cat ${DBOOK_XSL_CUSTOM}/webhelp/common/css/positioning.supp.css >> OEBPS/docbook-epub.css # highlighting supplements
zip -rX ${*}.epub mimetype META-INF OEBPS
%.slide: %.slide.xml
${SAXONCMD} -s:$< -xsl:${DBOOK_XSL_CUSTOM}/slide/slideHdm.xsl ${dbookXslSlideParam}
rsync -a /usr/share/reveal.js .
touch $*.slide
# PDF
# See http://stackoverflow.com/questions/39786947/how-to-convert-to-pdf-from-xsl-fo-with-mathml/39796975
%.pdf: %.print.xml
/usr/share/hdm-fop/fop-2.2/fop/fop -xml $*.print.xml -xsl ${DBOOK_XSL_CUSTOM}/pdf/docbookHdm.xsl -pdf ${*}.pdf
%.fo: %.print.xml # for debugging
${SAXON6CMD} $*.print.xml ${DBOOK_XSL_CUSTOM}/pdf/docbookHdm.xsl ${dbookXslPdfParam} > $*.fo
all: ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.zip ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.epub ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.pdf
${BUILDROOT_PROFILE}/${SCRIPTBASENAME}.print.xml \
${BUILDROOT_PROFILE}/${SCRIPTBASENAME}.html.xml \
${BUILDROOT_PROFILE}/${SCRIPTBASENAME}.xml: ${SCRIPTBASENAME}.xml
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.xml \
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.html.xml \
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.print.xml :\
${BUILDROOT_PROFILE}/${SCRIPTBASENAME}.html.xml
rsync -a --delete --exclude=mediaobjects.list --exclude=make.image ${BUILDROOT_PROFILE}/* ${BUILDROOT_WEBHELP}
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.webhelp: ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.html.xml
cd ${BUILDROOT_WEBHELP}; ${MAKE} -f ../../Makefile ${SCRIPTBASENAME}.webhelp
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.epub: ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.html.xml
mkdir -p ${BUILDROOT_WEBHELP}/OEBPS
rsync -a ${BUILDROOT_PROFILE}/* ${BUILDROOT_WEBHELP}/OEBPS
cd ${BUILDROOT_WEBHELP}; ${MAKE} -f ../../Makefile ${SCRIPTBASENAME}.epub
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.slide: ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.html.xml
cd ${BUILDROOT_WEBHELP}; ${MAKE} -f ../../Makefile ${SCRIPTBASENAME}.slide
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.pdf: ${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.print.xml
cd ${BUILDROOT_WEBHELP}; ${MAKE} -f ../../Makefile ${SCRIPTBASENAME}.pdf
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.zip:${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.webhelp \
${BUILDROOT_WEBHELP}/${SCRIPTBASENAME}.slide
cd ${BUILDROOT_WEBHELP}; zip -r ${SCRIPTBASENAME}.zip --exclude=OEBPS/\* --exclude=META-INF/\* --exclude=mimetype \
--exclude=${SCRIPTBASENAME}.epub --exclude=${SCRIPTBASENAME}.pdf webhelp --exclude=${SCRIPTBASENAME}.zip *
clean:
rm -rf ${BUILDROOT}
diff:
diff -r --brief targetReference/ target|grep -v pdf
#end
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment