]> source.dussan.org Git - vaadin-framework.git/commitdiff
Updated build scripts to build only one platform-independent package (#3811). Updated...
authorMarko Grönroos <magi@iki.fi>
Mon, 11 Jan 2010 14:16:33 +0000 (14:16 +0000)
committerMarko Grönroos <magi@iki.fi>
Mon, 11 Jan 2010 14:16:33 +0000 (14:16 +0000)
svn changeset:10679/svn branch:6.3

WebContent/VAADIN/readme.txt
build/bin/package-diff.py
build/build.xml
build/package/build-widgetset.xml
build/package/eclipse-Vaadin Hosted Mode Browser-launch
build/package/linux-readme.txt [deleted file]
build/package/mac-DS_Store [deleted file]
build/package/mac-Start IT Mill Toolkit.zip [deleted file]
build/package/mac-Start-icon_script.zip [deleted file]
build/package/mac-VolumeIcon.icns [deleted file]
build/package/readme.txt [new file with mode: 0644]

index 926bc01a9ec98bd92409eb06f1295fb1dc167706..672862a35c909263a80c8e989f9fc43085ae2fa3 100644 (file)
@@ -29,8 +29,7 @@ Vaadin Development
 When developing the Vaadin Library itself, change to "build" directory and
 run "ant widgetsets" to compile all widgetsets or "ant widgetset-default",
 "ant-widgetset-reserver", or "ant widgetset-colorpicker" to compile individual
-widgetsets. You must have GWT installed under build/gwt, under the proper
-platform directory.
+widgetsets. You must have GWT installed under build/gwt.
 
 See http://dev.vaadin.com/wiki/DevDocs/StartingDevelopment for instructions for
 installing GWT and compiling widgetsets for Vaadin development.
index de479ca8b4d7bebfe365bd12102f6ffe7a1b9b9b..1f898e62bcbb7d0427228904f9a7fef0e4e0d7c0 100755 (executable)
@@ -1,6 +1,6 @@
 #!/usr/bin/python
 
-import sys,os
+import sys,os,re
 from sets import Set
 
 ################################################################################
@@ -45,6 +45,29 @@ def listfiles(archive):
 
        return cleanedfiles
 
+# For Zip archives in Vaadin 6.3.0
+def listZipFiles(archive):
+    pin = os.popen("unzip -l -qq %s | cut -c 29- | sort" % (archive), "r")
+    files = map(lambda x: x.strip(), pin.readlines())
+    pin.close()
+
+    cleanedfiles = []
+    for file in files:
+        # Remove archive file name from the file names
+        slashpos = file.find("/")
+        if slashpos != -1:
+            cleanedname = file[slashpos+1:]
+        else:
+            cleanedname = file
+
+        # Purge GWT compilation files.
+        if cleanedname.find(".cache.html") != -1:
+            continue
+        
+        cleanedfiles.append(cleanedname)
+
+    return cleanedfiles
+
 ################################################################################
 # Difference of two lists of files
 ################################################################################
@@ -59,9 +82,9 @@ def diffFiles(a, b):
 ################################################################################
 # Lists files inside a Zip file (a JAR)
 ################################################################################
-def listZipFiles(zipfile):
-       # Read the zip content listing
-       pin = os.popen("unzip -ql %s" % zipfile, "r")
+def listJarFiles(jarfile):
+       # Read the jar content listing
+       pin = os.popen("unzip -ql %s" % jarfile, "r")
        lines = map(lambda x: x[:-1], pin.readlines())
        pin.close()
 
@@ -77,15 +100,26 @@ def listZipFiles(zipfile):
 ################################################################################
 # Lists files inside a Vaadin Jar inside a Tar
 ################################################################################
+# For Vaadin 6.2 Tar
 def listTarVaadinJarFiles(tarfile, vaadinversion):
        jarfile = "vaadin-linux-%s/WebContent/vaadin-%s.jar" % (vaadinversion, vaadinversion)
        extractedjar = "/tmp/vaadinjar-tmp-%d.jar" % (os.getpid())
        tarcmd = "tar zOxf %s %s > %s " % (tarfile, jarfile, extractedjar)
        command (tarcmd)
-       files = listZipFiles(extractedjar)
+       files = listJarFiles(extractedjar)
        command ("rm %s" % (extractedjar))
        return files
 
+# For Vaadin 6.3 Zip
+def listZipVaadinJarFiles(zipfile, vaadinversion):
+    jarfile = "vaadin-%s/WebContent/vaadin-%s.jar" % (vaadinversion, vaadinversion)
+    extractedjar = "/tmp/vaadinjar-tmp-%d.jar" % (os.getpid())
+    tarcmd = "unzip -p %s %s > %s " % (zipfile, jarfile, extractedjar)
+    command (tarcmd)
+    files = listJarFiles(extractedjar)
+    command ("rm %s" % (extractedjar))
+    return files
+
 ################################################################################
 #
 ################################################################################
@@ -99,6 +133,8 @@ pin.close()
 latestversion  = latestdata[0].strip()
 latestpath     = latestdata[1].strip()
 latestURL      = downloadsite + "/" + latestpath + "/"
+
+# TODO: Remove "linux" after 6.3.0 is released.
 linuxfilename  = "vaadin-linux-%s.tar.gz" % (latestversion)
 linuxpackage   = latestURL + linuxfilename
 locallinuxpackage = "/tmp/%s" % (linuxfilename)
@@ -123,8 +159,8 @@ latestfiles  = listfiles(locallinuxpackage)
 
 # List files in built version.
 builtversion = sys.argv[1]
-builtpackage = "build/result/vaadin-linux-%s.tar.gz" % (builtversion)
-builtfiles = listfiles(builtpackage)
+builtpackage = "build/result/vaadin-%s.zip" % (builtversion)
+builtfiles = listZipFiles(builtpackage)
 
 # Report differences
 
@@ -145,7 +181,7 @@ for item in removed:
 print "\n--------------------------------------------------------------------------------\nVaadin JAR differences"
 
 latestJarFiles = listTarVaadinJarFiles(locallinuxpackage, latestversion)
-builtJarFiles  = listTarVaadinJarFiles(builtpackage,      builtversion)
+builtJarFiles  = listZipVaadinJarFiles(builtpackage,      builtversion)
 
 # New files
 newfiles = diffFiles(builtJarFiles, latestJarFiles)
index a6b7e65ecf2fde7f4611cbaa9d4d2c19ad9e339c..58654a1d733b673fba13e9be790dfe8f01d6c900 100644 (file)
@@ -9,7 +9,7 @@
 
     When creating release use only "package-*" targets:
     package-all
-     * creates four release packages for three three platforms (below)
+     * creates the release package, a war, and a Liferay war
      
     package-windows
      * vaadin-windows-<version>.zip
     <!-- 
     Call one of package-* targets unless you understand what you are doing 
     -->
-    <target name="package-all" depends="clean-all, package-init, init, build, docs, internal-package-mac, internal-package-windows, internal-package-linux, internal-package-war, internal-package-liferay" description="Build public packages for Windows, Linux and Mac platforms.">
-    </target>
-
-    <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-result, package-init, init, build, docs, internal-package-windows" description="Create public ZIP package for Windows.">
-    </target>
-
-    <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-result, package-init, init-oophm, build, docs, internal-package-oophm" description="Create public tar.gz package for OOPHM.">
+    <target name="package-all" depends="clean-all, package-init, init, build, docs, internal-package-zip, internal-package-war, internal-package-liferay" description="Build public packages.">
     </target>
 
     <target name="package-jar" depends="clean-result, package-init, init, libs" description="Create vaadin-x.y.z.jar file.">
     </target>
 
-    <target name="package-war" depends="clean-result, package-init, init, build, docs, internal-package-linux, internal-package-war">
+    <target name="package-war" depends="clean-result, package-init, init, build, docs, internal-package-zip, internal-package-war">
     </target>
 
-    <target name="package-liferay-zip" depends="clean-result, package-init, init, build, docs, internal-package-linux, internal-package-liferay">
+    <target name="package-liferay-zip" depends="clean-result, package-init, init, build, docs, internal-package-zip, internal-package-liferay">
     </target>
 
-    <target name="package-test" depends="clean-result, nightly-init, package-init, init, build, docs, internal-package-linux, nightly-publish">
+    <target name="package-test" depends="clean-result, nightly-init, package-init, init, build, docs, internal-package-zip, nightly-publish">
     </target>
 
     <!-- ant contrib required for flow control (for loop, if, property override)   -->
     </target>
 
     <target name="test-package" depends="init" description="used for testing build.xml">
-        <echo>Creating package for Mac platform.</echo>
-        <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" />
+        <antcall target="add-misc-files" inheritAll="true" inheritRefs="true" />
         <delete file="${result-path}/eclipse-test" followsymlinks="false" />
         <exec executable="ln" failonerror="false">
             <arg line="-s" />
             <arg line="${output-dir}" />
             <arg line="${result-path}/eclipse-test" />
         </exec>
-        <!--
-        <antcall target="create-mac-diskimage" inheritAll="true" inheritRefs="true" />
-        -->
     </target>
 
     <!-- Clean results - - - - - - - - - - - - - - - - - - - - - - - - - -->
     <!-- Initialization - - - - - - - - - - - - - - - - - - - - - - - - - - -->
     <!-- ================================================================== -->
 
-    <!-- Find out which platform we are in -->
-    <target name="init-oophm-platform"><property name="platform" value="oophm" /></target>
-    <target name="init-oophm" depends="init-oophm-platform,init"></target>
-
     <!-- Called only when building installation packages. -->
     <target name="package-init">
     </target>
         <property name="lib-gwt-dev" location="${gwt-dir}/gwt-dev.jar" />
         <property name="lib-gwt-user" location="${gwt-dir}/gwt-user.jar" />
 
-        <echo>We are on ${platform} platform (${os.name} ${os.version}), using gwt version ${gwt-version}.</echo>
+        <echo>We are using gwt version ${gwt-version}.</echo>
 
         <!-- Destination files -->
         <property name="lib-jar-name" value="${product-file}-${version.full}.jar" />
 
     </target>
 
-    <target name="internal-package-windows">
-        <antcontrib:var name="package-platform" value="windows" />
-        <echo>Creating package for ${package-platform} platform.</echo>
+    <target name="internal-package-zip">
         <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.full}.zip">
