#!/usr/bin/env -S gmake -f GLAD ?= glad MKDIR ?= mkdir -p libs ::= openmpt fluidsynth cflags ::= -I . -g -Og ${CFLAGS} ldflags ::= -Wl,--rpath,'$$ORIGIN' $(addprefix -l,${libs}) ${LDFLAGS} srcs ::= $(wildcard src/modules/*.c) objs ::= $(addprefix out/,$(notdir ${srcs:.c=.o})) deps ::= $(addprefix out/,$(notdir ${srcs:.c=.d})) .PHONY: all run clean all: out/mu-SDL2 out/mu-portaudio run: out/mu-SDL2 ./$< clean: ${RM} -r out/ out/: ${MKDIR} $@ out/%.o: src/modules/%.c out/%.d | out/ ${CC} -c -o $@ $< ${cflags} out/%.d: src/modules/%.c | out/ ${CC} ${cflags} ${CPPFLAGS} -MM -MG -MF $@ -MT "${@:.d=.o} $@" $< out/%.o: src/%.c out/%.d | out/ ${CC} -c -o $@ $< ${cflags} out/%.d: src/%.c | out/ ${CC} ${cflags} ${CPPFLAGS} -MM -MG -MF $@ -MT "${@:.d=.o} $@" $< out/mu-%: out/%.o ${objs} | out/ ${CC} -o $@ $^ ${cflags} ${ldflags} -l${<:out/%.o=%} include ${deps}