lin
2025-07-30 fcd736bf35fd93b563e9bbf594f2aa7b62028cc9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
PREFIX ?= /usr
OPT_SUBDIRS ?= dbus gui mcstrans python restorecond sandbox semodule-utils
SUBDIRS=libsepol libselinux libsemanage checkpolicy secilc policycoreutils $(OPT_SUBDIRS)
PYSUBDIRS=libselinux libsemanage
DISTCLEANSUBDIRS=libselinux libsemanage
 
ifeq ($(DEBUG),1)
   export CFLAGS = -g3 -O0 -gdwarf-2 -fno-strict-aliasing -Wall -Wshadow -Werror
   export LDFLAGS = -g
else
   export CFLAGS ?= -O2 -Werror -Wall -Wextra \
       -Wmissing-format-attribute \
       -Wmissing-noreturn \
       -Wpointer-arith \
       -Wshadow \
       -Wstrict-prototypes \
       -Wundef \
       -Wunused \
       -Wwrite-strings
endif
 
ifneq ($(DESTDIR),)
   LIBDIR ?= $(DESTDIR)$(PREFIX)/lib
   LIBSEPOLA ?= $(LIBDIR)/libsepol.a
 
   CFLAGS += -I$(DESTDIR)$(PREFIX)/include
   LDFLAGS += -L$(DESTDIR)$(PREFIX)/lib -L$(LIBDIR)
   export CFLAGS
   export LDFLAGS
   export LIBSEPOLA
endif
 
all install relabel clean test indent:
   @for subdir in $(SUBDIRS); do \
       (cd $$subdir && $(MAKE) $@) || exit 1; \
   done
 
install-pywrap install-rubywrap swigify:
   @for subdir in $(PYSUBDIRS); do \
       (cd $$subdir && $(MAKE) $@) || exit 1; \
   done
 
distclean:
   @for subdir in $(DISTCLEANSUBDIRS); do \
       (cd $$subdir && $(MAKE) $@) || exit 1; \
   done