-            <zipfileset prefix="${product-file}-${package-platform}-${version.full}" dir="${result-path}/${product-file}-${version.full}">
+        <antcall target="add-misc-files" inheritAll="true" inheritRefs="true" />
+        <zip zipfile="${result-path}/${product-file}-${version.full}.zip">
+            <zipfileset prefix="${product-file}-${version.full}" dir="${result-path}/${product-file}-${version.full}">
                 <patternset>
                     <include name="**/*" />
                 </patternset>
             </zipfileset>
-            <zipfileset prefix="${product-file}-${package-platform}-${version.full}/gwt" dir="${gwt-dir}">
+            <zipfileset prefix="${product-file}-${version.full}/gwt" dir="${gwt-dir}">
                 <patternset>
                     <include name="**/*" />
                     <exclude name="gwt/doc"/>
                 </patternset>
             </zipfileset>
         </zip>
-    </target>
-
-    <target name="internal-package-linux">
-        <antcontrib:var name="package-platform" value="linux" />
-        <echo>Creating package for ${package-platform} platform.</echo>
-        <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.full}.tar.gz" compression="gzip" longfile="gnu">
-            <!-- TODO use very slow but effective bzip2
-            <tar destfile="${result-path}/${product-file}-${package-platform}-${version.full}.tar.bz2" compression="bzip2" longfile="gnu">
-        -->
-            <tarfileset prefix="${product-file}-${package-platform}-${version.full}" dir="${result-path}/${product-file}-${version.full}">
-                <patternset>
-                    <include name="**/*" />
-                </patternset>
-            </tarfileset>
-            <tarfileset prefix="${product-file}-${package-platform}-${version.full}/gwt" dir="${gwt-dir}">
-                <patternset>
-                    <include name="**/*" />
-                </patternset>
-            </tarfileset>
-        </tar>
 
