X-Git-Url: https://rtime.felk.cvut.cz/gitweb/coffee/mt-apps.git/blobdiff_plain/7ceb1c7b46ea630cdc16d4ddd37784a765071b61..74d19ac8ff1001a958561364dee7cc72713e3c34:/Makefile diff --git a/Makefile b/Makefile index 096b1ed..d9d1b3c 100644 --- a/Makefile +++ b/Makefile @@ -1,18 +1,52 @@ -SOURCE_FILES = mt_rfid.c -OUTPUT_FILE = mt-rfid +OUTPUT_DIR = build -ifeq ($(OS),Windows_NT) - CC = gcc - CFLAGS += -Wall -O3 -DPORT_NAME="\"\"" - UFR_LIB = -L. -luFCoder-x86_64 +ifeq ($(SIM),) +# Compile for terminal +all: mtrfid mtserver mtkeys mtaio else - UFR_LIB = -luFCoder-armhf +# Compile just simulator +all: mtaio endif -all: $(SOURCE_FILES) - $(CC) $(CFLAGS) -o $(OUTPUT_FILE) $(SOURCE_FILES) $(UFR_LIB) -pthread +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 ($(SIM),) +mtaio_SRCS += mt_rfid.c +mtaio_LIBS += -luFCoder-armhf +else +mtaio_SRCS += mt_sim.c +mtaio_DEFS += -DSIM=1 -Ilibwebsockets/include -Llibwebsockets/lib -g -lz $(shell pkg-config --libs openssl) + +libwebsockets/CMakeLists.txt: + git submodule update --init libwebsockets + +libwebsockets/CMakeCache.txt: libwebsockets/CMakeLists.txt + cd libwebsockets && cmake -DLWS_WITH_LIBEV=ON -DLWS_WITH_SHARED=OFF -DLWS_WITHOUT_TESTAPPS=ON . + +libwebsockets/lib/libwebsockets.a: libwebsockets/CMakeCache.txt + cd libwebsockets && cmake --build . + +mt_server.c: libwebsockets/lib/libwebsockets.a +endif .PHONY: clean clean: - rm -f $(OUTPUT_FILE) + rm -rf $(OUTPUT_DIR) + +.SECONDEXPANSION: +mtserver mtkeys mtaio mtrfid: $$($$@_SRCS) + mkdir -p $(OUTPUT_DIR) + $(CC) $(CFLAGS) $($@_DEFS) -o $(OUTPUT_DIR)/$@ $^ $($@_LIBS)