# Installation directories.
PREFIX ?= $(DESTDIR)/usr
ETCDIR ?= $(DESTDIR)/etc
BINDIR ?= $(PREFIX)/bin
SBINDIR ?= $(PREFIX)/sbin
SHLIBDIR ?= $(DESTDIR)/lib/rc
AUDITH ?= n
PAMH ?= n

ifeq ($(AUDITH),y)
	CFLAGS += -DUSE_AUDIT
	LDLIBS += -laudit
endif

ifeq ($(PAMH),y)
	override CFLAGS += -DUSE_PAM
	LDLIBS += -lpam -lpam_misc
endif

TARGETS = rmfilecon selinuxconfig sestatus.conf
INSTALLTARGETS = $(patsubst %,install-%,$(TARGETS))

override CFLAGS += -Wall -Werror

.PHONY: all install clean $(INSTALLTARGETS)

all: $(TARGETS)

selinuxconfig: selinuxconfig.c
	$(CC) $(CFLAGS) -o $@ $@.c $(LDFLAGS) -lselinux


install: $(INSTALLTARGETS)

install-selinuxconfig: selinuxconfig
	test -d $(SBINDIR) || install -m 755 -d $(SBINDIR)
	install -m 0755 selinuxconfig $(SBINDIR)

install-sestatus.conf: sestatus.conf
	test -d $(ETCDIR) || install -m 755 -d $(ETCDIR)
	install -m 0644 sestatus.conf $(ETCDIR)

install-rmfilecon: rmfilecon
	test -d $(SBINDIR) || install -m 755 -d $(SBINDIR)
	install -m 0755 rmfilecon $(SBINDIR)

clean: 
	-rm -f rmfilecon selinuxconfig sestatus setexeccon toggle_bool
