## Platform-Neutral ###########################################################################
-.SILENT: update-build $(jikes_java_objects) .headers $(gcj_java_objects) $(all_platforms) PalmOS bin/org/xwt/builtin.xwar
+.SILENT: new-release update-build $(jikes_java_objects) .headers $(gcj_java_objects) $(all_platforms) PalmOS bin/org/xwt/builtin.xwar
compile: $(jikes_java_objects) bin/org/xwt/builtin.xwar
cvs commit -m 'updated build' next.build
echo committed.
+
## GCJ-Derived Platforms #######################################################################
# if the user doesn't change gcc_path, and it's not built, then we'll try to build it
echo "PalmOS is not yet supported"
false
+
+## dist.xwt.org ############################################################################
+
+current_build := $(shell cat next.build)
+
+new-release:
+ test `uname -n` = gosset.megacz.com || \
+ (echo -e "um, new-release is only intended for use on xwt.org...\nedit the Makefile if you really know what you're doing."; false)
+ echo "***********************************************************"
+ echo "* This build is $(current_build)"
+ echo "***********************************************************"
+
+ make --silent update-build
+ (make --silent new-release-private &> .make-new-release.out) || \
+ (cat .make-new-release.out | mail -s "Build $(current_build) FAILED" cvs@xwt.org; false)
+ cat .make-new-release.out | \
+ mail -s "Unsigned binaries of build $(current_build) are now available" cvs@xwt.org
+
+new-release-private:
+ # preserve gcc across builds so we don't have to remake it
+ mv gcc/Makefile Makefile.gcc
+ mkdir -p ~/dist.xwt.org-gcc
+ rm -rf gcc
+ ln -s ~/dist.xwt.org-gcc gcc
+ mv Makefile.gcc gcc/Makefile
+
+ # build it
+ make all
+
+ cp bin-Java2/xwt.jar /var/www/dist.xwt.org/xwt-$(current_build).jar.unsigned
+ cp bin-Win32/xwt.exe /var/www/dist.xwt.org/xwt-$(current_build).exe.unsigned
+ cp bin-Linux/xwt.linux /var/www/dist.xwt.org/xwt-$(current_build).linux.unsigned
+