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

Last change on this file since 1903 was 1627, checked in by cmv, 24 years ago

ajout modules ProgPI ... cmv 7/8/01

  • Property svn:executable set to *
File size: 5.4 KB
Line 
1#!/bin/csh
2#####################################################
3if( $#argv >= 1 ) then
4 if( "$1" == "-h" ) then
5 echo "mkmf [-options] [-o dir] [module1] [module2] [...]"
6 echo " generate documentation for all Sophya"
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
17 endif
18endif
19#####################################################
20
21##################################
22######## Decode arguments ########
23##################################
24set allmodules = ( \
25 BaseTools HiStats NTools Samba SkyMap SUtils SysTools TArray \
26 FitsIOServer IFFTW LinAlg XAstroPack \
27 PMixer PrgMap PrgUtil ProgPI SkyT \
28 )
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
59##########################################
60######## Test de la configuration ########
61##########################################
62
63#------------
64# mydoxy.conf
65#------------
66cp dox_sophya.conf mydoxy.conf
67
68#----------
69# doxygen ?
70#----------
71which doxygen >! /dev/null
72if( $status != 0 ) then
73 echo 'ERROR: doxygen is not installed...'
74 exit -1
75endif
76
77#-------------
78# doxysearch ?
79#-------------
80which doxysearch >! /dev/null
81if( $status != 0 ) then
82 echo 'ERROR: doxysearch is not installed...'
83 exit -2
84else
85 set s = `which doxysearch`
86 echo 'doxysearch is installed in : ' $s:h
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
92#-----------------
93# Version number ?
94#-----------------
95set f = ../BaseTools/sversion.h
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
103endif
104grep 'PROJECT_NUMBER = ' mydoxy.conf | tail -1
105
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#------------------------
154if( ! -d $outdir ) then
155 echo ERROR: Not existing directory : $outdir
156 exit -1
157endif
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
167#########################################
168######## Creation de la Makefile ########
169#########################################
170
171rm -f Makefile
172touch Makefile
173chmod +x Makefile
174cat >> Makefile << EOF_
175
176#-------------------------------------------------------
177all: doc sophya pmixer
178
179#-------------------------------------------------------
180clean:
181 rm -rf *.o dox_filter
182 if [ -d ${outdir} ] ; then cd ${outdir}/ ; rm -rf html latex man rtf; fi
183
184#-------------------------------------------------------
185copy:
186 if [ ! -d ${outdir}/latex ] ; then mkdir ${outdir}/latex; fi
187 cp -p *.tex *.sty *.eps *.inc ${outdir}/latex/.
188
189#-------------------------------------------------------
190doc: filter
191 doxygen mydoxy.conf
192
193#-------------------------------------------------------
194filter: dox_filter
195
196dox_filter : dox_filter.o
197
198dox_filter.o : dox_filter.c
199
200#-------------------------------------------------------
201sophya: copy ${outdir}/latex/sophya.ps
202
203${outdir}/latex/sophya.ps: sophya.tex defsophya.sty blue_sophya_400.eps ex1.inc
204 cd ${outdir}/latex/; latex sophya.tex; latex sophya.tex; \
205 dvips -o sophya.ps sophya.dvi
206
207pmixer: copy ${outdir}/latex/pmixer.ps
208
209${outdir}/latex/pmixer.ps: pmixer.tex
210 cd ${outdir}/latex/; latex pmixer.tex; latex pmixer.tex; \
211 dvips -o pmixer.ps pmixer.dvi
212
213EOF_
214
215exit 0
Note: See TracBrowser for help on using the repository browser.