disk8: Initial commit
[pdp8.git] / sw / disk8 / Makefile
diff --git a/sw/disk8/Makefile b/sw/disk8/Makefile
new file mode 100644 (file)
index 0000000..08df77e
--- /dev/null
@@ -0,0 +1,64 @@
+
+APP_NAME=disk8
+APP_OBJECTS= disk8.o  ops.o file.o  directory.o logging.o
+
+INCFLAGS=-I ./src
+
+CFLAGS+=-Wall -g  -DVERBOSE_EXTREME $(INCFLAGS)
+
+BUILD_STAMP="\"`uname -a`\""
+VERSION="\"1.0\""
+BUILD_DATE="\"`date` \""
+
+CFLAGS+=-D BUILD_STAMP=$(BUILD_STAMP) -D VERSION=$(VERSION) -D BUILD_DATE=$(BUILD_DATE)\
+
+LDFLAGS=
+
+CC=gcc
+
+OBJECTS=$(APP_OBJECTS)
+
+SRC_DIR=src
+
+APP_SOURCES=$(foreach obj, $(OBJECTS:.o=.c),$(SRC_DIR)/$(obj))
+
+all: $(APP_NAME)
+
+clean: 
+       @echo "CLEAN"
+       @rm -rf $(APP_NAME) *.o doxy/ $(SRC_DIR)/*~ ul_timestamp *.dep *~
+
+
+doxy/timestamp: $(SRC_DIR)/*.c $(SRC_DIR)/*.h
+       @ if [ ! -d doxy ]; then mkdir doxy; fi
+       @doxygen doxygen.conf
+       touch $@
+
+doxy: doxy/timestamp
+
+
+%.dep : $(SRC_DIR)/%.c
+       @ echo "DEP $<"
+       @$(SHELL) -c "gcc -M $(INCFLAGS) $<" \
+       | awk 'BEGIN {N=0}{if(N==0)printf("%s %s\n","$@",$$0);else printf("%s\n", $$0);N+=1;}' >  $@
+
+%.o : $(SRC_DIR)/%.c %.dep
+       @echo "CC $@"
+       @$(CC) -c $(CFLAGS) -o $@ $<
+
+$(APP_NAME) : $(OBJECTS)
+       @echo "LD $@"
+       @$(CC) $(LDFLAGS)   -o$@ $^
+
+saustall: $(OBJECTS:.o=.dep)
+
+.PHONY: all clean default doxy
+
+.PRECIOUS: *.dep
+
+%.h %.c:
+       @ echo "Missing file \"$@\"... No problem :-)"
+
+
+include $(wildcard *.dep)
+#include $(OBJECTS:.o=.dep)
\ No newline at end of file