comparison Makefile.gen @ 123:e0880165f379

Use generic build stuff from thlibs Makefile.inc.
author Matti Hamalainen <ccr@tnsp.org>
date Wed, 09 Mar 2016 14:03:33 +0200
parents 9fb96c170bbc
children 18f61c69733d
comparison
equal deleted inserted replaced
122:9fb96c170bbc 123:e0880165f379
1 CFLAGS += -W -Wall -Wextra -std=c11 -pedantic -I./ -D_XOPEN_SOURCE=500 1 CFLAGS += -W -Wall -Wextra -std=c11 -pedantic -I./ -D_XOPEN_SOURCE=500
2 CFLAGS += -g 2 CFLAGS += -g
3 CFLAGS += -O2 3 CFLAGS += -O2
4 THLIBS = th-libs/ 4 THLIBS = th-libs/
5 5
6 MKDIR ?= mkdir
7 MKDIR_P ?= $(MKDIR) -p
8 6
9 # 7 #
10 # Objects 8 # Objects
11 # 9 #
12 THLIBS_A=$(OBJPATH)thlibs.a 10 THLIBS_A=$(OBJPATH)thlibs.a
13 THLIBS_OBJ=th_util.o th_string.o th_ioctx.o th_args.o th_crypto.o 11 THLIBS_OBJ=th_util.o th_string.o th_ioctx.o th_args.o th_crypto.o
14 12
15
16 SIDINFO_OBJ=sidlib.o sidinfo.o 13 SIDINFO_OBJ=sidlib.o sidinfo.o
17 SIDINFO_BIN=$(BINPATH)sidinfo$(EXEEXT) 14 SIDINFO_BIN=$(BINPATH)sidinfo$(EXEEXT)
18 15
19 TARGETS += $(SIDINFO_BIN) 16 TARGETS += $(SIDINFO_BIN)
20 NOBUILD_TARGETS += $(OBJPATH) $(BINPATH)
21 NOINST_TARGETS += $(THLIBS_A)
22
23
24 #
25 # Target rules
26 #
27 all: $(NOBUILD_TARGETS) $(NOINST_TARGETS) $(TARGETS)
28
29 $(THLIBS)th_string.c: $(addprefix $(THLIBS), th_printf1.c th_strmatch.c th_string.h)
30 touch $@
31
32 $(OBJPATH) $(BINPATH):
33 @echo " MKDIR $@"
34 @$(MKDIR_P) $@
35
36 $(OBJPATH)%.o: $(THLIBS)%.c $(THLIBS)%.h $(THLIBS_DEP)
37 @echo " CC $@ $+"
38 @$(CC) $(CFLAGS) -c -o $@ $<
39
40 $(OBJPATH)%.o: %.c %.h $(THLIBS_DEP)
41 @echo " CC $@ $+"
42 @$(CC) $(CFLAGS) -c -o $@ $< -I$(THLIBS)
43
44 $(OBJPATH)%.o: %.c $(THLIBS_DEP)
45 @echo " CC $@"
46 @$(CC) $(CFLAGS) -c -o $@ $< -I$(THLIBS)
47
48
49 $(THLIBS_A): $(addprefix $(OBJPATH),$(THLIBS_OBJ))
50 @echo " AR $@"
51 @$(AR) cru $@ $(addprefix $(OBJPATH),$(THLIBS_OBJ))
52 @$(RANLIB) $@
53 17
54 $(SIDINFO_BIN): $(addprefix $(OBJPATH),$(SIDINFO_OBJ)) $(THLIBS_A) $(EXTRAOBJS) 18 $(SIDINFO_BIN): $(addprefix $(OBJPATH),$(SIDINFO_OBJ)) $(THLIBS_A) $(EXTRAOBJS)
55 @echo " LINK $@" 19 @echo " LINK $@"
56 @$(CC) $(CFLAGS) -o $@ $+ $(LDFLAGS) 20 @$(CC) $(CFLAGS) -o $@ $+ $(LDFLAGS)
57 21
58 # 22 include $(THLIBS)/Makefile.inc
59 # Special targets
60 #
61 clean:
62 $(RM) $(TARGETS) $(NOINST_TARGETS) $(OBJPATH)*.o
63
64 srcclean: clean
65 $(RM) *~
66