xref: /aosp_15_r20/external/selinux/Makefile (revision 2d543d20722ada2425b5bdab9d0d1d29470e7bba)
1*2d543d20SAndroid Build Coastguard WorkerPREFIX ?= /usr
2*2d543d20SAndroid Build Coastguard WorkerOPT_SUBDIRS ?= dbus gui mcstrans python restorecond sandbox semodule-utils
3*2d543d20SAndroid Build Coastguard WorkerSUBDIRS=libsepol libselinux libsemanage checkpolicy secilc policycoreutils $(OPT_SUBDIRS)
4*2d543d20SAndroid Build Coastguard WorkerPYSUBDIRS=libselinux libsemanage
5*2d543d20SAndroid Build Coastguard WorkerDISTCLEANSUBDIRS=libselinux libsemanage
6*2d543d20SAndroid Build Coastguard Worker
7*2d543d20SAndroid Build Coastguard Workerifeq ($(DEBUG),1)
8*2d543d20SAndroid Build Coastguard Worker	export CFLAGS = -g3 -O0 -gdwarf-2 -fno-strict-aliasing -Wall -Wshadow -Werror
9*2d543d20SAndroid Build Coastguard Worker	export LDFLAGS = -g
10*2d543d20SAndroid Build Coastguard Workerelse
11*2d543d20SAndroid Build Coastguard Worker	export CFLAGS ?= -O2 -Werror -Wall -Wextra \
12*2d543d20SAndroid Build Coastguard Worker		-Wfloat-equal \
13*2d543d20SAndroid Build Coastguard Worker		-Wformat=2 \
14*2d543d20SAndroid Build Coastguard Worker		-Winit-self \
15*2d543d20SAndroid Build Coastguard Worker		-Wmissing-format-attribute \
16*2d543d20SAndroid Build Coastguard Worker		-Wmissing-noreturn \
17*2d543d20SAndroid Build Coastguard Worker		-Wmissing-prototypes \
18*2d543d20SAndroid Build Coastguard Worker		-Wnull-dereference \
19*2d543d20SAndroid Build Coastguard Worker		-Wpointer-arith \
20*2d543d20SAndroid Build Coastguard Worker		-Wshadow \
21*2d543d20SAndroid Build Coastguard Worker		-Wstrict-prototypes \
22*2d543d20SAndroid Build Coastguard Worker		-Wundef \
23*2d543d20SAndroid Build Coastguard Worker		-Wunused \
24*2d543d20SAndroid Build Coastguard Worker		-Wwrite-strings \
25*2d543d20SAndroid Build Coastguard Worker		-fno-common
26*2d543d20SAndroid Build Coastguard Workerendif
27*2d543d20SAndroid Build Coastguard Worker
28*2d543d20SAndroid Build Coastguard Workerifneq ($(DESTDIR),)
29*2d543d20SAndroid Build Coastguard Worker	LIBDIR ?= $(DESTDIR)$(PREFIX)/lib
30*2d543d20SAndroid Build Coastguard Worker	LIBSEPOLA ?= $(LIBDIR)/libsepol.a
31*2d543d20SAndroid Build Coastguard Worker
32*2d543d20SAndroid Build Coastguard Worker	CFLAGS += -I$(DESTDIR)$(PREFIX)/include
33*2d543d20SAndroid Build Coastguard Worker	LDFLAGS += -L$(DESTDIR)$(PREFIX)/lib -L$(LIBDIR)
34*2d543d20SAndroid Build Coastguard Worker	export CFLAGS
35*2d543d20SAndroid Build Coastguard Worker	export LDFLAGS
36*2d543d20SAndroid Build Coastguard Worker	export LIBSEPOLA
37*2d543d20SAndroid Build Coastguard Workerendif
38*2d543d20SAndroid Build Coastguard Worker
39*2d543d20SAndroid Build Coastguard Workerall install relabel clean test indent:
40*2d543d20SAndroid Build Coastguard Worker	@for subdir in $(SUBDIRS); do \
41*2d543d20SAndroid Build Coastguard Worker		(cd $$subdir && $(MAKE) $@) || exit 1; \
42*2d543d20SAndroid Build Coastguard Worker	done
43*2d543d20SAndroid Build Coastguard Worker
44*2d543d20SAndroid Build Coastguard Workerinstall-pywrap install-rubywrap swigify:
45*2d543d20SAndroid Build Coastguard Worker	@for subdir in $(PYSUBDIRS); do \
46*2d543d20SAndroid Build Coastguard Worker		(cd $$subdir && $(MAKE) $@) || exit 1; \
47*2d543d20SAndroid Build Coastguard Worker	done
48*2d543d20SAndroid Build Coastguard Worker
49*2d543d20SAndroid Build Coastguard Workerdistclean:
50*2d543d20SAndroid Build Coastguard Worker	@for subdir in $(DISTCLEANSUBDIRS); do \
51*2d543d20SAndroid Build Coastguard Worker		(cd $$subdir && $(MAKE) $@) || exit 1; \
52*2d543d20SAndroid Build Coastguard Worker	done
53