Makefile: improve Makefile, sync from hurl Makefile - gopherproxy-c - Gopher HTTP proxy in C (CGI) (HTM) git clone git://git.codemadness.org/gopherproxy-c (DIR) Log (DIR) Files (DIR) Refs (DIR) README (DIR) LICENSE --- (DIR) commit ec71ea5200ff67c6c121dca56c8e50772488163c (DIR) parent 7f0e6929a919fc00a9af4b4858a4d43a89a25e05 (HTM) Author: Hiltjo Posthuma <hiltjo@codemadness.org> Date: Sat, 3 Aug 2024 15:03:26 +0200 Makefile: improve Makefile, sync from hurl Makefile Diffstat: M Makefile | 52 +++++++++++++++++++++++++------ 1 file changed, 42 insertions(+), 10 deletions(-) --- (DIR) diff --git a/Makefile b/Makefile @@ -1,19 +1,51 @@ .POSIX: -BIN = gopherproxy -OBJ = $(BIN:=.o) +NAME = gopherproxy +VERSION = 0.1 + +PREFIX = /usr/local +BINDIR = ${PREFIX}/bin +MANDIR = ${PREFIX}/man/man1 + +GOPHER_CFLAGS = ${CFLAGS} +GOPHER_LDFLAGS = ${LDFLAGS} +GOPHER_CPPFLAGS = -D_DEFAULT_SOURCE -D_GNU_SOURCE -D_BSD_SOURCE # build static: useful in www chroot. -LDFLAGS += -static -# Linux -#CPPFLAGS += -D_DEFAULT_SOURCE +GOPHER_LDFLAGS = ${LDFLAGS} -static + +SRC = gopherproxy.c +OBJ = ${SRC:.c=.o} + +all: ${NAME} -all: $(BIN) +.c.o: + ${CC} ${GOPHER_CFLAGS} ${GOPHER_CPPFLAGS} -c $< -$(BIN): $(OBJ) - $(CC) $(OBJ) $(LDFLAGS) -o $@ +${OBJ}: -$(OBJ): Makefile +${NAME}: ${OBJ} + ${CC} -o $@ ${OBJ} ${GOPHER_LDFLAGS} clean: - rm -f $(BIN) $(OBJ) + rm -f ${NAME} ${OBJ} ${NAME}-${VERSION}.tar.gz + +install: all + mkdir -p "${DESTDIR}${BINDIR}" + cp -f ${NAME} "${DESTDIR}${BINDIR}" + chmod 755 "${DESTDIR}${BINDIR}/${NAME}" + mkdir -p "${DESTDIR}${MANDIR}" + +uninstall: + rm -f "${DESTDIR}${BINDIR}/${NAME}" + +dist: clean + rm -rf "${NAME}-${VERSION}" + mkdir -p ${NAME}-${VERSION} + cp -R README LICENSE Makefile \ + ${NAME}.c ${NAME}-${VERSION} + tar cf - ${NAME}-${VERSION} | \ + gzip -c > "${NAME}-${VERSION}.tar.gz" + rm -rf "${NAME}-${VERSION}" + +.PHONY: all clean dist install uninstall