-        <!-- Only the Linux package is currently required for calculating these. -->
-        <!-- Notice that the differences comparison is conditional.              -->
+        <!-- Notice that the differences comparison is conditional. -->
         <antcall target="differences"/>
     </target>
 
-    <target name="internal-package-oophm">
-        <antcontrib:var name="package-platform" value="oophm" />
-        <echo>Creating package for ${package-platform} platform.</echo>
-        <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.full}.zip">
-            <zipfileset prefix="${product-file}-${package-platform}-${version.full}" dir="${result-path}/${product-file}-${version.full}">
-                <patternset>
-                    <include name="**/*" />
-                </patternset>
-            </zipfileset>
-            <zipfileset prefix="${product-file}-${package-platform}-${version.full}/gwt" dir="${gwt-dir}">
-                <patternset>
-                    <include name="**/*" />
-                </patternset>
-            </zipfileset>
-        </zip>
-    </target>
-
-    <target name="internal-package-mac">
-        <antcontrib:var name="package-platform" value="mac" />
-        <echo>Creating package for ${package-platform} platform.</echo>
-        <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.full}.tar.gz" compression="gzip" longfile="gnu">
-            <tarfileset prefix="${product-file}-${package-platform}-${version.full}" dir="${result-path}/${product-file}-${version.full}">
-                <patternset>
-                    <include name="**/*" />
-                </patternset>
-            </tarfileset>
-            <tarfileset prefix="${product-file}-${package-platform}-${version.full}/gwt" dir="${gwt-dir}">
-                <patternset>
-                    <include name="**/*" />
-                </patternset>
-            </tarfileset>
-        </tar>
-        <!-- TODO: remove me: DISABLE for speed -->
-        <!-- <antcall target="create-mac-diskimage" inheritAll="true" inheritRefs="true" /> -->
-    </target>
-
     <target name="internal-package-war">
         <echo>Building WAR</echo>
 
         <!-- Add the files. -->
