mirror of
https://github.com/SELinuxProject/selinux
synced 2025-03-03 00:37:37 +00:00
When running "make all" in the root directory on a system where SELinux is not installed and where $DESTDIR targets a directory where the libraries have been installed, the build fails in mcstrans/utils with the following error: transcon.c:7:10: fatal error: 'selinux/selinux.h' file not found and then: /usr/bin/ld: cannot find -lselinux Fix this by adding -I$(PREFIX)/include to CFLAGS and -L$(LIBDIR) to LDLIBS like other subdirectories do. While at it, remove the useless -L../src parameter. Signed-off-by: Nicolas Iooss <nicolas.iooss@m4x.org>
26 lines
508 B
Makefile
26 lines
508 B
Makefile
# Installation directories.
|
|
PREFIX ?= $(DESTDIR)/usr
|
|
LIBDIR ?= $(PREFIX)/lib
|
|
BINDIR ?= $(PREFIX)/sbin
|
|
|
|
CFLAGS ?= -Wall
|
|
override CFLAGS += -I../src -I$(PREFIX)/include -D_GNU_SOURCE
|
|
LDLIBS += -L$(LIBDIR) ../src/mcstrans.o ../src/mls_level.o -lselinux -lpcre $(LIBDIR)/libsepol.a
|
|
|
|
TARGETS=$(patsubst %.c,%,$(wildcard *.c))
|
|
|
|
all: $(TARGETS)
|
|
|
|
install: all
|
|
-mkdir -p $(BINDIR)
|
|
install -m 755 $(TARGETS) $(BINDIR)
|
|
|
|
test:
|
|
./mlstrans-test-runner.py ../test/*.test
|
|
|
|
clean:
|
|
rm -f $(TARGETS) *.o *~ \#*
|
|
|
|
relabel:
|
|
|