-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmakefile
40 lines (33 loc) · 919 Bytes
/
makefile
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
33
34
35
36
37
38
39
40
LIBPKGS = util wave gate parser sim
MAIN = main
LIBCOMP = sim parser gate wave util
LIBS = $(addprefix -l, $(LIBCOMP))
LIBFILES = $(addsuffix .a, $(addprefix ../../lib/lib, $(LIBPKGS)))
EXEC = GPUsimulator
all: libs main
libs:
@for lib in $(LIBPKGS); \
do \
echo "Checking $$lib..."; \
cd src/$$lib; \
make -f make.$$lib --no-print-directory PKGNAME=$$lib; \
cd ../../; \
done
main:
@echo "Checking $(MAIN)..."
@cd ./src/$(MAIN); \
make -f make.$(MAIN) --no-print-directory INCLIB="$(LIBS)" EXEC=$(EXEC);
clean:
@for lib in $(LIBPKGS); \
do \
echo "Cleaning $$lib..."; \
cd ./src/$$lib; \
make -f make.$$lib --no-print-directory PKGNAME=$$lib clean; \
cd ../../; \
done
@echo "Cleaning $(MAIN)..."
@cd ./src/$(MAIN); make -f make.$(MAIN) --no-print-directory clean
@echo "Removing $(LIBFILES)..."
@rm -f $(LIBFILES)
@echo "Removing $(EXEC)..."
@rm -f bin/$(EXEC)