-        <!-- Warning: This should not really be "platform spefic". -->
-        <antcontrib:var name="package-platform" value="linux" />
         <antcontrib:var name="eclipse-launch-vmargs" value="-Xms256M -Xmx512M" />
-        <antcall target="add-platform-specific-files" inheritAll="true" inheritRefs="true" />
+        <antcall target="add-misc-files" inheritAll="true" inheritRefs="true" />
 
         <!-- Copy source tree to class tree.                         -->
         <!-- A workaround for not setting classpath properly in WAR. -->
         </zip>
         
         <echo>##teamcity[publishArtifacts '${result-path}/${product-file}-${version.full}-liferay.zip']</echo>
-
-    </target>
-
-    <target name="create-mac-diskimage">
-        <!-- create Mac disk image (dmg) also -->
-        <property name="mount.dir" value="${result-path}/mac-mounted-image" />
-        <mkdir dir="${mount.dir}" />
-        <delete file="${result-path}/*.dmg" />
-        <antcontrib:if>
-            <equals arg1="${platform}" arg2="mac" />
-            <then>
-                <untar src="${result-path}/${product-file}-${package-platform}-${version.full}.tar.gz" dest="${result-path}/" compression="gzip" />
-                <echo>Creating Mac disk image (dmg)</echo>
-                <!-- create image -->
-                <echo>hdiutil create -format UDRW -volname ${product-file}-${version.full} -srcfolder ${result-path}/${product-file}-${package-platform}-${version.full} ${result-path}/disk-image.dmg</echo>
-                <exec executable="hdiutil" failonerror="true">
-                    <arg line="create -format UDRW -volname ${product-file}-${version.full} -srcfolder ${result-path}/${product-file}-${package-platform}-${version.full} ${result-path}/disk-image.dmg" />
-                </exec>
-                <!-- open image -->
-                <exec executable="hdiutil" failonerror="true">
-                    <arg line='attach' />
-                    <arg line='-readwrite' />
-                    <arg line='-noverify' />
-                    <arg line='-noautoopen' />
-                    <arg line='-mountpoint ${mount.dir}' />
-                    <arg line='${result-path}/disk-image.dmg' />
-                </exec>
-                <!-- make sure root folder is opened when image is -->
-                <exec executable="bless" failonerror="true">
-                    <arg line='--folder ${mount.dir}' />
-                    <arg line='--openfolder ${mount.dir}' />
-                </exec>
-                <!-- hack: wait for completion -->
-                <exec executable="sleep" failonerror="true">
-                    <arg line='2' />
-                </exec>
-                <!-- here we could position items -->
-                <!--
-                <exec executable="osascript" failonerror="true">
-                    <arg line='package/positionItems.scpt ${mount.dir}' />
-                </exec>
-                -->
-                <!-- turn on volume icon -->
-                <exec executable="/Developer/Tools/SetFile" failonerror="true">
-                    <arg line='-a C' />
-                    <arg line='${mount.dir}' />
-                </exec>
-                <!-- set executable bit -->
-                <chmod file="${mount.dir}/start.sh" perm="ugo+x" />
-                <!-- close image -->
-                <exec executable="hdiutil" failonerror="true">
-                    <arg line='detach ${mount.dir}/' />
-                </exec>
-                <!-- make read-only -->
-                <exec executable="hdiutil" failonerror="true">
-                    <arg line='convert ${result-path}/disk-image.dmg' />
-                    <arg line='-format UDZO' />
-                    <arg line='-imagekey zlib-level=9' />
-                    <arg line='-o ${result-path}/${product-file}-${package-platform}-${version.full}.dmg' />
-                </exec>
-                <delete file="${result-path}/disk-image.dmg" />
-                <!-- internet-enable -->
-                <exec executable="hdiutil" failonerror="true">
-                    <arg line='internet-enable ${result-path}/${product-file}-${package-platform}-${version.full}.dmg' />
-                </exec>
-            </then>
-        </antcontrib:if>
     </target>
 
-    <target name="add-platform-specific-files">
-        <echo>Adding platform specific files for ${package-platform}</echo>
+    <target name="add-misc-files">
         <delete includeemptydirs="true" defaultexcludes="false">
             <fileset dir="${output-dir}">
                 <include name=".*" />
                 <replacetokens begintoken="@" endtoken="@">
                     <token key="version" value="${version.full}" />
                 </replacetokens>
-                <replacetokens begintoken="@" endtoken="@">
-                    <token key="platform" value="${package-platform}" />
-                </replacetokens>
             </filterchain>
             <fileset dir="WebContent/license">
                 <include name="COPYING" />
                 <expandproperties />
                 <replacetokens begintoken="@" endtoken="@">
                     <token key="version" value="${version.full}" />
