X-Git-Url: https://rtime.felk.cvut.cz/gitweb/coffee/mt-apps.git/blobdiff_plain/20fa17a2d0037bc29d80a14570f1411b34e671b6..f75a57f37770949aa1643a20fe47a56b85393ba3:/Makefile diff --git a/Makefile b/Makefile index 34bece4..3706856 100644 --- a/Makefile +++ b/Makefile @@ -1,17 +1,45 @@ -OUTPUT_FILE = mt-rfid +OUTPUT_DIR = build -ifeq ($(OS),Windows_NT) - CC = gcc - CFLAGS += -Wall -O3 -DPORT_NAME="\"\"" - UFR_LIB = -L. -luFCoder-x86_64 +CFLAGS = -Ilibwebsockets/include -Llibwebsockets/lib +can_compile = $(shell if echo '$(1)' | $(CC) $(CFLAGS) -c -xc - -o /dev/null >/dev/null 2>&1; then echo yes; fi) +HAVE_RFID := $(call can_compile,\#include ) + +ifeq ($(HAVE_RFID),yes) +all: mtrfid else - UFR_LIB = -luFCoder-armhf +$(warning Compiling without RFID support) endif -all: mt_rfid.c mt_rfid.h - $(CC) $(CFLAGS) -o $(OUTPUT_FILE) mt_rfid.c $(UFR_LIB) +mtrfid_SRCS = signal_exit.c mt_rfid.c +mtrfid_LIBS = -lev -luFCoder-armhf +mtrfid_DEFS = -DHAVE_RFID=1 + +mtserver_SRCS = signal_exit.c mt_server.c +mtserver_LIBS = -lev -lwebsockets + +mtkeys_SRCS = signal_exit.c mt_keys.c +mtkeys_LIBS = -lev + +mtaio_SRCS = signal_exit.c mt_keys.c mt_server.c mt_aio.c mt_blank.c +mtaio_LIBS = -lev -lwebsockets +mtaio_DEFS = -DNO_MAIN -DHAVE_RFID=$(if $(HAVE_RFID),1,0) + +ifeq ($(HAVE_RFID),yes) +mtaio_SRCS += mt_rfid.c +mtaio_LIBS += -luFCoder-armhf +else +mtaio_SRCS += mt_sim.c +mtaio_DEFS += -DSIM=1 +endif + +all: mtserver mtkeys mtaio .PHONY: clean clean: - rm $(OUTPUT_FILE) + rm -rf $(OUTPUT_DIR) + +.SECONDEXPANSION: +mt%: $$($$@_SRCS) + mkdir -p $(OUTPUT_DIR) + $(CC) $(CFLAGS) $($@_DEFS) -o $(OUTPUT_DIR)/$@ $^ $($@_LIBS)