diff options
author | Marko Grönroos <magi@iki.fi> | 2009-04-07 13:50:23 +0000 |
---|---|---|
committer | Marko Grönroos <magi@iki.fi> | 2009-04-07 13:50:23 +0000 |
commit | 94f6a844627cbba41a6f1e980d1f08bedfcb3ef5 (patch) | |
tree | 0dd49da061fbc77a794a95c96fb99b66161d02f5 | |
parent | 07203b799722834cf51ac667add85d495225ceba (diff) | |
download | vaadin-framework-94f6a844627cbba41a6f1e980d1f08bedfcb3ef5.tar.gz vaadin-framework-94f6a844627cbba41a6f1e980d1f08bedfcb3ef5.zip |
Merge from versions/5.4 to versions/6.0:
Merged [7302]: Removed obsolete testing scripts for Testing Tools 1.0.
Merged [7305]: Initial testing tools target, doesn't quite work yet, demo launching is missing, etc.
Merged [7321]: Moved build/docbook directory from 5.4 branch to doc tree.
Merged [7325]: Moved XEP directory from 5.4 branch to doc tree.
Merged [7333]: Removed all manual related material and build instructions from regular toolkit branch.
Merged [7342]: Building manual from the toolkit build script.
Merged [7343]: Fixed a namespace problem in build file and organized clean-up targets a little.
Merged [7346]: Removed the obsolete DTDs.
Merged [7348]: Changed <version> and <platform> tags in some HTML and text files to @...@ notation to avoid some validation errors in Eclipse.
svn changeset:7352/svn branch:6.0
-rw-r--r-- | WebContent/index.html | 4 | ||||
-rw-r--r-- | WebContent/release-notes.html | 242 | ||||
-rw-r--r-- | build/build-www.itmill.com.xml | 192 | ||||
-rw-r--r-- | build/build.properties | 1 | ||||
-rw-r--r-- | build/build.xml | 578 | ||||
-rw-r--r-- | build/package/build-widgetset.xml | 4 | ||||
-rw-r--r-- | build/package/eclipse-IT Mill Toolkit Hosted Mode-launch | 2 |
7 files changed, 143 insertions, 880 deletions
diff --git a/WebContent/index.html b/WebContent/index.html index 61121b78ef..cd5b6dd5df 100644 --- a/WebContent/index.html +++ b/WebContent/index.html @@ -164,14 +164,14 @@ <div class="top"></div> <h3>» Package contents</h3> - <em>Version <version></version></em> + <em>Version @version@</em> <div id="package-contents-content"> <!-- For JavaScript hooking --> <div class="library"> <h5>Library</h5> <p>Contains all you need to start a new Toolkit project (binaries, sources, default - themes and widgetsets). <a href="itmill-toolkit-<version></version>.jar">Toolkit JAR</a></p> + themes and widgetsets). <a href="itmill-toolkit-@version@.jar">Toolkit JAR</a></p> </div> <div class="documentation"> diff --git a/WebContent/release-notes.html b/WebContent/release-notes.html index 3ed8e8f259..22319c3147 100644 --- a/WebContent/release-notes.html +++ b/WebContent/release-notes.html @@ -25,250 +25,12 @@ support site forum.itmill.com</a></div> <div class="content"> <div> -<h2>Release Notes for IT Mill Toolkit Version <version></version></h2> +<h2>Release Notes for IT Mill Toolkit Version @version@</h2> <p>Version 5.3.0 is the first stable release of IT Mill Toolkit 5, meaning that there are no known major problems and the API will be kept backward compatible.</p> -<h2 id="ClientsideiscompiledwithGWT1.5">Google Web Toolkit Upgraded -to Version 1.5</h2> - -<p>The GWT used in IT Mill Toolkit is upgraded to version 1.5. If -you have made your own client side components, you will need to upgrade -your GWT library. Many things have changed in GWT 1.5, but upgrading is -rather straightforward and, as a bonus, you will get the nice features -from Java 1.5. For more details on GWT 1.5, see the <a class="ext-link" - href="http://code.google.com/webtoolkit/"><span class="icon">GWT -web site</span></a>.</p> - -<h2 id="Java5isrequired">Java 5 Now Required</h2> - -<p>As GWT now requires Java 5, support for Java 1.4 is discontinued -also in IT Mill Toolkit.</p> - -<p>IT Mill Toolkit supports the Sun Microsystems JDK and JRE, though others should work as -well. When running the demo application, the Jetty web server may produce errors in the -console if using certain other Java implementations, especially the GNU JRE.</p> - -<h2>Debug Mode Enabled by Default</h2> - -<p>The debug mode is now enabled by default, to allow debugging -layout and other problems more easily. The debug mode:</p> - -<ul> - <li>Displays debug data to the server console/log.</li> - - <li>Allows showing the client-side logging window, which you can - enable by adding the request parameter "<tt>?debug=true</tt>" to the - application URI.</li> - - <li>"Analyze layouts" -button in the debug window runs basic - checks on usage of relative units. Potentially problematic layouts will - be shown in the debug window and in <tt>System.out</tt>.</li> -</ul> - -<p>You should disable the debug mode when releasing your application -for production use. You can do this by including the following setting -in your <tt>web.xml</tt>.</p> - -<pre class="wiki"> <context-param> - <param-name>productionMode</param-name> - <param-value>true</param-value> - <description>IT Mill Toolkit production mode</description> - </context-param> -</pre> - -<h2 id="Layoutchanges">Layout Changes</h2> - -<p>The stable IT Mill Toolkit version 5.3 introduces a major rework -of layout components since the beta versions 5.2.x and before.</p> - -<p>Major changes include:</p> - -<ul> - <li>Layouts are stricter than before - <i>usage of debug mode - during development is recommended. Use "Analyze layouts" in client side - debug window if you encounter problems with relative size.</i></li> - <li><b>VerticalLayout</b> and <b>HorizontalLayout</b> obsolete <b> - <s>OrderedLayout</s></b></li> - <li>Layout cell alignment has changed</li> - <li><b><s>ExpandLayout</s></b> deprecated</li> - <li>Default sizes have changed</li> -</ul> - -<h3>OrderedLayout deprecated</h3> - -<p><b>VerticalLayout</b> and <b>HorizontalLayout</b> replace the old -<b><s>OrderedLayout</s></b>, which is now deprecated.</p> - -<p>Essentially, this makes the creation of these basic layouts a bit -tidier as you don't have to give the orientation as an ugly parameter to -the constructor. You won't be able to change the orientation with <tt>setOrientation()</tt> -any longer, though such need is rare anyhow.</p> - -<h3>Layout Cell Alignment Changed</h3> - -<p>Previously, the alignment of components within layout cells was set with -<i>setComponentAlignment()</i> with constants for <b><s>OrderedLayout</s></b> (now -<b>VerticalLayout</b> and <b>HorizontalLayout</b>) and <b>GridLayout</b> separately, such -as <tt>OrderedLayout.ALIGNMENT_TOP_LEFT</tt>. Now the method takes constants defined in -<b>Alignment</b>.</p> - -<p>For example, aligning a component "top left" is now:</p> - -<pre>mylayout.setComponentAlignment(mycomponent, Alignment.TOP_LEFT);</pre> - -<p>You can also give an <b>Alignment</b> object as a parameter and give horizontal and -vertical alignment separately with bitmask parameters.</p> - -<h3 id="HandlingofrelativesizeshavechangedExpandLayoutdeprecated">Handling -of relative sizes has changed, ExpandLayout deprecated</h3> - -<p><b><s>ExpandLayout</s></b> is deprecated. You can now define the -relative sizes of components more flexibly with <tt>setExpandRatio()</tt> -method available in <b>VerticalLayout</b> or <b>HorizontalLayout</b>.</p> - -<p>See the article on <a class="wiki" - href="http://dev.itmill.com/wiki/DevDocs/RFC/RelativeSizes">Relative -sizes in IT Mill Toolkit</a> for details.</p> - -<h3 id="Somecomponentsnowhavedefaultsizes">Some components now have -default sizes</h3> - -<p>Previously, almost all components had undefined size by default. -Now some containers have 100% width by default. These components are:</p> - -<ul> - <li><b>VerticalLayout</b></li> - <li><b>Window</b></li> - <li><b>Panel</b></li> - <li><b>TabSheet</b></li> - <li><b>SplitPanel</b> (note that <b>SplitPanel</b> also has 100% - height by default)</li> - <li><b>Form</b></li> - <li><b>FormLayout</b></li> - <li><b>Label</b></li> -</ul> - -<p>If the width of a <b>Label</b> is set defined, as is now the default, the label text -will wrap appropriately, but if it is set as undefined, the text will never wrap.</p> - -<h3>Miscellaneous Layout Changes</h3> - -<ul> - <li>You can now give component alignments inside layouts easily - with <tt>setComponentAlignment()</tt> as a string, such as "<tt>top - left</tt>" or "<tt>m,c</tt>" (for middle-center). See <a - href="http://dev.itmill.com/ticket/2279">#2279</a>.</li> - - <li><b>Form</b> no longer copies all components from the old - layout to the new one when doing <tt>setLayout()</tt>, instead only - fields belonging to the <b>Form</b> are copied.</li> -</ul> - - -<h2 id="Customtailoredclientsidecomponents">Custom Tailored -Client-Side Components</h2> - -<p>Due to the layout changes, all child component size changes -(outside the <i>updateFromUIDL()</i> function) must be announced. Most -commonly, this kind of change occurs when an image gets loaded inside a -component. There is a helper method <i>componentSizeUpdated()</i> in the -<b><i>Util</i></b> class for making the announcement:</p> - -<pre class="wiki"> Set<Widget> w = new HashSet<Widget>(); - w.add(this); - Util.componentSizeUpdated(w); -</pre> - -<h2 id="Themes">Themes</h2> - -<p>Many components have changed significantly due to layout -refactoring. Especially the DOM structures of the components have -changed, which may break old themes.</p> - -<p>Building themes for Toolkit is not the most straightforward -process as there is quite a lot of JavaScript magic done while rendering -the components, e.g., dimension measuring, etc. If you use unsupported -CSS, a component may be rendered in an unexpected way in a browser. A -"Theme builder's Handbook" is at the top of our TODO list. In the mean -time, it is often safest to override the values defined in the default -theme.</p> - -<p>Especially, if you encounter problems with margins or spacings, -check the manual. Some CSS class names and conventions have changed as -well. (Many of the changes are not yet included in the manual.)</p> - -<p>If you have or get "broken" component on your screen, the first -thing to do is to comment out all your custom theme. If it works, you -may have the rework your CSS for that particular component. Below are a -few things to check:</p> - -<ul> - - <li>Do not use custom margins outside a component. In IT Mill - Toolkit, no component should have a margin defined. Settings - width/height on the server-side would mean offset width/height on - client-side, so using custom margins for components using CSS may break - some features in the layouts.</li> - - <li>The same goes for borders and paddings for the main element - unless they are used for the main element in the default theme. It is - often safer to use borders in the same elements that have borders in - the default theme or in inner elements.</li> - -</ul> - -<p>The easiest and safest way to build a custom theme is, often, to -override the values from the default theme.</p> - -<h2 id="Browsersupportchangessince5.2.x">Browser support changes -since 5.2.x</h2> - -<p>Safari 2, Firefox 1.5, and versions of Opera prior to version 9.6 -are no longer supported. Users of these browsers are strongly encouraged -to upgrade to a newer version.</p> - -<p>Google Chrome is not yet supported, but it is known to work -rather well as it is a close relative to Safari.</p> - -<p>The GWT Hosted Mode Browser on Linux uses same Gecko version as -FF 1.5 and is currently partially broken. Some layouts do not render -properly. We hope to resolve these issues soon with next generation -Hosted Mode Browser aka OOPHM or with minor hacks to the client side -code.</p> - -<h2 id="MinorChanges">Miscellaneous Changes and Enhancements</h2> - -<p>Version 5.3 also contains a large number (more than 200) of small -changes, which might not be worth mentioning in the release notes, but -below are some of them.</p> - -<ul> - <li>A new sub-window theme</li> - <li>The HTML structure of <b>TabSheet</b> has changed</li> - <li>Better shadow support for overlay elements</li> - <li>Row and column icons for <b>Table</b></li> - <li>New component: <b>PopupPanel</b>/<B>PopupView</b></li> - <li>Theme changing on-the-fly</li> - <li><b>Table</b> cellstyle and rowstyle generators</li> - <li>New component: <b>MenuBar</b></li> - <li>Security: double-cookie submission pattern</li> - <li>Low-level support for bookmarking and history</li> - <li>Sub-windows can be centered on screen. Modal windows are - centered automatically</li> - <li>The <b>Link</b> component now behaves like a normal "weblink"</li> -</ul> - -<p>The <version></version> release of IT Mill Toolkit includes new -features and a large number of fixes to problems compared to the older -5.2.x version. Major enhancements and dozens of bug fixes have been -implemented. Only the most significant issues are mentioned here.</p> - -<p>For up-to-date status of known problems, see the developer -website <a href="http://dev.itmill.com/">dev.itmill.com</a>.</p> - <h2>Package for the experimental GWT Out-of-Process Hosted Mode</h2> <p>We provide a separate (platform independent) installation package @@ -294,7 +56,7 @@ debugging purposes during development. For production use, you should compile your custom widget sets with the regular IT Mill Toolkit package for your platform.</p> -<h2>Important known problems in <version></version></h2> +<h2>Important known problems in @version@</h2> <ul> <li><a href="http://dev.itmill.com/ticket/1155">#1155</a> diff --git a/build/build-www.itmill.com.xml b/build/build-www.itmill.com.xml deleted file mode 100644 index e983908446..0000000000 --- a/build/build-www.itmill.com.xml +++ /dev/null @@ -1,192 +0,0 @@ -<?xml version="1.0"?> - -<project name="www.itmill.com" basedir="../" default="site"> - - <target name="site" depends="clean-all, manual-html, tutorial-html" /> - - <target name="init"> - - <!-- Create result dir unless already exists --> - <mkdir dir="build/result" /> - - <property file="build/VERSION.properties" /> - <property name="product-file" value="itmill-toolkit" /> - <property name="product-name" value="IT Mill Toolkit" /> - <property name="toolkit-package" value="com/itmill/toolkit" /> - - <property file="build/html-style.properties" /> - - <!-- Destination files --> - <property name="package-file-name" value="${product-file}-${version}.zip" /> - <property name="lib-bin-jar-name" value="${product-file}-${version}.jar" /> - <property name="demo-lib-jar-name" value="${product-file}-demo-${version}.jar" /> - <property name="lib-src-jar-name" value="${product-file}-src-${version}.jar" /> - <property name="themes-jar-name" value="${product-file}-themes-${version}.jar" /> - <property name="demo-war-name" value="${product-file}-demo-${version}.war" /> - - <echo message="Prepared to build www.itmill.com html files" /> - - </target> - - <!-- ================================================================== --> - <!-- Build Reference Manual. --> - <!-- ================================================================== --> - - <!-- Initialize properties especially for the Reference Manual. --> - <target name="init-manual" depends=""> - <!-- Sets the current date as the publication date of the Manual. --> - <tstamp> - <format property="manual.pubdate" pattern="yyyy-MM-dd"/> - </tstamp> - </target> - - <target name="manual-html" depends="init, init-manual"> - <echo message="Building manual" /> - <mkdir dir="build/result/www.itmill.com/manual" /> - <delete file="build/docbook/conf/temp.xsl" /> - <copy file="build/docbook/www.itmill.com/custom-www.itmill.com-docbook.xsl" tofile="build/docbook/conf/temp.xsl"> - - <filterchain> - <replacetokens> - <token key="BODYHEADER" value="${www.manual.body.start1}${www.manual.docbook.head.title}${www.manual.body.start2}" /> - <token key="BODYFOOTER" value="${www.manual.body.end}" /> - </replacetokens> - </filterchain> - </copy> - <path id="docbook-xsl.classpath"> - <pathelement path="build/lib/fserializer.jar" /> - <pathelement path="build/lib/xalan.jar" /> - <pathelement path="build/lib/xercesImpl.jar" /> - <pathelement path="build/lib/xml-apis.jar" /> - </path> - <java classname="org.apache.xalan.xslt.Process" failonerror="yes" fork="yes" maxmemory="1300m"> - <arg value="-in" /> - <arg value="doc/manual/book.xml" /> - <arg value="-xsl" /> - <arg value="build/docbook/conf/temp.xsl" /> - <arg value="-out" /> - <arg value="build/result/www.itmill.com/manual/index.html" /> - <arg value="-param" /> - <arg value="section.autolabel" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="section.label.includes.component.label" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="section.autolabel.max.depth" /> - <arg value="2" /> - <arg value="-param" /> - <arg value="use.extensions" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="manual.pubdate" /> - <arg value="${manual.pubdate}" /> - <arg value="-param" /> - <arg value="manual.version" /> - <arg value="${version}" /> - <classpath refid="docbook-xsl.classpath" /> - </java> - <delete file="build/docbook/conf/temp.xsl" /> - <copy todir="build/result/www.itmill.com/manual/img"> - <fileset dir="doc/manual/img"> - <exclude name="**/.svn" /> - </fileset> - </copy> - <!-- rename to JSP --> - <move todir="build/result/www.itmill.com/manual"> - <fileset dir="build/result/www.itmill.com/manual"> - <include name="*.html" /> - </fileset> - <mapper type="glob" from="*.html" to="*.jsp" /> - </move> - <!-- make a zip file --> - <zip destfile="build/result/www.itmill.com/itmill-toolkit-5-manual.zip" basedir="build/result/www.itmill.com/manual" /> - </target> - - <!-- ================================================================== --> - <!-- Build Application Tutorial. --> - <!-- ================================================================== --> - - <!-- Initialize properties especially for the Tutorial. --> - <target name="init-tutorial" depends=""> - <!-- Sets the current date as the publication date of the Tutorial. --> - <tstamp> - <format property="tutorial.pubdate" pattern="yyyy-MM-dd"/> - </tstamp> - - <mkdir dir="build/result/www.itmill.com/tutorial" /> - </target> - - <target name="tutorial-html" depends="init, init-tutorial"> - <echo message="Building tutorial" /> - <echo>Publication date is ${tutorial.pubdate}</echo> - - <delete file="build/docbook/conf/temp-tutorial.xsl" /> - <copy file="build/docbook/www.itmill.com/custom-www.itmill.com-docbook.xsl" tofile="build/docbook/conf/temp-tutorial.xsl"> - - <filterchain> - <replacetokens> - <token key="BODYHEADER" value="${www.manual.body.start1}${www.manual.docbook.head.title}${www.manual.body.start2}" /> - <token key="BODYFOOTER" value="${www.manual.body.end}" /> - </replacetokens> - </filterchain> - </copy> - <path id="docbook-xsl.classpath"> - <pathelement path="build/lib/fserializer.jar" /> - <pathelement path="build/lib/xalan.jar" /> - <pathelement path="build/lib/xercesImpl.jar" /> - <pathelement path="build/lib/xml-apis.jar" /> - </path> - <java classname="org.apache.xalan.xslt.Process" failonerror="yes" fork="yes" maxmemory="512m"> - <arg value="-in" /> - <arg value="doc/tutorial/tutorial.xml" /> - <arg value="-xsl" /> - <arg value="build/docbook/conf/temp-tutorial.xsl" /> - <arg value="-out" /> - <arg value="build/result/www.itmill.com/tutorial/index.html" /> - <arg value="-param" /> - <arg value="section.autolabel" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="section.label.includes.component.label" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="section.autolabel.max.depth" /> - <arg value="2" /> - <arg value="-param" /> - <arg value="use.extensions" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="manual.pubdate" /> - <arg value="${tutorial.pubdate}" /> - <arg value="-param" /> - <arg value="manual.version" /> - <arg value="${version}" /> - <classpath refid="docbook-xsl.classpath" /> - </java> - <delete file="build/docbook/conf/temp-tutorial.xsl" /> - <copy todir="build/result/www.itmill.com/tutorial/img"> - <fileset dir="doc/tutorial/img"> - <exclude name="**/.svn" /> - </fileset> - </copy> - <!-- rename to JSP --> - <move todir="build/result/www.itmill.com/tutorial"> - <fileset dir="build/result/www.itmill.com/tutorial"> - <include name="*.html" /> - </fileset> - <mapper type="glob" from="*.html" to="*.jsp" /> - </move> - <!-- make a zip file --> - <zip destfile="build/result/www.itmill.com//itmill-toolkit-5-tutorial.zip" basedir="build/result/www.itmill.com/tutorial" /> - </target> - - <!-- Clean results - - - - - - - - - - - - - - - - - - - - - - - - - --> - <target name="clean-all" depends=""> - <delete includeemptydirs="true" defaultexcludes="false"> - <fileset dir="build/result" includes="**/*" /> - </delete> - <delete file="build/docbook/conf/temp.xsl" /> - </target> - -</project> diff --git a/build/build.properties b/build/build.properties index 3580fe286d..7ae42f9f23 100644 --- a/build/build.properties +++ b/build/build.properties @@ -1,4 +1,5 @@ result-path=build/result +checkout-path=build/checkout product-file=itmill-toolkit product-name=IT Mill Toolkit toolkit-package=com/itmill/toolkit diff --git a/build/build.xml b/build/build.xml index 04b96fe430..06bcd3fb79 100644 --- a/build/build.xml +++ b/build/build.xml @@ -1,6 +1,9 @@ <?xml version="1.0"?> -<project name="IT Mill Toolkit" basedir="../" default="package-all"> +<project + xmlns:antcontrib="antlib:net.sf.antcontrib" + name="IT Mill Toolkit" + basedir="../" default="package-all"> <!-- Package creation - - - - - - - - - - - - - - - - - - - - - - - - - @@ -38,36 +41,44 @@ <target name="package-all" depends="clean-all, package-init, init, build, docs, internal-package-mac, internal-package-windows, internal-package-linux, internal-package-war" description="Build public packages for Windows, Linux and Mac platforms."> </target> - <target name="package-mac" depends="clean-all, package-init, init, build, docs, internal-package-mac" description="Create public tar.gz package for Mac."> + <target name="package-mac" depends="clean-result, package-init, init, build, docs, internal-package-mac" description="Create public tar.gz package for Mac."> </target> - <target name="package-windows" depends="clean-all, package-init, init, build, docs, internal-package-windows" description="Create public ZIP package for Windows."> + <target name="package-windows" depends="clean-result, package-init, init, build, docs, internal-package-windows" description="Create public ZIP package for Windows."> </target> - <target name="package-linux" depends="clean-all, package-init, init, build, docs, internal-package-linux" description="Create public tar.bz2 package for Linux."> + <target name="package-linux" depends="clean-result, package-init, init, build, docs, internal-package-linux" description="Create public tar.bz2 package for Linux."> </target> - <target name="package-oophm" depends="clean-all, package-init, init-oophm, build, docs, internal-package-oophm" description="Create public tar.gz package for OOPHM."> + <target name="package-oophm" depends="clean-result, package-init, init-oophm, build, docs, internal-package-oophm" description="Create public tar.gz package for OOPHM."> </target> - <target name="package-jar" depends="clean-all, package-init, init, libs" description="Create itmill-toolkit-x.y.z.jar file."> + <target name="package-jar" depends="clean-result, package-init, init, libs" description="Create itmill-toolkit-x.y.z.jar file."> </target> - <target name="package-war" depends="clean-all, package-init, init, build, docs, internal-package-mac, internal-package-war"> + <target name="package-war" depends="clean-result, package-init, init, build, docs, internal-package-mac, internal-package-war"> </target> - <target name="nightly" depends="clean-all, nightly-init, package-init, init, libs, nightly-install"> + <target name="package-test" depends="clean-result, nightly-init, package-init, init, build, docs, internal-package-linux, nightly-install"> </target> + <!-- ant contrib required for flow control (for loop, if, property override) --> + <!-- Note that we have to use a namespace to avoid clash when running sub-ant. --> + <taskdef uri="antlib:net.sf.antcontrib" resource="net/sf/antcontrib/antlib.xml"> + <classpath> + <pathelement location="build/lib/ant-contrib-1.0b3.jar" /> + </classpath> + </taskdef> + <!-- internal tests for packaging --> - <target name="test-build" depends="clean-all, init, build" description="used for testing build.xml"> + <target name="test-build" depends="clean-result, init, build" description="used for testing build.xml"> </target> <target name="test-package" depends="init" description="used for testing build.xml"> <echo>Creating package for Mac platform.</echo> - <var name="package-platform" value="mac" /> - <var name="eclipse-launch-vmargs" value="-XstartOnFirstThread -Xms128M -Xmx512M" /> + <antcontrib:var name="package-platform" value="mac" /> + <antcontrib:var name="eclipse-launch-vmargs" value="-XstartOnFirstThread -Xms128M -Xmx512M" /> <antcall target="add-platform-specific-files" inheritAll="true" inheritRefs="true" /> <delete file="${result-path}/eclipse-test" followsymlinks="false" /> <exec executable="ln" failonerror="false"> @@ -88,32 +99,43 @@ </target> <!-- Clean results - - - - - - - - - - - - - - - - - - - - - - - - - --> - <target name="clean-all" depends=""> + <target name="clean-result" depends=""> <property file="build/build.properties" /> - <delete dir="${result-path}" includes="**/*" followsymlinks="false" defaultexcludes="false" includeemptydirs="true" failonerror="false"> - </delete> + + <!-- Clean build result directory. --> + <delete dir="${result-path}" includes="**/*" followsymlinks="false" defaultexcludes="false" includeemptydirs="true" failonerror="false"/> + </target> + + <!-- Clean checkout directory. --> + <target name="clean-checkout" depends=""> + <property file="build/build.properties" /> + + <delete dir="${checkout-path}" includes="**/*" followsymlinks="false" defaultexcludes="false" includeemptydirs="true" failonerror="false"/> </target> + <target name="clean-all" depends="clean-result, clean-checkout"> + </target> + <!-- Find out which platform we are in --> <target name="init-platform"> - <if> + <antcontrib:if> <contains string="${os.name}" substring="Windows" /> <then> <property name="platform" value="windows" /> </then> - </if> - <if> + </antcontrib:if> + <antcontrib:if> <equals arg1="${os.name}" arg2="Linux" /> <then> <property name="platform" value="linux" /> </then> - </if> - <if> + </antcontrib:if> + <antcontrib:if> <equals arg1="${os.name}" arg2="Mac OS X" /> <then> <property name="platform" value="mac" /> </then> - </if> + </antcontrib:if> </target> <target name="init-oophm-platform"><property name="platform" value="oophm" /></target> @@ -215,12 +237,13 @@ <pathelement path="${gwt-dir}/${platform}/gwt-user.jar" /> <pathelement path="${gwt-dir}/${platform}/${lib-gwt-dev}" /> </path> + </target> <target name="internal-package-windows"> - <var name="package-platform" value="windows" /> + <antcontrib:var name="package-platform" value="windows" /> <echo>Creating package for ${package-platform} platform.</echo> - <var name="eclipse-launch-vmargs" value="-Xms256M -Xmx512M" /> + <antcontrib:var name="eclipse-launch-vmargs" value="-Xms256M -Xmx512M" /> <antcall target="add-platform-specific-files" inheritAll="true" inheritRefs="true" /> <zip zipfile="${result-path}/${product-file}-${package-platform}-${version}.zip"> <zipfileset prefix="${product-file}-${package-platform}-${version}" dir="${result-path}/${product-file}-${version}"> @@ -237,9 +260,9 @@ </target> <target name="internal-package-linux"> - <var name="package-platform" value="linux" /> + <antcontrib:var name="package-platform" value="linux" /> <echo>Creating package for ${package-platform} platform.</echo> - <var name="eclipse-launch-vmargs" value="-Xms256M -Xmx512M" /> + <antcontrib:var name="eclipse-launch-vmargs" value="-Xms256M -Xmx512M" /> <antcall target="add-platform-specific-files" inheritAll="true" inheritRefs="true" /> <tar destfile="${result-path}/${product-file}-${package-platform}-${version}.tar.gz" compression="gzip" longfile="gnu"> <!-- TODO use very slow but effective bzip2 @@ -259,9 +282,9 @@ </target> <target name="internal-package-oophm"> - <var name="package-platform" value="oophm" /> + <antcontrib:var name="package-platform" value="oophm" /> <echo>Creating package for ${package-platform} platform.</echo> - <var name="eclipse-launch-vmargs" value="-Xms256M -Xmx512M" /> + <antcontrib:var name="eclipse-launch-vmargs" value="-Xms256M -Xmx512M" /> <antcall target="add-platform-specific-files" inheritAll="true" inheritRefs="true" /> <tar destfile="${result-path}/${product-file}-${package-platform}-${version}.tar.gz" compression="gzip" longfile="gnu"> <tarfileset prefix="${product-file}-${package-platform}-${version}" dir="${result-path}/${product-file}-${version}"> @@ -278,9 +301,9 @@ </target> <target name="internal-package-mac"> - <var name="package-platform" value="mac" /> + <antcontrib:var name="package-platform" value="mac" /> <echo>Creating package for ${package-platform} platform.</echo> - <var name="eclipse-launch-vmargs" value="-XstartOnFirstThread -Xms256M -Xmx512M" /> + <antcontrib:var name="eclipse-launch-vmargs" value="-XstartOnFirstThread -Xms256M -Xmx512M" /> <antcall target="add-platform-specific-files" inheritAll="true" inheritRefs="true" /> <tar destfile="${result-path}/${product-file}-${package-platform}-${version}.tar.gz" compression="gzip" longfile="gnu"> <tarfileset prefix="${product-file}-${package-platform}-${version}" dir="${result-path}/${product-file}-${version}"> @@ -313,7 +336,7 @@ <property name="mount.dir" value="${result-path}/mac-mounted-image" /> <mkdir dir="${mount.dir}" /> <delete file="${result-path}/*.dmg" /> - <if> + <antcontrib:if> <equals arg1="${platform}" arg2="mac" /> <then> <untar src="${result-path}/${product-file}-${package-platform}-${version}.tar.gz" dest="${result-path}/" compression="gzip" /> @@ -371,7 +394,7 @@ <arg line='internet-enable ${result-path}/${product-file}-${package-platform}-${version}.dmg' /> </exec> </then> - </if> + </antcontrib:if> </target> <target name="add-platform-specific-files"> @@ -390,13 +413,11 @@ <copy todir="${output-dir}"> <filterchain> <expandproperties /> - <replacetokens begintoken="<" endtoken=">"> + <replacetokens begintoken="@" endtoken="@"> <token key="version" value="${version}" /> - <token key="/version" value="" /> </replacetokens> - <replacetokens begintoken="<" endtoken=">"> + <replacetokens begintoken="@" endtoken="@"> <token key="platform" value="${package-platform}" /> - <token key="/platform" value="" /> </replacetokens> </filterchain> <fileset dir="WebContent/license"> @@ -406,11 +427,11 @@ <copy todir="${output-dir}/WebContent"> <filterchain> <expandproperties /> - <replacetokens begintoken="<" endtoken=">"> + <replacetokens begintoken="@" endtoken="@"> <token key="version" value="${version}" /> <token key="/version" value="" /> </replacetokens> - <replacetokens begintoken="<" endtoken=">"> + <replacetokens begintoken="@" endtoken="@"> <token key="platform" value="${package-platform}" /> <token key="/platform" value="" /> </replacetokens> @@ -447,9 +468,9 @@ <token key="/platform-specific-entries" value="" /> </replacetokens> <!-- .classpath, HostedMode.launch, build-widgetset.xml --> - <replacetokens begintoken="<" endtoken=">"> + <!-- We can't use XML notation for this, because it can be inside an attribute definition. --> + <replacetokens begintoken="@" endtoken="@"> <token key="platform" value="${package-platform}" /> - <token key="/platform" value="" /> </replacetokens> <!-- .project, *.launch --> <replacetokens begintoken="<" endtoken=">"> @@ -479,7 +500,7 @@ <mkdir dir="${output-dir}/.settings" /> <move file="${output-dir}/eclipse-org.eclipse.core.resources.prefs" tofile="${output-dir}/.settings/org.eclipse.core.resources.prefs" /> <move file="${output-dir}/eclipse-org.eclipse.jdt.core.prefs" tofile="${output-dir}/.settings/org.eclipse.jdt.core.prefs" /> - <if> + <antcontrib:if> <equals arg1="${package-platform}" arg2="windows" /> <then> <copy todir="${output-dir}"> @@ -488,8 +509,8 @@ </fileset> </copy> </then> - </if> - <if> + </antcontrib:if> + <antcontrib:if> <equals arg1="${package-platform}" arg2="linux" /> <then> <copy todir="${output-dir}"> @@ -503,8 +524,8 @@ <arg line="${output-dir}/start.sh" /> </exec> </then> - </if> - <if> + </antcontrib:if> + <antcontrib:if> <equals arg1="${package-platform}" arg2="oophm" /> <then> <copy todir="${output-dir}"> @@ -518,8 +539,8 @@ <arg line="${output-dir}/start.sh" /> </exec> </then> - </if> - <if> + </antcontrib:if> + <antcontrib:if> <equals arg1="${package-platform}" arg2="mac" /> <then> <copy todir="${output-dir}"> @@ -552,7 +573,7 @@ <arg line="${output-dir}/start.sh" /> </exec> </then> - </if> + </antcontrib:if> </target> <target name="build" depends="libs, compile-client-side, demo" description="Build package required files, without packing them."> @@ -934,16 +955,56 @@ </copy> </target> - <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> - <target name="docs" depends="javadoc,manual-pdf,manual-html,package-docs"> + <!-- ================================================================== --> + <!-- Documentation --> + <!-- ================================================================== --> + <target name="docs" depends="init, manual"> </target> + <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> + <!-- Manual: Build from external repository. --> + <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> - <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Documentation: Add documentation including style files - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> + <!-- Checkout doc repository. --> + <target name="manual-checkout" unless="docdir"> + <mkdir dir="${checkout-path}"/> + + <exec executable="svn" dir="${checkout-path}"> + <arg value="checkout"/> + <arg value="http://dev.itmill.com/svn/doc/trunk"/> + <arg value="doc"/> + </exec> + + <property name="docdir" value="${checkout-path}/doc"/> + + <!-- If we have a XEP license, copy it to proper place. --> + <copy file="/opt/RenderX/XEP/license.xml" todir="${docdir}/build/lib/XEP"/> + </target> + + <!-- Build manual. --> + <target name="manual-build"> + <ant dir="${docdir}" antfile="build/build.xml" inheritAll="false"> + <property name="version" value="${version}"/> + </ant> + </target> + + <!-- Copy the manual from sub Ant results to our output directory. --> + <target name="manual-copy" depends="init, manual-checkout"> + <copy todir="${output-dir}/WebContent/doc"> + <fileset dir="${docdir}/build/result/package/WebContent/doc"> + <exclude name="**/.svn" /> + <include name="manual/**" /> + <include name="manual.pdf" /> + </fileset> + </copy> + </target> + + <target name="manual" depends="init, manual-checkout, manual-build, manual-copy"> + </target> + + <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> + <!-- Documentation: Add documentation including style files --> + <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> <target name="package-docs"> <copy todir="${output-dir}/WebContent/doc/manual/html-style"> <fileset dir="doc/manual/html-style"> @@ -959,10 +1020,9 @@ </copy> </target> - - <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Documentation: Add Javadoc to doc - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> + <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> + <!-- Documentation: Add Javadoc to doc --> + <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> <target name="javadoc" depends="preprocess-src"> <javadoc destdir="${output-dir}/WebContent/doc/api" author="true" version="true" use="true" windowtitle="${product-name}" classpathref="compile.classpath.client-side"> <packageset dir="${result-path}/src"> @@ -979,390 +1039,6 @@ </javadoc> </target> - - <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Documentation: Add book part 2 (TBD) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> - <target name="book-part2" depends="dbdoclet"> - <!-- TODO Add XSLT to transform dbdoclet results to book part 2 --> - </target> - - - <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Documentation: Add manual - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> - <target name="dbdoclet" depends="preprocess-src"> - <echo>Manual: DocBookDoclet</echo> - <javadoc access="public" charset="UTF-8" docencoding="UTF-8" encoding="ISO-8859-15" failonerror="yes" maxmemory="512m" source="1.5"> - <packageset dir="${result-path}/src"> - <include name="${toolkit-package}/**" /> - <exclude name="${toolkit-package}/demo/**" /> - <exclude name="${toolkit-package}/tests/**/*" /> - </packageset> - <doclet name="org.dbdoclet.doclet.docbook.DocBookDoclet" path="build/lib/jdk${java.specification.version}/dbdoclet.jar"> - <param name="-d" value="result/docbook" /> - </doclet> - </javadoc> - </target> - - <!-- ================================================================== --> - <!-- Build Reference Manual. --> - <!-- ================================================================== --> - - <!-- Initialize properties especially for the Reference Manual. --> - <target name="init-manual" depends=""> - <!-- Sets the current date as the publication date of the Manual. --> - <tstamp> - <format property="manual.pubdate" pattern="yyyy-MM-dd"/> - </tstamp> - - <!-- Classpath for running the XSLT processor. --> - <path id="docbook-xsl.classpath"> - <pathelement path="build/lib/fserializer.jar" /> - <pathelement path="build/lib/xalan.jar" /> - <pathelement path="build/lib/xercesImpl.jar" /> - <pathelement path="build/lib/xml-apis.jar" /> - </path> - </target> - - <!-- Build PDF manual from sources or just copy it. --> - <target name="manual-pdf" depends="init, init-manual, build-manual-pdf, copy-manual-pdf"> - </target> - - <!-- Just copy a prebuilt PDF manual. --> - <target name="copy-manual-pdf" unless="xep.license.available"> - <echo>PDF Manual: No XEP license available, just copy a prebuilt PDF.</echo> - <copy file="doc/manual/book.pdf" tofile="${output-dir}/WebContent/doc/manual.pdf" /> - </target> - - <!-- XEP-based FO building --> - <target name="build-manual-pdf" if="xep.license.available"> - <echo>PDF Manual: processing images (TBD)</echo> - <!-- TBD --> - <echo>PDF Manual: converting xml to fo</echo> - - <echo>Publication date is ${manual.pubdate}</echo> - - <java classname="org.apache.xalan.xslt.Process" failonerror="yes" fork="yes" maxmemory="512m"> - <arg value="-xsl" /> - <arg value="build/docbook/conf/custom-fo-docbook.xsl" /> - <arg value="-in" /> - <arg value="doc/manual/book.xml" /> - <arg value="-out" /> - <arg value="${result-path}/book.fo" /> - <arg value="-param" /> - <arg value="section.autolabel" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="section.label.includes.component.label" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="section.autolabel.max.depth" /> - <arg value="2" /> - <arg value="-param" /> - <arg value="draft.watermark.image" /> - <arg value="''" /> - <arg value="-param" /> - <arg value="draft.mode" /> - <arg value="'no'" /> - <arg value="-param" /> - <arg value="double.sided" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="manual.pubdate" /> - <arg value="${manual.pubdate}" /> - <arg value="-param" /> - <arg value="manual.version" /> - <arg value="${version}" /> - <classpath refid="docbook-xsl.classpath" /> - </java> - <echo>PDF Manual: converting fo to pdf</echo> - <!-- Run XEP FO processor to convert FO to PDF --> - <java classname="com.renderx.xep.XSLDriver" error="${result-path}/xep-error.log" failonerror="yes" fork="yes" maxmemory="512m" input="${result-path}/book.fo" output="${output-dir}/WebContent/doc/manual.pdf"> - <arg value="-Dcom.renderx.xep.CONFIG=build/lib/XEP/xep.xml" /> - <classpath> - <pathelement location="build/lib/XEP/lib/tools.jar" /> - <pathelement location="build/lib/XEP/lib/xep.jar" /> - <pathelement location="build/lib/XEP/lib/saxon.jar" /> - <pathelement location="build/lib/XEP/lib/xt.jar" /> - </classpath> - </java> - </target> - - <!-- Common initialization tasks for a HTML manual. --> - <!-- Some properties must be defined in the more specific HTML manual initialization. --> - <target name="init-manual-html-common" depends="preprocess-src"> - <!-- Create the manual output directory if it doesn't already exist. --> - <mkdir dir="${manual.html.output.dir}"/> - - <property name="manual.html.xsl.template" value="build/docbook/conf/custom-html-template.xsl"/> - <property name="manual.html.xsl.processed" value="build/docbook/conf/custom-html-processed.xsl"/> - - <!-- Replace tags in the HTML stylesheet template. --> - <delete file="${manual.html.xsl.processed}" /> - <copy file="${manual.html.xsl.template}" tofile="${manual.html.xsl.processed}"> - <filterchain> - <replacetokens> - <token key="BODYHEADER" value="${html.body.start1}${docbook.head.title}${html.body.start2}" /> - <token key="BODYFOOTER" value="${html.body.end}" /> - </replacetokens> - </filterchain> - </copy> - </target> - - <target name="manual-html-build" depends="init-manual-html, init-manual-html-common"> - <java classname="org.apache.xalan.xslt.Process" failonerror="yes" fork="yes" maxmemory="512m"> - <arg value="-in" /> - <arg value="doc/manual/book.xml" /> - <arg value="-xsl" /> - <arg value="${manual.html.xsl}" /> - <!-- The output file will be empty for eclipse plugin. --> - <arg value="-out" /> - <arg value="${manual.html.output.index}" /> - <arg value="-param" /> - <arg value="section.autolabel" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="section.label.includes.component.label" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="section.autolabel.max.depth" /> - <arg value="2" /> - <arg value="-param" /> - <arg value="use.extensions" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="manual.pubdate" /> - <arg value="${manual.pubdate}" /> - <arg value="-param" /> - <arg value="manual.version" /> - <arg value="${version}" /> - <!-- This is needed only for the Eclipse Help plugin. --> - <arg value="-param" /> - <arg value="eclipse.plugin.version" /> - <arg value="${eclipse.plugin.manual.version}" /> - <classpath refid="docbook-xsl.classpath" /> - </java> - - <delete file="${manual.html.xsl.processed}" /> - <copy todir="${output-dir}/WebContent/doc/eclipse/img"> - <fileset dir="doc/manual/img"> - <exclude name="**/.svn" /> - </fileset> - </copy> - </target> - - <!-- Configuration for building the regular HTML manual. --> - <target name="init-manual-html" depends="init, init-manual"> - <property name="manual.html.xsl" value="build/docbook/conf/manual-html.xsl"/> - <property name="manual.html.output.dir" value="${output-dir}/WebContent/doc/manual"/> - <property name="manual.html.output.index" value="${manual.html.output.dir}/index.html"/> - - <property name="output-dir-manual" value="${output-dir}/WebContent/doc/manual" /> - - <echo>Manual: HTML</echo> - <echo>Published: ${manual.pubdate}</echo> - </target> - - <target name="manual-html" depends="init, init-manual, init-manual-html, init-manual-html-common, manual-html-build"> - </target> - - <!-- ant contrib required for flow control (for loop, if, property override) --> - <taskdef resource="net/sf/antcontrib/antlib.xml"> - <classpath> - <pathelement location="build/lib/ant-contrib-1.0b3.jar" /> - </classpath> - </taskdef> - - <!-- java2html converter --> - <taskdef name="java2html" classname="de.java2html.anttasks.Java2HtmlTask" classpath="build/lib/java2html.jar" /> - - <target name="init-manual-eclipse" depends=""> - <!-- Timestamp in YYYYMMDDHHMM format for plugin version number. --> - <tstamp> - <format property="eclipse.plugin.manual.pubtime" pattern="yyyyMMddkkmm"/> - </tstamp> - - <property name="eclipse.plugin.manual.version" value="${version}.v${eclipse.plugin.manual.pubtime}" /> - <echo>Manual: Eclipse Help Plugin (version ${eclipse.plugin.manual.version})</echo> - - <property name="manual.html.xsl" value="build/docbook/conf/manual-eclipse-plugin.xsl"/> - <property name="manual.html.output.dir" value="${output-dir}/WebContent/doc/eclipse"/> - <property name="manual.html.output.index" value="${manual.html.output.dir}/index-eclipse.html"/> - - <property name="output-dir-manual" value="${output-dir}/WebContent/doc/manual" /> - </target> - - <!-- Builds Eclipse Help plugin. Uses the manual-html-build target --> - <!-- to build the HTML content of the manual. --> - <target name="manual-eclipse" depends="init, init-manual, init-manual-eclipse, init-manual-html-common, manual-html-build"> - <!-- The index-eclipse.html file is empty. --> - <delete file="${manual.html.output.index}" /> - - <!-- Plugin JAR filename --> - <property name="eclipse.plugin.manual.jar-name" - value="com.itmill.toolkit.manual_${eclipse.plugin.manual.version}.jar" /> - - <!-- Package the JAR. --> - <jar jarfile="${output-dir}/${eclipse.plugin.manual.jar-name}" compress="true"> - <fileset dir="${manual.html.output.dir}"> - <patternset> - <include name="**/*" /> - </patternset> - </fileset> - <manifest> - <attribute name="Built-By" value="${user.name}"/> - <attribute name="Bundle-Name" value="IT Mill Toolkit Reference Manual"/> - <attribute name="Bundle-SymbolicName" value="com.itmill.toolkit.manual"/> - <attribute name="Bundle-Version" value="${eclipse.plugin.manual.version}"/> - <attribute name="Bundle-Vendor" value="IT Mill Inc."/> - </manifest> - </jar> - </target> - - <!-- ================================================================== --> - <!-- Build Application Tutorial. --> - <!-- ================================================================== --> - - <!-- Initialize properties especially for the Reference Tutorial. --> - <target name="init-tutorial" depends=""> - <!-- Sets the current date as the publication date of the Tutorial. --> - <tstamp> - <format property="tutorial.pubdate" pattern="yyyy-MM-dd"/> - </tstamp> - - <mkdir dir="${output-dir}/WebContent/doc/tutorial" /> - </target> - - <!-- Build PDF tutorial from sources or just copy it. --> - <target name="tutorial-pdf" depends="init, init-tutorial, build-tutorial-pdf, copy-tutorial-pdf"> - </target> - - <!-- Just copy a prebuilt PDF tutorial. --> - <target name="copy-tutorial-pdf" unless="xep.license.available"> - <echo>PDF Tutorial: No XEP license available, just copy a prebuilt PDF.</echo> - <copy file="doc/tutorial/itmill-toolkit-tutorial.pdf" tofile="${output-dir}/WebContent/doc/itmill-toolkit-tutorial.pdf" /> - </target> - - <!-- XEP-based FO building --> - <target name="build-tutorial-pdf" if="xep.license.available"> - <echo>PDF Tutorial: processing images (TBD)</echo> - <!-- TBD --> - <echo>PDF Tutorial: converting xml to fo</echo> - - <echo>Publication date is ${tutorial.pubdate}</echo> - - <java classname="org.apache.xalan.xslt.Process" failonerror="yes" fork="yes" maxmemory="512m"> - <arg value="-xsl" /> - <arg value="build/docbook/conf/custom-fo-docbook.xsl" /> - <arg value="-in" /> - <arg value="doc/tutorial/tutorial.xml" /> - <arg value="-out" /> - <arg value="${result-path}/itmill-toolkit-tutorial.fo" /> - <arg value="-param" /> - <arg value="section.autolabel" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="section.label.includes.component.label" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="section.autolabel.max.depth" /> - <arg value="2" /> - <arg value="-param" /> - <arg value="draft.watermark.image" /> - <arg value="''" /> - <arg value="-param" /> - <arg value="draft.mode" /> - <arg value="'no'" /> - <arg value="-param" /> - <arg value="double.sided" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="manual.pubdate" /> - <arg value="${tutorial.pubdate}" /> - <arg value="-param" /> - <arg value="manual.version" /> - <arg value="${version}" /> - <classpath> - <pathelement location="build/lib/xalan.jar" /> - <pathelement location="build/lib/xercesImpl.jar" /> - <pathelement location="build/lib/xml-apis.jar" /> - </classpath> - </java> - <echo>PDF Tutorial: converting fo to pdf</echo> - <!-- Run XEP FO processor to convert FO to PDF --> - <java classname="com.renderx.xep.XSLDriver" error="${result-path}/xep-error.log" failonerror="yes" fork="yes" maxmemory="512m" input="${result-path}/itmill-toolkit-tutorial.fo" output="${output-dir}/WebContent/doc/itmill-toolkit-tutorial.pdf"> - <arg value="-Dcom.renderx.xep.CONFIG=build/lib/XEP/xep.xml" /> - <classpath> - <pathelement location="build/lib/XEP/lib/tools.jar" /> - <pathelement location="build/lib/XEP/lib/xep.jar" /> - <pathelement location="build/lib/XEP/lib/saxon.jar" /> - <pathelement location="build/lib/XEP/lib/xt.jar" /> - </classpath> - </java> - </target> - - <target name="tutorial-html" depends="init, init-tutorial, preprocess-src"> - <echo>Tutorial: HTML</echo> - <echo>Publication date is ${tutorial.pubdate}</echo> - - <delete file="build/docbook/conf/temp.xsl" /> - <copy file="build/docbook/conf/custom-html-docbook.xsl" tofile="build/docbook/conf/temp.xsl"> - <filterchain> - <replacetokens> - <token key="BODYHEADER" value="${html.body.start1}${docbook.head.title}${html.body.start2}" /> - <token key="BODYFOOTER" value="${html.body.end}" /> - </replacetokens> - </filterchain> - </copy> - <path id="docbook-xsl.classpath"> - <pathelement path="build/lib/fserializer.jar" /> - <pathelement path="build/lib/xalan.jar" /> - <pathelement path="build/lib/xercesImpl.jar" /> - <pathelement path="build/lib/xml-apis.jar" /> - </path> - <java classname="org.apache.xalan.xslt.Process" failonerror="yes" fork="yes" maxmemory="512m"> - <arg value="-in" /> - <arg value="doc/tutorial/tutorial.xml" /> - <arg value="-xsl" /> - <arg value="build/docbook/conf/temp.xsl" /> - <arg value="-out" /> - <arg value="${output-dir}/WebContent/doc/tutorial/index.html" /> - <arg value="-param" /> - <arg value="section.autolabel" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="section.label.includes.component.label" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="section.autolabel.max.depth" /> - <arg value="2" /> - <arg value="-param" /> - <arg value="use.extensions" /> - <arg value="1" /> - <arg value="-param" /> - <arg value="manual.pubdate" /> - <arg value="${tutorial.pubdate}" /> - <arg value="-param" /> - <arg value="manual.version" /> - <arg value="${version}" /> - <classpath refid="docbook-xsl.classpath" /> - </java> - <delete file="build/docbook/conf/temp.xsl" /> - <copy todir="${output-dir}/WebContent/doc/tutorial/img"> - <fileset dir="doc/tutorial/img"> - <exclude name="**/.svn" /> - </fileset> - </copy> - </target> - - <!-- ant contrib required for flow control (for loop, if, property override) --> - <taskdef resource="net/sf/antcontrib/antlib.xml"> - <classpath> - <pathelement location="build/lib/ant-contrib-1.0b3.jar" /> - </classpath> - </taskdef> - <!-- java2html converter --> <taskdef name="java2html" classname="de.java2html.anttasks.Java2HtmlTask" classpath="build/lib/java2html.jar" /> @@ -1370,6 +1046,10 @@ <!-- Nightly build. --> <!-- ================================================================== --> + <!-- Main target for the nightly build. --> + <target name="nightly" depends="clean-result, nightly-init, package-init, init, build, internal-package-linux, nightly-install"> + </target> + <!-- Create symlink to GWT installation directory. --> <target name="gwt-symlink"> @@ -1416,6 +1096,7 @@ <!-- Tell TeamCity the build name. Have to do it this way, because --> <!-- this script needs to get the plain build number as a parameter. --> <echo>##teamcity[buildNumber '${version.minor}-c${build.number}']</echo> + </target> <target name="nightly-teamcity-publish"> @@ -1423,15 +1104,20 @@ <echo>##teamcity[publishArtifacts '${output-dir}/WebContent/WEB-INF/lib/${lib-jar-name}']</echo> </target> - <!-- Copies the nightly build results to the download server. --> + <!-- Copies the nightly build artifacts to the download server. --> <target name="nightly-download-publish" if="nightly.publish"> <!-- Publish to the download server. --> <echo>Installing ${output-dir}/WebContent/${lib-jar-name} to ${nightly.publish}</echo> <echo>Hopefully you have permissions for the copy operation with SSH.</echo> + <!-- The test task will need this. --> + <property name="package.linux.filename" value="${result-path}/${product-file}-${package-platform}-${version}.tar.gz"/> + + <!-- Copy the linux installation package and the JAR. --> <exec executable="scp" searchpath="true" resultproperty="nightly.install.scp.result"> <arg value="-B"/> <arg value="${output-dir}/WebContent/${lib-jar-name}"/> + <arg value="${package.linux.filename}"/> <arg value="${nightly.publish}"/> </exec> @@ -1441,11 +1127,17 @@ <target name="nightly-install" depends="nightly-teamcity-publish, nightly-download-publish"> </target> + <target name="testingtools-test"> + <!-- Run the separate test script. --> + <ant antfile="build/testing/test.xml" inheritall="true"> + </ant> + </target> + <!-- ================================================================== --> <!-- Automated tests. --> <!-- ================================================================== --> - <target name="tests"> + <target name="ant-tests"> <echo>##teamcity[testSuiteStarted name='com.itmill.toolkit.tests.test-framework']</echo> <!-- A smoke test for testing the testing framework. --> diff --git a/build/package/build-widgetset.xml b/build/package/build-widgetset.xml index ec400c2d70..2a82e5fd4b 100644 --- a/build/package/build-widgetset.xml +++ b/build/package/build-widgetset.xml @@ -31,13 +31,13 @@ See configure target to adjust this buildfile. <property name="base" value="../../../" /> <!-- which platform we are in, possible values are windows, linux and mac --> - <property name="gwt-platform" value="<platform></platform>" /> + <property name="gwt-platform" value="@platform@" /> <!-- where platform specific GWT distribution is located --> <property name="gwt-location" value="${base}gwt" /> <!-- where Toolkit jar is located --> - <property name="toolkit-jar-location" value="${base}WebContent/WEB-INF/lib/itmill-toolkit-<version></version>.jar" /> + <property name="toolkit-jar-location" value="${base}WebContent/WEB-INF/lib/itmill-toolkit-@version@.jar" /> <!-- where project client-side widgetset source files are located --> <property name="client-side-src-location" value="${base}WebContent/WEB-INF/src" /> diff --git a/build/package/eclipse-IT Mill Toolkit Hosted Mode-launch b/build/package/eclipse-IT Mill Toolkit Hosted Mode-launch index 3ae558420a..7479aeb801 100644 --- a/build/package/eclipse-IT Mill Toolkit Hosted Mode-launch +++ b/build/package/eclipse-IT Mill Toolkit Hosted Mode-launch @@ -2,7 +2,7 @@ <launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication"> <stringAttribute key="bad_container_name" value="/<eclipse-workspace-name></eclipse-workspace-name>/IT Mill Toolkit Hosted Mode.launch"/> <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> -<listEntry value="/<eclipse-workspace-name></eclipse-workspace-name>/gwt/gwt-dev-<platform></platform>.jar"/> +<listEntry value="/<eclipse-workspace-name></eclipse-workspace-name>/gwt/gwt-dev-@platform@.jar"/> </listAttribute> <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> <listEntry value="1"/> |