Updated Branches: refs/heads/develop 2bd02be67 -> 46ef75fd5
change build to use upstream package of pixelbender files Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/46ef75fd Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/46ef75fd Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/46ef75fd Branch: refs/heads/develop Commit: 46ef75fd5818e69e4ca94486a38f500d2992797d Parents: 2bd02be Author: Alex Harui <[email protected]> Authored: Thu Dec 12 23:02:11 2013 -0800 Committer: Alex Harui <[email protected]> Committed: Thu Dec 12 23:03:15 2013 -0800 ---------------------------------------------------------------------- build.properties | 3 + build.xml | 113 +++++++++++++++++++++++++-- frameworks/downloads.xml | 39 +++++++-- frameworks/projects/framework/build.xml | 11 +-- frameworks/projects/spark/build.xml | 11 +-- 5 files changed, 149 insertions(+), 28 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/46ef75fd/build.properties ---------------------------------------------------------------------- diff --git a/build.properties b/build.properties index 5cf4111..eaad772 100644 --- a/build.properties +++ b/build.properties @@ -36,6 +36,9 @@ locale = en_US qa.dir = ${basedir}/../qa asc = ${basedir}/bin/asc +# place to get PixelBender pbk and obj files +pixelbender.url=https://dist.apache.org/repos/dist/dev/flex/pixelbender/rc1/binaries + # TextLayputFormat branch. Location of the textLayout directory in the TLF repo. #tlf.branch = http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/46ef75fd/build.xml ---------------------------------------------------------------------- diff --git a/build.xml b/build.xml index a4327bb..2e0e8ce 100644 --- a/build.xml +++ b/build.xml @@ -44,9 +44,12 @@ <property name="javac.src" value="1.5"/> <property name="kit.prefix" value="apache-flex-sdk-${release.version}"/> + <property name="kit-pixelbender.prefix" value="apache-flex-sdk-pixelbender-1.0.0"/> <property name="source.kit" value="${kit.prefix}-src"/> <property name="binary.kit" value="${kit.prefix}-bin"/> - + <property name="source-pixelbender.kit" value="${kit-pixelbender.prefix}-src"/> + <property name="binary-pixelbender.kit" value="${kit-pixelbender.prefix}-bin"/> + <available file="${FLEX_HOME}/../flex-tlf/textLayout" type="dir" property="TLF_HOME" @@ -104,7 +107,11 @@ depends="check-compile-env,check-runtime-env,check-adobe-extension-manager-env,source-release,binary-release,rat-check" description="Creates source and binary kits for Apache Flex."/> - <target name="source-release" + <target name="release-pixelbender" + depends="check-compile-env,check-runtime-env,source-package-pixelbender,binary-package-pixelbender" + description="Creates source and binary kits for Apache Flex's PixelBender package."/> + + <target name="source-release" depends="super-clean,create-description,create-config,source-package" description="Packages the source release kit which is the official Apache release."/> @@ -146,7 +153,7 @@ <target name="prebuild" depends="check-compile-env,thirdparty-downloads,create-description" description="Stuff that needs to be done before any builds." /> - <target name="check-compile-env" depends="check-playerglobal-home,check-air-home,check-pixelbender-home,check-tlf-home" + <target name="check-compile-env" depends="check-playerglobal-home,check-air-home,check-tlf-home" description="Check for the required environment variables for compilation."> <echo>OS: ${os.name} / ${os.version} / ${os.arch}</echo> <echo>VM: ${java.vm.name} / ${java.vm.version}</echo> @@ -550,13 +557,21 @@ description="Package source files required to build in zip and tar-gzip file"> </target> - <!-- + <target name="source-package-pixelbender" depends="stage-source-pixelbender,source-package-zip-pixelbender,source-package-tgz-pixelbender" + description="Package PixelBender source files required to build in zip and tar-gzip file"> + </target> + + <!-- Packages the source distribution with ZIP. --> <target name="source-package-zip" unless="no.zip"> <mkdir dir="${basedir}/out"/> <zip destfile="${basedir}/out/${source.kit}.zip" basedir="${basedir}/temp"/> </target> + <target name="source-package-zip-pixelbender" unless="no.zip"> + <mkdir dir="${basedir}/out"/> + <zip destfile="${basedir}/out/${source-pixelbender.kit}.zip" basedir="${basedir}/temp"/> + </target> <!-- Packages the source distribution with TAR-GZIP. @@ -564,6 +579,9 @@ <target name="source-package-tgz" unless="no.zip"> <tar-gzip name="${source.kit}" /> </target> + <target name="source-package-tgz-pixelbender" unless="no.zip"> + <tar-gzip name="${source-pixelbender.kit}" /> + </target> <target name="stage-source" description="Package source files required to build in zip file"> @@ -805,6 +823,51 @@ </fileset> </copy> </target> + + <target name="stage-source-pixelbender" + description="Package PixelBender source files required to build in zip file"> + + <antcall target="clean-temp"/> + + <copy todir="${basedir}/temp" includeEmptyDirs="false"> + <fileset dir="${basedir}"> + <include name="build.xml"/> + <include name="build.properties"/> + <include name="env-template.properties"/> + <include name="CHANGES"/> + <include name="LICENSE"/> + <include name="NOTICE"/> + <include name="README"/> + </fileset> + </copy> + <copy todir="${basedir}/temp" includeEmptyDirs="false"> + <fileset dir="${basedir}"> + <include name="**/*.pbk"/> + <exclude name="**/mustella/**"/> + </fileset> + </copy> + <echo file="${basedir}/temp/RELEASE_NOTES"> +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +This package contains PixelBender shaders used by the Apache Flex SDK. + +To build the pbj files, run the build-pixelbender target in build.xml. + </echo> + + </target> <target name="binary-package" description="Package binary files in zip and tar-gzip file."> @@ -1034,7 +1097,13 @@ <mkdir dir="${basedir}/out"/> <zip destfile="${basedir}/out/${binary.kit}.zip" basedir="${basedir}/temp"/> </target> - + <target name="binary-package-zip-pixelbender" unless="no.zip" + description="Zips up the PixelBender files in the temp directory into the binary zipfile."> + + <mkdir dir="${basedir}/out"/> + <zip destfile="${basedir}/out/${binary-pixelbender.kit}.zip" basedir="${basedir}/temp"/> + </target> + <!-- Packages the binary distribution with TAR-GZIP. --> @@ -1043,7 +1112,33 @@ <tar-gzip name="${binary.kit}" /> </target> + <target name="binary-package-tgz-pixelbender" unless="no.zip" + description="Tar-Gzip up the files in the temp directory into the binary tgz file."> + + <tar-gzip name="${binary-pixelbender.kit}" /> + </target> + + <target name="binary-package-pixelbender" depends="build-pixelbender" + description="Package PixelBender binary files in zip and tar-gzip file."> + + <antcall target="stage-source-pixelbender"/> + + <copy todir="${basedir}/temp"> + <fileset dir="${basedir}"> + <include name="**/*.pbj"/> + <exclude name="**/mustella/**"/> + </fileset> + </copy> + + <antcall target="binary-package-zip-pixelbender"/> + <antcall target="binary-package-tgz-pixelbender"/> + </target> + <target name="build-pixelbender" depends="check-pixelbender-home"> + <ant dir="${basedir}/frameworks/projects/framework" target="pixelbender-compile"/> + <ant dir="${basedir}/frameworks/projects/spark" target="pixelbender-compile"/> + </target> + <macrodef name="fix-config-file"> <attribute name="file"/> <attribute name="version"/> @@ -1801,6 +1896,14 @@ <checksum algorithm="md5" file="${basedir}/out/${source.kit}.zip" forceOverwrite="yes"/> </target> + <target name="create-md5-pixelbender" > + <echo message="Generating MD5 hashes for release artifacts"/> + <checksum algorithm="md5" file="${basedir}/out/${binary-pixelbender.kit}.tar.gz" forceOverwrite="yes"/> + <checksum algorithm="md5" file="${basedir}/out/${binary-pixelbender.kit}.zip" forceOverwrite="yes"/> + <checksum algorithm="md5" file="${basedir}/out/${source-pixelbender.kit}.tar.gz" forceOverwrite="yes"/> + <checksum algorithm="md5" file="${basedir}/out/${source-pixelbender.kit}.zip" forceOverwrite="yes"/> + </target> + <target name="archive-pbj"> <echo message="Creating an archive of the compiled PixelBender files" /> <echo message="The compiled PixelBender files are taken from '${env.PIXELBENDER_COMPILED_HOME}'" /> http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/46ef75fd/frameworks/downloads.xml ---------------------------------------------------------------------- diff --git a/frameworks/downloads.xml b/frameworks/downloads.xml index e13de4b..312d8ac 100644 --- a/frameworks/downloads.xml +++ b/frameworks/downloads.xml @@ -23,6 +23,7 @@ <!-- properties --> <property file="${FLEX_HOME}/build.properties"/> + <property file="${FLEX_HOME}/local.properties"/> <property name="download.dir" value="${FLEX_HOME}/in"/> @@ -31,7 +32,9 @@ <property name="adobe.flex.dir" value="adobe_flex_sdk_4.6"/> <property name="adobe.flex.zip.file" value="flex_sdk_4.6.0.23201B.zip"/> - + <property name="pixelbender.bin.zip" value="apache-flex-sdk-pixelbender-1.0.0-bin.zip" /> + <property name="pixelbender.url" value="http://www.apache.org/dyn/closer.cgi/flex/pixelbender/1.0.0/binaries" /> + <property name="adobe.flex.license" value=" ${line.separator} ${line.separator}Adobe Flex SDK License Agreement: @@ -52,8 +55,8 @@ clean does not remove these since they don't change often and the downloads take time. --> <target name="main" - depends="swfobject-download,swfobject-fabridge-download,osmf-download,optional-downloads" - description="Copies third-party software into place for build"> + depends="pixelbender-download,swfobject-download,swfobject-fabridge-download,osmf-download,optional-downloads" + description="Copies third-party and upstream software into place for build"> <echo message="Use thirdparty-clean or super-clean to remove these."/> </target> @@ -61,7 +64,7 @@ depends="blazeds-jar, font-jars, clean-adobe-flex-sdk" description="Downloads, after prompt for each, the optional thirdparty JARs"/> - <target name="clean" depends="swfobject-clean,swfobject-fabridge-clean,clean-adobe-flex-sdk" + <target name="clean" depends="pixelbender-clean,swfobject-clean,swfobject-fabridge-clean,clean-adobe-flex-sdk" description="Cleans thirdparty downloaded files."> <delete failonerror="false"> <fileset dir="${basedir}/libs"> @@ -135,13 +138,39 @@ verbose="false"/> </target> + <!-- pixelbender files (Version 1.0) --> + <!-- Because this requires a network connection it downloads only if it doesn't already exist. --> + <target name="pixelbender-check" description="Checks if PixelBender files have been downloaded."> + <available file="${basedir}/projects/spark/src/spark/effects/CrossFade.pbj" property="pixelbender.pbj.present"/> + </target> + + <target name="pixelbender-download" depends="pixelbender-check" unless="pixelbender.pbj.present" + description="Downloads PixelBender from flex distribution server"> + + <mkdir dir="${download.dir}"/> + <get src="${pixelbender.url}/${pixelbender.bin.zip}" + dest="${download.dir}/${pixelbender.bin.zip}" + verbose="false"/> + + <unzip src="${download.dir}/${pixelbender.bin.zip}" dest="${FLEX_HOME}"> + <patternset> + <include name="**/*.pbj"/> + </patternset> + </unzip> + </target> + + <target name="pixelbender-clean" description="Deletes pbj files."> + <ant dir="${FLEX_HOME}/frameworks/projects/framework" target="pixelbender-clean" /> + <ant dir="${FLEX_HOME}/frameworks/projects/spark" target="pixelbender-clean" /> + </target> + <!-- swfobject.js (Version 2.2) --> <!-- Because this requires a network connection it downloads SWFObject only if it doesn't already exist. --> <target name="swfobject-check" description="Checks if SWFObject has been downloaded."> <available file="${basedir}/../templates/swfobject/swfobject.js" property="swfobject.js.present"/> </target> - <target name="swfobject-download" depends="swfobject-check" unless="swfobject.js.present" + <target name="swfobject-download" depends="swfobject-check" unless="swfobject.js.present" description="Copies SWFObject from code.google.com"> <mkdir dir="${download.dir}"/> http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/46ef75fd/frameworks/projects/framework/build.xml ---------------------------------------------------------------------- diff --git a/frameworks/projects/framework/build.xml b/frameworks/projects/framework/build.xml index 8cc79ef..d18c141 100644 --- a/frameworks/projects/framework/build.xml +++ b/frameworks/projects/framework/build.xml @@ -152,7 +152,7 @@ <bundler locale="el_GR"/><!-- Greek Language resources --> </target> - <target name="clean" depends="bundles-clean, pixelbender-clean, assets-clean"> + <target name="clean" depends="bundles-clean, assets-clean"> <delete failonerror="false"> <fileset dir="${basedir}" > <include name="bundles.properties"/> @@ -190,13 +190,6 @@ </delete> </target> - <target name="pixelbender-unzip" if="isLinux"> - <echo message="Unziping pixel bender files" /> - <gunzip src="${env.PIXELBENDER_HOME}/pb.tar.gz" dest="${FLEX_HOME}" /> - <untar src="${FLEX_HOME}/pb.tar" dest="${FLEX_HOME}" /> - <delete file="${FLEX_HOME}/pb.tar" /> - </target> - <target name="pixelbender-compile" unless="isLinux"> <!-- diagnose GPU and OpenGL --> <exec executable="${env.PIXELBENDER_HOME}/sniffer_gpu.exe"/> @@ -255,7 +248,7 @@ </mxmlc> </target> - <target name="compile" depends="assets-compile,pixelbender-compile,pixelbender-unzip" description="Compiles framework.swc"> + <target name="compile" depends="assets-compile" description="Compiles framework.swc"> <echo message="Compiling frameworks/libs/framework.swc"/> <!-- Load the <compc> task. We can't do this at the <project> level --> <!-- because targets that run before flexTasks.jar gets built would fail. --> http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/46ef75fd/frameworks/projects/spark/build.xml ---------------------------------------------------------------------- diff --git a/frameworks/projects/spark/build.xml b/frameworks/projects/spark/build.xml index 771f0c4..66ced11 100644 --- a/frameworks/projects/spark/build.xml +++ b/frameworks/projects/spark/build.xml @@ -153,7 +153,7 @@ <bundler locale="el_GR"/><!-- Greek Language resources --> </target> - <target name="clean" depends="bundles-clean, pixelbender-clean"> + <target name="clean" depends="bundles-clean"> <delete failonerror="false"> <fileset dir="${basedir}" > <include name="bundles.properties"/> @@ -190,15 +190,8 @@ </delete> </target> - <target name="compile" depends="pixelbender-compile, pixelbender-unzip, swc-compile" description="Compiles spark.swc"/> + <target name="compile" depends="swc-compile" description="Compiles spark.swc"/> - <target name="pixelbender-unzip" if="isLinux"> - <echo message="Unziping pixel bender files" /> - <gunzip src="${env.PIXELBENDER_HOME}/pb.tar.gz" dest="${FLEX_HOME}" /> - <untar src="${FLEX_HOME}/pb.tar" dest="${FLEX_HOME}" /> - <delete file="${FLEX_HOME}/pb.tar" /> - </target> - <target name="pixelbender-compile" unless="isLinux"> <exec executable="${env.PIXELBENDER_HOME}/pbutil"> <arg value="${FLEX_HOME}/frameworks/projects/spark/asdoc/en_US/spark/effects/examples/assets/twist.pbk" />
