mirror of
https://github.com/servalproject/serval-dna.git
synced 2025-02-21 01:42:18 +00:00
Avoid recompiling java class if they have not changed
This commit is contained in:
parent
c05775a320
commit
8571de4848
@ -138,10 +138,10 @@ endif
|
||||
|
||||
java-api:
|
||||
@mkdir -p java-api
|
||||
cd java-api && $(MAKE) SOURCE_PREFIX=$(SOURCE_PREFIX_JAVA_API) all
|
||||
@cd java-api && $(MAKE) SOURCE_PREFIX=$(SOURCE_PREFIX_JAVA_API) all
|
||||
|
||||
java-api-clean:
|
||||
cd java-api 2>/dev/null && $(MAKE) SOURCE_PREFIX=$(SOURCE_PREFIX_JAVA_API) clean
|
||||
@cd java-api 2>/dev/null && $(MAKE) SOURCE_PREFIX=$(SOURCE_PREFIX_JAVA_API) clean
|
||||
|
||||
endif # $(JAVAC)
|
||||
|
||||
|
@ -11,21 +11,32 @@ JAVAC = @JAVAC@
|
||||
CLASSDIR = classes
|
||||
TESTCLASSDIR = testclasses
|
||||
|
||||
SOURCES := $(shell find $(SOURCE_PREFIX)src -name '*.java')
|
||||
TEST_SOURCES := $(shell find $(SOURCE_PREFIX)test -name '*.java')
|
||||
|
||||
.PHONY: all check clean classes testclasses
|
||||
|
||||
all: check classes testclasses
|
||||
|
||||
check:
|
||||
@if [ -z "$(JAVAC)" ]; then echo "No java compiler configured" >&2; exit 1; fi
|
||||
@if ! $(JAVAC) -version >/dev/null; then echo "Java compiler not executable" >&2; exit 1; fi
|
||||
@if ! $(JAVAC) -version >/dev/null 2>&1; then echo "Java compiler not executable" >&2; exit 1; fi
|
||||
|
||||
classes:
|
||||
$(CLASSDIR)/dummy: $(SOURCES)
|
||||
@mkdir -p $(CLASSDIR)
|
||||
find $(SOURCE_PREFIX)src -name '*.java' | xargs $(JAVAC) -Xlint:unchecked -d $(CLASSDIR)
|
||||
@echo "JAVAC $(CLASSDIR)"
|
||||
@$(JAVAC) -Xlint:unchecked -d $(CLASSDIR) $(SOURCES)
|
||||
@touch $@
|
||||
|
||||
testclasses: classes
|
||||
classes: $(CLASSDIR)/dummy
|
||||
|
||||
$(TESTCLASSDIR)/dummy: $(TEST_SOURCES) $(CLASSDIR)/dummy
|
||||
@mkdir -p $(TESTCLASSDIR)
|
||||
find $(SOURCE_PREFIX)test -name '*.java' | xargs $(JAVAC) -Xlint:unchecked -d $(TESTCLASSDIR) -classpath $(CLASSDIR)
|
||||
@echo "JAVAC $(TESTCLASSDIR)"
|
||||
@$(JAVAC) -Xlint:unchecked -d $(TESTCLASSDIR) -classpath $(CLASSDIR) $(SOURCES)
|
||||
@touch $@
|
||||
|
||||
testclasses: $(TESTCLASSDIR)/dummy
|
||||
|
||||
clean:
|
||||
@$(RM) -r $(CLASSDIR) $(TESTCLASSDIR)
|
||||
|
Loading…
x
Reference in New Issue
Block a user