Mercurial > libunicode
view GNUmakefile @ 28:f06312a7432b
cmake: enable tests
author | David Demelier <markand@malikania.fr> |
---|---|
date | Tue, 07 Feb 2023 14:30:33 +0100 |
parents | Makefile@4da5819148c6 |
children |
line wrap: on
line source
# # GNUmakefile -- GNU Makefile for libunicode # # Copyright (c) 2013-2023 David Demelier <markand@malikania.fr> # # Permission to use, copy, modify, and/or distribute this software for any # purpose with or without fee is hereby granted, provided that the above # copyright notice and this permission notice appear in all copies. # # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # PREFIX := /usr/local INCDIR := $(PREFIX)/include LIBDIR := $(PREFIX)/lib MANDIR := $(PREFIX)/share/man VERSION := 1.0.0 LIB_SRCS := unicode.c LIB_OBJS := $(LIB_SRCS:.c=.o) LIB_DEPS := $(LIB_SRCS:.c=.d) LIB := libunicode.a TESTS_SRCS := tests/test-unicode.c TESTS_OBJS := $(TESTS_SRCS:.c=) override CFLAGS += -fPIC all: $(LIB) gen/UnicodeData.txt: curl http://unicode.org/Public/UCD/latest/ucd/UnicodeData.txt -o $@ unicode.c: gen/UnicodeData.txt gen/mkutf.awk cat gen/unicode-before.c > unicode.c cat gen/UnicodeData.txt | awk -f gen/mkutf.awk >> unicode.c cat gen/unicode-after.c >> unicode.c $(LIB): $(LIB_OBJS) $(AR) -rc $@ $(LIB_OBJS) $(TESTS_OBJS): | $(LIB) $(TESTS_OBJS): private CFLAGS += -Iextern/libdt -I. $(TESTS_OBJS): private LDLIBS += $(LIB) tests: $(TESTS_OBJS) for t in $(TESTS_OBJS); do ./$$t; done install: mkdir -p $(DESTDIR)$(LIBDIR) cp libunicode.a $(DESTDIR)$(LIBDIR) mkdir -p $(DESTDIR)$(INCDIR) cp unicode.h $(DESTDIR)$(INCDIR) mkdir -p $(DESTDIR)$(MANDIR)/man3 cp libunicode.3 $(DESTDIR)$(MANDIR)/man3 clean: rm -f $(LIB) $(LIB_DEPS) $(LIB_OBJS) $(TESTS_OBJS) .PHONY: all clean install tests