X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fvimcoder;a=blobdiff_plain;f=Makefile;h=aceb60e3a8f7c9cfbd7c6fa2542bc8638c351f68;hp=ec974daf5d3de2e20ca4a1b88d677ed42ec1d14b;hb=HEAD;hpb=99e4d5138a0f9911297ae4a88d1be940441115ab diff --git a/Makefile b/Makefile index ec974da..aceb60e 100644 --- a/Makefile +++ b/Makefile @@ -2,20 +2,23 @@ # Use this file with GNU make to compile and package VimCoder. # Supported targets: all clean distclean dist fetch jar -project = VimCoder -version = 0.3.4 +project = VimCoder +version = 0.3.6 -sources = $(wildcard src/com/dogcows/*.java) -library = lib/ContestApplet.jar -jarfile = $(project)-$(version).jar -resources = $(wildcard src/com/dogcows/resources/*) +sources = $(wildcard src/com/dogcows/*.java) +classes = $(sources:src/%.java=%.class) +library = lib/ContestApplet.jar +jarfile = $(project)-$(version).jar +resource_path = com/dogcows/resources +resources = $(wildcard src/$(resource_path)/*) -JAVAC = javac -JAVACFLAGS = -d . -sourcepath src -classpath $(library) +JAVAC = javac +JAVACFLAGS = -d . -sourcepath src -classpath $(library) +PROVE = prove -classes = $(sources:src/%.java=%.class) -all: $(firstword $(classes)) + +all: $(classes) $(resources:src/%=%) clean: rm -rf com @@ -30,23 +33,29 @@ fetch: $(library) jar: $(jarfile) +test: all + $(PROVE) + + +$(classes): $(sources) | $(library) + $(JAVAC) $(JAVACFLAGS) $^ + +$(resource_path): + mkdir -p "$@" + +$(resource_path)/%: src/$(resource_path)/% | $(resource_path) + cp "$<" "$@" -$(classes): $(sources) $(library) - $(JAVAC) $(JAVACFLAGS) $< $(library): - @echo "Fetching dependencies..." mkdir -p lib curl -o $@ http://www.topcoder.com/contest/classes/ContestApplet.jar -$(jarfile): $(classes) $(resources) - @echo "Packaging jar file..." - mkdir -p com/dogcows/resources - cp src/com/dogcows/resources/* com/dogcows/resources +$(jarfile): all rm -f $@ jar cvf $@ COPYING README.md com - @echo "Done." -.PHONY: all clean distclean dist fetch jar +.PHONY: all clean distclean dist fetch jar test +# vim:noet:ts=8