doas

https://man.openbsd.org/doas.1
git clone anongit@rnpnr.xyz:doas.git
Log | Files | Refs | Feed

Makefile (1006B)


      1 .POSIX:
      2 
      3 PREFIX = /usr/local
      4 MANPREFIX = $(PREFIX)/share/man
      5 
      6 CFLAGS = -O2 -Icompat -D_BSD_SOURCE
      7 LDFLAGS = -s -static
      8 
      9 SRC = doas.c env.c persist.c y.tab.c\
     10       compat/readpassphrase.c\
     11       compat/reallocarray.c\
     12       compat/setprogname.c\
     13       compat/strtonum.c
     14 OBJ = $(SRC:.c=.o)
     15 
     16 all: doas
     17 
     18 .c.o:
     19 	$(CC) $(CFLAGS) -o $@ -c $<
     20 
     21 y.tab.c:
     22 	yacc parse.y
     23 
     24 clean:
     25 	rm -f *.o compat/*.o doas y.tab.c
     26 
     27 doas: $(OBJ)
     28 	$(CC) -o $@ $(OBJ) $(LDFLAGS)
     29 
     30 install: doas
     31 	mkdir -p $(DESTDIR)$(PREFIX)/bin
     32 	cp -f doas $(DESTDIR)$(PREFIX)/bin
     33 	chmod 4555 $(DESTDIR)$(PREFIX)/bin/doas
     34 	mkdir -p $(DESTDIR)$(MANPREFIX)/man1
     35 	cp doas.1 $(DESTDIR)$(MANPREFIX)/man1/
     36 	chmod 644 $(DESTDIR)$(MANPREFIX)/man1/doas.1
     37 	mkdir -p $(DESTDIR)$(MANPREFIX)/man5
     38 	cp doas.conf.5 $(DESTDIR)$(MANPREFIX)/man5/
     39 	chmod 644 $(DESTDIR)$(MANPREFIX)/man5/doas.conf.5
     40 
     41 uninstall:
     42 	rm -f $(DESTDIR)$(PREFIX)/bin/doas
     43 	rm -f $(DESTDIR)$(MANPREFIX)/man1/doas.1
     44 	rm -f $(DESTDIR)$(MANPREFIX)/man5/doas.conf.5
     45 
     46 .PHONY: all clean install uninstall