<property name="build.compiler" value="jikes"/>
<property environment="env"/>
- <!-- the hostname of a cygwin machine running sshd; used for running Win32 binaries -->
- <property name="cygwin-host" value="vmware"/>
-
- <!-- a path on ${cygwin-host} which maps to the root of this XWT tree; usually exported from the build machine using samba -->
- <property name="cygwin-path" value="z:/xwt"/>
-
<!-- set up our classpath -->
<path id="classpath">
<pathelement path="${envCLASSPATH}"/>
<pathelement path="bin/"/>
- <fileset dir="www/webapps/lib">
- <include name="**/*.jar"/>
- </fileset>
<fileset dir="lib">
<include name="**/*.jar"/>
</fileset>
<bash>
find . -name \*\~ | xargs rm -f
find . -name \#\*\# | xargs rm -f
- rm -rf bin-* bin xwt/html/dist/
+ rm -rf bin-* bin
</bash>
</target>
- <!-- creates javadoc documentation -->
- <target name="genjavadoc" unless="javadoc_ok">
- <javadoc sourcepath="src" destdir="www/html/javadoc/" package="yes" protected="no" packagenames="org.xwt.*"/>
- </target>
-
- <!-- creates javasrc documentation -->
- <target name="genjavasrc" unless="javasrc_ok">
- <java classname="javasrc.app.JavaSrc" fork="yes">
- <classpath refid="classpath"/>
- <jvmarg value="-Doutdir=www/html/javasrc/"/>
- <arg value="src/org/xwt/"/>
- </java>
- </target>
-
<!-- compiles all .java files into .class files; all other tasks predepend on this since they need the <taskdef/>'s -->
<target name="compile">
<mkdir dir="bin/"/>
<ant dir="." antfile="src/org/xwt/plat/${plat}.xml" target="run"/>
</target>
- <!-- rebuild the www/ area -->
- <target name="staging">
- <property name="staging-flag" value="-Dstaging"/>
- <property name="host" value="xwt-staging.org"/>
- <antcall target="really-push"/>
- </target>
-
- <target name="production">
- <mkdir dir="www/html/javadoc/"/>
- <mkdir dir="www/html/javasrc/"/>
- <uptodate property="javadoc_ok" targetfile="www/html/javadoc/index.html">
- <srcfiles dir= "src/" includes="**/*.java"/>
- </uptodate>
- <uptodate property="javasrc_ok" targetfile="www/html/javasrc/index.html">
- <srcfiles dir= "src/" includes="**/*.java"/>
- </uptodate>
- <antcall target="genjavadoc"/>
- <antcall target="genjavasrc"/>
- <property name="staging-flag" value=""/>
-<!--
- <property name="host" value="gosset.megacz.com"/>
--->
- <property name="host" value="xwt.org"/>
- <antcall target="really-push"/>
- </target>
-
- <target name="newbuild" depends="compile">
- <taskdef name="build-id" classname="org.xwt.tasks.BuildIdTask">
- <classpath path="bin/"/>
- </taskdef>
- <build-id/>
- <bash> cvs commit -m "automatically updated build-id via org.xwt.tasks.BuildIdTask" build.properties </bash>
- <property file="build.properties"/>
-
- <mkdir dir="www/html/dist/"/>
-
- <!-- rebuild distributions -->
- <property name="plat" value="Win32"/>
- <ant dir="." antfile="src/org/xwt/plat/Win32.xml" target="build"/>
- <ant dir="." antfile="src/org/xwt/plat/Win32.xml" target="dist"/>
- <property name="plat" value="Java2"/>
- <ant dir="." antfile="src/org/xwt/plat/Java12.xml" target="build"/>
- <ant dir="." antfile="src/org/xwt/plat/Java12.xml" target="dist"/>
-<!--
- <property name="plat" value="Linux"/>
- <ant dir="." antfile="src/org/xwt/plat/Linux.xml" target="build"/>
- <ant dir="." antfile="src/org/xwt/plat/Linux.xml" target="dist"/>
--->
- <!-- sign stuff -->
- <bash> /home/megacz/bin/sign/sign ${build-id} </bash>
- </target>
-
- <!-- required packages: bind, apache, libapache-mod-ssl, libapache-mod-jk, sshd, rsync, j2sdk, tomcat, gnuchess -->
- <target name="really-push" depends="compile">
-
- <!-- update demo xwars -->
- <zip update="true" zipfile="www/html/demo.xwar" basedir="src" includes="org/xwt/demo/**,xwt/standard/**,org/xwt/themes/**"/>
- <zip update="true" zipfile="www/html/demo.xwar" basedir="src/org/xwt/demo/" includes="main.xwt"/>
- <zip update="true" zipfile="www/html/chess.xwar" basedir="src" includes="org/xwt/chess/**,xwt/standard/**,org/xwt/themes/**"/>
- <zip update="true" zipfile="www/html/chess.xwar" basedir="src/org/xwt/chess/" includes="main.xwt"/>
- <zip update="true" zipfile="www/html/mail.xwar" basedir="src"
- includes="org/xwt/mail/**,xwt/standard/**,org/xwt/themes/**,org/gimp/tigert/**,org/xwt/fonts/**"
- excludes="org/xwt/mail/main.xwt"
- />
- <zip update="true" zipfile="www/html/mail.xwar" basedir="src/org/xwt/mail/" includes="main.xwt"/>
- <zip update="true" zipfile="www/html/k5.xwar" basedir="src" includes="xwt/**,org/xwt/themes/**,org/gimp/**,org/xwt/x5t/**"/>
- <zip update="true" zipfile="www/html/k5.xwar" basedir="src/org/xwt/x5t/" includes="main.xwt"/>
-
- <mkdir dir="www/webapps/classes/"/>
- <copy todir="www/webapps/classes/">
- <fileset dir="bin/" includes="org/xwt/server/**"/>
- </copy>
-
- <bash>
- # throw on the prefix/suffix where needed
- for A in `find www/html -name \*.html_`
- do (cat www/html/prefix.html; cat $A; cat www/html/suffix.html; cat "$A"_ 2>/dev/null; cat www/html/tagline.html) > `echo $A | sed s/_\$//g`
- done
- </bash>
-
- <bash host="root@${host}">
- # first, clone the currently running copy of xwt, so we can use rsync to save bandwidth
- rm -rf /xwt-new
- mkdir -p /xwt
- mkdir -p /xwt-new
- cd /xwt
- tar cf - . | tar xf - -C /xwt-new
- </bash>
-
- <bash>
- # tidy up and rsync our changes
- find www/html -name \*~ | xargs rm -f
- rm www/html/tmp.[0-9]
- rsync -Pv --delete --exclude=html/dist/\* -rze ssh www/ root@${host}:/xwt-new/www/
- rsync -u -Pv -rze ssh www/html/dist/ root@${host}:/xwt-new/www/html/dist/
- </bash>
-
- <bash host="root@${host}">
-
- # stop services
- /etc/init.d/xwt-cluster stop
-
- rm -rf /xwt-`date +%d-%b-%H:%M`
- mv /xwt /xwt-`date +%d-%b-%H:%M`
- mv /xwt-new /xwt
- find /xwt-* -prune -type d -mtime +10 | xargs rm -rf
-
- mkdir /var/log/xwt &>/dev/null
- chown www-data /var/log/xwt/
-
- ln -s /xwt/www/webapps /xwt/www/webapps/ROOT
- ln -s /xwt/www/webapps /xwt/www/webapps/WEB-INF
- ln -s /xwt/www/launch /xwt/www/launch/ROOT
- ln -s /xwt/www/launch /xwt/www/launch/WEB-INF
- ln -s /xwt/www/wiki /xwt/www/wiki/ROOT
- ln -s /xwt/www/wiki /xwt/www/wiki/WEB-INF
-
- test ${host} == "xwt-staging.org" && echo -e "User-agent: *\nDisallow: /\n" > /xwt/www/html/robots.txt
- echo ${staging-flag} > /xwt/staging-flag
-
- /etc/init.d/xwt-cluster start
-
- </bash>
- </target>
-
-
</project>