Initial move to common config code directory
[tpg/opendispense2.git] / src / server / Makefile
index 85678a8..dcd6f0d 100644 (file)
@@ -1,22 +1,44 @@
 # OpenDispense 2
 #
 
-OBJ := main.o server.o logging.o
+INSTALLDIR := /usr/local/opendispense2
+
+OBJ := main.o server.o logging.o config.o
 OBJ += dispense.o itemdb.o
 OBJ += handler_coke.o handler_snack.o handler_door.o
 BIN := ../../dispsrv
 
-LINKFLAGS := -g ../../cokebank.so
+OBJ := $(OBJ:%=obj/%)
+DEPFILES := $(OBJ:%=%.d)
+
+LINKFLAGS := -g ../../cokebank.so -lutil -lident -lmodbus -lsqlite3 -lpthread -Wl,-rpath,. -Wl,-rpath,$(INSTALLDIR)
 CPPFLAGS := 
-CFLAGS := -Wall -g
+CFLAGS := -Wall -Wextra -Werror -g -std=gnu99
 
 .PHONY: all clean
 
 all: $(BIN)
 
 clean:
-       $(RM) $(BIN) $(OBJ)
+       $(RM) $(BIN) $(OBJ) $(DEPFILES)
+
+install: $(BIN)
+       mkdir -p $(INSTALLDIR)
+       cp $(BIN) $(INSTALLDIR)
 
 $(BIN): $(OBJ)
-       $(CC) -o $(BIN) $(LINKFLAGS) $(OBJ)
+       $(CC) -o $(BIN) $(OBJ) $(LINKFLAGS)
+
+obj/%.o: %.c 
+       @mkdir -p $(dir $@)
+       $(CC) -c $< -o $@ $(CFLAGS) $(CPPFLAGS)
+       @cpp $< -MM -MF [email protected]
+       
+
+obj/%.o: ../common/%.c 
+       @mkdir -p $(dir $@)
+       $(CC) -c $< -o $@ $(CFLAGS) $(CPPFLAGS)
+       @cpp $< -MM -MF [email protected]
+
+-include $(DEPFILES)
 

UCC git Repository :: git.ucc.asn.au