57 lines
1.2 KiB
Makefile
57 lines
1.2 KiB
Makefile
# Generated by mklua
|
|
MKLUA ?= ./deps/mklua/mklua
|
|
CC ?= cc
|
|
OUTPUT ?= website
|
|
|
|
BINDIR := bin
|
|
LIBDIR := lib
|
|
SRCDIR := src
|
|
OUTPUT := $(BINDIR)/$(OUTPUT)
|
|
|
|
SOURCES := $(wildcard $(LIBDIR)/*.c)
|
|
OBJECTS := $(SOURCES:%.c=$(BINDIR)/%.o)
|
|
|
|
MKLUA_FLAGS += --path "$(SRCDIR)/?.lua;$(SRCDIR)/?/init.lua" --cpath ""
|
|
MKLUA_FLAGS += --entry
|
|
MKLUA_ENTRY ?= website-main
|
|
MKLUA_OUT := $(OUTPUT).c
|
|
|
|
LIBS := $(shell $(MKLUA) $(MKLUA_FLAGS) $(MKLUA_ENTRY) --libs)
|
|
DEPS := $(shell $(MKLUA) $(MKLUA_FLAGS) $(MKLUA_ENTRY) --deps)
|
|
|
|
CCARGS_LUA ?= $(shell pkg-config --cflags lua5.4)
|
|
LDARGS_LUA ?= $(shell pkg-config --libs lua5.4)
|
|
|
|
CCARGS += $(CCARGS_LUA) $(foreach x,$(LIBS),-I"$(dir $x)")
|
|
LDARGS += $(LDARGS_LUA)
|
|
|
|
ifeq ($(DEBUG), yes)
|
|
CCARGS += -g
|
|
MKLUA_FLAGS += -g
|
|
endif
|
|
|
|
.PHONY: all clean
|
|
|
|
all: $(OUTPUT)
|
|
|
|
clean:
|
|
rm -fr $(BINDIR) $(MKLUA_OUT) deps/luv
|
|
rm -fr deps/mklua
|
|
|
|
compile_flags.txt:
|
|
printf -- '$(foreach v,$(CCARGS) $(LDARGS),\n$v)' > compile_flags.txt
|
|
|
|
$(OUTPUT): $(LIBS) $(MKLUA_OUT) $(SOURCES) | $(dir $(OUTPUT))
|
|
$(CC) $(CCARGS) $(LDARGS) $^ -o $@
|
|
|
|
$(MKLUA_OUT): $(DEPS) | $(dir $(MKLUA_OUT)) $(MKLUA)
|
|
$(MKLUA) $(MKLUA_FLAGS) $(MKLUA_ENTRY) -o $@
|
|
|
|
deps/mklua/mklua:
|
|
|
|
$(MKLUA):
|
|
git submodule update --init deps/mklua
|
|
make -C deps/mklua
|
|
%/:
|
|
mkdir -p $@
|