From 4c5de1e9fff58c31fcb4ff104c0fb934a3ed4e8a Mon Sep 17 00:00:00 2001 From: benfry Date: Mon, 27 Sep 2004 03:42:18 +0000 Subject: [PATCH] library fixups --- app/PdeCompiler.java | 23 ++++ build/macosx/dist.sh | 43 +++---- .../Contents/Resources/MRJApp.properties | 4 +- build/macosx/make.sh | 107 ++---------------- build/windows/dist.sh | 9 -- build/windows/make.sh | 14 +-- todo.txt | 24 ++-- 7 files changed, 81 insertions(+), 143 deletions(-) diff --git a/app/PdeCompiler.java b/app/PdeCompiler.java index b7d03a028..c767ff42d 100644 --- a/app/PdeCompiler.java +++ b/app/PdeCompiler.java @@ -294,6 +294,29 @@ public class PdeCompiler implements PdeMessageConsumer { "Rename loop() to draw() in Processing 0070 and higher"; } + String constructorProblem = + "No applicable overload was found for a constructor of type"; + if (description.indexOf(constructorProblem) != -1) { + //"simong.particles.ParticleSystem". Perhaps you wanted the overloaded version "ParticleSystem();" instead? + int nextSentence = description.indexOf("\".") + 3; + description = description.substring(nextSentence); + } + + String overloadProblem = "No applicable overload"; + if (description.indexOf(overloadProblem) != -1) { + int nextSentence = description.indexOf("\".") + 3; + description = description.substring(nextSentence); + } + + // c:/fry/processing/build/windows/work/lib/build/Temporary_6858_2476.java:1:34:1:41: Semantic Error: You need to modify your classpath, sourcepath, bootclasspath, and/or extdirs setup. Package "poo/shoe" could not be found in: + String classpathProblem = "You need to modify your classpath"; + if (description.indexOf(classpathProblem) != -1) { + int nextSentence = description.indexOf(". Package") + 2; + description = + description.substring(nextSentence, description.indexOf(':')) + + " the code folder or in any libraries."; + } + //System.out.println("description = " + description); //System.out.println("creating exception " + exception); exception = new PdeException(description, fileIndex, lineNumber-1, -1); diff --git a/build/macosx/dist.sh b/build/macosx/dist.sh index ddd025380..cd05321ca 100755 --- a/build/macosx/dist.sh +++ b/build/macosx/dist.sh @@ -37,21 +37,12 @@ rm -f processing/*~ rm -rf processing/CVS rm -rf processing/lib/CVS -rm -rf processing/lib/netscape/CVS -rm -rf processing/lib/netscape/javascript/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 # new style examples thing ala reas -#cd processing/sketchbook -cd processing/lib +cd processing unzip -q examples.zip rm examples.zip -cd ../.. +cd .. # new style reference cd processing @@ -60,10 +51,10 @@ rm reference.zip cd .. # get serial stuff -cp dist/serial_setup.command processing/ -chmod a+x processing/serial_setup.command -cp ../../bagel/serial/RXTXcomm.jar processing/lib/ -cp ../../bagel/serial/libSerial.jnilib processing/ +#cp dist/serial_setup.command processing/ +#chmod a+x processing/serial_setup.command +#cp ../../bagel/serial/RXTXcomm.jar processing/lib/ +#cp ../../bagel/serial/libSerial.jnilib processing/ # get ds_store file (!) cp dist/DS_Store processing/.DS_Store @@ -79,18 +70,15 @@ rm -rf processing/Processing.app/Contents/Resources/Java/CVS # put jar files into the resource dir, leave the rest in lib RES=processing/Processing.app/Contents/Resources/Java/ mv processing/lib/*.jar $RES/ -#cp comm.jar $RES/ -#cp ../shared/dist/lib/*.jar $RES/ -#cp ../shared/dist/lib/pde.properties $RES/ -#cp ../shared/dist/lib/buttons.gif $RES/ # directories used by the app mkdir processing/lib/build # grab pde.jar and export from the working dir cp work/lib/pde.jar $RES/ -cp -r work/lib/export processing/lib/ -rm -rf processing/lib/export/CVS +cp work/lib/core.jar $RES/ +#cp -r work/lib/export processing/lib/ +#rm -rf processing/lib/export/CVS # get platform-specific goodies from the dist dir #cp `which jikes` processing @@ -106,9 +94,22 @@ chmod a+x processing/jikes #unix2dos processing/lib/pde.properties 2> /dev/null #unix2dos processing/lib/pde.properties_macosx 2> /dev/null +# something like the following might be better: +# find / -name "*.mp3" -exec rm -f {}\; +# and same for cvsignore, ~ files, .DS_Store +find processing -name "*~" -exec rm -f {} ';' +#find processing -name ".DS_Store" -exec rm -f {} ';' +find processing -name "._*" -exec rm -f {} ';' + # zip it all up for release mv processing "Processing $REVISION" # if there is a command line tool to make a dmg from this dir.. hmm +# actually, could probably use: +# open processing-uncomp.dmg +# rm -rf /Volumes/Processing/Processing* +# mv "Processing $REVISION" /Volumes/Processing +# umount /Volumes/Processing + echo Done. \ No newline at end of file diff --git a/build/macosx/dist/Processing.app/Contents/Resources/MRJApp.properties b/build/macosx/dist/Processing.app/Contents/Resources/MRJApp.properties index d3aed1774..ec3b91899 100755 --- a/build/macosx/dist/Processing.app/Contents/Resources/MRJApp.properties +++ b/build/macosx/dist/Processing.app/Contents/Resources/MRJApp.properties @@ -3,11 +3,11 @@ com.apple.mrj.application.main=PdeBase # enable java 1.3 and higher, meaning that java 1.4 # will be used if it's installed. -#com.apple.mrj.application.JVMVersion=1.3+ +com.apple.mrj.application.JVMVersion=1.3+ # if you're having trouble, add a # to the line above # and remove the # from the following line: -com.apple.mrj.application.JVMVersion=1.3.1 +#com.apple.mrj.application.JVMVersion=1.3.1 # this will revert back to java 1.3, since 1.4 has some issues diff --git a/build/macosx/make.sh b/build/macosx/make.sh index 22b96396d..00772f35b 100755 --- a/build/macosx/make.sh +++ b/build/macosx/make.sh @@ -1,26 +1,6 @@ #!/bin/sh -### -- CHECK TO MAKE SURE BAGEL EXISTS ------------------------- - -# move to base 'processing' directory -#cd ../.. - -# make sure bagel exists, if not, check it out of cvs -#if test -d bagel -#then -# echo -#else -# echo Doing CVS checkout of bagel... -# cvs co bagel -# cd bagel -# cvs update -P -# cd .. -#fi - -#cd build/macosx - - ### -- SETUP WORK DIR ------------------------------------------- if test -d work @@ -31,7 +11,7 @@ else then echo else - echo You need to install fink and fileutils + echo You need to install fink with fileutils, textutils, etc exit fi @@ -50,48 +30,17 @@ else rm reference.zip cd .. -# mkdir work/lib/export mkdir work/lib/build -# mkdir work/classes - - # get a copy of the mac-specific properties - #cp dist/lib/pde_macosx.properties work/lib/ - - # grab serial goodies -# echo Copying serial support from bagel dir... -# cp ../../bagel/serial/RXTXcomm.jar work/lib/ -# cp ../../bagel/serial/libSerial.jnilib work/ - - # copy gl4java libs and jar file - # disabled till the next release when i can recompile for 1.4 - #cp ../../bagel/opengl/gl4java.jar work/lib/ - #cp ../../bagel/opengl/libGL4JavaJauGljJNI13.jnilib work/ # to have a copy of this guy around for messing with echo Copying Processing.app... #cp -a dist/Processing.app work/ # #@$(* bsd switches - #/sw/bin/cp -dpR dist/Processing.app work/ /sw/bin/cp -a dist/Processing.app work/ - #cd work/Processing.app - #find . -name "CVS" -depth -exec rm {} \; - #cd ../.. # get jikes and depedencies - #gunzip < dist/jikes.gz > work/jikes echo Copying jikes... cp dist/jikes work/ chmod +x work/jikes - - # build classes/grammar for preprocessor -# echo Building antlr grammar code... -# cd ../../app/preprocessor -# # first build the default java goop -# java -cp ../../build/macosx/work/lib/antlr.jar antlr.Tool java.g -# # now build the pde stuff that extends the java classes -# java -cp ../../build/macosx/work/lib/antlr.jar antlr.Tool -glib java.g pde.g -# cd ../../build/macosx - - #echo fi @@ -103,7 +52,6 @@ cd ../.. ### -- BUILD BAGEL ---------------------------------------------- -#cd bagel cd core echo Building processing.core... @@ -112,30 +60,6 @@ echo Building processing.core... CLASSPATH=/System/Library/Frameworks/JavaVM.framework/Classes/classes.jar:/System/Library/Frameworks/JavaVM.framework/Classes/ui.jar:/System/Library/Java/Extensions/QTJava.zip:/System/Library/Java/Extensions/MRJToolkit.jar export CLASSPATH -### --- make version with all the goodies for the application -#echo Building bagel with serial, video, audio, and jdk13 support -#perl make.pl JIKES=../build/macosx/work/jikes SERIAL RXTX VIDEO SONIC JDK13 -#cp classes/*.class ../build/macosx/work/classes/ - -### --- make version without serial for applet exporting -#echo Building bagel for export with audio -#perl make.pl JIKES=../build/macosx/work/jikes SONIC -#cp classes/*.class ../build/macosx/work/lib/export/ - -#echo Building export classes for 1.1 -#rm -f classes/*.class -#perl make.pl JIKES=../build/macosx/work/jikes -#cd classes -#zip -0q ../../build/macosx/work/lib/export11.jar *.class -#cd .. - -#echo Building export classes for 1.3 -#rm -f classes/*.class -#perl make.pl JIKES=../build/macosx/work/jikes -#cd classes -#zip -0q ../../build/macosx/work/lib/export13.jar *.class -#cd .. - ../build/macosx/work/jikes -d . +D -target 1.1 *.java zip -r0q ../build/macosx/work/lib/core.jar processing @@ -170,19 +94,10 @@ fi ### -- BUILD PDE ------------------------------------------------ -#echo Building PDE for JDK 1.3 echo Building the PDE... -# new rxtx -#CLASSPATH=../build/macosx/work/classes:../build/macosx/work/lib/kjc.jar:../build/macosx/work/lib/antlr.jar:../build/macosx/work/lib/oro.jar:../build/macosx/work/lib/RXTXcomm.jar:$CLASSPATH - -#CLASSPATH=../build/macosx/work/lib/core.jar:../build/macosx/work/lib/antlr.jar:../build/macosx/work/lib/oro.jar:$CLASSPATH - ../build/macosx/work/jikes +D -classpath ../build/macosx/work/lib/core.jar:../build/macosx/work/lib/antlr.jar:../build/macosx/work/lib/oro.jar:$CLASSPATH -d ../build/macosx/work/classes *.java jeditsyntax/*.java preprocessor/*.java -#perl ../bagel/buzz.pl "../build/macosx/work/jikes +D -classpath $CLASSPATH -d ../build/macosx/work/classes" -dJDK13 -dMACOS -dRXTX *.java jeditsyntax/*.java preprocessor/*.java -#perl ../bagel/buzz.pl "javac -classpath $CLASSPATH -d ../build/macosx/work/classes" -dJDK13 -dMACOS -dRXTX *.java jeditsyntax/*.java preprocessor/*.java - cd ../build/macosx/work/classes rm -f ../lib/pde.jar zip -0rq ../lib/pde.jar . @@ -201,21 +116,21 @@ CLASSPATH=../../build/macosx/work/lib/core.jar:$CLASSPATH # SERIAL LIBRARY echo Building serial library... cd ../../lib/serial -../../build/macosx/work/jikes +D -classpath "RXTXcomm.jar:../../build/macosx/work/lib/core.jar:$CLASSPATH" -d . *.java -zip -r0q serial.jar processing +../../build/macosx/work/jikes +D -classpath "code/RXTXcomm.jar:../../build/macosx/work/lib/core.jar:$CLASSPATH" -d . *.java +zip -r0q library/serial.jar processing rm -rf processing mkdir -p ../../build/macosx/work/libraries/serial/library/ -cp serial.jar ../../build/macosx/work/libraries/serial/library/ +cp library/serial.jar ../../build/macosx/work/libraries/serial/library/ # NET LIBRARY echo Building net library... cd ../../lib/net ../../build/macosx/work/jikes +D -d . *.java -zip -r0q net.jar processing +zip -r0q library/net.jar processing rm -rf processing mkdir -p ../../build/macosx/work/libraries/net/library/ -cp net.jar ../../build/macosx/work/libraries/net/library/ +cp library/net.jar ../../build/macosx/work/libraries/net/library/ # VIDEO LIBRARY @@ -223,19 +138,17 @@ echo Building video library... QTJAVA=/System/Library/Java/Extensions/QTJava.zip if test -f "${QTJAVA}" then - echo "Found Quicktime at $QTJAVA" + echo "Found QuickTime for Java at $QTJAVA" else - echo "could not find qtjava.zip in" - echo "${WINDIR}\\system32\\qtjava.zip" - echo "quicktime for java must be installed before building." + echo "QuickTime for Java must be installed before building." exit 1; fi cd ../../lib/video ../../build/macosx/work/jikes +D -classpath "$QTJAVA:$CLASSPATH" -d . *.java -zip -r0q video.jar processing +zip -r0q library/video.jar processing rm -rf processing mkdir -p ../../build/macosx/work/libraries/video/library/ -cp video.jar ../../build/macosx/work/libraries/video/library/ +cp library/video.jar ../../build/macosx/work/libraries/video/library/ echo diff --git a/build/windows/dist.sh b/build/windows/dist.sh index 0a75f5b00..08477ca43 100755 --- a/build/windows/dist.sh +++ b/build/windows/dist.sh @@ -15,14 +15,6 @@ rm -rf processing-* cp -r ../shared processing rm -rf processing/CVS rm -rf processing/lib/CVS -#rm -rf processing/lib/netscape/CVS -#rm -rf processing/lib/netscape/javascript/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 # new style examples thing ala reas cd processing @@ -76,7 +68,6 @@ unix2dos processing/readme.txt 2> /dev/null unix2dos processing/revisions.txt 2> /dev/null unix2dos processing/lib/preferences.txt 2> /dev/null unix2dos processing/lib/keywords.txt 2> /dev/null -#unix2dos processing/lib/pde_windows.properties 2> /dev/null # something like the following might be better: diff --git a/build/windows/make.sh b/build/windows/make.sh index f689c4be8..4a400e475 100755 --- a/build/windows/make.sh +++ b/build/windows/make.sh @@ -132,21 +132,21 @@ CLASSPATH="..\\..\\build\\windows\\work\\lib\\core.jar;..\\..\\build\\windows\\w # SERIAL LIBRARY echo Build serial library... cd ../../lib/serial -../../build/windows/work/jikes +D -classpath "RXTXcomm.jar;$CLASSPATH" -d . *.java -zip -r0q serial.jar processing +../../build/windows/work/jikes +D -classpath "code\\RXTXcomm.jar;$CLASSPATH" -d . *.java +zip -r0q library/serial.jar processing rm -rf processing mkdir -p ../../build/windows/work/libraries/serial/library/ -cp serial.jar ../../build/windows/work/libraries/serial/library/ +cp library/serial.jar ../../build/windows/work/libraries/serial/library/ # NET LIBRARY echo Build net library... cd ../../lib/net ../../build/windows/work/jikes +D -d . *.java -zip -r0q net.jar processing +zip -r0q library/net.jar processing rm -rf processing mkdir -p ../../build/windows/work/libraries/net/library/ -cp net.jar ../../build/windows/work/libraries/net/library/ +cp library/net.jar ../../build/windows/work/libraries/net/library/ # VIDEO LIBRARY @@ -163,7 +163,7 @@ else fi cd ../../lib/video ../../build/windows/work/jikes +D -classpath "$QTJAVA;$CLASSPATH" -d . *.java -zip -r0q video.jar processing +zip -r0q library/video.jar processing rm -rf processing mkdir -p ../../build/windows/work/libraries/video/library/ -cp video.jar ../../build/windows/work/libraries/video/library/ +cp library/video.jar ../../build/windows/work/libraries/video/library/ diff --git a/todo.txt b/todo.txt index 578d0622f..912619fce 100644 --- a/todo.txt +++ b/todo.txt @@ -128,17 +128,23 @@ X add examples folder to import libraries stuff X fix bug causing System.err for external to print twice X modify lib examples for camera, net, serial(?) +040926 evening +X better error message for: +X Semantic Error: No applicable overload was found for a constructor of type "simong.particles.ParticleSystem". Perhaps you wanted the overloaded version "ParticleSystem();" instead? +X fix dist.sh for windows +X write better handler for compiler error: +X c:/fry/processing/build/windows/work/lib/build/Temporary_8501_3382.java:1:63:1:70: Semantic Error: You need to modify your classpath, sourcepath, bootclasspath, and/or extdirs setup. Package "poo/shoe" could not be found in: +X fix dist.sh for macosx +X include some of the simong libraries + _ add "archive" option since history is gone -_ fix dist.sh for mac, pc -_ write better handler for compiler error: -_ c:/fry/processing/build/windows/work/lib/build/Temporary_8501_3382.java:1:63:1:70: Semantic Error: You need to modify your classpath, sourcepath, bootclasspath, and/or extdirs setup. Package "poo/shoe" could not be found in: - -_ macosx - check to see if new linemetrics stuff is working better - -_ move libraries around in distribution +_ move libraries around in distribution to resemble sketchbook _ write revisions.txt and readme.txt +_ go through the board and move messages + +_ macosx - check to see if new linemetrics stuff is working better README @@ -166,7 +172,11 @@ _ history is not implemented in this version ...................................................................... +_ different name for 'lib' folder because of libraries folder + _ get linux version for 0071 +_ make a sketch that shows loading from the web +_ make another sketch that shows loading from a file _ implement new version of history _ make history folder, and a zip (not gz) file for each entry