kivitendo/scripts/build_doc.sh @ 2a7034e4
27f054b7 | Moritz Bunkus | #!/bin/bash
|
||
# Usage:
|
||||
5fa26f9a | Moritz Bunkus | # cd /path/to/kivitendo
|
||
27f054b7 | Moritz Bunkus | # ./scripts/build_doc.sh
|
||
set -e
|
||||
if [[ ! -d doc ]]; then
|
||||
echo "Please run this from the installation directory."
|
||||
exit 1
|
||||
fi
|
||||
a00cdb31 | Moritz Bunkus | doc=${PWD}/doc
|
||
f8309cb7 | Moritz Bunkus | html=1
|
||
pdf=1
|
||||
eb06dc40 | Moritz Bunkus | images=1
|
||
f8309cb7 | Moritz Bunkus | |||
if [[ ! -z $1 ]] ; then
|
||||
html=0
|
||||
pdf=0
|
||||
eb06dc40 | Moritz Bunkus | images=0
|
||
f8309cb7 | Moritz Bunkus | while [[ ! -z $1 ]] ; do
|
||
case $1 in
|
||||
eb06dc40 | Moritz Bunkus | html) html=1 ;;
|
||
pdf) pdf=1 ;;
|
||||
images) images=1 ;;
|
||||
f8309cb7 | Moritz Bunkus | *)
|
||
echo "Unknown parameter $1"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
fi
|
||||
27f054b7 | Moritz Bunkus | dobudish=$(ls -d doc/build/dobudish* 2> /dev/null)
|
||
if [[ -z $dobudish ]] || [[ ! -d ${dobudish} ]]; then
|
||||
886816c5 | Jan Büren | echo "There's no dobudish directory inside doc/build OR more than one file / dir starting with dobudish (hint: zip file downloaded there?)."
|
||
27f054b7 | Moritz Bunkus | exit 1
|
||
fi
|
||||
cd ${dobudish}
|
||||
base=documents/dokumentation
|
||||
if [[ ! -d $base ]]; then
|
||||
./generator.sh dokumentation create book
|
||||
fi
|
||||
input=${base}/input
|
||||
output=${base}/output
|
||||
custom=${base}/custom-cfg
|
||||
f8309cb7 | Moritz Bunkus | rm -rf ${input} ${custom}
|
||
mkdir ${input} ${input}/copy_to_output ${custom}
|
||||
27f054b7 | Moritz Bunkus | |||
a00cdb31 | Moritz Bunkus | cp ${doc}/dokumentation.xml ${input}/
|
||
3adb0cb7 | Moritz Bunkus | test -d ${doc}/images && cp -R ${doc}/images ${input}/copy_to_output/
|
||
a00cdb31 | Moritz Bunkus | cp -R ${doc}/build/custom-cfg/* ${custom}/
|
||
27f054b7 | Moritz Bunkus | |||
f8309cb7 | Moritz Bunkus | if [[ $pdf = 1 ]] ; then
|
||
./generator.sh dokumentation pdf
|
||||
5fa26f9a | Moritz Bunkus | cp ${output}/pdf/dokumentation.pdf ${doc}/kivitendo-Dokumentation.pdf
|
||
f8309cb7 | Moritz Bunkus | fi
|
||
656b6e1d | Moritz Bunkus | |||
f8309cb7 | Moritz Bunkus | if [[ $html = 1 ]]; then
|
||
./generator.sh dokumentation html
|
||||
a00cdb31 | Moritz Bunkus | rm -rf ${doc}/html
|
||
mkdir ${doc}/html
|
||||
cp -R ${output}/html ${doc}/
|
||||
f8309cb7 | Moritz Bunkus | fi
|
||
eb06dc40 | Moritz Bunkus | |||
if [[ $images = 1 ]]; then
|
||||
# copy system images from Dobudish directory
|
||||
image_list=$(mktemp)
|
||||
perl -nle 'print $1 while m{ (?: \.\./ )+ ( system/ [^\"]+ ) }xg' ${doc}/html/*.html | sort | uniq > $image_list
|
||||
if [[ -s $image_list ]]; then
|
||||
tar -c -f - -T $image_list | tar -x -f - -C ${doc}/html
|
||||
perl -pi -e 's{ (\.\./)+ system }{system}xg' ${doc}/html/*.html
|
||||
fi
|
||||
rm $image_list
|
||||
fi
|