1# Installation directories. 2PREFIX ?= $(DESTDIR)/usr 3LIBDIR ?= $(PREFIX)/lib 4SBINDIR ?= $(DESTDIR)/sbin 5INITDIR ?= $(DESTDIR)/etc/rc.d/init.d 6SYSTEMDDIR ?= $(DESTDIR)/usr/lib/systemd 7 8PROG_SRC=mcstrans.c mcscolor.c mcstransd.c mls_level.c 9PROG_OBJS= $(patsubst %.c,%.o,$(PROG_SRC)) 10PROG=mcstransd 11INITSCRIPT=mcstrans 12CFLAGS ?= -Wall -W -Wundef -Wmissing-noreturn -Wmissing-format-attribute 13override CFLAGS += -I$(PREFIX)/include -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 14 15all: $(PROG) 16 17$(PROG): $(PROG_OBJS) 18 $(CC) $(LDFLAGS) -pie -o $@ $^ -lselinux -lcap -lpcre $(LIBDIR)/libsepol.a -L$(LIBDIR) 19 20%.o: %.c 21 $(CC) $(CFLAGS) -fPIE -c -o $@ $< 22 23install: all 24 test -d $(SBINDIR) || install -m 755 -d $(SBINDIR) 25 install -m 755 $(PROG) $(SBINDIR) 26 test -d $(INITDIR) || install -m 755 -d $(INITDIR) 27 install -m 755 $(INITSCRIPT).init $(INITDIR)/$(INITSCRIPT) 28 test -d $(SYSTEMDDIR)/system || install -m 755 -d $(SYSTEMDDIR)/system 29 install -m 644 mcstrans.service $(SYSTEMDDIR)/system/ 30 31clean: 32 -rm -f $(OBJS) $(LOBJS) $(TARGET) $(PROG) $(PROG_OBJS) *~ \#* 33 34