From b446c985180579f81637e05a8fa2d89fe31822cf Mon Sep 17 00:00:00 2001 From: Philippe Pittoli Date: Wed, 8 Feb 2023 12:05:03 +0100 Subject: [PATCH] Add a makefile (build, install, serve-doc, dist). --- README.md | 8 ++++++++ makefile | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 makefile diff --git a/README.md b/README.md index ae2869f..f4481e5 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,14 @@ Either `make` or `zig build`. For more options, see either the makefile or `build.zig`. +# Install + +``` +make install +# By default, install in the /usr/local/ prefix, but it can be changed. +make install PREFIX=/usr/ +``` + # Usage See the [dedicated repository][examples]. diff --git a/makefile b/makefile new file mode 100644 index 0000000..ee85ce2 --- /dev/null +++ b/makefile @@ -0,0 +1,57 @@ +all: build + +help: + @echo "usage: make [build|install|serve-doc]" + +ZIGOPTIM ?= ReleaseSafe +build: + zig build -Doptimize=$(ZIGOPTIM) + +PREFIX ?= /usr/local +LIBDIR ?= $(PREFIX)/lib +INCLUDEDIR ?= $(PREFIX)/include +install-library: + [ -d $(LIBDIR) ] || install -m 0755 -d $(LIBDIR) + install zig-out/lib/libipc* $(LIBDIR) +install-header: + [ -d $(INCLUDEDIR) ] || install -m 0755 -d $(INCLUDEDIR) + install libipc.h $(INCLUDEDIR) +install: install-library install-header + +uninstall-library: + rm $(LIBDIR)/libipc.a \ + $(LIBDIR)/libipc.so \ + $(LIBDIR)/libipc.so.* +uninstall-header: + rm $(INCLUDEDIR)/libipc.h +uninstall: uninstall-library uninstall-header + +mrproper: + rm -r docs zig-cache zig-out 2>/dev/null || true + +DOC_HTTPD_ACCESS_LOGS ?= /tmp/access.log +DOC_HTTPD_ADDR ?= 127.0.0.1 +DOC_HTTPD_PORT ?= 35000 +serve-doc: + darkhttpd docs/ --addr $(DOC_HTTPD_ADDR) --port $(DOC_HTTPD_PORT) --log $(DOC_HTTPD_ACCESS_LOGS) + +PACKAGE ?= libipc +VERSION ?= 0.1.0 +PKG = $(PACKAGE)-$(VERSION) +dist-dir: + [ -d $(PKG) ] || ln -s . $(PKG) +$(PKG).tar.gz: dist-dir + tar zcf $@ \ + $(PKG)/src \ + $(PKG)/build.zig \ + $(PKG)/libipc.h \ + $(PKG)/makefile* \ + $(PKG)/README* \ + $(PKG)/TODO* +dist-rm-dir: + rm $(PKG) +dist-gz: $(PACKAGE)-$(VERSION).tar.gz +dist: dist-gz dist-rm-dir + +# You can add your specific instructions there. +-include makefile.user