blob: ad34f62b02df7e2e6e321f8ef1968418409e36a5 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
GPP=gpp
JAVAC=javac
PP = comparable
SRC = $(shell find src | grep '\.java$$')
PPD = $(shell find src | grep '\.java$$' | sed -e 's:^src:obj:')
OBJ = $(shell find src | grep '\.java$$' | sed -e 's:^src:obj:' | sed -e 's:java$$:class:')
OBJ_LINKED_LISTS = $(shell find src/datastructures/linkedlists | grep 'LinkedList.java$$' | sed -e 's:^src:obj:')
.PHONY: all
all: $(OBJ)
obj/%.class: obj/%.java
$(JAVAC) '-Xlint:all,-cast' -s obj -d obj -cp obj "$<"
obj/%.java: src/%.java $(foreach F, $(PP), src/$(F))
mkdir -p "$(shell dirname "$@")"
env GPP="$(GPP)" $(GPP) -s £ < "$<" > "$@"
$(OBJ_LINKED_LISTS): src/datastructures/linkedlists/template
$(OBJ_LINKED_LISTS): src/datastructures/linkedlists/array-template
obj/algorithms/searching/MultiinterpolationSearch.class: obj/algorithms/searching/InterpolationSearch.class
obj/algorithms/searching/MultibinarySearch.class: obj/algorithms/searching/BinarySearch.class
.PHONY: clean
clean:
-rm -r -- bin obj
|