]> git.armaanb.net Git - opendoas.git/blobdiff - Makefile
Add copyright clauses to new code.
[opendoas.git] / Makefile
index 191d00faedbe4910211c71ec01af44ad916c63ff..0b9112e6c63d4d168f56165174501086515b6013 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,6 @@
 #      $OpenBSD: Makefile,v 1.9 2014/01/13 01:41:00 tedu Exp $
+#
+# Copyright 2015 Nathan Holstein
 
 SRCS=  parse.y doas.c
 
@@ -6,9 +8,44 @@ PROG=  doas
 MAN=   doas.1 doas.conf.5
 
 BINOWN= root
-BINMODE=4555
+BINGRP= wheel
+BINMODE=4511
 
-CFLAGS+= -I${.CURDIR}
-COPTS+=        -Wall
+COPTS+= -Wall -Wextra -Werror -pedantic -std=c11
+CFLAGS+= -I${CURDIR} -I${CURDIR}/libopenbsd ${COPTS}
 
-.include <bsd.prog.mk>
+BINDIR?=/usr/bin
+MANDIR?=/usr/share/man
+
+default: ${PROG}
+
+OPENBSD:=reallocarray.c strtonum.c execvpe.c setresuid.c \
+       auth_userokay.c setusercontext.c explicit_bzero.c
+OPENBSD:=$(addprefix libopenbsd/,${OPENBSD:.c=.o})
+libopenbsd.a: ${OPENBSD}
+       ${AR} -r $@ $?
+
+OBJS:=${SRCS:.y=.c}
+OBJS:=${OBJS:.c=.o}
+
+${PROG}: ${OBJS} libopenbsd.a
+       ${CC} ${CFLAGS} ${LDFLAGS} $^ -o $@
+
+.%.chmod: %
+       cp $< $@
+       chmod ${BINMODE} $@
+       chown ${BINOWN}:${BINGRP} $@
+
+${BINDIR}/${PROG}: .${PROG}.chmod
+       mv $< $@
+
+install: ${BINDIR}/${PROG}
+
+clean:
+       rm -f libopenbsd.a
+       rm -f ${OPENBSD}
+       rm -f ${OBJS}
+       rm -f ${PROG}
+
+.PHONY: default clean install
+.INTERMEDIATE: .${PROG}.chmod