source: Sophya/trunk/SophyaLib/Manual/mkmf@ 2171

Last change on this file since 2171 was 2137, checked in by cmv, 23 years ago

print des index de sophya.tex cmv 27/07/2002

  • Property svn:executable set to *
File size: 5.4 KB
RevLine 
[891]1#!/bin/csh
[976]2#####################################################
[891]3if( $#argv >= 1 ) then
4 if( "$1" == "-h" ) then
[976]5 echo "mkmf [-options] [-o dir] [module1] [module2] [...]"
[891]6 echo " generate documentation for all Sophya"
[976]7 echo " or only for module [module...]"
8 echo " **** [-options] :"
9 echo " -html : generate HTML doc"
10 echo " -latex : generate LATEX doc"
11 echo " -man : generate MAN doc"
12 echo " -rtf : generate RTF doc"
13 echo " default is : html + latex"
14 echo " **** [-o dir] : directory where doc have to be put"
15 echo " default is ."
16 exit -1
[891]17 endif
18endif
[976]19#####################################################
[891]20
[976]21##################################
22######## Decode arguments ########
23##################################
[1000]24set allmodules = ( \
[1625]25 BaseTools HiStats NTools Samba SkyMap SUtils SysTools TArray \
26 FitsIOServer IFFTW LinAlg XAstroPack \
[1627]27 PMixer PrgMap PrgUtil ProgPI SkyT \
[1000]28 )
[976]29unset modules; unset latex; unset html; unset man; unset rtf
30set outdir = "."
31if( $#argv >= 1 ) then
32 while ( $#argv > 0)
33 if( "$1" == "-o" ) then
34 shift
35 set outdir = $1
36 else if( "$1" == "-html" ) then
37 set html
38 else if( "$1" == "-latex" ) then
39 set latex
40 else if( "$1" == "-man" ) then
41 set man
42 else if( "$1" == "-rtf" ) then
43 set rtf
44 else
45 if( ! $?modules ) set modules
46 set modules = ( $modules $1 )
47 endif
48 shift
49 end
50endif
51if( ! $?html && ! $?latex && ! $?man && ! $?rtf ) then
52 set html
53 set latex
54endif
55if( ! $?modules ) then
56 set modules = ( $allmodules )
57endif
58
[891]59##########################################
60######## Test de la configuration ########
61##########################################
62
[976]63#------------
[891]64# mydoxy.conf
[976]65#------------
[891]66cp dox_sophya.conf mydoxy.conf
67
[976]68#----------
[891]69# doxygen ?
[976]70#----------
[891]71which doxygen >! /dev/null
72if( $status != 0 ) then
73 echo 'ERROR: doxygen is not installed...'
74 exit -1
75endif
76
[976]77#-------------
[891]78# doxysearch ?
[976]79#-------------
[891]80which doxysearch >! /dev/null
81if( $status != 0 ) then
82 echo 'ERROR: doxysearch is not installed...'
83 exit -2
84else
85 set s = `which doxysearch`
[976]86 echo 'doxysearch is installed in : ' $s:h
[891]87 echo 'mkmf will automatically update the config file.'
88 echo "BIN_ABSPATH = $s:h" >> mydoxy.conf
89 grep 'BIN_ABSPATH' mydoxy.conf | grep -v ^\#
90endif
91
[976]92#-----------------
93# Version number ?
94#-----------------
[1606]95set f = ../BaseTools/sversion.h
[976]96if( -e $f ) then
97 set v = `grep 'SOPHYA_VERSION' $f | awk '{print $3}'`
98 set r = `grep 'SOPHYA_REVISION' $f | awk '{print $3}'`
99 set t = `grep 'SOPHYA_TAG' $f | awk '{print $3}'`
100 echo "PROJECT_NUMBER = V${v}_R${r}_${t}" >> mydoxy.conf
101else
102 echo "PROJECT_NUMBER = Not_Defined" >> mydoxy.conf
[891]103endif
[976]104grep 'PROJECT_NUMBER = ' mydoxy.conf | tail -1
[891]105
[976]106#---------------
107# What modules ?
108#---------------
109set lf =
110foreach f ( $modules )
111 echo "... Generating doc for ../$f"
112 set lf = ( ../$f $lf )
113end
114echo "INPUT = $lf" >> mydoxy.conf
115grep 'INPUT = ' mydoxy.conf | tail -1
116
117set lf =
118foreach f ( $allmodules )
119 set lf = ( ../$f $lf )
120end
121echo "EXAMPLE_PATH = $lf" >> mydoxy.conf
122
123#-------------------
124# What kind of doc ?
125#-------------------
126if( $?html ) then
127 echo "GENERATE_HTML = YES" >> mydoxy.conf
128 echo "...... generating HTML"
129else
130 echo "GENERATE_HTML = NO" >> mydoxy.conf
131endif
132if( $?latex ) then
133 echo "GENERATE_LATEX = YES" >> mydoxy.conf
134 echo "...... generating LATEX"
135else
136 echo "GENERATE_LATEX = NO" >> mydoxy.conf
137endif
138if( $?man ) then
139 echo "GENERATE_MAN = YES" >> mydoxy.conf
140 echo "...... generating MAN"
141else
142 echo "GENERATE_MAN = NO" >> mydoxy.conf
143endif
144if( $?rtf ) then
145 echo "GENERATE_RTF = YES" >> mydoxy.conf
146 echo "...... generating RTF"
147else
148 echo "GENERATE_RTF = NO" >> mydoxy.conf
149endif
150
151#------------------------
152# What output directory ?
153#------------------------
[1453]154if( ! -d $outdir ) then
155 echo ERROR: Not existing directory : $outdir
156 exit -1
157endif
[976]158echo "OUTPUT_DIRECTORY = $outdir" >> mydoxy.conf
159grep 'OUTPUT_DIRECTORY = ' mydoxy.conf | tail -1
160
161#--------------------------
162# Configuration file update
163#--------------------------
164doxygen -u mydoxy.conf >! /dev/null
165rm -f mydoxy.conf.bak
166
[891]167#########################################
168######## Creation de la Makefile ########
169#########################################
170
171rm -f Makefile
172touch Makefile
173chmod +x Makefile
174cat >> Makefile << EOF_
175
[1453]176#-------------------------------------------------------
177all: doc sophya pmixer
178
179#-------------------------------------------------------
[891]180clean:
[1453]181 rm -rf *.o dox_filter
182 if [ -d ${outdir} ] ; then cd ${outdir}/ ; rm -rf html latex man rtf; fi
[891]183
[1453]184#-------------------------------------------------------
185copy:
186 if [ ! -d ${outdir}/latex ] ; then mkdir ${outdir}/latex; fi
187 cp -p *.tex *.sty *.eps *.inc ${outdir}/latex/.
188
189#-------------------------------------------------------
[891]190doc: filter
191 doxygen mydoxy.conf
192
[1453]193#-------------------------------------------------------
[891]194filter: dox_filter
195
196dox_filter : dox_filter.o
197
198dox_filter.o : dox_filter.c
199
[1453]200#-------------------------------------------------------
201sophya: copy ${outdir}/latex/sophya.ps
202
203${outdir}/latex/sophya.ps: sophya.tex defsophya.sty blue_sophya_400.eps ex1.inc
[2137]204 cd ${outdir}/latex/; \
205 latex sophya.tex; \
206 makeindex sophya; \
207 latex sophya; \
208 dvips -o sophya.ps sophya.dvi
[1453]209
210pmixer: copy ${outdir}/latex/pmixer.ps
211
212${outdir}/latex/pmixer.ps: pmixer.tex
[2137]213 cd ${outdir}/latex/; \
214 latex pmixer.tex; \
215 latex pmixer; \
216 dvips -o pmixer.ps pmixer.dvi
[1453]217
[891]218EOF_
219
220exit 0
Note: See TracBrowser for help on using the repository browser.