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

Revision 23967, 7.2 KB (checked in by sjm84, 9 years ago)

All collections except the lucene-jdbm demo are now removed during binary creation, this is because we want to only include this collection in future Greenstone 3 releases

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 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
120        <!-- put the uninstaller in place -->
121        <antcall target="insert-and-compile-uninstaller"/>
122
123        <!-- (windows only) -->
124        <if><bool><equals arg1="${rk.os}" arg2="windows"/></bool>
125            <!-- insert perl -->
126            <unzip src="${rk.home}/shared/windows/perl.zip" dest="compiled/gs2build/bin/windows"/>
127        </if>
128
129        <!-- minify tomcat -->
130        <delete dir="compiled/packages/tomcat/webapps/docs"/>
131        <delete dir="compiled/packages/tomcat/webapps/examples"/>
132
133        <!-- tidy up gli to make it smaller -->
134        <antcall target="gli-tidy-for-dist"><param name="glibasedir" value="compiled/gli"/></antcall>
135
136        <!-- strip out .svn dirs -->
137        <antcall target="strip-svn-dirs"><param name="dir" value="compiled"/></antcall>
138
139        <!-- (linux only) -->
140        <if><bool><equals arg1="${rk.os}" arg2="linux"/></bool>
141            <!-- grab imagemagick binaries -->
142            <delete dir="compiled/gs2build/bin/linux/imagemagick"/>
143            <exec executable="svn">
144                <arg value="export"/>
145                <arg value="${svn.root}/main/${branch.path}/binaries/linux/imagemagick"/>
146                <arg value="compiled/gs2build/bin/linux/imagemagick"/>
147            </exec>
148
149            <!-- grab wv binaries -->
150            <delete dir="compiled/gs2build/bin/linux/wv"/>
151            <exec executable="svn">
152                <arg value="export"/>
153                <arg value="${svn.root}/main/${branch.path}/binaries/linux/wv"/>
154                <arg value="compiled/gs2build/bin/linux/wv"/>
155            </exec>
156        <!-- (mac only) -->
157        <else><if><bool><equals arg1="${rk.os}" arg2="mac"/></bool>
158            <!-- grab imagemagick binaries -->
159            <delete dir="compiled/gs2build/bin/darwin/imagemagick"/>
160            <exec executable="svn">
161                <arg value="export"/>
162                <arg value="${svn.root}/main/${branch.path}/binaries/mac/intel/imagemagick"/>
163                <arg value="compiled/gs2build/bin/darwin/imagemagick"/>
164            </exec>
165
166            <if><bool><not><equals arg1="${forward.install.flax}" arg2="true"/></not></bool>
167                <!-- grab ghostscript binaries -->
168                <delete dir="compiled/gs2build/bin/darwin/ghostscript"/>
169                <exec executable="svn">
170                    <arg value="export"/>
171                    <arg value="${svn.root}/main/${branch.path}/binaries/mac/intel/ghostscript"/>
172                    <arg value="compiled/gs2build/bin/darwin/ghostscript"/>
173                </exec>
174            </if>
175        </if></else></if>
176
177    </target>
178
179</project>
Note: See TracBrowser for help on using the browser.