CC = gcc LD = gcc SRC = src/*.c vendors/*.c build/*.c CFLAGS = -std=c2x -Wall -Wextra -Wno-override-init -iquoteinc -iquotevendors -includeinc/__.h LDFLAGS = LIBS = -lm -lSDL2 -lSDL2_mixer NAME = nulltopos ifeq (@(TUP_PLATFORM),win32) CC = ccache x86_64-w64-mingw32-gcc LD = ccache x86_64-w64-mingw32-gcc LIBS = -lm -lmingw32 -lSDL2main -lSDL2 -lSDL2_mixer -mwindows NAME = $(NAME).exe endif ifeq (@(RELEASE),true) CFLAGS += -O3 LDFLAGS += -O3 -s else CFLAGS += -O0 -g3 LDFLAGS += -O0 -g3 endif : foreach map/*.tmj |> tiled2c %f m%B_tmj | clang-format >%o |> build/%B_tm.c : foreach map/*.tsj |> tiled2c %f %B_tsj | clang-format >%o |> build/%B_ts.c : foreach $(SRC) |> $(CC) -c -o %o $(CFLAGS) %f |> build/%B.o : build/*.o |> $(LD) $(LDFLAGS) -o %o %f $(LIBS) |> build/$(NAME)