-                    <token key="/version" value="" />
-                </replacetokens>
-                <replacetokens begintoken="@" endtoken="@">
-                    <token key="platform" value="${package-platform}" />
-                    <token key="/platform" value="" />
                 </replacetokens>
                 <replacetokens begintoken="@" endtoken="@">
                     <token key="builddate" value="${build.date}" />
                 <include name="license/*.txt" />
             </fileset>
         </copy>
-        <copy file="build/package/${package-platform}-readme.txt" tofile="${output-dir}/readme.txt">
+        <copy file="build/package/readme.txt" tofile="${output-dir}/readme.txt">
             <filterchain>
                 <expandproperties />
-                <replacetokens begintoken="&lt;" endtoken=">">
+                <replacetokens begintoken="@" endtoken="@">
                     <token key="version" value="${version.full}" />
-                    <token key="/version" value="" />
                 </replacetokens>
             </filterchain>
         </copy>
                 <!-- .classpath, *.launch, build-widgetset.xml -->
                 <replacetokens begintoken="@" endtoken="@">
                     <token key="version" value="${version.full}" />
-                    <token key="/version" value="" />
                 </replacetokens>
                 <!-- .classpath -->
                 <replacetokens begintoken="&lt;" endtoken=">">
                     <token key="platform-specific-entries" value="&lt;classpathentry kind=&quot;lib&quot; path=&quot;gwt/gwt-dev.jar&quot; /&gt;" />
                     <token key="/platform-specific-entries" value="" />
                 </replacetokens>
-                <!-- .classpath, HostedMode.launch, build-widgetset.xml -->
-                <!-- 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}" />
-                </replacetokens>
                 <!-- .project, *.launch -->
                 <replacetokens begintoken="&lt;" endtoken=">">
                     <token key="eclipse-workspace-name" value="${eclipse-workspace-name}" />
         <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" />
-        <antcontrib:if>
-            <equals arg1="${package-platform}" arg2="windows" />
-            <then>
-                <copy todir="${output-dir}">
-                    <fileset dir="build/package">
-                        <include name="start.bat" />
-                    </fileset>
-                </copy>
-            </then>
-        </antcontrib:if>
-        <antcontrib:if>
-            <equals arg1="${package-platform}" arg2="linux" />
-            <then>
-                <copy todir="${output-dir}">
-                    <fileset dir="build/package">
-                        <include name="start.sh" />
-                    </fileset>
-                </copy>
-                <chmod file="${output-dir}/start.sh" perm="ugo+x" />
-                <exec executable="chmod" failonerror="false">
-                    <arg line="ugo+x" />
-                    <arg line="${output-dir}/start.sh" />
-                </exec>
-            </then>
-        </antcontrib:if>
-        <antcontrib:if>
-            <equals arg1="${package-platform}" arg2="oophm" />
-            <then>
-                <copy todir="${output-dir}">
-                    <fileset dir="build/package">
-                        <include name="start.sh" />
-                    </fileset>
-                </copy>
-                <chmod file="${output-dir}/start.sh" perm="ugo+x" />
-                <exec executable="chmod" failonerror="false">
-                    <arg line="ugo+x" />
-                    <arg line="${output-dir}/start.sh" />
-                </exec>
-            </then>
-        </antcontrib:if>
-        <antcontrib:if>
-            <equals arg1="${package-platform}" arg2="mac" />
-            <then>
-                <copy todir="${output-dir}">
-                    <fileset dir="build/package">
-                        <include name="start.sh" />
-                    </fileset>
-                </copy>
-                <!-- must be done manually -->
-                <!-- <exec executable="cp" failonerror="true">
-                    <arg line="-r" />
-                    <arg line="build/package/Start.app" />
-                    <arg line="${output-dir}" />
-                </exec> -->
-                <!-- but again, ant just fails with any * or other special characters -->
-                <!-- package icon or folder background image / icon placements not in use -->
-                <!--
-                <exec executable="cp" failonerror="true">
-                    <arg line="build/package/Icon*" />
-                    <arg line="${output-dir}" />
-                </exec>
-                <exec executable="cp" failonerror="true">
-                    <arg line="build/package/mac-DS_Store" />
-                    <arg line="${output-dir}/.DS_Store" />
-                </exec>
-                <copy file="build/package/mac-VolumeIcon.icns" tofile="${output-dir}/.VolumeIcon.icns" />
-                -->
-                <chmod file="${output-dir}/start.sh" perm="ugo+x" />
-                <exec executable="chmod" failonerror="false">
-                    <arg line="ugo+x" />
-                    <arg line="${output-dir}/start.sh" />
-                </exec>
-            </then>
-        </antcontrib:if>
+       
+        <copy todir="${output-dir}">
+            <fileset dir="build/package">
+                <include name="start.bat" />
+                <include name="start.sh" />
+            </fileset>
+        </copy>
+       
+       <!-- TODO: Why is this set both with <chmod> and <exec>? -->
+        <chmod file="${output-dir}/start.sh" perm="ugo+x" />
+        <exec executable="chmod" failonerror="false">
+            <arg line="ugo+x" />
+            <arg line="${output-dir}/start.sh" />
+        </exec>
     </target>
 
     <!-- Build server-side, client-side, libraries, and demos.                   -->
         <property name="lib-gwt-dev" location="${gwt-dir}/gwt-dev.jar" />
         <property name="lib-gwt-user" location="${gwt-dir}/gwt-user.jar" />
 
