1 | <?xml version="1.0" encoding="utf-8" ?> |
---|
2 | <project name="rk3-compile"> |
---|
3 | |
---|
4 | <target name="compile"> |
---|
5 | |
---|
6 | <!-- checkout greenstone3 --> |
---|
7 | <exec executable="svn"> |
---|
8 | <arg value="checkout"/> |
---|
9 | <arg value="${svn.root}/main/${branch.path}/greenstone3"/> |
---|
10 | <arg value="compiled"/> |
---|
11 | <arg value="-r"/><arg value="${branch.revision}"/> |
---|
12 | </exec> |
---|
13 | |
---|
14 | <if><bool><equals arg1="${with.jni}" arg2="false"/></bool> |
---|
15 | <rsr file="${basedir}/compiled/build.properties.in" pattern="with.jni=true" replacement="#with.jni=true"/> |
---|
16 | </if> |
---|
17 | |
---|
18 | <if><bool><equals arg1="${with.gli.and.gems}" arg2="false"/></bool> |
---|
19 | <rsr file="${basedir}/compiled/build.properties.in" pattern="with.gli.and.gems=true" replacement="#with.gli.and.gems=true"/> |
---|
20 | </if> |
---|
21 | |
---|
22 | <!-- make sure all c++ compilation is done statically on linux --> |
---|
23 | <if><bool><equals arg1="${rk.os}" arg2="linux"/></bool> |
---|
24 | <property name="forward.compile.static" value="true"/> |
---|
25 | </if> |
---|
26 | |
---|
27 | <!-- make sure the c++ compilation can see the support library in the extension folder --> |
---|
28 | <if><bool><or><equals arg1="${rk.os}" arg2="mac"/><equals arg1="${rk.os}" arg2="linux"/></or></bool> |
---|
29 | <property name="forward.use.gnomelib.ext" value="true"/> |
---|
30 | </if> |
---|
31 | |
---|
32 | <antcall target="persist-forwarded-properties"> |
---|
33 | <param name="greenstone3basedir" value="compiled"/> |
---|
34 | </antcall> |
---|
35 | |
---|
36 | <!-- run greenstone3's ant prepare --> |
---|
37 | <ant dir="compiled" inheritAll="false"> |
---|
38 | <target name="prepare"/> |
---|
39 | <propertyset refid="forward.properties"/> |
---|
40 | <property name="properties.accepted" value="true"/> |
---|
41 | </ant> |
---|
42 | |
---|
43 | <!-- set all version numbers --> |
---|
44 | <antcall target="greenstone3-set-version-numbers"><param name="greenstone3basedir" value="compiled"/></antcall> |
---|
45 | <antcall target="gli-set-version-numbers"><param name="glibasedir" value="compiled/gli"/></antcall> |
---|
46 | <antcall target="gsdl-set-version-numbers"><param name="gsdl.basedir" value="compiled/gs2build"/></antcall> |
---|
47 | |
---|
48 | <!-- mac or linux: compile the support library --> |
---|
49 | <if><bool><or><equals arg1="${rk.os}" arg2="mac"/><equals arg1="${rk.os}" arg2="linux"/></or></bool> |
---|
50 | <!-- checkout the gnome support library extension--> |
---|
51 | <if><bool><or> |
---|
52 | <equals arg1="${post.2.83.version}" arg2="true"/> |
---|
53 | </or></bool> |
---|
54 | <echo>EXPORTING GNOME LIB EXTENSION</echo> |
---|
55 | <exec executable="svn"> |
---|
56 | <arg value="export"/> |
---|
57 | <arg value="${svn.root}/gs2-extensions/gnome-lib/trunk/gnome-lib-minimal-${os.shell}${arch}${extension-x64}.tar.gz"/> |
---|
58 | <arg value="${basedir}/compiled/ext/gnome-lib-${os.shell}.tar.gz"/> |
---|
59 | </exec> |
---|
60 | |
---|
61 | <exec executable="tar" dir="${basedir}/compiled/ext"> |
---|
62 | <arg value="xvzf"/> |
---|
63 | <arg value="gnome-lib-${os.shell}.tar.gz"/> |
---|
64 | </exec> |
---|
65 | |
---|
66 | <exec executable="/bin/bash" dir="${basedir}/compiled/ext/gnome-lib-minimal"> |
---|
67 | <arg value="-c"/> |
---|
68 | <arg value="source setup.bash_old && source devel.bash"/> |
---|
69 | </exec> |
---|
70 | <echo>DONE COMPILING GNOME LIB EXTENSION</echo> |
---|
71 | </if> |
---|
72 | </if> |
---|
73 | |
---|
74 | <!-- run greenstone3's ant install and ant dist-tidy --> |
---|
75 | <ant dir="compiled" inheritAll="false"> |
---|
76 | <target name="install"/> |
---|
77 | <target name="dist-tidy"/> |
---|
78 | <propertyset refid="forward.properties"/> |
---|
79 | <property name="properties.accepted" value="true"/> |
---|
80 | </ant> |
---|
81 | |
---|
82 | <!-- Delete all collections apart from the Lucene demo collection --> |
---|
83 | <delete dir="${basedir}/compiled/web/sites/localsite/collect/gberg"/> |
---|
84 | <delete dir="${basedir}/compiled/web/sites/localsite/collect/gs2mgdemo"/> |
---|
85 | <delete dir="${basedir}/compiled/web/sites/localsite/collect/gs2mgppdemo"/> |
---|
86 | <delete dir="${basedir}/compiled/web/sites/localsite/collect/infomine"/> |
---|
87 | |
---|
88 | <!-- Delete the entire gnome support library on Linux --> |
---|
89 | <if><bool><equals arg1="${rk.os}" arg2="linux"/></bool> |
---|
90 | <delete dir="${basedir}/compiled/ext/gnome-lib-minimal"/> |
---|
91 | <delete file="${basedir}/compiled/ext/gnome-lib-linux.tar.gz"/> |
---|
92 | </if> |
---|
93 | |
---|
94 | <!-- Delete all but the lib folder of the gnome support library on Mac, |
---|
95 | then move this smaller gnome-lib-minimal dir from the top-level ext folder |
---|
96 | to gs2build/ext, since wvware on mac needs gnome-lib-minimal --> |
---|
97 | <if><bool><equals arg1="${rk.os}" arg2="mac"/></bool> |
---|
98 | <delete dir="${basedir}/compiled/ext/gnome-lib-minimal/cascade-make"/> |
---|
99 | <delete dir="${basedir}/compiled/ext/gnome-lib-minimal/packages"/> |
---|
100 | <delete dir="${basedir}/compiled/ext/gnome-lib-minimal/darwin/bin"/> |
---|
101 | <delete dir="${basedir}/compiled/ext/gnome-lib-minimal/darwin/etc"/> |
---|
102 | <delete dir="${basedir}/compiled/ext/gnome-lib-minimal/darwin/include"/> |
---|
103 | <delete dir="${basedir}/compiled/ext/gnome-lib-minimal/darwin/share"/> |
---|
104 | <delete file="${basedir}/compiled/ext/gnome-lib-minimal/setup.bat"/> |
---|
105 | <delete file="${basedir}/compiled/ext/gnome-lib-minimal/CASCADE-MAKE.sh"/> |
---|
106 | <delete file="${basedir}/compiled/ext/gnome-lib-darwin.tar.gz"/> |
---|
107 | <move file="${basedir}/compiled/ext/gnome-lib-minimal" todir="compiled/gs2build/ext"/> |
---|
108 | </if> |
---|
109 | |
---|
110 | <!-- insert an xml parser (matched to the version of Perl being used by the release kit) --> |
---|
111 | <copy todir="compiled/gs2build/perllib/cpan"> |
---|
112 | <fileset dir="${rk.home}/shared/linux" includes="XML-Parser/**/*"/> |
---|
113 | </copy> |
---|
114 | |
---|
115 | <!-- insert ant --> |
---|
116 | <property name="insert.ant.version" value="1.8.2"/> |
---|
117 | <mkdir dir="compiled/packages"/> |
---|
118 | <get src="http://www.greenstone.org/gs3files/apache-ant-${insert.ant.version}-bin.tar.gz" dest="compiled/packages/apache-ant-${insert.ant.version}-bin.tar.gz"/> |
---|
119 | <untar src="compiled/packages/apache-ant-${insert.ant.version}-bin.tar.gz" dest="compiled/packages/" compression="gzip"/> |
---|
120 | <move file="compiled/packages/apache-ant-${insert.ant.version}" tofile="compiled/packages/ant"/> |
---|
121 | <delete file="compiled/packages/apache-ant-${insert.ant.version}-bin.tar.gz"/> |
---|
122 | |
---|
123 | <!-- put the uninstaller in place --> |
---|
124 | <antcall target="insert-and-compile-uninstaller"/> |
---|
125 | |
---|
126 | <!-- (windows only) --> |
---|
127 | <if><bool><equals arg1="${rk.os}" arg2="windows"/></bool> |
---|
128 | <!-- insert perl --> |
---|
129 | <unzip src="${rk.home}/shared/windows/perl.zip" dest="compiled/gs2build/bin/windows"/> |
---|
130 | </if> |
---|
131 | |
---|
132 | <!-- minify tomcat --> |
---|
133 | <delete dir="compiled/packages/tomcat/webapps/docs"/> |
---|
134 | <delete dir="compiled/packages/tomcat/webapps/examples"/> |
---|
135 | |
---|
136 | <!-- tidy up gli to make it smaller --> |
---|
137 | <antcall target="gli-tidy-for-dist"><param name="glibasedir" value="compiled/gli"/></antcall> |
---|
138 | |
---|
139 | <!-- strip out .svn dirs --> |
---|
140 | <antcall target="strip-svn-dirs"><param name="dir" value="compiled"/></antcall> |
---|
141 | |
---|
142 | <!-- (linux only) --> |
---|
143 | <if><bool><equals arg1="${rk.os}" arg2="linux"/></bool> |
---|
144 | <!-- grab imagemagick binaries --> |
---|
145 | <delete dir="compiled/gs2build/bin/linux/imagemagick"/> |
---|
146 | |
---|
147 | <exec executable="svn"> |
---|
148 | <arg value="export"/> |
---|
149 | <arg value="${svn.root}/gs2-extensions/imagemagick/trunk/imagemagick-linux${extension-x64}.tar.gz"/> |
---|
150 | <arg value="compiled/ext/imagemagick-linux${extension-x64}.tar.gz"/> |
---|
151 | </exec> |
---|
152 | |
---|
153 | <exec executable="tar" dir="compiled/ext"> |
---|
154 | <arg value="xvzf"/> |
---|
155 | <arg value="imagemagick-linux${extension-x64}.tar.gz"/> |
---|
156 | </exec> |
---|
157 | <delete file="compiled/ext/imagemagick-linux${extension-x64}.tar.gz"/> |
---|
158 | <move todir="compiled/gs2build/bin/linux/imagemagick"> |
---|
159 | <fileset dir="compiled/ext/imagemagick/linux"/> |
---|
160 | </move> |
---|
161 | <delete dir="compiled/ext/imagemagick"/> |
---|
162 | |
---|
163 | <!--<delete dir="compiled/gs2build/bin/linux/imagemagick"/> |
---|
164 | <exec executable="svn"> |
---|
165 | <arg value="export"/> |
---|
166 | <arg value="${svn.root}/main/${branch.path}/binaries/linux/imagemagick"/> |
---|
167 | <arg value="compiled/gs2build/bin/linux/imagemagick"/> |
---|
168 | </exec>--> |
---|
169 | |
---|
170 | <!-- grab wv binaries --> |
---|
171 | <delete dir="compiled/gs2build/bin/linux/wv"/> |
---|
172 | <exec executable="svn"> |
---|
173 | <arg value="export"/> |
---|
174 | <arg value="${svn.root}/main/${branch.path}/binaries/linux/wv"/> |
---|
175 | <arg value="compiled/gs2build/bin/linux/wv"/> |
---|
176 | </exec> |
---|
177 | <!-- (mac only) --> |
---|
178 | <else><if><bool><equals arg1="${rk.os}" arg2="mac"/></bool> |
---|
179 | <!-- grab imagemagick binaries --> |
---|
180 | |
---|
181 | <delete dir="compiled/gs2build/bin/darwin/imagemagick"/> |
---|
182 | |
---|
183 | <!--<exec executable="svn"> |
---|
184 | <arg value="export"/> |
---|
185 | <arg value="${svn.root}/gs2-extensions/imagemagick/trunk/imagemagick-darwin-10.5.tar.gz"/> |
---|
186 | <arg value="compiled/ext/imagemagick-darwin-10.5.tar.gz"/> |
---|
187 | </exec> |
---|
188 | |
---|
189 | <exec executable="tar" dir="compiled/ext"> |
---|
190 | <arg value="xvzf"/> |
---|
191 | <arg value="imagemagick-darwin-10.5.tar.gz"/> |
---|
192 | </exec> |
---|
193 | <delete file="compiled/ext/imagemagick-darwin-10.5.tar.gz"/> |
---|
194 | <move todir="compiled/gs2build/bin/darwin/imagemagick"> |
---|
195 | <fileset dir="compiled/ext/imagemagick/darwin"/> |
---|
196 | </move> |
---|
197 | <delete dir="compiled/ext/imagemagick"/>--> |
---|
198 | |
---|
199 | <delete dir="compiled/gs2build/bin/darwin/imagemagick"/> |
---|
200 | <exec executable="svn"> |
---|
201 | <arg value="export"/> |
---|
202 | <arg value="${svn.root}/main/${branch.path}/binaries/mac/intel/imagemagick"/> |
---|
203 | <arg value="compiled/gs2build/bin/darwin/imagemagick"/> |
---|
204 | </exec> |
---|
205 | |
---|
206 | <if><bool><not><equals arg1="${forward.install.flax}" arg2="true"/></not></bool> |
---|
207 | <!-- grab ghostscript binaries --> |
---|
208 | <delete dir="compiled/gs2build/bin/darwin/ghostscript"/> |
---|
209 | <exec executable="svn"> |
---|
210 | <arg value="export"/> |
---|
211 | <arg value="${svn.root}/main/${branch.path}/binaries/mac/intel/ghostscript"/> |
---|
212 | <arg value="compiled/gs2build/bin/darwin/ghostscript"/> |
---|
213 | </exec> |
---|
214 | </if> |
---|
215 | </if></else></if> |
---|
216 | |
---|
217 | <if><bool><equals arg1="${rk.os}" arg2="windows"/></bool> |
---|
218 | <exec dir="${basedir}/compiled" executable="${basedir}/compiled/gs2build/bin/windows/perl/bin/perl"> |
---|
219 | <arg line="-S"/> |
---|
220 | <arg line="gs2build/bin/script/import.pl -removeold -site localsite lucene-jdbm-demo"/> |
---|
221 | <env key="GSDLHOME" path="${basedir}/compiled/gs2build"/> |
---|
222 | <env key="GSDL3HOME" path="${basedir}/compiled/web"/> |
---|
223 | <env key="GSDL3SRCHOME" path="${basedir}/compiled"/> |
---|
224 | <env key="GSDLCOLLECTDIR" path="${basedir}/compiled/web/sites/localsite/collect"/> |
---|
225 | <env key="GSDLOS" value="windows"/> |
---|
226 | <env key="PATH" path="${basedir}/compiled/gs2build/bin/windows/perl/bin;${basedir}/compiled/gs2build/bin/windows;${basedir}/compiled/gs2build/bin/script;${env.PATH}"/> |
---|
227 | </exec> |
---|
228 | <exec dir="${basedir}/compiled" executable="${basedir}/compiled/gs2build/bin/windows/perl/bin/perl"> |
---|
229 | <arg line="-S"/> |
---|
230 | <arg line="gs2build/bin/script/buildcol.pl -removeold -site localsite lucene-jdbm-demo"/> |
---|
231 | <env key="GSDLHOME" path="${basedir}/compiled/gs2build"/> |
---|
232 | <env key="GSDL3HOME" path="${basedir}/compiled/web"/> |
---|
233 | <env key="GSDL3SRCHOME" path="${basedir}/compiled"/> |
---|
234 | <env key="GSDLCOLLECTDIR" path="${basedir}/compiled/web/sites/localsite/collect"/> |
---|
235 | <env key="GSDLOS" value="windows"/> |
---|
236 | <env key="PATH" path="${basedir}/compiled/gs2build/bin/windows/perl/bin;${basedir}/compiled/gs2build/bin/windows;${basedir}/compiled/gs2build/bin/script;${env.PATH}"/> |
---|
237 | </exec> |
---|
238 | <delete dir="${basedir}/compiled/web/sites/localsite/collect/lucene-jdbm-demo/index"/> |
---|
239 | <move file="${basedir}/compiled/web/sites/localsite/collect/lucene-jdbm-demo/building" tofile="${basedir}/compiled/web/sites/localsite/collect/lucene-jdbm-demo/index"/> |
---|
240 | <else> |
---|
241 | <echo file="${basedir}/compiled/buildscript.sh"> |
---|
242 | #!/bin/bash |
---|
243 | source gs3-setup.sh |
---|
244 | /usr/bin/perl -S ${basedir}/compiled/gs2build/bin/script/import.pl -site localsite lucene-jdbm-demo |
---|
245 | /usr/bin/perl -S ${basedir}/compiled/gs2build/bin/script/buildcol.pl -site localsite lucene-jdbm-demo |
---|
246 | rm -rf ${basedir}/compiled/web/sites/localsite/collect/lucene-jdbm-demo/index |
---|
247 | mv ${basedir}/compiled/web/sites/localsite/collect/lucene-jdbm-demo/building ${basedir}/compiled/web/sites/localsite/collect/lucene-jdbm-demo/index |
---|
248 | </echo> |
---|
249 | <chmod perm="775" file="${basedir}/compiled/buildscript.sh"/> |
---|
250 | <exec dir="${basedir}/compiled" executable="/bin/bash"> |
---|
251 | <arg line="buildscript.sh"/> |
---|
252 | </exec> |
---|
253 | <delete file="${basedir}/compiled/buildscript.sh"/> |
---|
254 | </else> |
---|
255 | </if> |
---|
256 | |
---|
257 | </target> |
---|
258 | |
---|
259 | </project> |
---|