Makefile (2597B)
1 .POSIX: 2 3 include config.mk 4 5 SRC =\ 6 src/alloc.c\ 7 src/bench.c\ 8 src/conv.c\ 9 src/debug.c\ 10 src/dict/impl/table.c\ 11 src/log.c\ 12 src/rand.c\ 13 src/set/impl/table.c\ 14 src/str.c\ 15 src/string.c\ 16 src/unicode.c\ 17 src/unix.c\ 18 src/utf8.c\ 19 src/vmem.c 20 # src/opt.c needs work 21 22 TABLE_DEPS =\ 23 inc/alloc.h\ 24 inc/bits.h\ 25 inc/debug.h\ 26 inc/def.h\ 27 inc/internal/util.h\ 28 inc/rand.h\ 29 inc/simd.h\ 30 inc/string.h\ 31 inc/table/pub-hdr.h\ 32 inc/table/pub-src.h\ 33 inc/table/priv-hdr.h\ 34 inc/table/priv-src.h\ 35 inc/table/static.h\ 36 inc/table/main.h\ 37 inc/table/impl/macros.h\ 38 inc/table/impl/common.h\ 39 inc/table/impl/types.h\ 40 inc/table/impl/decls.h\ 41 inc/table/impl/defs.h\ 42 inc/table/impl/clean.h 43 44 librcx.a: $(SRC:.c=.o) 45 $(AR) -rcs $@ $(SRC:.c=.o) 46 47 .c.o: 48 $(CC) -c -o $@ $(CFLAGS) $< 49 50 src/alloc.o: src/alloc.c inc/alloc.h inc/def.h inc/log.h inc/rcx.h inc/internal/util.h config.mk 51 src/bench.o: src/bench.c inc/bench.h inc/def.h inc/log.h inc/rcx.h config.mk 52 src/conv.o: src/conv.c inc/conv.h inc/debug.h inc/def.h inc/rcx.h config.mk 53 src/debug.o: src/debug.c inc/debug.h inc/def.h inc/rcx.h config.mk 54 src/dict/impl/table.o: src/dict/impl/table.c inc/dict/impl/table.h $(TABLE_DEPS) config.mk 55 src/log.o: src/log.c inc/def.h inc/log.h inc/rcx.h config.mk 56 src/opt.o: src/opt.c inc/def.h inc/opt.h inc/rcx.h config.mk 57 src/rand.o: src/rand.c inc/bits.h inc/def.h inc/rand.h inc/rcx.h inc/unix.h config.mk 58 src/set/impl/table.o: src/set/impl/table.c inc/set/impl/table.h $(TABLE_DEPS) config.mk 59 src/str.o: src/str.c inc/alloc.h inc/debug.h inc/def.h inc/log.h inc/rcx.h inc/str.h config.mk 60 src/string.o: src/string.c inc/alloc.h inc/debug.h inc/def.h inc/rcx.h inc/string.h inc/utf8.h config.mk 61 src/unicode.o: src/unicode.c inc/def.h inc/rcx.h gen/ucattab.inc config.mk 62 src/unix.o: src/unix.c inc/debug.h inc/def.h inc/rcx.h inc/unix.h config.mk 63 src/utf8.o: src/utf8.c inc/def.h inc/rcx.h inc/utf8.h config.mk 64 src/vmem.o: src/vmem.c inc/debug.h inc/def.h inc/log.h inc/rcx.h inc/vmem.h config.mk 65 66 gen/ucattab.inc: gen tool/ucattab gen/UnicodeData.txt 67 tool/ucattab gen/UnicodeData.txt > $@ 68 69 gen/UnicodeData.txt: gen 70 curl --silent $(UNICODE_DATA_URL) > $@ 71 72 gen: 73 mkdir gen 74 75 tool/ucattab: tool/ucattab.c src/alloc.o src/debug.o src/log.o src/str.o 76 $(CC) -o $@ $(CFLAGS) $^ 77 78 install: librcx.a uninstall 79 mkdir -p $(DESTDIR)$(INCPREFIX) 80 cp -rf inc $(DESTDIR)$(INCPREFIX)/rcx 81 mkdir -p $(DESTDIR)$(LIBPREFIX) 82 cp -f librcx.a $(DESTDIR)$(LIBPREFIX)/ 83 84 uninstall: 85 rm -rf $(DESTDIR)$(INCPREFIX)/rcx 86 rm -f $(DESTDIR)$(LIBPREFIX)/librcx.a 87 88 clean: 89 rm -rf librcx.a $(SRC:.c=.o) gen tool/ucattab 90 91 .PHONY: install uninstall clean