-        <echo>We are on ${platform} platform, using ${lib-gwt-dev}.</echo>
+        <echo>We are using ${lib-gwt-dev}.</echo>
         <echo>Widget sets output dir: ${widgetsets-output-dir}</echo>
     </target>
 
     <!-- ================================================================== -->
 
     <!-- Main target for the nightly build. -->
-    <target name="nightly" depends="clean-result, nightly-init, package-init, init, build, internal-package-linux">
+    <target name="nightly" depends="clean-result, nightly-init, package-init, init, build, internal-package-zip">
     </target>
 
 
         <echo>Installing ${output-dir}/WebContent/${lib-jar-name} to ${nightly.publish}</echo>
         <echo>Hopefully you have permissions for the copy operation with SSH.</echo>
 
-        <!-- Only Linux tests allowed. TODO: Generalize this. -->
-        <property name="package.linux.filename" value="${result-path}/${product-file}-${package-platform}-${version.full}.tar.gz"/>
+        <property name="package.filename" value="${result-path}/${product-file}-${version.full}.zip"/>
 
         <!-- 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="${package.filename}"/>
             <arg value="${nightly.publish}"/>
         </exec>
 
     </target>
     <target name="testbench-tests" depends="init">
         <fail unless="product-file" message="The 'product-file' property must be defined."/>
-        <fail unless="package-platform" message="The 'package-platform' property must be defined."/>
         <fail unless="version" message="The 'version' property must be defined."/>
 
         <echo>Version: ${version.full}</echo>
         <fail unless="com.vaadin.testbench.deployment.url" message="The 'com.vaadin.testbench.deployment.url' property must be defined."/>
         <fail unless="com.vaadin.testbench.lib.dir" message="The 'com.vaadin.testbench.lib.dir' property must be defined."/>
 
-        <property name="package.platform.name" value="${product-file}-${package-platform}-${version.full}"/>
+        <property name="package.name" value="${product-file}-${version.full}"/>
 
         <!-- Only Linux tests allowed. TODO: Generalize this. -->
-        <property name="package.linux.filename" value="${result-path}/${package.platform.name}.tar.gz"/>
-        <property name="package.linux.dir" value="${result-path}/${package.platform.name}.tar.gz"/>
+        <property name="package.filename" value="${result-path}/${package.name}.zip"/>
+        <property name="package.dir" value="${result-path}/${package.name}.zip"/>
 
         <!-- Run the separate test script. -->
         <ant antfile="tests/test.xml" target="test-package" inheritall="false" inheritrefs="true">
             <!-- "tests" classes after unpacking the package.          -->
             <property name="output-dir" value="${output-dir}"/>
 
-            <property name="package.filename" value="${package.linux.filename}"/>
+            <property name="package.filename" value="${package.filename}"/>
             <property name="testing.testarea" value="/tmp/testarea"/>
-            <property name="package.name" value="${package.platform.name}"/>
+            <property name="package.name" value="${package.name}"/>
             <property name="com.vaadin.testbench.tester.host" value="${com.vaadin.testbench.tester.host}"/>
             <property name="com.vaadin.testbench.deployment.url" value="${com.vaadin.testbench.deployment.url}"/>
             <property name="com.vaadin.testbench.lib.dir" value="${com.vaadin.testbench.lib.dir}"/>
index 27a371b3a38f5c37832f57d15e96ec89cc2647af..7fd7bd073d1adc92540a6a9dca90bc7d0045d7ec 100644 (file)
@@ -23,17 +23,14 @@ See configure target to adjust this buildfile.
                1. use WebContent under your project's root directory
                2. WebContent/WEB-INF/lib/vaadin-@version@.jar exists
                3. WebContent/WEB-INF/src contains your project source files
