ldc2: Cosmetic fixes and support for compiler orverride
[h316.git] / pc-tools / ldc2 / Makefile
1 APP_NAME=ldc2
2 APP_OBJECTS= main.o silent_code.o configuration_manager.o tool.o config.o
3 CCFLAGS+=-Wall
4
5 BUILD_STAMP="\"`uname -a`\""
6 VERSION="\"1.0\""
7 BUILD_DATE="\"`date` \""
8
9 CXX?=g++
10
11 CCFLAGS+=-D BUILD_STAMP=$(BUILD_STAMP) -D VERSION=$(VERSION) -D BUILD_DATE=$(BUILD_DATE)
12
13 BLOCK_OBJECTS=tape_block.o eot_block.o data_block.o broken_block.o\
14 data_block_0_10.o data_block_0_14.o data_block_0_1.o data_block_0_24.o\
15 data_block_0_2.o data_block_0_30.o data_block_0_3.o data_block_0_4.o\
16 data_block_0_50.o data_block_0_54.o data_block_0_60.o data_block_0_44.o\
17 data_block_0_64.o \
18 data_block_0.o data_block_0_0.o\
19 data_block_0_label_extractor.o data_block_1.o data_block_2.o\
20 data_block_3.o data_block_4.o data_block_5.o \
21 data_block_6.o data_block_7.o
22
23 OBJECTS=$(BLOCK_OBJECTS) $(APP_OBJECTS)
24
25 SRC_DIR=src
26
27 default: $(APP_NAME)
28
29
30 clean:
31 @rm -rf $(APP_NAME) *.o doxy/ $(SRC_DIR)/*~ ul_timestamp *.dep
32 @$(MAKE) -C doc clean
33
34 APP_SOURCES=$(foreach obj, $(OBJECTS:.o=.cpp),$(SRC_DIR)/$(obj))
35
36 %.dep : $(SRC_DIR)/%.cpp
37 @ echo Building dependencies for $<.
38 @$(SHELL) -c "$(CXX) -M $<" | awk 'BEGIN {N=0}{if(N==0)printf("%s %s\n","$@",$$0);else printf("%s\n", $$0);N+=1;}' > $@
39
40 %.o : $(SRC_DIR)/%.cpp %.dep
41 $(CXX) -c $(CCFLAGS) -o $@ $<
42
43 $(APP_NAME) : $(OBJECTS)
44 $(CXX) -o$@ $^
45
46 saustall: $(OBJECTS:.o=.dep)
47
48 doxy/timestamp: $(OBJECTS)
49 @ if [ ! -d doxy ]; then mkdir doxy; fi
50 @doxygen Doxyfile
51 touch $@
52
53 doxy: doxy/timestamp
54
55 upload: ul_timestamp
56
57 ul_timestamp: doxy/timestamp
58 @cd doxy/html && tar -czf /tmp/doxy.tar.gz *
59 @touch ul_timestamp
60 @scp -q /tmp/doxy.tar.gz ente:/tmp/
61 @ssh ente "rm -rf h316.web/ldc-doc/* && cd h316.web/ldc-doc && tar -xzf /tmp/doxy.tar.gz"
62
63 doc:
64 $(MAKE) -C doc
65
66 all: $(APP_NAME) doxy doc
67
68 .PHONY: all clean doxy upload docdata_block_0_0.o default
69
70 .PRECIOUS: *.dep
71
72 #$(OBJECTS:.o=.d)
73
74 %.hh %.cpp:
75 @ echo "Missing file \"$@\"... No problem :-)"
76
77 include $(wildcard *.dep)
78 #include $(OBJECTS:.o=.dep)