rcx

miscellaneous C library
git clone git://git.rr3.xyz/rcx
Log | Files | Refs | README | LICENSE

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