1*016d825fSJohn Johansen# Makefile for AppArmor Linux Security Module 2*016d825fSJohn Johansen# 3*016d825fSJohn Johansenobj-$(CONFIG_SECURITY_APPARMOR) += apparmor.o 4*016d825fSJohn Johansen 5*016d825fSJohn Johansenapparmor-y := apparmorfs.o audit.o capability.o context.o ipc.o lib.o match.o \ 6*016d825fSJohn Johansen path.o domain.o policy.o policy_unpack.o procattr.o lsm.o \ 7*016d825fSJohn Johansen resource.o sid.o file.o 8*016d825fSJohn Johansen 9*016d825fSJohn Johansenclean-files: capability_names.h af_names.h 10*016d825fSJohn Johansen 11*016d825fSJohn Johansenquiet_cmd_make-caps = GEN $@ 12*016d825fSJohn Johansencmd_make-caps = echo "static const char *capability_names[] = {" > $@ ; sed -n -e "/CAP_FS_MASK/d" -e "s/^\#define[ \\t]\\+CAP_\\([A-Z0-9_]\\+\\)[ \\t]\\+\\([0-9]\\+\\)\$$/[\\2] = \"\\1\",/p" $< | tr A-Z a-z >> $@ ; echo "};" >> $@ 13*016d825fSJohn Johansen 14*016d825fSJohn Johansenquiet_cmd_make-rlim = GEN $@ 15*016d825fSJohn Johansencmd_make-rlim = echo "static const char *rlim_names[] = {" > $@ ; sed -n --e "/AF_MAX/d" -e "s/^\# \\?define[ \\t]\\+RLIMIT_\\([A-Z0-9_]\\+\\)[ \\t]\\+\\([0-9]\\+\\)\\(.*\\)\$$/[\\2] = \"\\1\",/p" $< | tr A-Z a-z >> $@ ; echo "};" >> $@ ; echo "static const int rlim_map[] = {" >> $@ ; sed -n -e "/AF_MAX/d" -e "s/^\# \\?define[ \\t]\\+\\(RLIMIT_[A-Z0-9_]\\+\\)[ \\t]\\+\\([0-9]\\+\\)\\(.*\\)\$$/\\1,/p" $< >> $@ ; echo "};" >> $@ 16*016d825fSJohn Johansen 17*016d825fSJohn Johansen$(obj)/capability.o : $(obj)/capability_names.h 18*016d825fSJohn Johansen$(obj)/resource.o : $(obj)/rlim_names.h 19*016d825fSJohn Johansen$(obj)/capability_names.h : $(srctree)/include/linux/capability.h 20*016d825fSJohn Johansen $(call cmd,make-caps) 21*016d825fSJohn Johansen$(obj)/af_names.h : $(srctree)/include/linux/socket.h 22*016d825fSJohn Johansen $(call cmd,make-af) 23*016d825fSJohn Johansen$(obj)/rlim_names.h : $(srctree)/include/asm-generic/resource.h 24*016d825fSJohn Johansen $(call cmd,make-rlim) 25