source: trunk/gsdl3/dist-resources/dist-build.xml@ 13311

Last change on this file since 13311 was 13311, checked in by kjdon, 17 years ago

added in a target to copy over the appropriate doc example collections from /home/nzdl

  • Property svn:keywords set to Author Date Id Revision
File size: 10.9 KB
Line 
1<?xml version="1.0"?>
2
3<!-- ======================================================================
4 March 2005
5
6 Greenstone3 build and install script
7
8 kjdon
9 ====================================================================== -->
10<project name="greenstone3-distribution" default="usage" basedir="..">
11
12 <!-- include standard build file -->
13 <import file="../build.xml"/>
14
15 <property name="documented.collections.home" value="/home/nzdl/for-distributions/collect"/>
16 <!-- ====================== DISTRIBUTION Targets ========================= -->
17
18 <!-- these two, do we need tomcat and axis for compilation??-->
19 <!-- Create the binaries for windows distribution -->
20 <target name="prepare-windows" depends="init">
21 <cvs command="export -D '1 second ago'" package="mgpp"
22 dest="${src.packages.home}"
23 cvsRoot="${cvs.root}" />
24 <cvs command="export -D '1 second ago'" package="gs2build"
25 cvsRoot="${cvs.root}" />
26 <antcall target="unzip-windows-packages"/>
27 <antcall target="checkout-winbin"/>
28 <antcall target="get-windows-binaries"/>
29 <antcall target="get-perl-for-windows"/>
30 <antcall target="rename-gs2build-files-windows"/>
31 <antcall target="compile-windows-c++"/>
32 <antcall target="compile-packages"/>
33 </target>
34
35 <!-- Create the binaries for Mac distribution -->
36 <target name="prepare-macos-1" depends="init">
37 <cvs command="export -D '1 second ago'" package="mgpp"
38 dest="${src.packages.home}"
39 cvsRoot="${cvs.root}" />
40 <cvs command="export -D '1 second ago'" package="gs2build"
41 cvsRoot="${cvs.root}" />
42 <antcall target="rename-gs2build-files-unix"/>
43 <antcall target="delete-windows-files"/>
44 <antcall target="get-macos-extra"/>
45 <antcall target="configure-c++"/>
46 </target>
47
48 <target name="prepare-macos-2" depends="init">
49 <antcall target="compile-packages"/>
50 <antcall target="compile-gs2build"/>
51 </target>
52
53 <!-- Get the binaries for linux distribution -->
54 <target name="prepare-linux-1" depends="init">
55 <cvs command="export -D '1 second ago'" package="mgpp"
56 dest="${src.packages.home}"
57 cvsRoot="${cvs.root}" />
58 <cvs command="export -D '1 second ago'" package="gs2build"
59 cvsRoot="${cvs.root}" />
60 <cvs command="export -D '1 second ago'" package="gli"
61 cvsRoot="${cvs.root}" />
62 <delete file="${gli.home}/gli.bat"/>
63 <delete file="${gli.home}/gli.sh"/>
64 <antcall target="rename-gs2build-files-unix"/>
65 <!--<antcall target="checkout-winbin"/>
66 <antcall target="get-windows-binaries"/>
67 <antcall target="get-perl-for-windows"/>-->
68 <delete>
69 <fileset dir="${lib.jni}" includes="*.dll"/>
70 </delete>
71 </target>
72
73
74 <target name="prepare-linux-2" depends="init">
75 <antcall target="configure-c++"/>
76 </target>
77
78 <target name="prepare-linux-3" depends="init">
79 <antcall target="compile-packages"/>
80 <antcall target="compile-gs2build"/>
81 </target>
82
83 <!-- creates the base distribution. Needs binaries copied in to it from other
84 greenstones (prepare-for-dists) -->
85 <target name="create-distribution" depends="init">
86 <cvs command="export -D '1 second ago'" package="mgpp"
87 dest="${src.packages.home}"
88 cvsRoot="${cvs.root}" />
89 <cvs command="export -D '1 second ago'" package="gs2build"
90 cvsRoot="${cvs.root}" />
91 <cvs command="export -D '1 second ago'" package="gli"
92 cvsRoot="${cvs.root}" />
93 <delete file="${gli.home}/gli.bat"/>
94 <delete file="${gli.home}/gli.sh"/>
95 <antcall target="rename-gs2build-files-dist"/>
96 <delete dir="${gs2build-extra.home}"/>
97 <antcall target="unzip-windows-packages"/>
98 <antcall target="get-macos-extra"/>
99 <antcall target="prepare-tomcat"/>
100 <delete file="${packages.home}/apache-tomcat-5.5.12.zip"/>
101 <delete file="${packages.home}/apache-tomcat-5.5.12-compat.zip"/>
102 <antcall target="configure-tomcat"/>
103 <antcall target="prepare-axis"/>
104 <delete file="${packages.home}/axis-bin-1_2_1.zip"/>
105 <!-- delete old axis dir -->
106 <delete dir="${packages.home}/axis"/>
107 <antcall target="prepare-web"/>
108 <antcall target="prepare-collections"/>
109 <antcall target="install-macos-extra"/>
110
111 <!-- compile the java stuff -->
112 <antcall target="compile-web"/>
113 <antcall target="configure-packages"/>
114 <antcall target="compile-packages"/>
115 <antcall target="distclean-packages"/>
116 <antcall target="compile-core"/>
117 </target>
118 <target name="create-distribution-2" depends="init">
119 <antcall target="compile-gli"/>
120 <delete dir="${basedir}/build"/>
121
122 <mkdir dir="Linux/bin"/>
123 <mkdir dir="Linux/lib/jni"/>
124 <mkdir dir="Darwin/bin"/>
125 <mkdir dir="Darwin/lib/jni"/>
126 <mkdir dir="Windows/lib/jni"/>
127 <mkdir dir="Windows/bin"/>
128 <mkdir dir="${gs2build.home}/Unix/bin/linux"/>
129 <mkdir dir="${gs2build.home}/Unix/bin/darwin"/>
130 <mkdir dir="${gs2build.home}/Windows/bin/windows"/>
131 <mkdir dir="${gs2build.home}/source/Windows"/>
132 <mkdir dir="${gs2build.home}/source/Unix"/>
133
134 <!-- move top-level os dependent files -->
135 <copy todir="Linux">
136 <fileset dir="${basedir}">
137 <include name="*.sh"/>
138 </fileset>
139 </copy>
140 <move todir="Darwin">
141 <fileset dir="${basedir}">
142 <include name="*.sh"/>
143 </fileset>
144 </move>
145 <move todir="Windows">
146 <fileset dir="${basedir}">
147 <include name="*.bat"/>
148 </fileset>
149 </move>
150
151 <!-- rearrange collection building stuff -->
152 <move file="${gs2build.home}/win32.mak" tofile="${gs2build.home}/source/Windows/win32.mak"/>
153 <move file="${gs2build.home}/setup.bat" tofile="${gs2build.home}/source/Windows/setup.bat"/>
154 <move file="${gs2build.home}/WIN32cfg.h" tofile="${gs2build.home}/source/Windows/WIN32cfg.h"/>
155 <move todir="${gs2build.home}/source/Unix/">
156 <fileset dir="${gs2build.home}">
157 <include name="config*"/>
158 <include name="ac*"/>
159 <include name="install-sh"/>
160 <include name="setup.bash"/>
161 <include name="Makefile.in"/>
162 </fileset>
163 </move>
164 <!-- general source files -->
165 <move todir="${gs2build.home}/source/src" failonerror="false">
166 <fileset dir="${gs2build.home}/src" defaultexcludes="no"/>
167 </move>
168 <move todir="${gs2build.home}/source/lib" failonerror="false">
169 <fileset dir="${gs2build.home}/lib" defaultexcludes="no"/>
170 </move>
171 <copy file="${gs2build-extra.home}/lib.win32.mak" tofile="${gs2build.home}/source/lib/win32.mak"/>
172 <move todir="${gs2build.home}/source/packages" failonerror="false">
173 <fileset dir="${gs2build.home}/packages" defaultexcludes="no"/>
174 </move>
175
176 <!-- documented collections -->
177 <antcall target="get-documented-collections"/>
178
179 <!-- clean up -->
180 <xslt in="build.xml" out="dist-build.xml" style="dist-resources/convert-build-xml.xsl"/>
181 <delete dir="${basedir}/build"/>
182 <delete dir="${basedir}/lib/jni"/>
183 <delete dir="${basedir}/dist-resources"/>
184 <delete file="${basedir}/README-CVS.txt"/>
185 <delete file="${basedir}/TODO.txt"/>
186 </target>
187
188
189 <target name="prepare-for-source-dist" depends="init">
190 <cvs command="export -D '1 second ago'" package="mgpp"
191 dest="${src.packages.home}"
192 cvsRoot="${cvs.root}" />
193 <cvs command="export -D '1 second ago'" package="gs2build"
194 cvsRoot="${cvs.root}" />
195 <cvs command="export -D '1 second ago'" package="gli"
196 cvsRoot="${cvs.root}" />
197 <delete file="${gli.home}/gli.bat"/>
198 <delete file="${gli.home}/gli.sh"/>
199 <antcall target="rename-gs2build-files-unix"/>
200 <antcall target="prepare-collections"/>
201 <antcall target="prepare-axis"/>
202 <delete file="${packages.home}/axis-bin-1_2_1.zip"/>
203 <!-- delete old axis dir -->
204 <delete dir="${packages.home}/axis"/>
205 <!-- download the mac XML parser just in case: it will only be unpacked if on a mac -->
206 <get src="http://www.greenstone.org/gs3files/XML-Parser.tar.gz"
207 dest="${gs2build.home}/perllib/cpan/XML-Parser.tar.gz"
208 usetimestamp="true"/>
209 <xslt in="build.xml" out="dist-build.xml" style="dist-resources/convert-build-xml-source.xsl"/>
210 <delete dir="${basedir}/dist-resources"/>
211
212 </target>
213
214 <target name="delete-windows-files" depends="init" unless="current.os.iswindows">
215 <delete dir="${basedir}/winutil"/>
216 <delete>
217 <fileset dir="${lib.jni}" includes="*.dll"/>
218 </delete>
219 </target>
220
221 <target name="get-perl-for-windows" if="current.os.iswindows">
222 <get src="http://www.greenstone.org/gs3files/perl-for-windows.zip"
223 dest="${gs2build.home}/bin/windows/perl-for-windows.zip"
224 usetimestamp="true"/>
225 <unzip src="${gs2build.home}/bin/windows/perl-for-windows.zip"
226 dest="${gs2build.home}/bin/windows"/>
227 <delete file="${gs2build.home}/bin/windows/perl-for-windows.zip"/>
228 </target>
229
230 <target name="rename-gs2build-files-dist" depends="init,rename-gs2build-files-unix">
231 <copy file="${gs2build-extra.home}/lib.win32.mak" tofile="${gs2build.home}/lib/win32.mak"/>
232 <copy file="${gs2build-extra.home}/win32.mak" tofile="${gs2build.home}/win32.mak"/>
233 <copy file="${gs2build-extra.home}/setup.bat" tofile="${gs2build.home}/setup.bat"/>
234 </target>
235
236 <target name="distclean-packages" depends="init,clean-packages-c++">
237 <!-- mg : just call the make target -->
238 <exec executable="make" os="${os.unix}"
239 dir="${mg.home}">
240 <arg value="distclean"/>
241 </exec>
242 <!-- mgpp -->
243 <exec executable="make" os="${os.unix}"
244 dir="${mgpp.home}">
245 <arg value="distclean"/>
246 </exec>
247 <!-- javagdbm -->
248 <exec executable="make" os="${os.unix}"
249 dir="${javagdbm.home}">
250 <arg value="distclean"/>
251 </exec>
252 </target>
253
254 <!-- copy the doc eg colls from /home/nzdl - note we don't include the formatting ones -->
255 <target name="get-documented-collections" depends="init">
256 <property name="collect.home" value="${basedir}/web/sites/localsite/collect"/>
257 <copy todir="${collect.home}/MARC-e">
258 <fileset dir="${documented.collections.home}/MARC-e"/>
259 </copy>
260 <copy todir="${collect.home}/cltbib-e">
261 <fileset dir="${documented.collections.home}/cltbib-e"/>
262 </copy>
263 <copy todir="${collect.home}/dls-e">
264 <fileset dir="${documented.collections.home}/dls-e"/>
265 </copy>
266 <copy todir="${collect.home}/dspace-e">
267 <fileset dir="${documented.collections.home}/dspace-e"/>
268 </copy>
269 <copy todir="${collect.home}/gsarch-e">
270 <fileset dir="${documented.collections.home}/gsarch-e"/>
271 </copy>
272 <copy todir="${collect.home}/image-e">
273 <fileset dir="${documented.collections.home}/isis-e"/>
274 </copy>
275 <copy todir="${collect.home}/oai-e">
276 <fileset dir="${documented.collections.home}/oai-e"/>
277 </copy>
278 <copy todir="${collect.home}/pagedimg-e">
279 <fileset dir="${documented.collections.home}/pagedimg-e"/>
280 </copy>
281 <copy todir="${collect.home}/wrdpdf-e">
282 <fileset dir="${documented.collections.home}/wrdpdf-e"/>
283 </copy>
284 </target>
285
286</project>
287
288
Note: See TracBrowser for help on using the repository browser.