]> git.armaanb.net Git - opendoas.git/blob - GNUmakefile
configure: respect environment and make CFLAGS
[opendoas.git] / GNUmakefile
1 PROG=   doas
2 MAN=    doas.1 doas.conf.5
3
4 SRCS=   parse.y doas.c env.c
5
6 include config.mk
7
8 override CFLAGS:=-I. -Ilibopenbsd -O2 -Wall -Wextra ${OS_CFLAGS} ${CFLAGS}
9
10 all: ${PROG}
11
12 OBJS:=  ${SRCS:.y=.c}
13 OBJS:=  ${OBJS:.c=.o}
14
15 ${PROG}: ${OBJS}
16         ${CC} ${CFLAGS} $^ -o $@ ${LDFLAGS} ${LDLIBS}
17
18 install: ${PROG} ${PAM_DOAS} ${MAN}
19         mkdir -p -m 0755 ${DESTDIR}${BINDIR}
20         [ -n "${PAM_DOAS}" ] && mkdir -p -m 0755 ${DESTDIR}${PAMDIR} || true
21         mkdir -p -m 0755 ${DESTDIR}${MANDIR}/man1
22         mkdir -p -m 0755 ${DESTDIR}${MANDIR}/man5
23         cp -f ${PROG} ${DESTDIR}${BINDIR}
24         chown ${BINOWN}:${BINGRP} ${DESTDIR}${BINDIR}/${PROG}
25         chmod ${BINMODE} ${DESTDIR}${BINDIR}/${PROG}
26         [ -n "${PAM_DOAS}" ] && cp ${PAM_DOAS} ${DESTDIR}${PAMDIR}/doas || true
27         [ -n "${PAM_DOAS}" ] && chmod 0644 ${DESTDIR}${PAMDIR}/doas || true
28         cp -f doas.1 ${DESTDIR}${MANDIR}/man1
29         cp -f doas.conf.5 ${DESTDIR}${MANDIR}/man5
30
31 uninstall:
32         rm -f ${DESTDIR}${BINDIR}/${PROG}
33         rm -f ${DESTDIR}${PAMDIR}/doas
34         rm -f ${DESTDIR}${MANDIR}/man1/doas.1
35         rm -f ${DESTDIR}${MANDIR}/man5/doas.conf.5
36
37 clean:
38         rm -f ${PROG} ${OBJS} ${OBJS:.o=.d} parse.c
39
40 -include ${OBJS:.o=.d}
41
42 .PHONY: all clean install uninstall