From 3c2f33fdc21bfeed9552e4ec155d32ed239cb9c4 Mon Sep 17 00:00:00 2001 From: benfry Date: Mon, 29 Jul 2002 05:22:26 +0000 Subject: [PATCH] working on auto-builder --- processing/build/linux/make.sh | 43 +++++++++++-------- processing/build/macosx/dist.sh | 57 +++++++++++++++++++++++++ processing/build/macosx/dist/Proce55ing | 3 ++ processing/build/macosx/make.sh | 17 ++++---- 4 files changed, 93 insertions(+), 27 deletions(-) create mode 100755 processing/build/macosx/dist.sh create mode 100755 processing/build/macosx/dist/Proce55ing diff --git a/processing/build/linux/make.sh b/processing/build/linux/make.sh index c01345971..baf5554b1 100755 --- a/processing/build/linux/make.sh +++ b/processing/build/linux/make.sh @@ -5,18 +5,18 @@ if test -d work then - else echo Setting up directories to build for linux... - mkdir work - tar --extract --verbose --file=jre.tgz --ungzip --directory=work - cp -r ../shared/lib work/ + cp -r ../shared work + tar --extract --file=jre.tgz --ungzip --directory=work + mkdir work/lib/export mkdir work/lib/build - cp -r ../shared/sketchbook work/ mkdir work/classes - # this will copy cvs files intact, meaning that changes - # could be made and checked back in.. interesting + + cp dist/lib/pde.properties_linux work/lib/ + + echo fi @@ -26,25 +26,31 @@ fi cd ../.. -PLATFORM_CLASSPATH=java/lib/rt.jar:java/lib/ext/comm.jar - - ### -- BUILD BAGEL ---------------------------------------------- cd .. +# make sure bagel exists, if not, check it out of cvs +if test -d bagel +then +else + echo Doing CVS checkout of bagel... + cvs co bagel + cd bagel + cvs update -P + cd .. +fi cd bagel -# hmm? -#CLASSPATH=java\lib\ext\comm.jar\;$CLASSPATH +CLASSPATH=../app/build/linux/work/java/lib/rt.jar:../app/build/linux/work/java/lib/ext/comm.jar ### --- make version with serial for the application echo Building bagel with serial support perl make.pl SERIAL -cp classes/*.class ../app/build/windows/work/classes/ +cp classes/*.class ../app/build/linux/work/classes/ ### --- make version without serial for applet exporting echo Building bagel for export perl make.pl -cp classes/*.class ../app/build/windows/work/lib/export/ +cp classes/*.class ../app/build/linux/work/lib/export/ cd .. cd app @@ -53,12 +59,13 @@ cd app ### -- BUILD PDE ------------------------------------------------ echo Building PDE for JDK 1.3 -CLASSPATH=classes:lib/kjc.jar:lib/oro.jar:$PLATFORM_CLASSPATH -perl buzz.pl "jikes +D -classpath $CLASSPATH -d classes" -dJDK13 *.java kjc/*.java +CLASSPATH=build/linux/work/classes:build/linux/work/lib/kjc.jar:build/linux/work/lib/oro.jar:build/linux/work/java/lib/rt.jar:build/linux/work/java/lib/ext/comm.jar -cd classes +perl ../bagel/buzz.pl "jikes +D -classpath $CLASSPATH -d build/linux/work/classes" -dJDK13 *.java + +cd build/linux/work/classes rm -f ../lib/pde.jar zip -0q ../lib/pde.jar *.class -cd .. +cd ../.. diff --git a/processing/build/macosx/dist.sh b/processing/build/macosx/dist.sh new file mode 100755 index 000000000..a2849e235 --- /dev/null +++ b/processing/build/macosx/dist.sh @@ -0,0 +1,57 @@ +#!/bin/sh + +REVISION=`head -c 4 ../../../todo.txt` + +./make.sh + +echo Creating P5 distribution for revision $REVISION... + +# remove any old boogers +rm -rf processing +rm -f processing-*.hqx + +# use 'shared' files as starting point +cp -r ../shared processing +# something like the following might be better: +# find / -name "*.mp3" -exec rm -f {}\; +# and same for cvsignore +rm -rf processing/CVS +rm -rf processing/lib/CVS +rm -rf processing/fonts/CVS +rm -rf processing/reference/CVS +rm -rf processing/reference/images/CVS +rm -rf processing/sketchbook/CVS +rm -rf processing/sketchbook/default/CVS +rm -f processing/sketchbook/default/.cvsignore +# will need to add a zillion of these for the reference.. + +# add java (jre) files +#unzip -q -d processing jre.zip + +# directories used by the app +mkdir processing/lib/build + +# grab pde.jar and export from the working dir +cp work/lib/pde.jar processing/lib/ +cp -r work/lib/export processing/lib/ +rm -rf processing/lib/export/CVS + +# get platform-specific goodies from the dist dir +cp dist/Proce55ing processing/ +cp dist/lib/pde.properties_macosx processing/lib/ + +# convert notes.txt to windows LFs +# the 2> is because the app is a little chatty +#unix2dos processing/notes.txt 2> /dev/null +#unix2dos processing/lib/pde.properties 2> /dev/null +#unix2dos processing/lib/pde.properties_macosx 2> /dev/null + +# zip it all up for release +echo Zipping and finishing... +P5=processing-$REVISION +mv processing $P5-macosx +#zip -rq $P5.zip $P5 +# nah, keep the new directory around +#rm -rf $P5 + +echo Done. \ No newline at end of file diff --git a/processing/build/macosx/dist/Proce55ing b/processing/build/macosx/dist/Proce55ing new file mode 100755 index 000000000..03eb026d8 --- /dev/null +++ b/processing/build/macosx/dist/Proce55ing @@ -0,0 +1,3 @@ +#!/bin/sh + +java -cp lib:lib/build:lib/pde.jar:lib/kjc.jar:lib/oro.jar PdeBase diff --git a/processing/build/macosx/make.sh b/processing/build/macosx/make.sh index 1fd290d5a..8cc5e95c3 100755 --- a/processing/build/macosx/make.sh +++ b/processing/build/macosx/make.sh @@ -6,18 +6,17 @@ if test -d work then else - echo Setting up directories to build P5 under Mac OS X - mkdir work -# unzip -q -d work jre.zip - cp -r ../shared/lib work/ - rm -rf work/lib/CVS + echo Setting up directories to under Mac OS X + cp -r ../shared work + mkdir work/lib/export mkdir work/lib/build - cp -r ../shared/sketchbook work/ + mkdir work/classes - # this will copy cvs files intact, meaning that changes - # could be made and checked back in.. interesting -# cp dist/run.bat work/ + + cp dist/run.bat work/ + cp dist/lib/pde.properties_macosx work/lib/ + echo fi