-               4. gwt directory contains extracted GWT distribution for your platform (windows, linux or mac)
+               4. gwt directory contains extracted GWT distribution
        -->
        <target name="configure">
                
                <!-- Path from this file to the root of the Vaadin distribution package -->
                <property name="base" value="../../../" />
                
-               <!-- which platform we are in, possible values are windows, linux and mac -->
-               <property name="gwt-platform" value="@platform@" />
-               
-               <!-- where platform specific GWT distribution is located -->
+               <!-- where GWT distribution is located -->
                <property name="gwt-location" value="${base}gwt" />
                
                <!-- where Vaadin jar is located -->
@@ -86,9 +83,8 @@ See configure target to adjust this buildfile.
        
        <target name="init" depends="configure">
 
-               <echo>Configured for ${gwt-platform} platform.</echo>
                <echo>Requirements for classpath:</echo>
-               <echo>  ${gwt-location}/gwt-dev-${gwt-platform}.jar</echo>
+               <echo>  ${gwt-location}/gwt-dev.jar</echo>
                <echo>  ${gwt-location}/gwt-user.jar</echo>
                <echo>  ${toolkit-jar-location}</echo>
                <echo>  ${src-location}</echo>
@@ -97,7 +93,7 @@ See configure target to adjust this buildfile.
                <!-- Check that files exist -->
                <fail message="Some of the required files (listed above) are missing.">
                        <condition><not><resourcecount count="3">
-                               <filelist files="${gwt-location}/gwt-dev-${gwt-platform}.jar,${gwt-location}/gwt-user.jar,${toolkit-jar-location}"/>
+                               <filelist files="${gwt-location}/gwt-dev.jar,${gwt-location}/gwt-user.jar,${toolkit-jar-location}"/>
                        </resourcecount></not></condition>
                </fail>
 
@@ -109,7 +105,7 @@ See configure target to adjust this buildfile.
                        <pathelement path="${server-side-destination}" />
                        <pathelement path="${toolkit-jar-location}" />
                        <pathelement path="${gwt-location}/gwt-user.jar" />
-                       <pathelement path="${gwt-location}/gwt-dev-${gwt-platform}.jar" />
+                       <pathelement path="${gwt-location}/gwt-dev.jar" />
                    <fileset dir="${base}WebContent/WEB-INF/lib/">
                        <include name="*.jar"/>
                     </fileset>
index 05783937977bfc297a0ef591041e1aa1be5673d5..9f3820fad28621ca1b7f97918d54fcc943abb31d 100644 (file)
@@ -2,7 +2,7 @@
 <launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
 <stringAttribute key="bad_container_name" value="/<eclipse-workspace-name></eclipse-workspace-name>/Vaadin Hosted Mode.launch"/>
 <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/<eclipse-workspace-name></eclipse-workspace-name>/gwt/gwt-dev-@platform@.jar"/>
+<listEntry value="/<eclipse-workspace-name></eclipse-workspace-name>/gwt/gwt-dev.jar"/>
 </listAttribute>
 <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
 <listEntry value="1"/>
