1 | <?xml version="1.0" encoding="utf-8" ?>
|
---|
2 | <project name="rk2-compile">
|
---|
3 |
|
---|
4 | <target name="compile" depends="init,gs2-init">
|
---|
5 | <!-- checkout greenstone2 (or gsdl if a pre-2.84 release is being created) and gli -->
|
---|
6 | <if><bool><equals arg1="${post.2.83.version}" arg2="true"/></bool>
|
---|
7 | <exec executable="svn">
|
---|
8 | <arg value="checkout"/>
|
---|
9 | <arg value="${svn.root}/main/${branch.path}/greenstone2"/>
|
---|
10 | <arg value="${basedir}/compiled"/>
|
---|
11 | </exec>
|
---|
12 | <else>
|
---|
13 | <exec executable="svn">
|
---|
14 | <arg value="checkout"/>
|
---|
15 | <arg value="${svn.root}/main/${branch.path}/gsdl"/>
|
---|
16 | <arg value="${basedir}/compiled"/>
|
---|
17 | </exec>
|
---|
18 | </else>
|
---|
19 | </if>
|
---|
20 |
|
---|
21 | <exec executable="svn">
|
---|
22 | <arg value="checkout"/>
|
---|
23 | <arg value="${svn.root}/main/${branch.path}/gli"/>
|
---|
24 | <arg value="${basedir}/compiled/gli"/>
|
---|
25 | </exec>
|
---|
26 |
|
---|
27 | <!-- drop in documentation -->
|
---|
28 | <copy todir="compiled" overwrite="true">
|
---|
29 | <fileset dir="${rk.home}/shared/greenstone2/docs" excludes="READMEar.txt,READMEes.txt,READMEfr.txt,READMEru.txt"/>
|
---|
30 | </copy>
|
---|
31 |
|
---|
32 | <!-- set version numbers -->
|
---|
33 | <antcall target="gsdl-set-version-numbers"><param name="gsdl.basedir" value="${basedir}/compiled"/></antcall>
|
---|
34 | <antcall target="gli-set-version-numbers"><param name="glibasedir" value="${basedir}/compiled/gli"/></antcall>
|
---|
35 |
|
---|
36 | <!-- we do not want the *.app folders if we are not mac-->
|
---|
37 | <if><bool><not><equals arg1="${rk.os}" arg2="mac"/></not></bool>
|
---|
38 | <delete dir="${basedir}/compiled/client-gli.app"/>
|
---|
39 | <delete dir="${basedir}/compiled/gems.app"/>
|
---|
40 | <delete dir="${basedir}/compiled/gs2-server.app"/>
|
---|
41 | <delete dir="${basedir}/compiled/gli.app"/>
|
---|
42 | </if>
|
---|
43 |
|
---|
44 | <!-- mac or linux: get the support library -->
|
---|
45 | <if><bool><or><equals arg1="${rk.os}" arg2="mac"/><equals arg1="${rk.os}" arg2="linux"/></or></bool>
|
---|
46 | <!-- svn export the gnome support library extension-->
|
---|
47 |
|
---|
48 | <!-- For Lions, need a specific gnome-lib-minimal tar file. The file name contains darwin12 for Lion, it contains the shell.name (darwin/linux) for other cases.
|
---|
49 | Mac OS X v10.7.4 onwards is Lion/Mountain Lion, different from Leopard/Snow Leopard. See http://en.wikipedia.org/wiki/Darwin_(operating_system) -->
|
---|
50 | <!--<condition property="specific.os.type" value="${os.shell}-Lion" else="${os.shell}">-->
|
---|
51 | <condition property="specific.os.type" value="${os.shell}-Lion" else="${os.shell}-ElCapitan">
|
---|
52 | <and>
|
---|
53 | <contains string="${os.shell}" substring="darwin" casesensitive="false"/>
|
---|
54 | <matches pattern="^(10\.7\.[4-9]|10\.[8-9]|1[1-9]|[2-9])" string="${os.version}"/>
|
---|
55 | </and>
|
---|
56 | </condition>
|
---|
57 |
|
---|
58 | <if><bool><equals arg1="${post.2.83.version}" arg2="true"/></bool>
|
---|
59 | <echo>EXPORTING GNOME LIB EXTENSION</echo>
|
---|
60 | <exec executable="svn">
|
---|
61 | <arg value="export"/>
|
---|
62 | <arg value="${svn.root}/gs2-extensions/gnome-lib/trunk/gnome-lib-minimal-${specific.os.type}${arch}${extension-x64}.tar.gz"/>
|
---|
63 | <arg value="${basedir}/compiled/ext/gnome-lib-minimal-${specific.os.type}.tar.gz"/>
|
---|
64 | </exec>
|
---|
65 |
|
---|
66 | <exec executable="tar" dir="${basedir}/compiled/ext">
|
---|
67 | <arg value="xvzf"/>
|
---|
68 | <arg value="gnome-lib-minimal-${specific.os.type}.tar.gz"/>
|
---|
69 | </exec>
|
---|
70 |
|
---|
71 | <exec executable="/bin/bash" dir="${basedir}/compiled/ext/gnome-lib-minimal">
|
---|
72 | <arg value="-c"/>
|
---|
73 | <arg value="source setup.bash_old && source devel.bash"/>
|
---|
74 | </exec>
|
---|
75 |
|
---|
76 | <echo>DONE EXTRACTING GNOME LIB EXTENSION</echo>
|
---|
77 | </if>
|
---|
78 | </if>
|
---|
79 |
|
---|
80 | <if><bool><or><equals arg1="${rk.os}" arg2="linux"/><equals arg1="${rk.os}" arg2="mac"/></or></bool>
|
---|
81 | <!-- LD_LIBRARY_PATH is DYLD_LIBRARY_PATH on mac-->
|
---|
82 | <if><bool><equals arg1="${rk.os}" arg2="mac"/></bool>
|
---|
83 | <property name="libpathvar" value="DYLD_LIBRARY_PATH"/>
|
---|
84 | <else>
|
---|
85 | <property name="libpathvar" value="LD_LIBRARY_PATH"/>
|
---|
86 | </else>
|
---|
87 | </if>
|
---|
88 |
|
---|
89 | <property name="gnome.lib.dir" value="${basedir}/compiled/ext/gnome-lib-minimal/${os.shell}"/>
|
---|
90 | <property name="path.arg" value="PATH="${gnome.lib.dir}/bin:${env.PATH}""/>
|
---|
91 | <property name="cflags.arg" value="CFLAGS="-I${gnome.lib.dir}/include""/>
|
---|
92 | <property name="cxxflags.arg" value="CXXFLAGS="-I${gnome.lib.dir}/include""/>
|
---|
93 | <property name="cppflags.arg" value="CPPFLAGS="-I${gnome.lib.dir}/include""/>
|
---|
94 | <property name="ldflags.arg" value="LDFLAGS="-L${gnome.lib.dir}/lib""/>
|
---|
95 | <property name="pcpath.arg" value="PKG_CONFIG_PATH="${gnome.lib.dir}/lib/pkgconfig""/>
|
---|
96 | <property name="ldlpath.arg" value="${libpathvar}="${gnome.lib.dir}/lib""/>
|
---|
97 |
|
---|
98 | <property name="allargs" value="${path.arg} ${cflags.arg} ${cxxflags.arg} ${cppflags.arg} ${ldflags.arg} ${pcpath.arg} ${ldlpath.arg}"/>
|
---|
99 | </if>
|
---|
100 |
|
---|
101 | <!-- windows only -->
|
---|
102 | <if><bool><equals arg1="${rk.os}" arg2="windows"/></bool>
|
---|
103 |
|
---|
104 | <!-- unzip packages -->
|
---|
105 | <unzip src="${basedir}/compiled/common-src/packages/windows/crypt/crypt.zip" dest="${basedir}/compiled/common-src/packages/windows/crypt"/>
|
---|
106 |
|
---|
107 | <!-- unzip expat if the version is less that 2.84 -->
|
---|
108 | <if><bool><equals arg1="${post.2.83.version}" arg2="false"/></bool>
|
---|
109 | <unzip src="${basedir}/compiled/common-src/packages/windows/expat/expat.zip" dest="${basedir}/compiled/common-src/packages/windows/expat"/>
|
---|
110 | </if>
|
---|
111 |
|
---|
112 | <unzip src="${basedir}/compiled/common-src/packages/windows/stlport/stlport.zip" dest="${basedir}/compiled/common-src/packages/windows/stlport"/>
|
---|
113 | <unzip src="${basedir}/compiled/common-src/indexers/packages/windows/iconv/iconv.zip" dest="${basedir}/compiled/common-src/indexers/packages/windows/iconv"/>
|
---|
114 | <untar src="${basedir}/compiled/common-src/packages/sqlite/sqlite-autoconf-3070602.tar.gz" dest="${basedir}/compiled/common-src/packages/sqlite" compression="gzip"/>
|
---|
115 |
|
---|
116 | <!-- get winbin from tags if the version is greater than 2.83 otherwise get it from trunk -->
|
---|
117 | <if><bool><not><available file="${basedir}/compiled/bin/windows"/></not></bool>
|
---|
118 | <if><bool><equals arg1="${post.2.83.version}" arg2="true"/></bool>
|
---|
119 |
|
---|
120 | <exec executable="svn">
|
---|
121 | <arg value="export"/>
|
---|
122 | <arg value="${svn.root}/main/${branch.path}/binaries/windows/bin"/>
|
---|
123 | <arg value="${basedir}/compiled/bin/windows"/>
|
---|
124 | <arg value="-r"/>
|
---|
125 | <arg value="${branch.revision}"/>
|
---|
126 | </exec>
|
---|
127 |
|
---|
128 | <else>
|
---|
129 | <exec executable="svn">
|
---|
130 | <arg value="export"/>
|
---|
131 | <arg value="${svn.root}/main/trunk/binaries/windows/bin"/>
|
---|
132 | <arg value="${basedir}/compiled/bin/windows"/>
|
---|
133 | <arg value="-r"/>
|
---|
134 | <arg value="${branch.revision}"/>
|
---|
135 | </exec>
|
---|
136 | </else>
|
---|
137 | </if>
|
---|
138 | </if>
|
---|
139 |
|
---|
140 | <!-- insert windows perl -->
|
---|
141 | <unzip src="${rk.home}/shared/windows/perl.zip" dest="compiled/bin/windows"/>
|
---|
142 |
|
---|
143 | <exec executable="${basedir}/compiled/bin/windows/gunzip.exe" dir="${basedir}/compiled/runtime-src/packages/apache-httpd">
|
---|
144 | <arg value="-d"/>
|
---|
145 | <arg value="httpd-2.2.11-gs.tar.gz"/>
|
---|
146 | </exec>
|
---|
147 |
|
---|
148 | <exec executable="${basedir}/compiled/bin/windows/tar.exe" dir="${basedir}/compiled/runtime-src/packages/apache-httpd">
|
---|
149 | <arg value="-xvf"/>
|
---|
150 | <arg value="httpd-2.2.11-gs.tar"/>
|
---|
151 | </exec>
|
---|
152 |
|
---|
153 | <!-- Insert a unique number after every occurrence of the word tempfile to prevent some strange race conditions present on Windows 7 (iuv = InsertUniqueValue) -->
|
---|
154 | <iuv>
|
---|
155 | <fileset dir="${basedir}/compiled/runtime-src/packages/apache-httpd/httpd-2.2.11" includes="**/*.mak"/>
|
---|
156 | <job pattern="tempfile"/>
|
---|
157 | </iuv>
|
---|
158 |
|
---|
159 | <!-- compile c code -->
|
---|
160 | <exec dir="${basedir}/compiled" executable="nmake"><arg value="/f"/><arg value="win32.mak"/><arg value="clean"/></exec>
|
---|
161 | <exec dir="${basedir}/compiled" executable="nmake"><arg value="/f"/><arg value="win32.mak"/><arg value="APACHE_HTTPD=1"/></exec>
|
---|
162 | <exec dir="${basedir}/compiled" executable="nmake"><arg value="/f"/><arg value="win32.mak"/><arg value="LOCAL_LIBRARY=1"/></exec>
|
---|
163 | <delete><fileset dir="${basedir}/compiled/apache-httpd" includes="**/*.pdb"/></delete>
|
---|
164 |
|
---|
165 | <copy file="${rk.home}/shared/windows/Microsoft.VC80.CRT.manifest" tofile="${basedir}/compiled/apache-httpd/windows/bin/Microsoft.VC80.CRT.manifest"/>
|
---|
166 | <copy file="${rk.home}/shared/windows/Microsoft.VC80.CRT.manifest" tofile="${basedir}/compiled/apache-httpd/windows/lib/Microsoft.VC80.CRT.manifest"/>
|
---|
167 | <copy file="${rk.home}/shared/windows/Microsoft.VC80.CRT.manifest" tofile="${basedir}/compiled/apache-httpd/windows/modules/Microsoft.VC80.CRT.manifest"/>
|
---|
168 | <copy file="${rk.home}/shared/windows/msvcr80.dll" tofile="${basedir}/compiled/apache-httpd/windows/bin/msvcr80.dll"/>
|
---|
169 | <copy file="${rk.home}/shared/windows/msvcr80.dll" tofile="${basedir}/compiled/apache-httpd/windows/lib/msvcr80.dll"/>
|
---|
170 | <copy file="${rk.home}/shared/windows/msvcr80.dll" tofile="${basedir}/compiled/apache-httpd/windows/modules/msvcr80.dll"/>
|
---|
171 |
|
---|
172 | <mkdir dir="products"/>
|
---|
173 | <copy file="${basedir}/compiled/server.exe" tofile="${basedir}/products/server-${version}${version-extra}.exe"/>
|
---|
174 | <move file="${basedir}/compiled/server.exe" todir="${basedir}/compiled/bin/windows"/>
|
---|
175 |
|
---|
176 |
|
---|
177 | <!-- linux only -->
|
---|
178 | <else><if><bool><equals arg1="${rk.os}" arg2="linux"/></bool>
|
---|
179 | <!-- add static to configure.in -->
|
---|
180 | <rsr file="${basedir}/compiled/configure.in" pattern="^LDFLAGS=.*$" replacement="LDFLAGS=-static"/>
|
---|
181 | <exec dir="${basedir}/compiled" executable="autoconf" output="${basedir}/compiled/configure">
|
---|
182 | <arg value="configure.in"/>
|
---|
183 | </exec>
|
---|
184 |
|
---|
185 | <!-- set environment in packages/configure -->
|
---|
186 | <rsr file="${basedir}/compiled/common-src/packages/configure" pattern="^ENVIRONMENT=.*$" replacement="ENVIRONMENT="LDFLAGS=-static""/>
|
---|
187 | <rsr file="${basedir}/compiled/build-src/packages/configure" pattern="^ENVIRONMENT=.*$" replacement="ENVIRONMENT="LDFLAGS=-static""/>
|
---|
188 |
|
---|
189 | <!-- run configure -->
|
---|
190 | <exec dir="${basedir}/compiled" executable="${basedir}/compiled/configure" failonerror="true">
|
---|
191 | <arg line="--enable-apache-httpd --disable-wvware"/>
|
---|
192 | </exec>
|
---|
193 |
|
---|
194 | <exec executable="tar" dir="${basedir}/compiled/build-src/packages/wv">
|
---|
195 | <arg value="xvzf"/>
|
---|
196 | <arg value="wv-1.2.4-gs.tar.gz"/>
|
---|
197 | </exec>
|
---|
198 |
|
---|
199 | <exec dir="${basedir}/compiled/build-src/packages/wv/wv-gs" executable="${basedir}/compiled/build-src/packages/wv/wv-gs/configure" failonerror="true">
|
---|
200 | <arg line="--prefix=${basedir}/compiled/build-src/packages/wv --bindir=${basedir}/compiled/bin/linux --libdir=${basedir}/compiled/lib/linux --datadir=${basedir}/compiled/etc/packages --disable-shared --enable-static"/>
|
---|
201 | <arg line="${allargs}"/>
|
---|
202 | </exec>
|
---|
203 |
|
---|
204 | <!-- add -static to makefiles -->
|
---|
205 | <rsr file="${basedir}/compiled/build-src/packages/xlhtml/xlhtml-0.4.9.0/xlhtml/Makefile" pattern="^LDFLAGS =.*$" replacement="LDFLAGS = -static"/>
|
---|
206 | <rsr file="${basedir}/compiled/build-src/packages/xlhtml/xlhtml-0.4.9.0/ppthtml/Makefile" pattern="^LDFLAGS =.*$" replacement="LDFLAGS = -static"/>
|
---|
207 | <rsr file="${basedir}/compiled/build-src/packages/rtftohtml/rtftohtml_src/Makefile" pattern="(-o rtftohtml.{2}EXEEXT.{1})" replacement="$1 -static"/>
|
---|
208 |
|
---|
209 | <!-- mac only -->
|
---|
210 | <else><if><bool><equals arg1="${rk.os}" arg2="mac"/></bool>
|
---|
211 | <!-- run configure -->
|
---|
212 | <exec dir="${basedir}/compiled" executable="${basedir}/compiled/configure" failonerror="true">
|
---|
213 | <arg line="--enable-apache-httpd"/>
|
---|
214 | <arg line="${allargs}"/>
|
---|
215 | </exec>
|
---|
216 |
|
---|
217 | <!-- tweak makefiles -->
|
---|
218 | <rsr file="${basedir}/compiled/runtime-src/src/recpt/Makefile" pattern="^(LIBS =.*)-L(.)\(PACKAGES_DIR\)/expat/lib -lexpat(.*)$" replacement="$1$2(PACKAGES_DIR)/expat/lib/libexpat.a$3"/>
|
---|
219 | <rsr file="${basedir}/compiled/runtime-src/src/oaiservr/Makefile" pattern="^(LIBS =.*)-L(.)\(PACKAGES_DIR\)/expat/lib -lexpat(.*)$" replacement="$1$2(PACKAGES_DIR)/expat/lib/libexpat.a$3"/>
|
---|
220 |
|
---|
221 | </if></else></if></else></if>
|
---|
222 |
|
---|
223 | <!-- mac and linux: compile -->
|
---|
224 | <if><bool><or><equals arg1="${rk.os}" arg2="mac"/><equals arg1="${rk.os}" arg2="linux"/></or></bool>
|
---|
225 | <!-- make -->
|
---|
226 | <exec dir="${basedir}/compiled" executable="make" failonerror="true">
|
---|
227 | <arg line="${ldlpath.arg}"/>
|
---|
228 | </exec>
|
---|
229 |
|
---|
230 | <!-- make install -->
|
---|
231 | <exec dir="${basedir}/compiled" executable="make" failonerror="true"><arg value="install"/></exec>
|
---|
232 |
|
---|
233 | <!-- make apache-for-dist -->
|
---|
234 | <exec dir="${basedir}/compiled" executable="make" failonerror="true"><arg value="apache-for-dist"/></exec>
|
---|
235 |
|
---|
236 | <if><bool><equals arg1="${rk.os}" arg2="linux"/></bool>
|
---|
237 | <exec dir="${basedir}/compiled/build-src/packages/wv/wv-gs" executable="make" failonerror="true">
|
---|
238 | <arg line="${ldlpath.arg}"/>
|
---|
239 | </exec>
|
---|
240 | <exec dir="${basedir}/compiled/build-src/packages/wv/wv-gs" executable="make" failonerror="true"><arg value="install"/></exec>
|
---|
241 | </if>
|
---|
242 |
|
---|
243 | <!-- strip executables -->
|
---|
244 | <exec dir="${basedir}/compiled/bin/${os.shell}" executable="find" failonerror="true">
|
---|
245 | <arg line=". ! -name . -type f -maxdepth 1 -exec strip {} ;"/>
|
---|
246 | </exec>
|
---|
247 |
|
---|
248 | <!-- the libsqlite3.dylib is no longer compatible with Macs from Maverick/Yosemite/El Capitan onwards, so 10.9, 10.10, 10.11,
|
---|
249 | but also future versions of darwin, like anything that is version 11+, so major version numbers that are 2 digits or beyond) -->
|
---|
250 | <if><bool>
|
---|
251 | <and>
|
---|
252 | <contains string="${os.shell}" substring="darwin" casesensitive="false"/>
|
---|
253 | <not><matches pattern="^(10\.9|10\.[1-9][0-9]|1[1-9]|[2-9][0-9])" string="${os.version}"/></not><!--all darwin before Maverick/10.9-->
|
---|
254 | </and>
|
---|
255 | </bool>
|
---|
256 | <copy todir="${basedir}/compiled/lib/${os.shell}">
|
---|
257 | <fileset dir="${basedir}/compiled/common-src/packages/sqlite/lib" includes="*.dylib"/>
|
---|
258 | </copy>
|
---|
259 | </if>
|
---|
260 |
|
---|
261 | <!-- for 64 bit need to copy in the statically compiled IsisGdl -->
|
---|
262 | <!--<delete file="${basedir}/compiled/bin/${os.shell}/IsisGdl"/>-->
|
---|
263 | <get src="http://www.greenstone.org/caveat-emptor/IsisGdl.macleopard" dest="${basedir}/compiled/bin/${os.shell}/IsisGdl"/>
|
---|
264 | <!--<move file="${basedir}/compiled/bin/${os.shell}/IsisGdl.bin32" tofile="${basedir}/compiled/bin/${os.shell}/IsisGdl"/>-->
|
---|
265 | <chmod perm="755" file="${basedir}/compiled/bin/${os.shell}/IsisGdl"/>
|
---|
266 | </if>
|
---|
267 |
|
---|
268 | <!-- Delete all but the lib folder and the setup.bash script of the gnome support library -->
|
---|
269 | <if><bool><and>
|
---|
270 | <not><equals arg1="${keep.src}" arg2="true"/></not>
|
---|
271 | <or><equals arg1="${rk.os}" arg2="mac"/><equals arg1="${rk.os}" arg2="linux"/></or>
|
---|
272 | </and></bool>
|
---|
273 | <delete dir="${basedir}/compiled/ext/gnome-lib-minimal/${os.shell}/bin"/>
|
---|
274 | <delete dir="${basedir}/compiled/ext/gnome-lib-minimal/${os.shell}/include"/>
|
---|
275 | <delete file="${basedir}/compiled/ext/gnome-lib-minimal/setup.bat"/>
|
---|
276 | <delete file="${basedir}/compiled/ext/gnome-lib-minimal/devel.bash"/>
|
---|
277 | <delete file="${basedir}/compiled/ext/gnome-lib-minimal-${os.shell}.tar.gz"/>
|
---|
278 | </if>
|
---|
279 |
|
---|
280 | <!-- insert the necessary additional xml parser versions-->
|
---|
281 | <if><bool><equals arg1="${rk.os}" arg2="linux"/></bool>
|
---|
282 | <!-- Add the 5.6 version if necessary -->
|
---|
283 | <if><bool><not><available file="${basedir}/compiled/perllib/cpan/perl-5.6"/></not></bool>
|
---|
284 | <copy todir="${basedir}/compiled/perllib/cpan">
|
---|
285 | <fileset dir="${rk.home}/shared/linux/XML-Parser" includes="perl-5.6,perl-5.6/**/*"/>
|
---|
286 | </copy>
|
---|
287 | </if>
|
---|
288 |
|
---|
289 | <!-- Add the 5.8 version if necessary -->
|
---|
290 | <if><bool><not><available file="${basedir}/compiled/perllib/cpan/perl-5.8"/></not></bool>
|
---|
291 | <copy todir="${basedir}/compiled/perllib/cpan">
|
---|
292 | <fileset dir="${rk.home}/shared/linux/XML-Parser" includes="perl-5.8,perl-5.8/**/*"/>
|
---|
293 | </copy>
|
---|
294 | </if>
|
---|
295 |
|
---|
296 | <!-- Add the 5.8 mutlithreaded version if necessary -->
|
---|
297 | <if><bool><not><available file="${basedir}/compiled/perllib/cpan/perl-5.8-mt"/></not></bool>
|
---|
298 | <copy todir="${basedir}/compiled/perllib/cpan">
|
---|
299 | <fileset dir="${rk.home}/shared/linux/XML-Parser" includes="perl-5.8-mt,perl-5.8-mt/**/*"/>
|
---|
300 | </copy>
|
---|
301 | </if>
|
---|
302 |
|
---|
303 | <!-- Add the 5.10 version if necessary -->
|
---|
304 | <if><bool><not><available file="${basedir}/compiled/perllib/cpan/perl-5.10"/></not></bool>
|
---|
305 | <copy todir="${basedir}/compiled/perllib/cpan">
|
---|
306 | <fileset dir="${rk.home}/shared/linux/XML-Parser" includes="perl-5.10,perl-5.10/**/*"/>
|
---|
307 | </copy>
|
---|
308 | </if>
|
---|
309 |
|
---|
310 | <!-- Add the 5.14 version if necessary -->
|
---|
311 | <if><bool><not><available file="${basedir}/compiled/perllib/cpan/perl-5.14"/></not></bool>
|
---|
312 | <copy todir="${basedir}/compiled/perllib/cpan">
|
---|
313 | <fileset dir="${rk.home}/shared/linux/XML-Parser" includes="perl-5.14,perl-5.14/**/*"/>
|
---|
314 | </copy>
|
---|
315 | </if>
|
---|
316 | </if>
|
---|
317 |
|
---|
318 | <!-- compile gli -->
|
---|
319 | <!-- (linux and mac) -->
|
---|
320 | <if><bool><or><equals arg1="${rk.os}" arg2="mac"/><equals arg1="${rk.os}" arg2="linux"/></or></bool>
|
---|
321 | <exec dir="compiled/gli" executable="/bin/bash"><arg value="-c"/><arg value="./makegli.sh"/></exec>
|
---|
322 | <exec dir="compiled/gli" executable="/bin/bash"><arg value="-c"/><arg value="./makejar.sh"/></exec>
|
---|
323 | <!-- windows -->
|
---|
324 | <else><if><bool><equals arg1="${rk.os}" arg2="windows"/></bool>
|
---|
325 | <exec dir="compiled/gli" executable="cmd.exe"><arg value="/c"/><arg value="makegli.bat"/></exec>
|
---|
326 | <exec dir="compiled/gli" executable="cmd.exe"><arg value="/c"/><arg value="makejar.bat"/></exec>
|
---|
327 | </if></else></if>
|
---|
328 |
|
---|
329 | <if><bool><not><equals arg1="${keep.src}" arg2="true"/></not></bool>
|
---|
330 | <delete dir="compiled/gli/jar"/>
|
---|
331 | <delete dir="compiled/gli/classes/org"/>
|
---|
332 | </if>
|
---|
333 | <move file="compiled/gli/GLIServer.jar" todir="compiled/bin/java"/>
|
---|
334 |
|
---|
335 | <!-- compile uninstaller -->
|
---|
336 | <antcall target="insert-and-compile-uninstaller" />
|
---|
337 |
|
---|
338 | <!-- delete the source code -->
|
---|
339 | <if><bool><not><equals arg1="${keep.src}" arg2="true"/></not></bool>
|
---|
340 | <delete><fileset dir="compiled" includes="Makefile,config.cache,config.h,config.log,stamp-h,config.status"/></delete>
|
---|
341 | <delete dir="compiled/common-src"/>
|
---|
342 | <delete dir="compiled/build-src"/>
|
---|
343 | <delete dir="compiled/runtime-src"/>
|
---|
344 | <delete><fileset dir="compiled" includes="Install.txt,acconfig.h,aclocal.m4,config.guess,config.sub,configtest.pl,configure,configure.in,install-sh,Makefile.in,micotest.cpp,config.h.in,win32.mak,win32cfg.h,lib/**/*.a"/></delete>
|
---|
345 | </if>
|
---|
346 |
|
---|
347 | <!-- strip .svn working-copy dirs -->
|
---|
348 | <antcall target="strip-svn-dirs"><param name="dir" value="compiled"/></antcall>
|
---|
349 |
|
---|
350 | <!-- create needed empty files -->
|
---|
351 | <mkdir dir="compiled/tmp"/>
|
---|
352 | <chmod dir="compiled/tmp" perm="a+rwx"/>
|
---|
353 | <echo file="compiled/etc/usage.txt"></echo>
|
---|
354 |
|
---|
355 | <!-- scripts to compile GS2 are not needed in the binary -->
|
---|
356 | <delete file="compiled/makegs2.bat"/>
|
---|
357 | <delete file="compiled/makegs2x64.bat"/>
|
---|
358 | <delete file="compiled/makegs2.sh"/>
|
---|
359 |
|
---|
360 | <!-- windows -->
|
---|
361 | <if><bool><equals arg1="${rk.os}" arg2="windows"/></bool>
|
---|
362 |
|
---|
363 | <!-- make a copy of server.exe in the root -->
|
---|
364 | <copy file="compiled/bin/windows/server.exe" tofile="compiled/server.exe"/>
|
---|
365 |
|
---|
366 | <!-- delete sourcecode -->
|
---|
367 | <delete dir="${binzip.dir}/common-src"/>
|
---|
368 | <delete dir="${binzip.dir}/build-src"/>
|
---|
369 | <delete dir="${binzip.dir}/runtime-src"/>
|
---|
370 |
|
---|
371 | <!-- create simple zipped binary distribution
|
---|
372 | <mkdir dir="distributions"/>
|
---|
373 | <property name="binzip.dir" value="distributions/Greenstone-${version}-${os.suffix}-binary"/>
|
---|
374 | <copy todir="${binzip.dir}"><fileset dir="compiled"/></copy>
|
---|
375 | <delete><fileset dir="${binzip.dir}" includes="README*.txt,Uninstall.bat,Uninst.bat,uninst.jar,win32.mak,win32cfg.h,makegs2.bat" excludes="READMEen.txt"/></delete>
|
---|
376 | -->
|
---|
377 |
|
---|
378 | <!-- delete unneeded files -->
|
---|
379 | <delete dir="compiled/bin/linux" />
|
---|
380 | <!--
|
---|
381 | Actually, leaving these in is helpful for running a cross-platform
|
---|
382 | Pure JAVA install
|
---|
383 | <delete><fileset dir="compiled" includes="*.bash,*.sh,*.csh,.gstermrc,makegs2.bat"/></delete>
|
---|
384 | <delete><fileset dir="compiled/gli" includes="*.sh,*4gs3.bat"/></delete>
|
---|
385 |
|
---|
386 | -->
|
---|
387 | <delete><fileset dir="compiled/gli" includes="*4gs3.bat"/></delete>
|
---|
388 | <delete dir="compiled/autom4te.cache" />
|
---|
389 |
|
---|
390 | <!-- linux -->
|
---|
391 | <else><if><bool><equals arg1="${rk.os}" arg2="linux"/></bool>
|
---|
392 |
|
---|
393 | <!-- grab imagemagick and wv (if less than 2.84) binaries -->
|
---|
394 | <delete dir="compiled/bin/linux/imagemagick"/>
|
---|
395 |
|
---|
396 | <if><bool><equals arg1="${post.2.83.version}" arg2="true"/></bool>
|
---|
397 | <!--<if><bool><equals arg1="${x64}" arg2="true"/></bool>-->
|
---|
398 | <exec executable="svn">
|
---|
399 | <arg value="export"/>
|
---|
400 | <arg value="${svn.root}/gs2-extensions/imagemagick/trunk/imagemagick-linux${extension-x64}.tar.gz"/>
|
---|
401 | <arg value="compiled/ext/imagemagick-linux${extension-x64}.tar.gz"/>
|
---|
402 | </exec>
|
---|
403 |
|
---|
404 | <exec executable="tar" dir="compiled/ext">
|
---|
405 | <arg value="xvzf"/>
|
---|
406 | <arg value="imagemagick-linux${extension-x64}.tar.gz"/>
|
---|
407 | </exec>
|
---|
408 | <delete file="compiled/ext/imagemagick-linux${extension-x64}.tar.gz"/>
|
---|
409 | <move todir="compiled/bin/linux/imagemagick">
|
---|
410 | <fileset dir="compiled/ext/imagemagick/linux"/>
|
---|
411 | </move>
|
---|
412 | <!--<else>
|
---|
413 | <exec executable="svn">
|
---|
414 | <arg value="export"/>
|
---|
415 | <arg value="${svn.root}/main/${branch.path}/binaries/linux/imagemagick"/>
|
---|
416 | <arg value="compiled/bin/linux/imagemagick"/>
|
---|
417 | </exec>
|
---|
418 | </else>
|
---|
419 | </if>-->
|
---|
420 | <else>
|
---|
421 | <delete dir="compiled/bin/linux/wv"/>
|
---|
422 | <exec executable="svn">
|
---|
423 | <arg value="export"/>
|
---|
424 | <arg value="${svn.root}/main/trunk/binaries/linux/imagemagick"/>
|
---|
425 | <arg value="compiled/bin/linux/imagemagick"/>
|
---|
426 | </exec>
|
---|
427 |
|
---|
428 | <exec executable="svn">
|
---|
429 | <arg value="export"/>
|
---|
430 | <arg value="${svn.root}/main/trunk/binaries/linux/wv"/>
|
---|
431 | <arg value="compiled/bin/linux/wv"/>
|
---|
432 | </exec>
|
---|
433 | </else>
|
---|
434 | </if>
|
---|
435 |
|
---|
436 | <!-- delete unneeded files -->
|
---|
437 | <delete><fileset dir="compiled" includes="win32.mak,win32cfg.h,Install.sh,Support.htm,micotest.cpp"/></delete>
|
---|
438 | <!--
|
---|
439 | Actually useful to keep these files around for a Pure Java install
|
---|
440 | <delete><fileset dir="compiled/gli" includes="*.bat"/></delete>
|
---|
441 | <delete><fileset dir="compiled" includes="*.bat"/></delete>
|
---|
442 | -->
|
---|
443 | <delete dir="compiled/common-src/packages/windows"/>
|
---|
444 | <delete dir="compiled/common-src/indexers/packages/windows"/>
|
---|
445 |
|
---|
446 | <!-- mac -->
|
---|
447 | <else><if><bool><equals arg1="${rk.os}" arg2="mac"/></bool>
|
---|
448 | <!-- grab imagemagick and ghostscript binaries -->
|
---|
449 | <delete dir="compiled/bin/darwin/imagemagick"/>
|
---|
450 | <delete dir="compiled/bin/darwin/ghostscript"/>
|
---|
451 |
|
---|
452 | <if><bool><equals arg1="${post.2.83.version}" arg2="true"/></bool>
|
---|
453 |
|
---|
454 | <!--<exec executable="svn">
|
---|
455 | <arg value="export"/>
|
---|
456 | <arg value="${svn.root}/gs2-extensions/imagemagick/trunk/imagemagick-darwin-10.5.tar.gz"/>
|
---|
457 | <arg value="compiled/ext/imagemagick-darwin-10.5.tar.gz"/>
|
---|
458 | </exec>
|
---|
459 |
|
---|
460 | <exec executable="tar" dir="compiled/ext">
|
---|
461 | <arg value="xvzf"/>
|
---|
462 | <arg value="imagemagick-darwin-10.5.tar.gz"/>
|
---|
463 | </exec>
|
---|
464 | <delete file="compiled/ext/imagemagick-darwin-10.5.tar.gz"/>
|
---|
465 | <move todir="compiled/bin/darwin/imagemagick">
|
---|
466 | <fileset dir="compiled/ext/imagemagick/darwin"/>
|
---|
467 | </move>-->
|
---|
468 |
|
---|
469 | <!-- grab imagemagick binaries for El Capitan -->
|
---|
470 | <!-- Grab the imagemagick compiled on an XWindows-less darwin 10.11 (El Capitan)
|
---|
471 | but where it was made backwards compatible with 10.8 (Mountain Lion) with mmacosx-version-min flag.
|
---|
472 | Upto and including the gs3.08 release this code still referred to imagemagick-darwin-10.5.tar.gz -->
|
---|
473 | <exec executable="svn">
|
---|
474 | <arg value="export"/>
|
---|
475 | <arg value="${svn.root}/gs2-extensions/imagemagick/trunk/imagemagick-darwin-10.11.tar.gz"/>
|
---|
476 | <arg value="compiled/ext/imagemagick-darwin-10.11.tar.gz"/>
|
---|
477 | </exec>
|
---|
478 |
|
---|
479 | <exec executable="tar" dir="compiled/ext">
|
---|
480 | <arg value="xvzf"/>
|
---|
481 | <arg value="imagemagick-darwin-10.11.tar.gz"/>
|
---|
482 | </exec>
|
---|
483 | <delete file="compiled/ext/imagemagick-darwin-10.11.tar.gz"/>
|
---|
484 | <move todir="compiled/bin/darwin/imagemagick">
|
---|
485 | <fileset dir="compiled/ext/imagemagick/darwin"/>
|
---|
486 | </move>
|
---|
487 |
|
---|
488 | <!-- No more use for the decompressed ext/imagemagick folder, as it contains only setup scripts
|
---|
489 | that end up referring to the (empty) ext/imagemagick in the environment.
|
---|
490 | On sourcing GS2's setup script, these env vars further conflict with cmdline wget on newer Macs,
|
---|
491 | as DYLD_FALLBACK_LIBRARY_PATH (another env var hidden on Macs) ends up set. -->
|
---|
492 | <delete dir="compiled/ext/imagemagick"/> <!-- dir = The directory to delete, including all its files and subdirectories. -->
|
---|
493 |
|
---|
494 | <!--
|
---|
495 | <exec executable="svn">
|
---|
496 | <arg value="export"/>
|
---|
497 | <arg value="${svn.root}/main/${branch.path}/binaries/mac/intel/imagemagick"/>
|
---|
498 | <arg value="compiled/bin/darwin/imagemagick"/>
|
---|
499 | </exec>
|
---|
500 | -->
|
---|
501 | <exec executable="svn">
|
---|
502 | <arg value="export"/>
|
---|
503 | <arg value="${svn.root}/main/${branch.path}/binaries/mac/intel/ghostscript"/>
|
---|
504 | <arg value="compiled/bin/darwin/ghostscript"/>
|
---|
505 | </exec>
|
---|
506 |
|
---|
507 | <else>
|
---|
508 | <exec executable="svn">
|
---|
509 | <arg value="export"/>
|
---|
510 | <arg value="${svn.root}/main/trunk/binaries/mac/intel/imagemagick"/>
|
---|
511 | <arg value="compiled/bin/darwin/imagemagick"/>
|
---|
512 | </exec>
|
---|
513 |
|
---|
514 | <exec executable="svn">
|
---|
515 | <arg value="export"/>
|
---|
516 | <arg value="${svn.root}/main/trunk/binaries/mac/intel/ghostscript"/>
|
---|
517 | <arg value="compiled/bin/darwin/ghostscript"/>
|
---|
518 | </exec>
|
---|
519 | </else>
|
---|
520 | </if>
|
---|
521 |
|
---|
522 | <!-- delete unneeded files -->
|
---|
523 | <delete><fileset dir="compiled" includes="win32.mak,win32cfg.h,Install.sh,Support.htm"/></delete>
|
---|
524 | <!--
|
---|
525 | Actually useful to keep these files around for a Pure Java install
|
---|
526 | <delete><fileset dir="compiled/gli" includes="*.bat"/></delete>
|
---|
527 | <delete><fileset dir="compiled" includes="*.bat"/></delete>
|
---|
528 | -->
|
---|
529 |
|
---|
530 | <delete dir="compiled/common-src/packages/windows"/>
|
---|
531 |
|
---|
532 | </if></else></if></else></if>
|
---|
533 |
|
---|
534 | <!-- build demo collection -->
|
---|
535 | <!-- the envs on these execs simulate the environment when you run setup.bat -->
|
---|
536 | <if><bool><equals arg1="${rk.os}" arg2="windows"/></bool>
|
---|
537 |
|
---|
538 | <exec dir="${basedir}/compiled" executable="${basedir}/compiled/bin/windows/perl/bin/perl">
|
---|
539 | <arg line="-S"/>
|
---|
540 | <arg line="bin/script/import.pl demo"/>
|
---|
541 | <env key="GSDLHOME" path="${basedir}/compiled"/>
|
---|
542 | <env key="GSDLCOLLECTDIR" path="${basedir}/compiled/collect"/>
|
---|
543 | <env key="GSDLOS" value="windows"/>
|
---|
544 | <env key="PATH" path="${basedir}/compiled/bin/windows/perl/bin:${basedir}/compiled/bin/windows:${basedir}/compiled/bin/script:${env.PATH}"/>
|
---|
545 | </exec>
|
---|
546 | <exec dir="${basedir}/compiled" executable="${basedir}/compiled/bin/windows/perl/bin/perl">
|
---|
547 | <arg line="-S"/>
|
---|
548 | <arg line="bin/script/buildcol.pl demo"/>
|
---|
549 | <env key="GSDLHOME" path="${basedir}/compiled"/>
|
---|
550 | <env key="GSDLCOLLECTDIR" path="${basedir}/compiled/collect"/>
|
---|
551 | <env key="GSDLOS" value="windows"/>
|
---|
552 | <env key="PATH" path="${basedir}/compiled/bin/windows/perl/bin:${basedir}/compiled/bin/windows:${basedir}/compiled/bin/script:${env.PATH}"/>
|
---|
553 | </exec>
|
---|
554 |
|
---|
555 | <delete dir="${basedir}/compiled/collect/demo/index"/>
|
---|
556 | <move file="${basedir}/compiled/collect/demo/building" tofile="${basedir}/compiled/collect/demo/index"/>
|
---|
557 |
|
---|
558 | <else>
|
---|
559 | <echo file="${basedir}/compiled/buildscript.sh">
|
---|
560 | #!/bin/bash
|
---|
561 | source setup.bash
|
---|
562 | /usr/bin/perl -S ${basedir}/compiled/bin/script/full-rebuild.pl demo
|
---|
563 | </echo>
|
---|
564 | <chmod perm="755" file="${basedir}/compiled/buildscript.sh"/>
|
---|
565 | <exec dir="${basedir}/compiled" executable="/bin/bash">
|
---|
566 | <arg line="buildscript.sh"/>
|
---|
567 | </exec>
|
---|
568 | <delete file="${basedir}/compiled/buildscript.sh"/>
|
---|
569 | </else>
|
---|
570 | </if>
|
---|
571 |
|
---|
572 | <!-- delete unneeded files -->
|
---|
573 | <delete dir="compiled/uninstaller" />
|
---|
574 | <delete file="compiled/bin/java/SignedGatherer.jar" />
|
---|
575 |
|
---|
576 | <!-- tidy up gli -->
|
---|
577 | <antcall target="gli-tidy-for-dist"><param name="glibasedir" value="compiled/gli"/></antcall>
|
---|
578 | <echo>Setting up export to cdrom package</echo>
|
---|
579 | <!-- mac and linux: insert export to cdrom package -->
|
---|
580 | <if><bool><or><equals arg1="${rk.os}" arg2="mac"/><equals arg1="${rk.os}" arg2="linux"/></or></bool>
|
---|
581 | <mkdir dir="compiled/bin/windows"/>
|
---|
582 | <get src="${server.exe.location}" dest="compiled/bin/windows/server.exe"/>
|
---|
583 |
|
---|
584 | <if><bool><equals arg1="${post.2.83.version}" arg2="true"/></bool>
|
---|
585 | <!--<get src="${svn.root}/main/${branch.path}/binaries/windows/bin/Setup.exe" dest="compiled/bin/windows/Setup.exe"/>
|
---|
586 | <get src="${svn.root}/main/${branch.path}/binaries/windows/bin/gssetup.exe" dest="compiled/bin/windows/gssetup.exe"/>-->
|
---|
587 | <exec executable="svn">
|
---|
588 | <arg value="export"/>
|
---|
589 | <arg value="${svn.root}/main/${branch.path}/binaries/windows/bin/Setup.exe"/>
|
---|
590 | <arg value="compiled/bin/windows/Setup.exe"/>
|
---|
591 | </exec>
|
---|
592 | <exec executable="svn">
|
---|
593 | <arg value="export"/>
|
---|
594 | <arg value="${svn.root}/main/${branch.path}/binaries/windows/bin/gssetup.exe"/>
|
---|
595 | <arg value="compiled/bin/windows/gssetup.exe"/>
|
---|
596 | </exec>
|
---|
597 |
|
---|
598 | <else>
|
---|
599 | <!--<get src="${svn.root}/main/trunk/binaries/windows/bin/Setup.exe" dest="compiled/bin/windows/Setup.exe"/>
|
---|
600 | <get src="${svn.root}/main/trunk/binaries/windows/bin/gssetup.exe" dest="compiled/bin/windows/gssetup.exe"/>-->
|
---|
601 | <exec executable="svn">
|
---|
602 | <arg value="export"/>
|
---|
603 | <arg value="${svn.root}/main/trunk/binaries/windows/bin/Setup.exe"/>
|
---|
604 | <arg value="compiled/bin/windows/Setup.exe"/>
|
---|
605 | </exec>
|
---|
606 | <exec executable="svn">
|
---|
607 | <arg value="export"/>
|
---|
608 | <arg value="${svn.root}/main/trunk/binaries/windows/bin/gssetup.exe"/>
|
---|
609 | <arg value="compiled/bin/windows/gssetup.exe"/>
|
---|
610 | </exec>
|
---|
611 | </else>
|
---|
612 | </if>
|
---|
613 | </if>
|
---|
614 |
|
---|
615 | </target>
|
---|
616 |
|
---|
617 | </project>
|
---|