]> Dogcows Code - chaz/vimcoder/blob - Makefile
3d226322230d4d8c85d943c37f8344172dd47929
[chaz/vimcoder] / Makefile
1
2 # Use this file with GNU make to compile and package VimCoder.
3 # Supported targets: all clean distclean dist fetch jar
4
5 project = VimCoder
6 version = 0.3.4
7
8 sources = $(wildcard src/com/dogcows/*.java)
9 library = lib/ContestApplet.jar
10 jarfile = $(project)-$(version).jar
11 resources = $(wildcard src/com/dogcows/resources/*)
12
13 JAVAC = javac
14 JAVACFLAGS = -d . -sourcepath src -classpath $(library)
15
16
17 classes = $(sources:src/%.java=%.class)
18 all: $(firstword $(classes))
19
20 clean:
21 rm -rf com
22
23 distclean: clean
24 rm -rf lib
25
26 dist:
27 git archive HEAD --prefix=vimcoder-$(version)/ | bzip2 >vimcoder-$(version).tar.bz2
28
29 fetch: $(library)
30
31 jar: $(jarfile)
32
33
34 $(classes): $(sources) $(library)
35 $(JAVAC) $(JAVACFLAGS) $<
36
37 $(library):
38 @echo "Fetching dependencies..."
39 mkdir -p lib
40 curl -o $@ http://www.topcoder.com/contest/classes/ContestApplet.jar
41
42 $(jarfile): $(classes) $(resources)
43 @echo "Packaging jar file..."
44 mkdir -p com/dogcows/resources
45 cp src/com/dogcows/resources/* com/dogcows/resources
46 rm -f $@
47 jar cvf $@ COPYING README.md com
48 @echo "Done."
49
50
51 .PHONY: all clean distclean dist fetch jar
52
53 # vim:noet:ts=8
This page took 0.032394 seconds and 3 git commands to generate.