diff --git a/build/package/linux-readme.txt b/build/package/linux-readme.txt
deleted file mode 100644 (file)
index 7ac0f10..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-==============================================================================\r
-Vaadin <version></version> Readme\r
-==============================================================================\r
-\r
--------------\r
-How to Start?\r
--------------\r
-\r
-Open a shell window, change to the installation directory, and execute "sh start.sh". It\r
-will start a web application at port 8888 on the local host and opens a web browser window\r
-to display the start page of Vaadin Content Browser.\r
-\r
-The installation directory is a web application as itself and is directly importable to\r
-Eclipse IDE by selecting "File / Import / Existing Projects into Workspace" from Eclipse\r
-main menu. See the manual for detailed instructions.\r
-\r
----------------------------------\r
-What's Inside the Vaadin Package?\r
----------------------------------\r
-\r
-You should start exploring Vaadin through the provided Content Browser web\r
-application within this package; see 'How to Start?' above.\r
-\r
-The WebContent directory contains the content available through the Content Browser: the\r
-Vaadin Library, demos, documentation, and other useful information to get started\r
-with Vaadin.\r
-\r
-Below is a list of most important locations and files:\r
-\r
-Start Vaadin\r
-- start exploring Vaadin by double-clicking this icon\r
-\r
-COPYING\r
-- license file\r
-\r
-WebContent/vaadin-<version></version>.jar\r
-- Vaadin Library containing Java source and compiled files\r
-\r
-WebContent/doc/manual.pdf\r
-- Vaadin Reference Manual in PDF format\r
-\r
-WebContent/doc/manual/index.html\r
-- Vaadin Reference Manual in HTML format\r
-\r
-WebContent/doc/api/index.html\r
-- Vaadin API Documentation as JavaDoc reference\r
-\r
-WebContent/WEB-INF/src\r
-- Content Browser source code, compiled into WebContent/WEB-INF/classes\r
\r
-WebContent/doc/example-source\r
-- example source code in HTML format\r
-\r
-WebContent/demo\r
-- files required by the demos\r
-\r
-Vaadin Hosted Mode Browser.launch\r
-Vaadin Development Server.launch\r
-- launch configurations for Eclipse workspace\r
-\r
-WebContent/doc/example-source/build-widgetset.xml\r
-- example on how to build GWT widget sets for Vaadin application\r
-\r
-WebContent/VAADIN\r
-- widget sets and themes\r
-\r
-gwt\r
-- Google Web Toolkit is required for building new widget sets\r
diff --git a/build/package/mac-DS_Store b/build/package/mac-DS_Store
deleted file mode 100644 (file)
index b2de4bf..0000000
Binary files a/build/package/mac-DS_Store and /dev/null differ
diff --git a/build/package/mac-Start IT Mill Toolkit.zip b/build/package/mac-Start IT Mill Toolkit.zip
deleted file mode 100644 (file)
index 23df10e..0000000
Binary files a/build/package/mac-Start IT Mill Toolkit.zip and /dev/null differ
diff --git a/build/package/mac-Start-icon_script.zip b/build/package/mac-Start-icon_script.zip
deleted file mode 100644 (file)
index 9de5a20..0000000
Binary files a/build/package/mac-Start-icon_script.zip and /dev/null differ
diff --git a/build/package/mac-VolumeIcon.icns b/build/package/mac-VolumeIcon.icns
deleted file mode 100644 (file)
index a11c092..0000000
Binary files a/build/package/mac-VolumeIcon.icns and /dev/null differ
diff --git a/build/package/readme.txt b/build/package/readme.txt
new file mode 100644 (file)
index 0000000..d8c3d8c
--- /dev/null
@@ -0,0 +1,79 @@
+==============================================================================\r
+Vaadin @version@ Readme\r
+==============================================================================\r
+\r
+-------------\r
+How to Start?\r
+-------------\r
+\r
+In Windows:\r
+  Just double-click start.bat icon. It will start a web application at\r
+  port 8888 on the local host and opens a web browser window to display\r
+  the start page of Vaadin Content Browser.\r
+\r
+In Linux:\r
+  Open a shell window, change to the installation directory, and execute\r
+  "sh start.sh". It will start a web application at port 8888 on the local\r
+  host and opens a web browser window to display the start page of Vaadin\r
+  Content Browser.\r
+\r
+In Mac:\r
+  Start Terminal.app and run the start.sh script in the installation\r
+  directory. It will start a web application at port 8888 on the local\r
+  host and opens a web browser window to display the start page of Vaadin\r
+  Content Browser.\r
+\r
+The installation directory is a web application as itself and can be directly\r
+imported to the Eclipse IDE by selecting\r
+"File / Import / Existing Projects into Workspace" from Eclipse main menu.\r
+See the manual for detailed instructions.\r
+\r
+---------------------------------\r
+What's Inside the Vaadin Package?\r
+---------------------------------\r
+\r
+You should start exploring Vaadin through the provided Content Browser web\r
+application within this package; see 'How to Start?' above.\r
+\r
+The WebContent directory contains the content available through the Content\r
+Browser: the Vaadin Library, demos, documentation, and other useful\r
+information to get started with Vaadin.\r
+\r
+Below is a list of most important locations and files:\r
+\r
+Start Vaadin\r
+- start exploring Vaadin by double-clicking this icon\r
+\r
+COPYING\r
+- license file\r
+\r
+WebContent/vaadin-@version@.jar\r
+- Vaadin Library containing Java source and compiled files\r
+\r
+WebContent/doc/book-of-vaadin.pdf\r
+- Book of Vaadin in PDF format\r
+\r
+WebContent/doc/api/index.html\r
+- Vaadin API Documentation as JavaDoc reference\r
+\r
+WebContent/WEB-INF/src\r
+- Content Browser source code, compiled into WebContent/WEB-INF/classes\r
\r
+WebContent/doc/example-source\r
+- example source code in HTML format\r
+\r
+WebContent/demo\r
+- files required by the demos\r
+\r
+Vaadin Hosted Mode Browser.launch\r
+Vaadin Development Server.launch\r
+- launch configurations for Eclipse workspace\r
+\r
+WebContent/doc/example-source/build-widgetset.xml\r
+- example on how to build GWT widget sets for Vaadin application\r
+\r
+WebContent/VAADIN\r
+- widget sets and themes\r
+\r
+gwt\r
+- Google Web Toolkit is required for building new widget sets\r