cmd-make now uses object files
This commit is contained in:
parent
431ed8ee81
commit
321ea234c6
@ -28,12 +28,21 @@ endif
|
|||||||
|
|
||||||
PROGRAM = ${BUNDLE_NAME}${EXE_SUFFIX}
|
PROGRAM = ${BUNDLE_NAME}${EXE_SUFFIX}
|
||||||
|
|
||||||
|
C_SRCS = ${COMMON_DIR}/src/main.c ${TINYWAV_DIR}/tinywav.c ${MIDI_PARSER_DIR}/src/midi-parser.c
|
||||||
|
C_OBJS = $(addprefix build/obj/, $(notdir $(C_SRCS:.c=.o)))
|
||||||
|
|
||||||
all: build/${PROGRAM}
|
all: build/${PROGRAM}
|
||||||
|
|
||||||
build/${PROGRAM}: ${COMMON_DIR}/src/main.c ${DATA_DIR}/src/data.h ${PLUGIN_DIR}/plugin.h ${TINYWAV_DIR}/tinywav.c ${MIDI_PARSER_DIR}/src/midi-parser.c | build
|
build/${PROGRAM}: ${C_OBJS} | build
|
||||||
${CC} ${COMMON_DIR}/src/main.c ${TINYWAV_DIR}/tinywav.c ${MIDI_PARSER_DIR}/src/midi-parser.c -o $@ ${CFLAGS_ALL} ${LDFLAGS_ALL}
|
${CC} $^ -o $@ ${CFLAGS_ALL} ${LDFLAGS_ALL}
|
||||||
|
|
||||||
build:
|
.SECONDEXPANSION:
|
||||||
|
|
||||||
|
PERCENT := %
|
||||||
|
$(C_OBJS): build/obj/%.o: $$(filter $$(PERCENT)/$$(basename $$(notdir $$@)).c,$$(C_SRCS)) | build/obj
|
||||||
|
${CC} $^ -o $@ -c ${CFLAGS_ALL} ${LDFLAGS_ALL}
|
||||||
|
|
||||||
|
build build/obj:
|
||||||
mkdir -p $@
|
mkdir -p $@
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
|
Loading…
Reference in New Issue
Block a user