k4/Makefile
2025-05-10 19:13:01 +03:00

39 lines
1.5 KiB
Makefile

rwildcard=$(foreach d,$(wildcard $(1:=/*)),$(call rwildcard,$d,$2) $(filter $(subst *,%,$2),$d))
k4_SRCS := $(call rwildcard,src,*.c)
k4_HDRS := $(call rwildcard,src,*.h)
k4_OBJS := $(patsubst src/%.c, build/%.o, $(k4_SRCS))
k4_DEPS := $(patsubst src/%.c, build/%.d, $(k4_SRCS))
k3_SRCS := $(call rwildcard,k3/src,*.c)
k3_HDRS := $(call rwildcard,k3/src,*.h)
k3_OBJS := $(patsubst k3/src/%.c, build/k3/%.o, $(k3_SRCS))
k3_DEPS := $(patsubst k3/src/%.c, build/k3/%.d, $(k3_SRCS))
CFLAGS := $(CFLAGS) -Ik3/src -O2 -fopenmp
ifneq (,$(findstring mingw,$(CC)))
CFLAGS := -static-libgcc -static-libstdc++ -std=gnu99 -march=pentium4 -D_WIN32_WINNT=0x600 -DENET_FEATURE_ADDRESS_MAPPING -fno-pic -no-pie -fms-extensions -fno-pie -Isrc $(CFLAGS)
LIBS := -l:libglfw3.a -lopengl32 -pthread -lm -l:libode.a -l:libvorbisfile.a -l:libvorbis.a -l:libogg.a -lportaudio -lgdi32 -lws2_32 -lwinmm -lstdc++ -lole32 -lsetupapi -lhid -l:liblua5.3.a $(LIBS)
else
CFLAGS := -march=opteron $(SAN) -std=gnu99 -DENET_FEATURE_ADDRESS_MAPPING -fms-extensions -fno-pic -no-pie -fno-pie -Isrc $(CFLAGS)
LIBS := -lglfw3 -pthread -ldl -lm -lode -lstdc++ -llua5.3 -lvorbis -lvorbisfile -lportaudio $(LIBS)
endif
CFLAGS := $(CFLAGS) -DLOCALHOST_ONLY
build/k3/%.o: k3/src/%.c
$(CC) $(CFLAGS) -MMD -o $@ -c $<
build/%.o: src/%.c
$(CC) $(CFLAGS) -MMD -o $@ -c $<
k4: $(k4_OBJS) $(k3_OBJS)
$(CC) $(CFLAGS) -o bin/k4 $(k4_OBJS) $(k3_OBJS) $(LIBS)
include $(k4_DEPS)
include $(k3_DEPS)
$(k4_DEPS): ;
$(k3_DEPS): ;