|
| 1 | +EMPTY = |
| 2 | +SPACE = $(EMPTY) $(EMPTY) |
| 3 | + |
| 4 | +# Build up classpath by concatenating some strings |
| 5 | +JARS = third_party/nexus.jar |
| 6 | +JARS += third_party/asm-3.2/lib/all/asm-all-3.2.jar |
| 7 | +JARS += third_party/colt.jar |
| 8 | +JARS += third_party/google-collect-1.0-rc5/google-collect-1.0-rc5.jar |
| 9 | +JARS += third_party/hadoop-0.20.0/hadoop-0.20.0-core.jar |
| 10 | +JARS += third_party/hadoop-0.20.0/lib/commons-logging-1.0.4.jar |
| 11 | +JARS += third_party/scalatest-1.0/scalatest-1.0.jar |
| 12 | +JARS += third_party/ScalaCheck-1.5.jar |
| 13 | +CLASSPATH = $(subst $(SPACE),:,$(JARS)) |
| 14 | + |
| 15 | +SCALA_SOURCES = src/examples/*.scala src/scala/spark/*.scala src/scala/spark/repl/*.scala |
| 16 | +SCALA_SOURCES += src/test/spark/*.scala src/test/spark/repl/*.scala |
| 17 | + |
| 18 | +JAVA_SOURCES = $(wildcard src/java/spark/compress/lzf/*.java) |
| 19 | + |
| 20 | +ifeq ($(USE_FSC),1) |
| 21 | + COMPILER_NAME = fsc |
| 22 | +else |
| 23 | + COMPILER_NAME = scalac |
| 24 | +endif |
| 25 | + |
| 26 | +ifeq ($(SCALA_HOME),) |
| 27 | + COMPILER = $(COMPILER_NAME) |
| 28 | +else |
| 29 | + COMPILER = $(SCALA_HOME)/bin/$(COMPILER_NAME) |
| 30 | +endif |
| 31 | + |
| 32 | +all: scala java |
| 33 | + |
| 34 | +build/classes: |
| 35 | + mkdir -p build/classes |
| 36 | + |
| 37 | +scala: build/classes java |
| 38 | + $(COMPILER) -unchecked -d build/classes -classpath $(CLASSPATH) $(SCALA_SOURCES) |
| 39 | + |
| 40 | +java: $(JAVA_SOURCES) build/classes |
| 41 | + javac -d build/classes $(JAVA_SOURCES) |
| 42 | + |
| 43 | +native: java |
| 44 | + $(MAKE) -C src/native |
| 45 | + |
| 46 | +jar: build/spark.jar build/spark-dep.jar |
| 47 | + |
| 48 | +build/spark.jar: scala java |
| 49 | + jar cf build/spark.jar -C build/classes spark |
| 50 | + |
| 51 | +build/spark-dep.jar: |
| 52 | + mkdir -p build/dep |
| 53 | + cd build/dep && for i in $(JARS); do jar xf ../../$$i; done |
| 54 | + jar cf build/spark-dep.jar -C build/dep . |
| 55 | + |
| 56 | +test: all |
| 57 | + ./alltests |
| 58 | + |
| 59 | +default: all |
| 60 | + |
| 61 | +clean: |
| 62 | + $(MAKE) -C src/native clean |
| 63 | + rm -rf build |
| 64 | + |
| 65 | +.phony: default all clean scala java native jar |
0 commit comments