blob: eadb7b09c5400f585c9bd110335050d4ce4727ca (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
include config.mk
Q?=@
SRC=$(wildcard **/*.c)
SRC+=$(wildcard platform/${PLATFORM}/**/*.c)
SRC+=$(wildcard platform/${PLATFORM}/*.c)
OBJ=$(SRC:%.c=.obj/%.o)
.PHONY: all echo run clean full-clean
all: Makefile.dep ${OUT}
echo:
$(Q)echo CFLAGS=${CFLAGS}
$(Q)echo LDFLAGS=${LDFLAGS}
$(Q)echo SRC=${SRC}
$(Q)echo OBJ=${OBJ}
${OUT}: ${OBJ}
$(Q)echo linking $@
$(Q)${CC} -o $@ ${LDFLAGS} ${OBJ}
.obj/%.o: %.c
$(Q)mkdir -p ${@D}
$(Q)echo ${CC} $<
$(Q)${CC} -c -o $@ ${CFLAGS} $<
Makefile.dep: ${SRC}
$(Q)echo update $@
$(Q)${CC} ${CFLAGS} ${SRC} -MM > $@
run: all
${RUN_CMD} ./${OUT}
clean:
rm -f ${OBJ} ${OUT}
# Don't use this unless you are fine with your custom config getting deleted
full-clean: clean
rm -rf .obj config.mk
include Makefile.dep
|