summaryrefslogtreecommitdiffstats
path: root/ml/dlib/docs/makedocs
diff options
context:
space:
mode:
Diffstat (limited to 'ml/dlib/docs/makedocs')
-rwxr-xr-xml/dlib/docs/makedocs282
1 files changed, 0 insertions, 282 deletions
diff --git a/ml/dlib/docs/makedocs b/ml/dlib/docs/makedocs
deleted file mode 100755
index e38b75a73..000000000
--- a/ml/dlib/docs/makedocs
+++ /dev/null
@@ -1,282 +0,0 @@
-#!/bin/bash
-. bash_helper_functions
-
-report_failure ()
-{
- echo " **** failed to complete **** "
- exit 1
-}
-
-htmlify_python_file ()
-{
- pygmentize -f html -O full,style=vs $1 > $1.html
-}
-
-
-add_links_between_example_programs()
-{
- EXT=$3
- # Get the list of example program filenames
- pushd $1 > /dev/null
- FILES=`ls *.$EXT`
- popd > /dev/null
-
- # Now run sed on all the htmlified example programs to add the links between them.
- for f in $FILES
- do
- #escape the . in the filename
- escaped_name=`echo $f | sed -e 's/\./\\\./g'`
- pushd $1 > /dev/null
- # get a list of all the html example files that contain the name
- matching_html_files=`grep -e "\b$escaped_name\b" -l *.$EXT | sed -e "s/\.$EXT\b/.$EXT.html/g"`
- popd > /dev/null
-
- # now actually run sed to add the links
- pushd $2 > /dev/null
- if [ -n "$matching_html_files" ]
- then
- sed -i -e "s/\b$escaped_name\b/<a href=\"$escaped_name.html\">$escaped_name<\/a>/g" $matching_html_files
- fi
- popd > /dev/null
- done
-
-}
-
-htmlify_cmake ()
-{
- echo "<html><head><title>" > $1.html;
- echo $1 >> $1.html;
- echo "</title></head><body bgcolor='white'><pre>" >> $1.html;
-
- # line 1: make comments green
- # line 2: add links into the add_subdirectory directives
- # line 3: make literal quotes red
- # line 4: make the directives show up blue
- # line 5: make variable names show up purple
- sed -e "s/^\([ ]*#.*\)/<font color='#009900'>\1<\/font>/" \
- -e "s/add_subdirectory\([ ]*\)(\([ ]*\)\([^ ]*\)\([ ]*\)\([^ )]*\)/add_subdirectory\1(\2\3\4<a href='\3\/CMakeLists.txt.html'>\5<\/a>/" \
- -e "s/\"\([^\"]*\)\"/\"<font color='#CC0000'>\1<\/font>\"/g" \
- -e "s/^\([ ]*[^( ]*[ ]*\)(/<font color='blue'>\1<\/font>(/" \
- -e "s/{\([^}]*\)}/\{<font color='#BB00BB'>\1<\/font>}/g" \
- $1 >> $1.html;
-
- echo "</pre></body></html>" >> $1.html;
-}
-
-htmlify_python()
-{
- FILES=`\ls $1/*.py`
- for i in $FILES
- do
- htmlify_python_file ${i}
- rm ${i}
- done
-}
-
-
-makedocs ()
-{
-
- REVNUM_FILE=.logger_revnum
-
-
-
- # figure out the short number that identifies this particular changeset
- get_short_revision_number `cat $REVNUM_FILE`
- LOGGER_REVNUM=$RESULT
-
- XSLT_OPTIONS="--nodtdattr --nonet --novalid"
- DATE_TODAY=`date --date= "+%b %d, %Y"`;
-
-
-
-
- # The revision number we are currently at
- CHANGESET_ID=`hg id -i | sed -e 's/\+//'`
- get_short_revision_number $CHANGESET_ID
- REVISION=$RESULT
-
-
- if [ "$1" = "makerel" ]
- then
- RELEASE=${MAJOR_NUM}.${MINOR_NUM}
- else
- RELEASE=${MAJOR_NUM}.${MINOR_NUM}.${PATCH_NUM}
- fi;
-
- # get XML versions of the change logs
- BASE_LOGGER_REVNUM=`echo $LOGGER_REVNUM - 1000 | bc`
- NEXT_LOGGER_REVNUM=`echo $LOGGER_REVNUM + 1 | bc`
- echo Getting the mercurial change logs for revisions $NEXT_LOGGER_REVNUM:$REVISION
- hg log -v ../dlib ../examples ../tools ../python_examples --style=xml -r$NEXT_LOGGER_REVNUM:$REVISION > docs/log.txt || report_failure
- echo Getting the mercurial change logs for revisions $BASE_LOGGER_REVNUM:$LOGGER_REVNUM
- hg log -v ../dlib ../examples ../tools ../python_examples --style=xml -r$BASE_LOGGER_REVNUM:$LOGGER_REVNUM > docs/old_log.txt || report_failure
-
- # grab a clean copy of the repository
- rm -rf docs/cache
- rm -rf docs/web
- rm -rf docs/chm/docs
- hg archive docs/cache || report_failure
- # Don't need the docs folder in the cache, moreover, deleting it here avoids letting the makerel script include it in the dlib tar balls.
- rm -rf docs/cache/docs
-
- echo "#ifndef DLIB_REVISION_H" > docs/cache/dlib/revision.h
- echo "// Version: " $RELEASE >> docs/cache/dlib/revision.h
- echo "// Date: " `date` >> docs/cache/dlib/revision.h
- echo "// Mercurial Revision ID: " $CHANGESET_ID >> docs/cache/dlib/revision.h
- echo "#define DLIB_MAJOR_VERSION " $MAJOR_NUM >> docs/cache/dlib/revision.h
- echo "#define DLIB_MINOR_VERSION " $MINOR_NUM >> docs/cache/dlib/revision.h
- echo "#define DLIB_PATCH_VERSION " $PATCH_NUM >> docs/cache/dlib/revision.h
- echo "#endif" >> docs/cache/dlib/revision.h
-
-
- rm -rf docs/web
- rm -rf docs/chm/docs
- mkdir docs/web
- mkdir docs/chm/docs
-
- echo Creating HTML version of the source
- htmlify --title "dlib C++ Library - " -i docs/cache -o htmltemp.$$
- add_links_between_example_programs docs/cache/examples htmltemp.$$/examples cpp
-
- echo Copying files around...
- cp -r htmltemp.$$/dlib docs/web
- cp -r htmltemp.$$/dlib docs/chm/docs
- cp -r htmltemp.$$/examples/* docs/web
- cp -r htmltemp.$$/examples/* docs/chm/docs
- rm -rf htmltemp.$$
-
- # create python docs unless you say ./makedocs fast
- if [ "$1" != "fast" ]
- then
- cd ..
- python setup.py build || report_failure
- python setup.py build_sphinx -c docs/docs/python --build-dir docs/sphinx.$$ || report_failure
- cd docs
- cp -r sphinx.$$/html docs/web/python
- mv sphinx.$$/html docs/chm/docs/python
- rm -rf sphinx.$$
- fi;
-
-
- cp docs/cache/dlib/test/makefile docs/web/dlib/test
- cp docs/cache/dlib/test/makefile docs/chm/docs/dlib/test
-
- cp docs/cache/dlib/test/CMakeLists.txt docs/web/dlib/test
- cp docs/cache/dlib/test/CMakeLists.txt docs/chm/docs/dlib/test
- cp docs/cache/dlib/CMakeLists.txt docs/web/dlib
- cp docs/cache/dlib/CMakeLists.txt docs/chm/docs/dlib
- mkdir docs/web/examples || report_failure
- cp docs/cache/examples/CMakeLists.txt docs/web/examples
- mkdir docs/chm/docs/examples || report_failure
- cp docs/cache/examples/CMakeLists.txt docs/chm/docs/examples
- cp docs/cache/python_examples/*.py docs/chm/docs/
- cp docs/cache/python_examples/*.py docs/web/
-
- htmlify_python docs/chm/docs/
- htmlify_python docs/web/
- add_links_between_example_programs docs/cache/python_examples docs/chm/docs py
- add_links_between_example_programs docs/cache/python_examples docs/web py
-
- cp docs/*.gif docs/web
- cp docs/*.gif docs/chm/docs
- cp docs/ml_guide.svg docs/web
- cp docs/ml_guide.svg docs/chm/docs
- cp -r docs/guipics docs/web
- cp -r docs/guipics docs/chm/docs
- cp docs/*.html docs/web
- cp docs/*.html docs/chm/docs
- cp docs/*.css docs/web
- cp docs/*.css docs/chm/docs
- cp docs/*.js docs/web
- cp docs/*.js docs/chm/docs
- cp docs/*.png docs/web
- cp docs/*.jpg docs/web
- cp docs/*.webm docs/web
- cp docs/*.ico docs/web
- cp docs/*.png docs/chm/docs
- cp docs/*.jpg docs/chm/docs
- cp docs/*.webm docs/chm/docs
- cp docs/*.ico docs/chm/docs
-
- cd docs/chm/docs || report_failure
- htmlify_cmake dlib/CMakeLists.txt;
- htmlify_cmake examples/CMakeLists.txt;
- htmlify_cmake dlib/test/CMakeLists.txt;
- cd ../../.. || report_failure
- cd docs/web || report_failure
- htmlify_cmake dlib/CMakeLists.txt;
- htmlify_cmake examples/CMakeLists.txt;
- htmlify_cmake dlib/test/CMakeLists.txt;
- cd ../.. || report_failure
-
- find docs/web docs/chm -name "CMakeLists.txt" | xargs rm
-
-
-
- # generate the HTML docs
- echo Generate HTML docs from XML and XSLT style sheet
- FILES=`\ls docs/*.xml | grep -v main_menu.xml`
- for i in $FILES
- do
-
- # The last modified date for these files should always be the release date (regardless of when the actual xml files were modified).
- if [ "${i}" = "docs/release_notes.xml" -o ${i} = "docs/old_release_notes.xml" \
- -o ${i} = "docs/change_log.xml" -o ${i} = "docs/old_change_log.xml" \
- -o ${i} = "docs/index.xml" ]
- then
- DATE=$DATE_TODAY
- else
- get_last_modified_date ${i}
- DATE=$RESULT
- fi;
-
- #make web version
- cat docs/stylesheet.xsl | sed -e 's/"is_chm">[^<]*/"is_chm">false/' -e "s/_CURRENT_RELEASE_/$RELEASE/" -e "s/_LAST_MODIFIED_DATE_/$DATE/" \
- > docs/stylesheet.$$.xsl
- OUT_FILE=$(echo ${i} | sed -e "s/\.xml/\.html/" | sed -e "s/docs\//docs\/web\//")
- xsltproc $XSLT_OPTIONS -o $OUT_FILE docs/stylesheet.$$.xsl ${i}
-
- #make chm version
- cat docs/stylesheet.xsl | sed -e 's/"is_chm">[^<]*/"is_chm">true/' -e "s/_CURRENT_RELEASE_/$RELEASE/" -e "s/_LAST_MODIFIED_DATE_/$DATE/" \
- > docs/stylesheet.$$.xsl
- OUT_FILE=$(echo ${i} | sed -e "s/\.xml/\.html/" | sed -e "s/docs\//docs\/chm\/docs\//")
- xsltproc $XSLT_OPTIONS -o $OUT_FILE docs/stylesheet.$$.xsl ${i}
-
- rm docs/stylesheet.$$.xsl
- done
-
-# Delete doc type header stuff
-# FILES=`find docs/chm docs/web -iname "*.html" -type f`
-# for i in $FILES
-# do
-# sed -e '/<!DOCTYPE/d' ${i} > temp.$$;
-# mv temp.$$ ${i};
-# done
-
-
- echo Generating sitemap
- cd docs/web || report_failure
- find . -name "*.html" | awk '{ print "http://dlib.net" substr($1,2)}' > sitemap.txt
-
- # make the main index have a 301 redirect. Use php to do this
- echo '<?php if ($_SERVER["SERVER_NAME"] != "dlib.net") { header("Location: http://dlib.net/", true, 301); exit; } ?>' > index.php
- cat index.html >> index.php
- rm index.html
-
- cd ../..
-}
-
-
-./testenv || report_failure
-
-
-
-
-# build all the html documentation
-makedocs $1
-
-# now make the table of contents for the chm file
-echo Generating the table of contents for the chm file
-xsltproc -o docs/chm/Table\ of\ Contents.hhc docs/chm/htmlhelp_stylesheet.xsl docs/chm/toc.xml
-