4e1d6c7f |
1 | APP_NAME=ldc2 |
c8a4d02d |
2 | APP_OBJECTS= main.o silent_code.o argument_reader.o |
3 | CCFLAGS+=-Wall |
4 | BLOCK_OBJECTS=data_block_0_10.o data_block_0_14.o data_block_0_1.o data_block_0_24.o\ |
5 | data_block_0_2.o data_block_0_30.o data_block_0_3.o data_block_0_4.o\ |
6 | data_block_0_50.o data_block_0_54.o data_block_0_60.o data_block_0_44.o\ |
7 | data_block_0_64.o tape_block.o eot_block.o discard_block.o\ |
4e1d6c7f |
8 | data_block.o data_block_0.o data_block_0_0.o\ |
c8a4d02d |
9 | data_block_0_label_extractor.o data_block_1.o data_block_2.o\ |
10 | data_block_3.o data_block_4.o data_block_5.o \ |
11 | data_block_6.o data_block_7.o \ |
12 | |
4e1d6c7f |
13 | |
c8a4d02d |
14 | APP_OBJECTS+=$(BLOCK_OBJECTS) |
4e1d6c7f |
15 | |
0ec6e042 |
16 | SRC_DIR=src |
17 | |
18 | default: $(APP_NAME) |
19 | |
c8a4d02d |
20 | APP_SOURCES=$(foreach obj, $(APP_OBJECTS:.o=.cpp),$(SRC_DIR)/$(obj)) |
21 | |
22 | ##All objects depend on all headers. simple but works |
23 | #*.o: $(SRC_DIR)/*.hh |
24 | |
25 | %.dep : $(SRC_DIR)/%.cpp |
26 | @ echo Building dependencies for $<. |
27 | @$(SHELL) -c "g++ -M $<" | awk 'BEGIN {N=0}{if(N==0)printf("%s %s\n","$@",$$0);else printf("%s\n", $$0);N+=1;}' > $@ |
28 | |
0ec6e042 |
29 | |
c8a4d02d |
30 | %.o : $(SRC_DIR)/%.cpp %.dep |
31 | g++ -c $(CCFLAGS) -o $@ $< |
0ec6e042 |
32 | |
33 | $(APP_NAME) : $(APP_OBJECTS) |
c8a4d02d |
34 | @g++ -o$@ $^ |
35 | |
36 | saustall: $(APP_OBJECTS:.o=.dep) |
0ec6e042 |
37 | |
38 | clean: |
c8a4d02d |
39 | @rm -rf $(APP_NAME) *.o doxy/ $(SRC_DIR)/*~ ul_timestamp *.dep |
40 | @$(MAKE) -C doc clean |
0ec6e042 |
41 | |
c8a4d02d |
42 | doxy/timestamp: $(APP_OBJECTS) |
0ec6e042 |
43 | @ if [ ! -d doxy ]; then mkdir doxy; fi |
44 | @doxygen Doxyfile |
45 | touch $@ |
46 | |
47 | doxy: doxy/timestamp |
4e1d6c7f |
48 | upload: ul_timestamp |
0ec6e042 |
49 | |
4e1d6c7f |
50 | ul_timestamp: doxy/timestamp |
51 | @cd doxy/html && tar -czf /tmp/doxy.tar.gz * |
52 | @touch ul_timestamp |
53 | @scp -q /tmp/doxy.tar.gz ente:/tmp/ |
54 | @ssh ente "rm -rf h316.web/ldc-doc/* && cd h316.web/ldc-doc && tar -xzf /tmp/doxy.tar.gz" |
0ec6e042 |
55 | |
56 | doc: |
57 | $(MAKE) -C doc |
58 | |
59 | all: $(APP_NAME) doxy doc |
60 | |
4e1d6c7f |
61 | .PHONY: all clean doxy upload docdata_block_0_0.o |
c8a4d02d |
62 | |
63 | .PRECIOUS: *.dep |
64 | |
65 | #$(APP_OBJECTS:.o=.d) |
66 | |
67 | include $(wildcard *.dep) |