wangzhengquan
2020-12-04 aa2f3b2a9968bb4928463bdae05fb026d16b60bb
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
.PHONY: help
help:
    @make --print-data-base --question no-such-target | \
    grep -v -e '^no-such-target' -e '^makefile' |       \
    awk '/^[^.%][-A-Za-z0-9_]*:/                        \
        { print substr($$1, 1, length($$1)-1) }' |      \
    sort |                                              \
    pr --omit-pagination --width=80 --columns=4         \
 
 
 
$(DEST)/%.d: %.c
    @echo generating dependences of $< ...
    @test -d $(DEST)/$(shell dirname $<) || mkdir -p $(DEST)/$(shell dirname $<); \
    $(CC) -M $(CPPFLAGS) $< > $@.$$$$;                      \
    sed 's,\($*\)\.o[ :]*,$(DEST)/\1 $(DEST)/\1.o $@ : ,g' < $@.$$$$ > $@;     \
    rm -f $@.$$$$
 
$(DEST)/%.o: %.c
    $(CC) ${CPPFLAGS} $(CFLAGS) -c $(filter %.c, $^) -o $@
 
$(DEST)/%/%.o: %.c
    $(CC) ${CPPFLAGS} $(CFLAGS) -c $(filter %.c, $^) -o $@
 
${DEST}/%:    %.o
    $(CC) $(LDFLAGS) $(filter %.o, $^) -o $@ $(LDLIBS)
 
${DEST}/%:    %.c
    $(CC) ${CPPFLAGS} $(CFLAGS) $(LDFLAGS) $(filter %.c, $^) -o $@ $(LDLIBS)
 
gdb:
    gdb -n -x .gdbinit