revamp Makefile
[rofl0r-agsutils.git] / Makefile
blobd5776cbfb054bfd4167dd4f7a785e80191b651b2
1 PROGS_SRCS = \
2 agstract.c \
3 agspack.c \
4 agscriptxtract.c \
5 agssemble.c \
6 agsdisas.c \
7 agsinject.c
9 PROGS_OBJS = $(PROGS_SRCS:.c=.o)
10 PROGS = $(PROGS_SRCS:.c=)
12 LIB_SRCS = \
13 Assembler.c \
14 ByteArray.c \
15 Clib32.c \
16 DataFile.c \
17 File.c \
18 List.c \
19 MemGrow.c \
20 RoomFile.c \
21 Script.c \
22 StringEscape.c
24 LIB_OBJS = $(LIB_SRCS:.c=.o)
26 CFLAGS_WARN = -Wall -Wextra
28 -include config.mak
30 all: $(PROGS)
32 $(PROGS): $(LIB_OBJS)
34 %.o: %.c
35 $(CC) $(CPPFLAGS) $(CFLAGS) $(CFLAGS_WARN) -o $@ -c $<
37 %: %.o $(LIB_OBJS)
38 $(CC) $(CPPFLAGS) $(CFLAGS) $(CFLAGS_WARN) -o $@ $^ $(LDFLAGS)
40 rcb:
41 make -f Makefile.binary FNAME=agstract
42 make -f Makefile.binary FNAME=agspack
43 make -f Makefile.binary FNAME=agscriptxtract
44 make -f Makefile.binary FNAME=agssemble
45 make -f Makefile.binary FNAME=agsdisas
46 make -f Makefile.binary FNAME=agsinject
48 clean:
49 rm -f $(PROGS) $(LIB_OBJS) $(PROGS_OBJS)
50 rm -f *.out
51 rm -f *.o
52 rm -f *.rcb
54 .PHONY: all clean