# # Makefile for the jdraw implementation. # # CSC 206 java lib directory LIB206 = /users/gfisher/classes/206/lib/JVM # Directory for generated executable files EXECUTABLES = ../../executables/JVM # Files to compile FILES = \ jdraw/*.java \ jdraw/align/*.java \ jdraw/align_ui/*.java \ jdraw/drawing_options/*.java \ jdraw/drawing_options_ui/*.java \ jdraw/edit/*.java \ jdraw/edit_ui/*.java \ jdraw/file/*.java \ jdraw/file_ui/*.java \ jdraw/graphics/*.java \ jdraw/jdraw/*.java \ jdraw/jdraw_ui/*.java \ jdraw/loading_ui/*.java \ jdraw/options/*.java \ jdraw/options_ui/*.java \ jdraw/structure/*.java \ jdraw/structure_ui/*.java \ jdraw/text/*.java \ jdraw/text_ui/*.java # List of packages PACKAGES = \ jdraw \ jdraw/align \ jdraw/align_ui \ jdraw/drawing_options \ jdraw/drawing_options_ui \ jdraw/edit \ jdraw/edit_ui \ jdraw/file \ jdraw/file_ui \ jdraw/graphics \ jdraw/jdraw \ jdraw/jdraw_ui \ jdraw/loading_ui \ jdraw/options \ jdraw/options_ui \ jdraw/structure \ jdraw/structure_ui \ jdraw/text \ jdraw/text_ui # Run the Java compiler on all of the files. all: $(FILES) # echo $(FILES) javac -g \ -classpath $(LIB206) \ -d $(EXECUTABLES) \ $(FILES) cd $(EXECUTABLES); make -f Makefile-thyme exec # The preceding rule results in an executable program that is invoked as # follows from the implementation/executables/JVM directory: # # java caltool.Main # # The makefile in that dir has more information about altenate forms of java # program invocation. # Generate a source dir command for emacs jdb debugging. emacs-jdb: csh -q -c ".make-emacs-jdb-dirs $(PACKAGES)" etags: etags $(FILES) # Run the Java compiler on all of the files, putting the class files in this # source dir, where bluej wants them. bluej: $(FILES) # echo $(FILES) javac -g \ -classpath $(LIB206) \ -d . \ $(FILES) cd $(EXECUTABLES); make -f Makefile-thyme exec # Print source files in small-font, line-numbered, two-column format. print: csh -q -c ".make-print $(PACKAGES)" # Echo the package names for use in command-line processing of all packages, # such as copying a uniform .cvsignore file into each package dir. echop: @echo $(PACKAGES) # Remove all .class files from the executables/JVM dir. clean: csh -q -c ".make-clean" # Remove all .class files from this dir. cleanbluej: csh -q -c ".make-clean-bluej"