
DESTDIR=
PREFIX=/usr
CFLAGS=
LIBEXEC=$(PREFIX)/lib/unixgroupadmin
BINDIR=$(PREFIX)/bin
MAN1DIR=$(PREFIX)/share/man/man1
MAN5DIR=$(PREFIX)/share/man/man5
ETCDIR=/etc
CONFIG=$(ETCDIR)/unixgroupadmin.conf
PRODS=suid-wrapper ugadmin.inst config.inst group.1 setup-project.1 unixgroupadmin.1

all: $(PRODS)

install: all
	install -m 755 -d "$(DESTDIR)$(LIBEXEC)" "$(DESTDIR)$(BINDIR)" \
		"$(DESTDIR)$(ETCDIR)" "$(DESTDIR)$(MAN1DIR)" \
		"$(DESTDIR)$(MAN5DIR)"
	install -m 755 ugadmin.inst "$(DESTDIR)$(LIBEXEC)/ugadmin"
	install -m 755 checkperms groups-create groups-join \
		groups-part groups-setresp "$(DESTDIR)$(LIBEXEC)"
	install -m 4755 suid-wrapper "$(DESTDIR)$(BINDIR)/group"
	install -m 755 setup-project "$(DESTDIR)$(BINDIR)"
	install -m 644 config.inst "$(DESTDIR)$(CONFIG)"
	install -m 644 group.1 setup-project.1 "$(DESTDIR)$(MAN1DIR)"
	install -m 644 unixgroupadmin.1 "$(DESTDIR)$(MAN5DIR)/unixgroupadmin.conf.5"

clean:
	rm -f $(PRODS) log

suid-wrapper: suid-wrapper.c
	gcc $(CFLAGS) $(LDFLAGS) -D UGADMIN_PATH='"$(LIBEXEC)/ugadmin"' -o $@ $<

ugadmin.inst: ugadmin
	sed -e 's#^CONFIG=.*#CONFIG="$(CONFIG)"#' $< >$@

config.inst: config.liberal
	sed -e 's#^LIBDIR=.*#LIBDIR=$(LIBEXEC)#' $< >$@

%.1: %.stx
	stx2any -Tman -DPAR_CONFIG=$(CONFIG) $< >$@

