root/main/trunk/release-kits/kits/rk3/ant-scripts/compile.xml @ 24389

Revision 24389, 9.7 KB (checked in by sjm84, 8 years ago)

2 small fixes to compensate for the new way of handling wvware

Line 
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.support.lib" 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 &amp;&amp; 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        <if><bool><equals arg1="${rk.os}" arg2="mac"/></bool>
96            <delete dir="${basedir}/compiled/ext/gnome-lib-minimal/cascade-make"/>
97            <delete dir="${basedir}/compiled/ext/gnome-lib-minimal/packages"/>
98            <delete dir="${basedir}/compiled/ext/gnome-lib-minimal/darwin/bin"/>
99            <delete dir="${basedir}/compiled/ext/gnome-lib-minimal/darwin/etc"/>
100            <delete dir="${basedir}/compiled/ext/gnome-lib-minimal/darwin/include"/>
101            <delete dir="${basedir}/compiled/ext/gnome-lib-minimal/darwin/share"/>
102            <delete file="${basedir}/compiled/ext/gnome-lib-minimal/setup.bat"/>
103            <delete file="${basedir}/compiled/ext/gnome-lib-minimal/CASCADE-MAKE.sh"/>
104            <delete file="${basedir}/compiled/ext/gnome-lib-darwin.tar.gz"/>
105        </if>
106
107        <!-- insert an xml parser -->
108        <copy todir="compiled/gs2build/perllib/cpan">
109            <fileset dir="${rk.home}/shared/linux" includes="XML-Parser/**/*"/>
110        </copy>
111
112        <!-- insert ant -->
113        <mkdir dir="compiled/packages"/>
114        <get src="http://www.greenstone.org/gs3files/apache-ant-1.8.0-bin.tar.gz" dest="compiled/packages/apache-ant-1.8.0-bin.tar.gz"/>
115        <untar src="compiled/packages/apache-ant-1.8.0-bin.tar.gz" dest="compiled/packages/" compression="gzip"/>
116        <move file="compiled/packages/apache-ant-1.8.0" tofile="compiled/packages/ant"/>
117        <delete file="compiled/packages/apache-ant-1.8.0-bin.tar.gz"/>
118
119        <!-- put the uninstaller in place -->
120        <antcall target="insert-and-compile-uninstaller"/>
121
122        <!-- (windows only) -->
123        <if><bool><equals arg1="${rk.os}" arg2="windows"/></bool>
124            <!-- insert perl -->
125            <unzip src="${rk.home}/shared/windows/perl.zip" dest="compiled/gs2build/bin/windows"/>
126        </if>
127
128        <!-- minify tomcat -->
129        <delete dir="compiled/packages/tomcat/webapps/docs"/>
130        <delete dir="compiled/packages/tomcat/webapps/examples"/>
131
132        <!-- tidy up gli to make it smaller -->
133        <antcall target="gli-tidy-for-dist"><param name="glibasedir" value="compiled/gli"/></antcall>
134
135        <!-- strip out .svn dirs -->
136        <antcall target="strip-svn-dirs"><param name="dir" value="compiled"/></antcall>
137
138        <!-- (linux only) -->
139        <if><bool><equals arg1="${rk.os}" arg2="linux"/></bool>
140            <!-- grab imagemagick binaries -->
141            <delete dir="compiled/gs2build/bin/linux/imagemagick"/>
142            <exec executable="svn">
143                <arg value="export"/>
144                <arg value="${svn.root}/main/${branch.path}/binaries/linux/imagemagick"/>
145                <arg value="compiled/gs2build/bin/linux/imagemagick"/>
146            </exec>
147
148            <!-- grab wv binaries -->
149            <delete dir="compiled/gs2build/bin/linux/wv"/>
150            <exec executable="svn">
151                <arg value="export"/>
152                <arg value="${svn.root}/main/${branch.path}/binaries/linux/wv"/>
153                <arg value="compiled/gs2build/bin/linux/wv"/>
154            </exec>
155        <!-- (mac only) -->
156        <else><if><bool><equals arg1="${rk.os}" arg2="mac"/></bool>
157            <!-- grab imagemagick binaries -->
158            <delete dir="compiled/gs2build/bin/darwin/imagemagick"/>
159            <exec executable="svn">
160                <arg value="export"/>
161                <arg value="${svn.root}/main/${branch.path}/binaries/mac/intel/imagemagick"/>
162                <arg value="compiled/gs2build/bin/darwin/imagemagick"/>
163            </exec>
164
165            <if><bool><not><equals arg1="${forward.install.flax}" arg2="true"/></not></bool>
166                <!-- grab ghostscript binaries -->
167                <delete dir="compiled/gs2build/bin/darwin/ghostscript"/>
168                <exec executable="svn">
169                    <arg value="export"/>
170                    <arg value="${svn.root}/main/${branch.path}/binaries/mac/intel/ghostscript"/>
171                    <arg value="compiled/gs2build/bin/darwin/ghostscript"/>
172                </exec>
173            </if>
174        </if></else></if>
175
176        <if><bool><equals arg1="${rk.os}" arg2="windows"/></bool>
177            <exec dir="${basedir}/compiled" executable="${basedir}/compiled/gs2build/bin/windows/perl/bin/perl">
178                <arg line="-S"/>
179                <arg line="gs2build/bin/script/import.pl -removeold -site localsite lucene-jdbm-demo"/>
180                <env key="GSDLHOME" path="${basedir}/compiled/gs2build"/>
181                <env key="GSDL3HOME" path="${basedir}/compiled/web"/>
182                <env key="GSDL3SRCHOME" path="${basedir}/compiled"/>
183                <env key="GSDLCOLLECTDIR" path="${basedir}/compiled/web/sites/localsite/collect"/>
184                <env key="GSDLOS" value="windows"/>
185                <env key="PATH" path="${basedir}/compiled/gs2build/bin/windows/perl/bin;${basedir}/compiled/gs2build/bin/windows;${basedir}/compiled/gs2build/bin/script;${env.PATH}"/>
186            </exec>
187            <exec dir="${basedir}/compiled" executable="${basedir}/compiled/gs2build/bin/windows/perl/bin/perl">
188                <arg line="-S"/>
189                <arg line="gs2build/bin/script/buildcol.pl -removeold -site localsite lucene-jdbm-demo"/>
190                <env key="GSDLHOME" path="${basedir}/compiled/gs2build"/>
191                <env key="GSDL3HOME" path="${basedir}/compiled/web"/>
192                <env key="GSDL3SRCHOME" path="${basedir}/compiled"/>
193                <env key="GSDLCOLLECTDIR" path="${basedir}/compiled/web/sites/localsite/collect"/>
194                <env key="GSDLOS" value="windows"/>
195                <env key="PATH" path="${basedir}/compiled/gs2build/bin/windows/perl/bin;${basedir}/compiled/gs2build/bin/windows;${basedir}/compiled/gs2build/bin/script;${env.PATH}"/>
196            </exec>
197            <delete dir="${basedir}/compiled/web/sites/localsite/collect/lucene-jdbm-demo/index"/>
198            <move file="${basedir}/compiled/web/sites/localsite/collect/lucene-jdbm-demo/building" tofile="${basedir}/compiled/web/sites/localsite/collect/lucene-jdbm-demo/index"/>
199        <else>
200            <echo file="${basedir}/compiled/buildscript.sh">
201                #!/bin/bash
202                source gs3-setup.sh
203                /usr/bin/perl -S ${basedir}/compiled/gs2build/bin/script/import.pl -site localsite lucene-jdbm-demo
204                /usr/bin/perl -S ${basedir}/compiled/gs2build/bin/script/buildcol.pl -site localsite lucene-jdbm-demo
205                rm -rf ${basedir}/compiled/web/sites/localsite/collect/lucene-jdbm-demo/index
206                mv ${basedir}/compiled/web/sites/localsite/collect/lucene-jdbm-demo/building ${basedir}/compiled/web/sites/localsite/collect/lucene-jdbm-demo/index
207            </echo>
208            <chmod perm="775" file="${basedir}/compiled/buildscript.sh"/>
209            <exec dir="${basedir}/compiled" executable="/bin/bash">
210                <arg line="buildscript.sh"/>
211            </exec>
212            <delete file="${basedir}/compiled/buildscript.sh"/>
213        </else>
214        </if>
215       
216    </target>
217
218</project>
Note: See TracBrowser for help on using the browser.