source: release-kits/wirk2/ant-scripts/wrap.xml@ 19586

Last change on this file since 19586 was 19586, checked in by oranfry, 15 years ago

grouped code for creating cdrom components

File size: 3.4 KB
RevLine 
[15023]1<?xml version="1.0" encoding="utf-8" ?>
[16194]2<project name="wirk2-wrap" default="wrap">
[15023]3
4 <target name="wrap">
[16745]5 <antcall target="copy-files-for-wrapping"/>
6 <antcall target="tweak-files-for-wrapping"/>
7 <antcall target="compile-resources"/>
8 <antcall target="compile-wrapper"/>
[17308]9 <antcall target="link-wrapper"/>
[15023]10 </target>
11
[15691]12 <target name="copy-files-for-wrapping">
[16745]13 <!--create a directory to build the wrapped installer in -->
[19586]14 <mkdir dir="${basedir}/wrapped-installer"/>
[15691]15
[16745]16 <!-- copy source files -->
[19586]17 <copy todir="${basedir}/wrapped-installer" file="${wirk2.home}/windows/wrapper/wrapper.cpp" overwrite="true"/>
18 <copy todir="${basedir}/wrapped-installer" file="${wirk2.home}/core/search4j/libsearch4j.cpp" overwrite="true"/>
19 <copy todir="${basedir}/wrapped-installer" file="${wirk2.home}/core/search4j/libsearch4j.h" overwrite="true"/>
[17268]20
[15691]21 </target>
22
23 <target name="tweak-files-for-wrapping">
[16745]24 <echo>Substitute concrete values of things into source files</echo>
[19586]25 <rsr file="${basedir}/wrapped-installer/wrapper.cpp">
[17308]26 <job pattern="@java.installer@" replacement="${windows-java.installer}"/>
27 <job pattern="@java.min.version@" replacement="${java.min.version}"/>
28 <job pattern="@bundled.version.java@" replacement="${bundled.version.windows-java}"/>
29 <job pattern="@java.extracted@" replacement="${windows-java.extracted}"/>
30 </rsr>
[15691]31 </target>
[15023]32
[15691]33 <target name="compile-resources">
[15023]34
[16745]35 <echo>Compiling resources</echo>
[15900]36
[16745]37 <echo>getting the template resource script</echo>
[19586]38 <copy todir="${basedir}/wrapped-installer" file="${wirk2.home}/windows/wrapper/wrapper.rc" overwrite="true"/>
[15691]39
[16745]40 <echo>copying the small resource files into place</echo>
[19586]41 <copy todir="${basedir}/wrapped-installer" overwrite="true">
[16745]42 <fileset dir="${wirk2.home}/windows/wrapper" includes="*.bmp"/>
43 <fileset dir="${wirk2.home}/greenstone2/wrapper" includes="*.bmp"/>
44 <fileset dir="${wirk2.home}/greenstone2/icon" includes="icon.ico"/>
45 </copy>
[15691]46
[19586]47 <echo>adding ${windows-java.installer} to the copy as chunks</echo>
48 <rsplit
49 resource="${wirk2.home}/windows/wrapper/${windows-java.installer}"
50 outputDir="${basedir}/wrapped-installer"
51 resourceScript="${basedir}/wrapped-installer/wrapper.rc"
52 resourceName="JAVA"
53 resourceType="EXE"
54 chunkSize="${resources.chunksize}"/>
55
[16745]56 <echo>adding greenstone2.jar to the resource script as chunks</echo>
57 <rsplit
[18497]58 resource="${basedir}/installer/Greenstone-${version}-win32.jar"
[19586]59 outputDir="${basedir}/wrapped-installer"
60 resourceScript="${basedir}/wrapped-installer/wrapper.rc"
[16745]61 resourceName="JAR"
62 resourceType="JAR"
63 chunkSize="${resources.chunksize}"
64 />
[19586]65
66 <echo>resource compiling the resource script</echo>
67 <exec executable="rc" dir="${basedir}/wrapped-installer">
[17308]68 <arg line="wrapper.rc"/>
[15023]69 </exec>
70
[15691]71 </target>
[16745]72
73 <target name="compile-wrapper">
[19586]74 <exec executable="cl" dir="${basedir}/wrapped-installer">
[16745]75 <arg line="/c -GX /DWINDOWS=yes libsearch4j.cpp /out:libsearch4j.obj"/>
76 </exec>
77
[19586]78 <exec executable="cl" dir="${basedir}/wrapped-installer">
[16745]79 <arg line="/c -GX /DWINDOWS=yes wrapper.cpp /out:wrapper.obj"/>
80 </exec>
81 </target>
[15691]82
[17308]83 <target name="link-wrapper">
[19586]84 <mkdir dir="products"/>
85 <exec executable="link" dir="${basedir}/wrapped-installer">
86 <arg line="/OUT:..\products\Greenstone-${version}-win32.exe gdi32.lib advapi32.lib shell32.lib user32.lib libsearch4j.obj wrapper.obj wrapper.res"/>
[16745]87 </exec>
[15691]88 </target>
89
[15023]90</project>
Note: See TracBrowser for help on using the repository browser.