| 1 | APP_NAME=ldc2 |
| 2 | APP_OBJECTS= main.o silent_code.o argument_reader.o configuration_manager.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\ |
| 8 | data_block.o data_block_0.o data_block_0_0.o\ |
| 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 | |
| 13 | |
| 14 | APP_OBJECTS+=$(BLOCK_OBJECTS) |
| 15 | |
| 16 | SRC_DIR=src |
| 17 | |
| 18 | default: $(APP_NAME) |
| 19 | |
| 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 | nothing% %.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 | |
| 29 | |
| 30 | %.o : $(SRC_DIR)/%.cpp %.dep |
| 31 | g++ -c $(CCFLAGS) -o $@ $< |
| 32 | |
| 33 | $(APP_NAME) : $(APP_OBJECTS) |
| 34 | g++ -o$@ $^ |
| 35 | |
| 36 | saustall: $(APP_OBJECTS:.o=.dep) |
| 37 | |
| 38 | clean: |
| 39 | @rm -rf $(APP_NAME) *.o doxy/ $(SRC_DIR)/*~ ul_timestamp *.dep |
| 40 | @$(MAKE) -C doc clean |
| 41 | |
| 42 | doxy/timestamp: $(APP_OBJECTS) |
| 43 | @ if [ ! -d doxy ]; then mkdir doxy; fi |
| 44 | @doxygen Doxyfile |
| 45 | touch $@ |
| 46 | |
| 47 | doxy: doxy/timestamp |
| 48 | upload: ul_timestamp |
| 49 | |
| 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" |
| 55 | |
| 56 | doc: |
| 57 | $(MAKE) -C doc |
| 58 | |
| 59 | all: $(APP_NAME) doxy doc |
| 60 | |
| 61 | .PHONY: all clean doxy upload docdata_block_0_0.o |
| 62 | |
| 63 | .PRECIOUS: *.dep |
| 64 | |
| 65 | #$(APP_OBJECTS:.o=.d) |
| 66 | |
| 67 | include $(wildcard *.dep) |