more comments
[wxWidgets.git] / docs / doxygen / regen.sh
1 #!/bin/bash
2 #
3 # $Id$
4 #
5 # This bash script regenerates the HTML doxygen version of the
6 # wxWidgets manual and adjusts the doxygen log to make it more
7 # readable.
8 #
9 # Usage:
10 # ./regen.sh [html|chm|xml|all]
11 #
12 # Pass "html" to regen only the HTML output format, "chm" only for
13 # the CHM, "xml" only for the XML and "all" to regen them all.
14 #
15 # If no arguments are passed all formats are regenerated
16 # (just like passing "all").
17 #
18
19
20 #
21 me=$(basename $0)
22 path=${0%%/$me} # path from which the script has been launched
23 current=$(pwd)
24 cd $path
25
26 # prepare folders for the cp commands below
27 mkdir -p out/html # we need to copy files in this folder below
28 mkdir -p out/html/wxmsw out/html/wxgtk out/html/wxmac
29
30 # these images are not automatically copied by Doxygen because they're not
31 # used in doxygen documentation but only in our html footer and by our
32 # custom aliases
33 cp images/powered-by-wxwidgets.png out/html
34 cp images/*logo.png out/html
35 cp images/wxmsw/*png out/html/wxmsw
36 cp images/wxmac/*png out/html/wxmac
37 cp images/wxgtk/*png out/html/wxgtk
38
39 # this CSS is not automatically copied by Doxygen because it's
40 # included by our custom html header...
41 cp wxwidgets.css out/html
42
43 # which configuration should we use?
44 if [[ -z "$1" ]]; then
45 cfgfile="Doxyfile.all"
46 else
47 cfgfile="Doxyfile.$1"
48 fi
49
50 #
51 # NOW RUN DOXYGEN
52 #
53 # NB: we do this _after_ copying the required files to the output folders
54 # otherwise when generating the CHM file with Doxygen, those files are
55 # not included!
56 #
57 doxygen $cfgfile
58
59 # Doxygen has the annoying habit to put the full path of the
60 # affected files in the log file; remove it to make the log
61 # more readable
62 currpath=`pwd`/
63 interfacepath=`cd ../../interface && pwd`/
64 cat doxygen.log | sed -e "s|$currpath||g" -e "s|$interfacepath||g" >temp
65 mv temp doxygen.log
66
67 # filter out the following warning which we don't care about
68 #cat doxygen.log | grep -v ".*supplied.*as.*the.*argument.*is.*not.*an.*input.*file.*" >temp
69 #mv temp doxygen.log
70
71 cd $current