Преглед на файлове

Changed default target to "internal". Not distributable outside IT Mill.

Added "release" target, obfuscated and optimized javascript and CSS files. Currently only javascript is optimized and obfuscated.

svn changeset:449/svn branch:toolkit
tags/6.7.0.beta1
Jani Laakso преди 17 години
родител
ревизия
1e96b84f82
променени са 1 файла, в които са добавени 55 реда и са изтрити 14 реда
  1. 55
    14
      build/build.xml

+ 55
- 14
build/build.xml Целия файл

<?xml version="1.0"?> <?xml version="1.0"?>


<project name="IT Mill Toolkit" basedir="../" default="all">
<project name="IT Mill Toolkit" basedir="../" default="release">

<!-- ant contrib required for flow control (for loop) -->
<taskdef resource="net/sf/antcontrib/antlib.xml">
<classpath>
<pathelement location="build/lib/ant-contrib-1.0b3.jar" />
</classpath>
</taskdef>

<!-- Internal build target -->
<target name="internal" depends="package" description="Build internal release. Never distribute this outside IT Mill.">
<property name="release-type" value="-internal" />
</target>


<!-- Default build target -->
<target name="all" depends="package" description="Build all">
<!-- Release build target -->
<target name="release" depends="package-release" description="Build public release, optimized and obfuscated themes.">
<property name="release-type" value="" />
</target> </target>


<!-- Initialization - - - - - - - - - - - - - - - - - - - - - - - - --> <!-- Initialization - - - - - - - - - - - - - - - - - - - - - - - - -->
<property name="themes-jar-name" value="${product-file}-themes-${version}.jar" /> <property name="themes-jar-name" value="${product-file}-themes-${version}.jar" />
<property name="demo-war-name" value="${product-file}-demo-${version}.war" /> <property name="demo-war-name" value="${product-file}-demo-${version}.war" />


<echo message="Prepared to build ${product-file} version ${version} packages" />
<echo message="Prepared to build ${product-file}${release-type} version ${version} packages" />


<!-- Output directory --> <!-- Output directory -->
<property name="output-dir" value="build/result/${product-file}-${version}" />
<property name="output-dir" value="build/result/${product-file}${release-type}-${version}" />
<mkdir dir="${output-dir}" /> <mkdir dir="${output-dir}" />


<!-- Create Output Directory Hierarchy --> <!-- Create Output Directory Hierarchy -->


<!-- Themes - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> <!-- Themes - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<target name="themes" depends="copy-themes-to-lib, theme-jar" />
<target name="themes" depends="copy-themes-to-lib" />


<target name="copy-themes-to-lib" depends="init"> <target name="copy-themes-to-lib" depends="init">
<copy todir="${output-dir}/lib/themes"> <copy todir="${output-dir}/lib/themes">
</copy> </copy>
</target> </target>


<target name="theme-jar" depends="init">
<!-- Executed for release builds only -->
<target name="themes-optimize-obfuscate" depends="themes">
<echo>Optimizing and obfuscating files</echo>
<for param="file">
<path>
<fileset dir="${output-dir}/lib/themes">
<include name="**/*.js" />
</fileset>
</path>
<sequential>
<echo>@{file}</echo>
<!-- <replaceregexp file="@{file}" match="foo" replace="x1" byline="true" /> -->
<java dir="${output-dir}/lib/themes" jar="build/lib/custom_rhino.jar" fork="true" failonerror="true" maxmemory="128m" output="@{file}">
<arg value="-c" />
<arg value="@{file}" />
</java>
</sequential>
</for>
<fixcrlf srcdir="${output-dir}/lib/themes" includes="**/*.js **/*.css" eol="lf" eof="remove" />
</target>

<target name="theme-jar" depends="init, themes">
<jar jarfile="${output-dir}/lib/${themes-jar-name}" compress="false"> <jar jarfile="${output-dir}/lib/${themes-jar-name}" compress="false">
<fileset dir="WebContent/WEB-INF/lib/themes">
<fileset dir="${output-dir}/lib/themes">
<patternset> <patternset>
<exclude name="**/.svn" />
<include name="corporate/**/*" /> <include name="corporate/**/*" />
<include name="base/**/*" /> <include name="base/**/*" />
</patternset> </patternset>
<!-- Convert to CRLF's and tabs --> <!-- Convert to CRLF's and tabs -->
<fixcrlf srcdir="build/result/src" eol="crlf" tablength="4" tab="remove" includes="**/*.java" /> <fixcrlf srcdir="build/result/src" eol="crlf" tablength="4" tab="remove" includes="**/*.java" />



<!-- Un-Filtered files --> <!-- Un-Filtered files -->
<copy todir="build/result/src"> <copy todir="build/result/src">
<fileset dir="src"> <fileset dir="src">


<target name="demo" depends="libs,compile-java,theme-jar"> <target name="demo" depends="libs,compile-java,theme-jar">


<war warfile="${output-dir}/demo/${product-file}.war" webxml="WebContent/WEB-INF/web.xml">
<war warfile="${output-dir}/demo/${product-file}${release-type}.war" webxml="WebContent/WEB-INF/web.xml">
<classes dir="build/result/classes"> <classes dir="build/result/classes">
<include name="${toolkit-package}/demo/**/*.class" /> <include name="${toolkit-package}/demo/**/*.class" />
</classes> </classes>


<!-- ZIP Package creation - - - - - - - - - - - - - - - - - - - - - - - - - --> <!-- ZIP Package creation - - - - - - - - - - - - - - - - - - - - - - - - - -->


<target name="package" depends="clean-all,libs,demo,docs,themes">
<target name="package" depends="clean-all,libs,docs,themes,demo">
<zip zipfile="build/result/${package-file-name}">
<fileset dir="build/result">
<patternset>
<include name="${product-file}${release-type}-${version}/**" />
</patternset>
</fileset>
</zip>
</target>

<target name="package-release" depends="clean-all,libs,docs,themes-optimize-obfuscate,demo">
<zip zipfile="build/result/${package-file-name}"> <zip zipfile="build/result/${package-file-name}">
<fileset dir="build/result"> <fileset dir="build/result">
<patternset> <patternset>
<include name="${product-file}-${version}/**" />
<include name="${product-file}${release-type}-${version}/**" />
</patternset> </patternset>
</fileset> </fileset>
</zip> </zip>
<delete dir="build/result" /> <delete dir="build/result" />
</target> </target>



</project> </project>

Loading…
Отказ
Запис