-# Use this file with ``make'' to compile and package VimCoder.
+# Use this file with GNU make to compile and package VimCoder.
# Supported targets: all clean distclean dist fetch jar
project = VimCoder
-version = 0.3.2
+version = 0.3.3
-sources = src/com/dogcows/VimCoder.java src/com/dogcows/Util.java src/com/dogcows/Editor.java
+sources = $(wildcard src/com/dogcows/*.java)
library = lib/ContestApplet.jar
jarfile = $(project)-$(version).jar
+resources = $(wildcard src/com/dogcows/resources/*)
JAVAC = javac
JAVACFLAGS = -d . -sourcepath src -classpath $(library)
all: $(firstword $(classes))
clean:
- rm -rf META-INF com
+ rm -rf com
distclean: clean
rm -rf lib
jar: $(jarfile)
+$(classes): $(sources) $(library)
+ $(JAVAC) $(JAVACFLAGS) $<
+
$(library):
@echo "Fetching dependencies..."
mkdir -p lib
curl -o $@ http://www.topcoder.com/contest/classes/ContestApplet.jar
-$(jarfile): $(firstword $(classes)) META-INF/MANIFEST.MF
+$(jarfile): $(classes) $(resources)
@echo "Packaging jar file..."
mkdir -p com/dogcows/resources
cp src/com/dogcows/resources/* com/dogcows/resources
rm -f $@
- zip $@ META-INF/MANIFEST.MF COPYING README $$(find com -type f | sort)
+ jar cvf $@ COPYING README.md com
@echo "Done."
-$(classes): $(sources) $(library)
- $(JAVAC) $(JAVACFLAGS) $<
-
-META-INF/MANIFEST.MF:
- mkdir -p META-INF
- printf "Manifest-Version: 1.0\n\n" >$@
-
.PHONY: all clean distclean dist fetch jar