PREFIX=/usr/local INCLUDE = -I/usr/local/include/lsup CFLAGS = -shared -DDEBUG -Og -ggdb -Wall -fPIC LDFLAGS = -L/usr/local/lib -llua -llsuprdf_dbg LUAC_SRC = $(wildcard src/*.c) #OBJ = $(patsubst src/%.c, lib/%.so, $(LUAC_SRC)) OBJ = lsup.so OBJPATH = lib/$(OBJ) LUA_VER=5.4 INSTALL_DIR=$(PREFIX)/lib/lua/$(LUA_VER) VALGRIND_LOG=/tmp/lua_lsup_valgrind.log .DEFAULT_GOAL := lib .PHONY: lib lib: $(OBJPATH) $(OBJPATH): src/*.c src/lua_lsup.h $(CC) $(INCLUDE) $(CFLAGS) $(LDFLAGS) -o $@ src/*.c install: $(OBJPATH) mkdir -p $(INSTALL_DIR) cp $(OBJPATH) $(INSTALL_DIR) .PHONY: uninstall uninstall: $(RM) $(INSTALL_DIR)/$(OBJ) .PHONY: clean clean: $(RM) lib/*.so .PHONY: memcheck memcheck: valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes \ --log-fd=9 --suppressions=valgrind-lua-noreadline.supp \ lua -e "dofile 'scratch.lua'" 9>|$(VALGRIND_LOG); \ echo "Log file in $(VALGRIND_LOG)"