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

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

gestion de la creation des .ps pour sophya.tex et pmixer.tex cmv 4/4/01

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