change unix script so lower case zip and exe
[wxWidgets.git] / build / script / rebuild-makefiles.sh
1 #!/bin/sh
2
3 CURDATE=`date -I`
4 WORKDIR=/home/bake/bkl-cronjob
5 FTPDIR=/home/ftp/pub
6 LD_LIBRARY_PATH=/usr/local/lib
7
8 update_from_cvs()
9 {
10 (
11 cd ${WORKDIR}/wxWidgets && cvs -z3 update -P -d
12 )
13 (
14 cd ${WORKDIR}/wxGTK && cvs -z3 update -P
15 )
16 }
17
18
19 regenerate_makefiles()
20 {
21 (cd ${WORKDIR}/wxWidgets/build/bakefiles && nice python -O ${WORKDIR}/bakefile/bin/bakefile_gen)
22 }
23
24
25 do_package()
26 {
27 archtype=$1
28 format=$2
29 shift ; shift
30
31 rm -f ${WORKDIR}/archives/wx-mk-${format}-*
32
33 cd ${WORKDIR}/wxWidgets
34
35 files=""
36 for i in $* ; do
37 files="$files `find -name "$i"`"
38 done
39
40 if test $archtype = tar ; then
41 tar czf ../archives/wx-mk-${format}-${CURDATE}.tar.gz $files
42 elif test $archtype = zip ; then
43 zip -l -q -9 ../archives/wx-mk-${format}-${CURDATE}.zip $files
44 fi
45
46 cd ..
47 }
48
49 package_cvs()
50 {
51 rm -f ${WORKDIR}/archives/wx-cvs-$1*
52 cd ${WORKDIR}/
53 ##tar --exclude=*.ds* -jcf ./archives/test.tar.bz2 ./wxGTK
54 tar --exclude=*.ds* -jcf ./archives/wx-cvs-$1-${CURDATE}.tar.bz2 ./$2
55 }
56
57
58 package_makefiles()
59 {
60 do_package tar autoconf Makefile.in autoconf_inc.m4
61 do_package zip borland makefile.bcc config.bcc
62 do_package zip mingw makefile.gcc config.gcc
63 do_package zip dmars makefile.dmc config.dmc makefile.dms config.dms
64 do_package zip watcom makefile.wat config.wat
65 do_package zip msvc makefile.vc config.vc
66 do_package zip msvc6prj '*.dsp' '*.dsw'
67 do_package zip evcprj '*.vcp' '*.vcw'
68 }
69
70 copy_files ()
71 {
72 ##delete old files and then copy new ones, add a symlink
73 ## CVS
74 find ${FTPDIR}/CVS_HEAD/files -type f -name wx-cvs\* -mtime +6 | xargs rm -rf
75 cp ${WORKDIR}/archives/wx-cvs-* ${FTPDIR}/CVS_HEAD/files
76
77 rm ${FTPDIR}/CVS_HEAD/wx* ${FTPDIR}/CVS_HEAD/MD5SUM
78 for f in `find ${FTPDIR}/CVS_HEAD/files -type f -name wx-cvs\* -mmin -601` ; do
79 ln -s $f `echo $f | sed -e "s/-${CURDATE}//" | sed -e "s|/files||" `
80 done
81 md5sum ${FTPDIR}/CVS_HEAD/wx* > ${FTPDIR}/CVS_HEAD/MD5SUM
82 ## make sure updated at is really last
83 sleep 10
84 echo cvs checkout done at `date -u` > ${FTPDIR}/CVS_HEAD/updated_at.txt
85
86 ## Makefiles
87 find ${FTPDIR}/CVS_Makefiles/files -type f -name wx-mk\* -mtime +3 | xargs rm -rf
88 cp ${WORKDIR}/archives/wx-mk-* ${FTPDIR}/CVS_Makefiles/files
89
90 rm ${FTPDIR}/CVS_Makefiles/wx* ${FTPDIR}/CVS_Makefiles/MD5SUM
91 ##there must be an easier way of doing these links...
92 for f in `find ${FTPDIR}/CVS_Makefiles/files -type f -name wx-mk\* -mmin -601` ; do
93 ln -s $f `echo $f | sed -e "s/-${CURDATE}//" | sed -e "s|/files||" `
94 done
95 md5sum ${FTPDIR}/CVS_Makefiles/wx* > ${FTPDIR}/CVS_Makefiles/MD5SUM
96 sleep 10
97 echo CVS Makefiles generated from bakefiles last updated at `date -u` > ${FTPDIR}/CVS_Makefiles/updated_at.txt
98
99
100 ## Docs...
101 find ${FTPDIR}/CVS_Docs/files -type f -name wxWidgets-Do\* -mtime +3 | xargs rm -rf
102 cp ${WORKDIR}/archives/wxWidgets-Docs-* ${FTPDIR}/CVS_Docs/files
103
104 rm ${FTPDIR}/CVS_Docs/wx* ${FTPDIR}/CVS_Docs/MD5SUM
105 ##there must be an easier way of doing these links...
106 for f in `find ${FTPDIR}/CVS_Docs/files -type f -name wxWidgets-Do\* -mmin -601` ; do
107 ln -s $f `echo $f | sed -e "s/-${CURDATE}//" | sed -e "s|/files||" `
108 done
109 md5sum ${FTPDIR}/CVS_Docs/wx* > ${FTPDIR}/CVS_Docs/MD5SUM
110 sleep 10
111 echo CVS Documentation generated from bakefiles last updated at `date -u` > ${FTPDIR}/CVS_Docs/updated_at.txt
112 }
113
114 do_texrtf ()
115 {
116
117 ##parameters : subdir_of_tex index.tex dir_under_wxWidgets
118 rm ${WORKDIR}/archives/html/$1/*
119 /usr/local/bin/tex2rtf ${WORKDIR}/wxWidgets/$3/docs/latex/$1/$2 ${WORKDIR}/archives/html/$1/$1 -twice -html -macros ${WORKDIR}/wxWidgets/docs/latex/wx/tex2rtf_css.ini
120 cp ${WORKDIR}/wxWidgets/$3/docs/latex/$1/*.gif ${WORKDIR}/archives/html/$1
121 cp ${WORKDIR}/wxWidgets/$3/docs/latex/$1/*.css ${WORKDIR}/archives/html/$1
122 cd ${WORKDIR}/archives/html/$1
123 zip -l -q -9 ${WORKDIR}/archives/htb/$1.htb *.html *.css wx.hhc wx.hhp wx.hhk
124 zip -q -9 ${WORKDIR}/archives/htb/$1.htb *.gif
125 }
126
127 ##this one for tex2rtf as its latex docs aren't in latex...
128 do_util_texrtf ()
129 {
130 ##parameters : subdir_of_tex index.tex
131 rm ${WORKDIR}/archives/html/$1/*
132 /usr/local/bin/tex2rtf ${WORKDIR}/wxWidgets/utils/$1/docs/$2 ${WORKDIR}/archives/html/$1/$1 -twice -html -macros ${WORKDIR}/wxWidgets/docs/latex/wx/tex2rtf_css.ini
133 cp ${WORKDIR}/wxWidgets/utils/$1/docs/*.gif ${WORKDIR}/archives/html/$1
134 cp ${WORKDIR}/wxWidgets/utils/$1/docs/*.css ${WORKDIR}/archives/html/$1
135 cd ${WORKDIR}/archives/html/$1
136 zip -l -q -9 ${WORKDIR}/archives/htb/$1.htb *.html *.css wx.hhc wx.hhp wx.hhk
137 zip -q -9 ${WORKDIR}/archives/htb/$1.htb *.gif
138 }
139
140 do_docs ()
141 {
142 ##remove files, then regenerate
143 rm ${WORKDIR}/archives/wxWidgets-Docs*
144 rm ${WORKDIR}/archives/htb/*.*
145
146 ######### dir index.tex rootdir
147 do_texrtf wx manual.tex
148 do_texrtf book book.tex
149 do_texrtf svg dcsvg.tex contrib
150 do_texrtf ogl ogl.tex contrib
151 do_texrtf mmedia mmedia.tex contrib
152 do_texrtf gizmos manual.tex contrib
153 do_texrtf fl fl.tex contrib
154 do_util_texrtf tex2rtf tex2rtf.tex
155
156 cd ${WORKDIR}/archives/
157 tar zcvf ${WORKDIR}/archives/wxWidgets-Docs-HTML-${CURDATE}.tar.gz html/wx/*.html html/wx/*.gif html/wx/*.css
158 # TODO: include the extra HTML docs into the above archive.
159 # TODO: we need to add the version number to the doc archives
160 # tar zcvf ${WORKDIR}/archives/wxWidgets-Docs-Extra-HTML-${CURDATE}.tar.gz `find . -name 'wx' -prune -o -name '*.html' -print`
161
162 tar zcvf ${WORKDIR}/archives/wxWidgets-Docs-HTB-${CURDATE}.tar.gz htb/*.htb
163 # tar zcvf ${WORKDIR}/archives/wxWidgets-Docs-Extra-HTB-${CURDATE}.tar.gz --exclude wx.htb htb/*.htb
164
165 ##remove .con files
166 rm ${WORKDIR}/*.con
167
168 }
169
170
171 add_win_files ()
172 {
173 ### starts with wxWidgets-Docs-xxx.zip
174 for f in `find ${WORKDIR}/archives/win/ -name wx\*.zip ` ; do
175 mv $f ${WORKDIR}/archives/`basename $f | tr -d ".zip"`-${CURDATE}.zip
176 done
177
178 rm ${WORKDIR}/archives/*.exe
179 for f in `find ${WORKDIR}/archives/win/ -name wx\*.exe ` ; do
180 mv $f ${WORKDIR}/archives/`basename $f | tr -d ".exe"`-${CURDATE}.exe
181 done
182
183 }
184
185 update_from_cvs
186 regenerate_makefiles
187 package_makefiles
188 package_cvs All wxWidgets
189 package_cvs Gtk wxGTK
190
191 do_docs
192 add_win_files
193
194 copy_files
195
196 exit 0