programmieren-projekt/makefile

39 lines
731 B
Makefile

MAIN_CLASS := HalloSchiffeVersenken
JAR_NAME := schiffeVersenken.jar
SRC_DIR := src
OUT_DIR := bin
LIB_DIR := libs
JC := javac
JCFLAGS := -d $(OUT_DIR)/ -cp "$(LIB_DIR)/*"
JR := java
SEPERATOR := :
ifeq ($(OS),Windows_NT)
SEPERATOR := ;
endif
.SUFFIXES: .java
.PHONY: classfiles clean
classfiles: $(SRC_DIR)/*
$(JC) $(JCFLAGS) $(SRC_DIR)/*
jar: classfiles
jar --create --file=$(OUT_DIR)/$(JAR_NAME) --main-class=$(MAIN_CLASS) -C $(OUT_DIR)/ .
test-jar: jar
# $(JR) -cp "$(OUT_DIR)/:$(LIB_DIR)/*" $(MAIN_CLASS)
$(JR) -jar $(OUT_DIR)/$(JAR_NAME)
docs:
javadoc -cp "$(LIB_DIR)/*" -d "docs" $(SRC_DIR)/*.java
test: classfiles
$(JR) -cp "$(OUT_DIR)$(SEPERATOR)$(LIB_DIR)/*" $(MAIN_CLASS)
clean:
rm $(OUT_DIR)/*.class