*** empty log message ***
[h316.git] / pc-tools / ldc2 / Makefile
index d50c2ee76ed9c324bdfaae6f0064c08560b86d82..2d3c8358aa281313846ea6844037c3cf6b17b58f 100644 (file)
@@ -1,32 +1,45 @@
 APP_NAME=ldc2
-APP_OBJECTS= main.o  silent_code.o 
-
-APP_OBJECTS+= tape_block.o eot_block.o discard_block.o\
+APP_OBJECTS= main.o  silent_code.o argument_reader.o
+CCFLAGS+=-Wall
+BLOCK_OBJECTS=data_block_0_10.o data_block_0_14.o data_block_0_1.o data_block_0_24.o\
+              data_block_0_2.o data_block_0_30.o data_block_0_3.o data_block_0_4.o\
+              data_block_0_50.o data_block_0_54.o data_block_0_60.o data_block_0_44.o\
+              data_block_0_64.o tape_block.o eot_block.o discard_block.o\
               data_block.o data_block_0.o data_block_0_0.o\
-              data_block_0_label_extractor.o       
+              data_block_0_label_extractor.o data_block_1.o data_block_2.o\
+              data_block_3.o data_block_4.o data_block_5.o \
+              data_block_6.o data_block_7.o \
+      
 
-APP_OBJECTS+= data_block_0_10.o data_block_0_14.o data_block_0_1.o data_block_0_24.o\
-              data_block_0_2.o data_block_0_30.o data_block_0_3.o data_block_0_4.o\
-              data_block_0_50.o data_block_0_54.o data_block_0_60.o data_block_0_44.o
+APP_OBJECTS+=$(BLOCK_OBJECTS)
 
 SRC_DIR=src
 
 default: $(APP_NAME)
 
-#All objects depend on all headers. simple but works
-*.o: $(SRC_DIR)/*.hh
+APP_SOURCES=$(foreach obj, $(APP_OBJECTS:.o=.cpp),$(SRC_DIR)/$(obj))
+
+##All objects depend on all headers. simple but works
+#*.o: $(SRC_DIR)/*.hh
+
+%.dep : $(SRC_DIR)/%.cpp
+       @ echo Building dependencies for $<.
+       @$(SHELL) -c  "g++ -M $<" | awk 'BEGIN {N=0}{if(N==0)printf("%s %s\n","$@",$$0);else printf("%s\n", $$0);N+=1;}' >  $@
+       
 
-%.o : $(SRC_DIR)/%.cpp
-       g++ -c -o$@ $<
+%.o : $(SRC_DIR)/%.cpp %.dep
+       g++ -c $(CCFLAGS) -o $@ $<
 
 $(APP_NAME) : $(APP_OBJECTS)
        g++ -o$@ $^
 
+saustall: $(APP_OBJECTS:.o=.dep)
+
 clean: 
-       rm -rf $(APP_NAME) *.o doxy/ $(SRC_DIR)/*~ ul_timestamp
-       $(MAKE) -C doc clean
+       @rm -rf $(APP_NAME) *.o doxy/ $(SRC_DIR)/*~ ul_timestamp *.dep
+       @$(MAKE) -C doc clean
 
-doxy/timestamp: $(SRC_DIR)/*
+doxy/timestamp: $(APP_OBJECTS)
        @ if [ ! -d doxy ]; then mkdir doxy; fi
        @doxygen Doxyfile
        touch $@
@@ -46,3 +59,9 @@ doc:
 all: $(APP_NAME) doxy doc
 
 .PHONY: all clean doxy upload docdata_block_0_0.o
+
+.PRECIOUS: *.dep
+
+#$(APP_OBJECTS:.o=.d)
+
+include $(wildcard *.dep)