root/main/trunk/release-kits/kits/cdrk2/ant-scripts/build.xml @ 21652

Revision 21652, 12.4 KB (checked in by oranfry, 10 years ago)

got properties target working for all kits, plus some fixes

Line 
1<?xml version="1.0" encoding="utf-8" ?>
2<!--
3        ..........................................................
4        March 2009
5        CD Release Kit for Greenstone2 (cdrk2)
6        Oran Fry
7        ..........................................................
8-->
9
10<project name="cdrk2-build" default="cdrk2">
11
12    <!-- IMPORT OTHER ANT SCRIPTS -->
13    <import file="${rk.home}/shared/core/ant-scripts/shared.xml"/>
14    <import file="${rk.home}/shared/greenstone2/ant-scripts/greenstone2-shared.xml"/>
15
16    <!-- figure out where the compiled software is coming from -->
17    <property name="software.archive.linux"
18        value="http://www.greenstone.org/caveat-emptor/cdrom-components-${version}-candidate-${date}-linux.tar.gz"/>
19    <property name="software.archive.windows"
20        value="http://www.greenstone.org/caveat-emptor/cdrom-components-${version}-candidate-${date}-windows.tar.gz"/>
21    <property name="software.archive.mac"
22        value="http://www.greenstone.org/caveat-emptor/cdrom-components-${version}-candidate-${date}-mac.tar.gz"/>
23    <property name="software.archive.documented-examples"
24        value="http://www.greenstone.org/caveat-emptor/Greenstone-documented-examples-${version}-candidate-${date}.tar.gz"/>
25
26
27    <!-- THE MAIN TARGET -->
28    <target name="cdrk2" depends="init">
29
30        <!-- show the properties we're using -->
31        <echo message="software.archive.linux:                    ${software.archive.linux}"/>
32        <echo message="software.archive.windows:                  ${software.archive.windows}"/>
33        <echo message="software.archive.mac:                      ${software.archive.mac}"/>
34        <echo message="software.archive.documented-examples:      ${software.archive.documented-examples}"/>
35
36        <!-- create a directory for the cdrom contents -->
37        <mkdir dir="cdrom"/>
38
39        <!-- checkout and compile documentation java/fop code -->
40        <exec executable="svn">
41            <arg value="export"/>
42            <arg value="${svn.root}/documentation/${branch.path}/shared"/>
43            <arg value="documentation/shared"/>
44        </exec>
45        <javac srcdir="documentation/shared" destdir="" debug="on">
46            <include name="*.java"/>
47        </javac>
48
49        <!-- checkout tutorials and build them -->
50        <exec executable="svn"><arg value="checkout"/><arg value="${svn.root}/documentation/${branch.path}/tutorials"/><arg value="documentation/tutorials"/></exec>
51        <exec executable="svn"><arg value="checkout"/><arg value="${svn.root}/main/${branch.path}/gli"/><arg value="documentation/gli"/></exec>
52        <exec executable="svn"><arg value="checkout"/><arg value="${svn.root}/main/${branch.path}/greenstone2/perllib"/><arg value="documentation/perllib"/></exec>
53        <exec executable="svn"><arg value="checkout"/><arg value="${svn.root}/main/${branch.path}/greenstone2/macros"/><arg value="documentation/macros"/></exec>
54        <exec executable="svn"><arg value="checkout"/><arg value="${svn.root}/documentation/${branch.path}/tutorial_sample_files"/><arg value="documentation/tutorial_sample_files"/></exec>
55        <delete dir="documentation/tutorials/html"/>
56        <exec dir="documentation/tutorials" executable="/bin/bash">
57            <arg value="generate-html.sh"/>
58            <env key="GSDLHOME" value="${basedir}/documentation"/>
59        </exec>
60        <delete dir="cdrom/Tutorial Exercises"/>
61        <mkdir dir="cdrom/Tutorial Exercises/sample_files"/>
62
63        <!-- copy tutorial html into place on the cd -->
64        <copy todir="cdrom/Tutorial Exercises/English"><fileset dir="documentation/tutorials/html/en"/></copy>
65        <copy todir="cdrom/Tutorial Exercises/French"><fileset dir="documentation/tutorials/html/fr"/></copy>
66        <copy todir="cdrom/Tutorial Exercises/Spanish"><fileset dir="documentation/tutorials/html/es"/></copy>
67        <copy todir="cdrom/Tutorial Exercises/Russian"><fileset dir="documentation/tutorials/html/ru"/></copy>
68
69        <!-- create tutorial sample files zips in place on the cdrom -->
70        <zip destfile="cdrom/Tutorial Exercises/sample_files/beatles.zip" basedir="documentation/tutorial_sample_files/beatles"/>
71        <zip destfile="cdrom/Tutorial Exercises/sample_files/custom.zip" basedir="documentation/tutorial_sample_files/custom"/>
72        <zip destfile="cdrom/Tutorial Exercises/sample_files/demo_NewFiles.zip" basedir="documentation/tutorial_sample_files/demo_NewFiles"/>
73        <zip destfile="cdrom/Tutorial Exercises/sample_files/dspace.zip" basedir="documentation/tutorial_sample_files/dspace"/>
74        <zip destfile="cdrom/Tutorial Exercises/sample_files/images.zip" basedir="documentation/tutorial_sample_files/images"/>
75        <zip destfile="cdrom/Tutorial Exercises/sample_files/isis.zip" basedir="documentation/tutorial_sample_files/isis"/>
76        <zip destfile="cdrom/Tutorial Exercises/sample_files/marc.zip" basedir="documentation/tutorial_sample_files/marc"/>
77        <zip destfile="cdrom/Tutorial Exercises/sample_files/niupepa.zip" basedir="documentation/tutorial_sample_files/niupepa"/>
78        <zip destfile="cdrom/Tutorial Exercises/sample_files/oai.zip" basedir="documentation/tutorial_sample_files/oai"/>
79        <zip destfile="cdrom/Tutorial Exercises/sample_files/simple_html.zip" basedir="documentation/tutorial_sample_files/simple_html"/>
80        <zip destfile="cdrom/Tutorial Exercises/sample_files/tudor.zip" basedir="documentation/tutorial_sample_files/tudor"/>
81        <zip destfile="cdrom/Tutorial Exercises/sample_files/Word_and_PDF.zip" basedir="documentation/tutorial_sample_files/Word_and_PDF"/>
82
83        <!-- checkout manuals ad build them -->
84        <exec executable="svn"><arg value="checkout"/><arg value="${svn.root}/documentation/${branch.path}/manuals"/><arg value="documentation/manuals"/></exec>
85        <exec executable="svn"><arg value="checkout"/><arg value="${svn.root}/documentation/${branch.path}/shared"/><arg value="documentation/shared"/></exec>
86        <exec executable="svn"><arg value="checkout"/><arg value="${svn.root}/main/${branch.path}/gli"/><arg value="documentation/gli"/></exec>
87
88        <unzip src="documentation/shared/fop.zip" dest="documentation/shared"/>
89        <chmod perm="a+x" file="documentation/shared/fop/fop.sh"/>
90
91        <antcall target="generate-gli-chapter"><param name="language" value="en"/></antcall>
92        <antcall target="generate-gli-chapter"><param name="language" value="fr"/></antcall>
93        <antcall target="generate-gli-chapter"><param name="language" value="es"/></antcall>
94        <antcall target="generate-gli-chapter"><param name="language" value="ru"/></antcall>
95
96        <delete dir="documentation/manuals/build"/>
97        <exec dir="documentation/manuals" executable="/bin/bash">
98            <arg value="generate-pdf.sh"/>
99            <arg value="all"/>
100            <arg value="en es ru fr"/>
101        </exec>
102
103        <exec spawn="true" dir="documentation/manuals" executable="/bin/bash">
104            <arg value="generate-pdf.sh"/>
105            <arg value="Install"/>
106            <arg value="ar"/>
107        </exec>
108
109        <!-- put manuals in place on cdrom -->
110        <delete dir="cdrom/Documentation"/>
111        <copy todir="cdrom/Documentation/English"><fileset dir="documentation/manuals/build/en/pdf"/></copy>
112        <copy todir="cdrom/Documentation/French"><fileset dir="documentation/manuals/build/fr/pdf"/></copy>
113        <copy todir="cdrom/Documentation/Spanish"><fileset dir="documentation/manuals/build/es/pdf"/></copy>
114        <copy todir="cdrom/Documentation/Russian"><fileset dir="documentation/manuals/build/ru/pdf"/></copy>
115        <copy todir="cdrom/Documentation/Arabic"><fileset dir="documentation/manuals/build/ar/pdf"/></copy>
116
117        <!-- top off manuals with a few more from the web -->
118        <get src="http://wiki.greenstone.org/wiki/gsdoc/others/CDS-ISIS_to_DL.pdf" dest="cdrom/Documentation/English/CDS-ISIS_to_DL.pdf"/>
119        <get src="http://www.greenstone.org/docs/inside_greenstone.pdf" dest="cdrom/Documentation/English/inside_greenstone.pdf"/>
120
121        <get src="http://www.greenstone.org/manuals/gsdl2/ar/pdf/Users_Guide_Arabic.doc" dest="cdrom/Documentation/Arabic/Users_Guide_Arabic.doc"/>
122        <get src="http://www.greenstone.org/manuals/gsdl2/ar/pdf/Install_ar.pdf" dest="cdrom/Documentation/Arabic/Install_ar.pdf"/>
123
124        <mkdir dir="cdrom/Documentation/Brazilian Portuguese"/>
125        <get src="http://www.greenstone.org/manuals/gsdl2/pt-br/pdf/Install_pt-br.pdf" dest="cdrom/Documentation/Brazilian Portuguese/Install_pt-br.pdf"/>
126
127        <mkdir dir="cdrom/Documentation/Vietnamese"/>
128        <get src="http://prdownloads.sourceforge.net/greenstone/Install-2.39-vi.pdf" dest="cdrom/Documentation/Vietnamese/Install-2.39-vi.pdf"/>
129        <get src="http://prdownloads.sourceforge.net/greenstone/User-2.39-vi.pdf" dest="cdrom/Documentation/Vietnamese/User-2.39-vi.pdf"/>
130        <get src="http://prdownloads.sourceforge.net/greenstone/Paper-2.39-vi.pdf" dest="cdrom/Documentation/Vietnamese/Paper-2.39-vi.pdf"/>
131
132        <mkdir dir="cdrom/Documentation/Kazakh"/>
133        <get src="http://prdownloads.sourceforge.net/greenstone/Install-2.39-kz.pdf" dest="cdrom/Documentation/Kazakh/Install-2.39-kz.pdf"/>
134        <get src="http://prdownloads.sourceforge.net/greenstone/User-2.39-kz.pdf" dest="cdrom/Documentation/Kazakh/User-2.39-kz.pdf"/>
135        <get src="http://prdownloads.sourceforge.net/greenstone/Paper-2.39-kz.pdf" dest="cdrom/Documentation/Kazakh/Paper-2.39-kz.pdf"/>
136
137        <!-- insert the documented examples onto cdrom -->
138        <mkdir dir="archives"/>
139        <get src="${software.archive.documented-examples}" dest="archives/documented-examples.tar.gz"/>
140        <delete dir="cdrom/Documented Examples"/>
141        <copy toDir="cdrom">
142            <fileset dir="${rk.home}/kits/${rk.name}/resources">
143                <include name="Documented Examples/**/*"/>
144                <include name="Documented Examples"/>
145            </fileset>
146        </copy>
147        <exec executable="tar" dir="cdrom/Documented Examples"><arg value="-xzf"/><arg value="../../archives/documented-examples.tar.gz"/></exec>
148
149        <!-- insert readmes -->
150        <copy todir="cdrom"><fileset dir="${rk.home}/greenstone2/docs"/></copy>
151        <antcall target="gsdl-set-dates-in-readmes"><param name="gsdl.basedir" value="${basedir}/cdrom"/></antcall>
152
153        <!-- insert linux software -->
154        <mkdir dir="cdrom"/>
155        <mkdir dir="archives"/>
156        <get src="${software.archive.linux}" dest="archives/linux.tar.gz"/>
157        <exec executable="tar" dir="cdrom"><arg value="-xzf"/><arg value="../archives/linux.tar.gz"/></exec>
158
159        <!-- insert windows software -->
160        <mkdir dir="cdrom"/>
161        <mkdir dir="archives"/>
162        <get src="${software.archive.windows}" dest="archives/windows.tar.gz"/>
163        <exec executable="tar" dir="cdrom"><arg value="-xzf"/><arg value="../archives/windows.tar.gz"/></exec>
164
165        <!-- insert mac software -->
166        <mkdir dir="cdrom"/>
167        <mkdir dir="archives"/>
168        <get src="${software.archive.mac}" dest="archives/mac.tar.gz"/>
169        <exec executable="tar" dir="cdrom"><arg value="-xzf"/><arg value="../archives/mac.tar.gz"/></exec>
170
171        <!-- create autorun (windows) -->
172        <exec executable="cp">
173            <arg value="${rk.home}/kits/${rk.name}/resources/AUTORUN.INF"/>
174            <arg value="cdrom"/>
175        </exec>
176
177        <!-- finally create the cdrom image -->
178        <mkdir dir="products"/>
179        <exec executable="mkisofs">
180            <arg value="-V"/>
181            <arg value="Greenstone-${version}"/>
182            <arg value="-input-charset"/>
183            <arg value="utf-8"/>
184            <arg value="-o"/>
185            <arg value="products/Greenstone-${version}-cdrom.iso"/>
186            <arg value="-J"/>
187            <arg value="-R"/>
188            <arg value="-D"/>
189            <arg value="cdrom"/>
190        </exec>
191        <exec executable="/bin/bash" dir="products">
192            <arg value="-c"/>
193            <arg value="cat Greenstone-${version}-cdrom.iso | gzip > Greenstone-${version}-cdrom.iso.gz"/>
194        </exec>
195        <exec executable="/bin/bash" dir="products">
196            <arg value="-c"/>
197            <arg value="zip Greenstone-${version}-cdrom.zip Greenstone-${version}-cdrom.iso"/>
198        </exec>
199
200    </target>
201
202    <target name="properties" depends="core-properties">
203        <echo>software.archive.linux                      (optional)  the URL to the linux archive of components</echo>
204        <echo>software.archive.windows                    (optional)  the URL to the windows archive of components</echo>
205        <echo>software.archive.mac                        (optional)  the URL to the mac archive of components</echo>
206        <echo>software.archive.documented-examples        (optional)  the URL to the archive of documented examples</echo>
207    </target>
208
209    <!-- target to generate the manual chapter about gli in a given language -->
210    <target name="generate-gli-chapter">
211        <path id="documentation.compile.classpath">
212            <fileset dir="documentation">
213                <include name="**/*.jar"/>
214            </fileset>
215            <pathelement path="documentation/gli/classes"/>
216            <pathelement path="documentation/shared"/>
217            <pathelement path="documentation/manuals"/>
218        </path>
219        <java classname="ApplyXSLT" classpathref="documentation.compile.classpath" output="documentation/manuals/xml-source/${language}/help-${language}.xml">
220            <arg value="${language}" />
221            <arg value="documentation/manuals/processing/gen-gli-help-to-manual-chapter.xsl" />
222            <arg value="documentation/gli/help/${language}/help.xml" />
223            <arg value="compiled" />
224        </java>
225        <copy file="documentation/manuals/xml-source/${language}/help-${language}.xml" todir="documentation/manuals"/>
226    </target>
227
228</project>
Note: See TracBrowser for help on using the browser.