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