Jpp
doxygen.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 #
3 #--------------------------------------------------------------------------------------
4 #
5 # Utility script for generation of HTML Doxygen main page.
6 #
7 #--------------------------------------------------------------------------------------
8 # \author mdejong
9 #
10 script=${0##*/}
11 
12 if [ -z $JPP_DIR ]; then
13  echo "Variable JPP_DIR undefined."
14  exit 1
15 fi
16 
17 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/null
18 
19 if ( do_usage $* ); then
20  usage "$script"
21 fi
22 
23 setopt +o nomatch
24 
25 set_variable NUMBER_OF_COLUMNS 3
26 
27 
28 echo "/**"
29 echo " * \mainpage Documentation"
30 echo " * \htmlonly"
31 echo " * <style>"
32 echo " * ul.b { list-style-type: none; counter-reset: section; columns: ${NUMBER_OF_COLUMNS}; -moz-column-count: ${NUMBER_OF_COLUMNS}; -webkit-column-count: ${NUMBER_OF_COLUMNS}; column-count: ${NUMBER_OF_COLUMNS}; }"
33 echo " * </style>"
34 
35 # Documents
36 
37 echo " * <hr>"
38 echo " * <h2>Documents</h2>"
39 echo " * <ul class=\"b\">"
40 for file in `ls ${JPP_DOC}/*`; do
41  if [ -f ${file} ]; then
42  echo " * <li><a href=\"${file##*/}\">${file##*/}</a></li>"
43  fi
44 done
45 echo " * </ul>"
46 
47 
48 # Applications header
49 
50 echo " * <hr>"
51 echo " * <h2>Applications</h2>"
52 echo " * <ul class=\"b\">"
53 for file in `ls ${JPP_BIN}`; do
54  echo " * <li><a href=\"#${file}\">${file}</a></li>"
55 done
56 echo " * </ul>"
57 
58 
59 # Examples header
60 
61 echo " * <hr>"
62 echo " * <h2>Examples</h2>"
63 echo " * <ul class=\"b\">"
64 for dir in `ls examples`; do
65  echo " * <li><a href=\"#${dir}\">${dir}</a></li>"
66 done
67 echo " * </ul>"
68 
69 
70 # Applications data
71 
72 for file in `ls ${JPP_BIN}`; do
73 
74  source=`get_source ${file}`
75 
76  echo " * <hr>"
77  echo " * <h4 id=\"${file}\">"
78  if [[ -n "${source}" ]]; then
79  echo " * \\\\endhtmlonly"
80  echo " * ${source##*/}"
81  echo " * \htmlonly"
82  else
83  echo " * ${file}"
84  fi
85  echo " * </h4>"
86  echo " * <pre>"
87  ${file} -h! 2> /dev/null | sed 's/</\&lt;/g;s/>/\&gt;/g'
88  echo " * </pre>"
89  echo " * <a href="#top">Go back to top of page.</a>"
90 done
91 
92 
93 # Examples data
94 
95 for dir in `ls examples`; do
96 
97  echo " * <hr>"
98  echo " * <h4 id=\"${dir}\">${dir}</h4>"
99  echo " * <ul class=\"b\">"
100  for file in `find examples/${dir}/* -maxdepth 0 -perm /+x`; do
101  echo " * <li><a href=\"#${file}\">${file##*/}</a></li>"
102  done
103  echo " * </ul>"
104  echo " * <a href="#top">Go back to top of page.</a>"
105 
106  for file in `find examples/${dir}/* -maxdepth 0 -perm /+x`; do
107 
108  source=`get_source ${file}`
109 
110  echo " * <hr>"
111  echo " * <h4 id=\"${file}\">"
112  if [[ -n "${source}" ]]; then
113  echo " * \\\\endhtmlonly"
114  echo " * ${source##*/}"
115  echo " * \htmlonly"
116  else
117  echo " * ${file}"
118  fi
119  echo " * </h4>"
120  echo " * <pre>"
121  ${file} -h! 2>&1 | sed 's/</\&lt;/g;s/>/\&gt;/g'
122  echo " * </pre>"
123  echo " * <a href="#top">Go back to top of page.</a>"
124  done
125 done
126 
127 echo " * \\\\endhtmlonly"
128 echo " */"