From: Stephen Smalley This patch fixes the SELinux build for "make O=..." by removing the use of -include and eliminating the global.h file, adding appropriate individual #include's to the various files in the security/selinux/ss subdirectory. The compilation error was reported by Sam Ravnborg and again by Adrian Bunk. 25-akpm/security/selinux/ss/Makefile | 3 +-- 25-akpm/security/selinux/ss/avtab.c | 4 ++++ 25-akpm/security/selinux/ss/ebitmap.c | 3 +++ 25-akpm/security/selinux/ss/global.h | 18 ------------------ 25-akpm/security/selinux/ss/hashtab.c | 3 +++ 25-akpm/security/selinux/ss/mls.c | 4 ++++ 25-akpm/security/selinux/ss/policydb.c | 5 +++++ 25-akpm/security/selinux/ss/services.c | 11 +++++++++++ 25-akpm/security/selinux/ss/sidtab.c | 6 ++++++ 25-akpm/security/selinux/ss/symtab.c | 4 ++++ 10 files changed, 41 insertions(+), 20 deletions(-) diff -puN security/selinux/ss/avtab.c~selinux-separate-output-dir-fix security/selinux/ss/avtab.c --- 25/security/selinux/ss/avtab.c~selinux-separate-output-dir-fix Fri Dec 19 17:31:45 2003 +++ 25-akpm/security/selinux/ss/avtab.c Fri Dec 19 17:31:45 2003 @@ -3,6 +3,10 @@ * * Author : Stephen Smalley, */ +#include +#include +#include +#include #include "avtab.h" #include "policydb.h" diff -puN security/selinux/ss/ebitmap.c~selinux-separate-output-dir-fix security/selinux/ss/ebitmap.c --- 25/security/selinux/ss/ebitmap.c~selinux-separate-output-dir-fix Fri Dec 19 17:31:45 2003 +++ 25-akpm/security/selinux/ss/ebitmap.c Fri Dec 19 17:31:45 2003 @@ -3,6 +3,9 @@ * * Author : Stephen Smalley, */ +#include +#include +#include #include "ebitmap.h" #include "policydb.h" diff -puN security/selinux/ss/global.h~selinux-separate-output-dir-fix security/selinux/ss/global.h --- 25/security/selinux/ss/global.h~selinux-separate-output-dir-fix Fri Dec 19 17:31:45 2003 +++ 25-akpm/security/selinux/ss/global.h Fri Dec 19 17:31:45 2003 @@ -1,18 +0,0 @@ -#ifndef _SS_GLOBAL_H_ -#define _SS_GLOBAL_H_ - -#include -#include -#include -#include -#include -#include -#include -#include - -#include "flask.h" -#include "avc.h" -#include "avc_ss.h" -#include "security.h" - -#endif /* _SS_GLOBAL_H_ */ diff -puN security/selinux/ss/hashtab.c~selinux-separate-output-dir-fix security/selinux/ss/hashtab.c --- 25/security/selinux/ss/hashtab.c~selinux-separate-output-dir-fix Fri Dec 19 17:31:45 2003 +++ 25-akpm/security/selinux/ss/hashtab.c Fri Dec 19 17:31:45 2003 @@ -3,6 +3,9 @@ * * Author : Stephen Smalley, */ +#include +#include +#include #include "hashtab.h" struct hashtab *hashtab_create(u32 (*hash_value)(struct hashtab *h, void *key), diff -puN security/selinux/ss/Makefile~selinux-separate-output-dir-fix security/selinux/ss/Makefile --- 25/security/selinux/ss/Makefile~selinux-separate-output-dir-fix Fri Dec 19 17:31:45 2003 +++ 25-akpm/security/selinux/ss/Makefile Fri Dec 19 17:31:45 2003 @@ -2,8 +2,7 @@ # Makefile for building the SELinux security server as part of the kernel tree. # -EXTRA_CFLAGS += -Isecurity/selinux/include -include security/selinux/ss/global.h - +EXTRA_CFLAGS += -Isecurity/selinux/include obj-y := ss.o ss-objs := ebitmap.o hashtab.o symtab.o sidtab.o avtab.o policydb.o services.o diff -puN security/selinux/ss/mls.c~selinux-separate-output-dir-fix security/selinux/ss/mls.c --- 25/security/selinux/ss/mls.c~selinux-separate-output-dir-fix Fri Dec 19 17:31:45 2003 +++ 25-akpm/security/selinux/ss/mls.c Fri Dec 19 17:31:45 2003 @@ -3,6 +3,10 @@ * * Author : Stephen Smalley, */ +#include +#include +#include +#include #include "mls.h" #include "policydb.h" #include "services.h" diff -puN security/selinux/ss/policydb.c~selinux-separate-output-dir-fix security/selinux/ss/policydb.c --- 25/security/selinux/ss/policydb.c~selinux-separate-output-dir-fix Fri Dec 19 17:31:45 2003 +++ 25-akpm/security/selinux/ss/policydb.c Fri Dec 19 17:31:45 2003 @@ -3,6 +3,11 @@ * * Author : Stephen Smalley, */ +#include +#include +#include +#include +#include "security.h" #include "policydb.h" #include "mls.h" diff -puN security/selinux/ss/services.c~selinux-separate-output-dir-fix security/selinux/ss/services.c --- 25/security/selinux/ss/services.c~selinux-separate-output-dir-fix Fri Dec 19 17:31:45 2003 +++ 25-akpm/security/selinux/ss/services.c Fri Dec 19 17:31:45 2003 @@ -10,6 +10,17 @@ * it under the terms of the GNU General Public License version 2, * as published by the Free Software Foundation. */ +#include +#include +#include +#include +#include +#include +#include +#include "flask.h" +#include "avc.h" +#include "avc_ss.h" +#include "security.h" #include "context.h" #include "policydb.h" #include "sidtab.h" diff -puN security/selinux/ss/sidtab.c~selinux-separate-output-dir-fix security/selinux/ss/sidtab.c --- 25/security/selinux/ss/sidtab.c~selinux-separate-output-dir-fix Fri Dec 19 17:31:45 2003 +++ 25-akpm/security/selinux/ss/sidtab.c Fri Dec 19 17:31:45 2003 @@ -3,6 +3,12 @@ * * Author : Stephen Smalley, */ +#include +#include +#include +#include +#include "flask.h" +#include "security.h" #include "sidtab.h" #define SIDTAB_HASH(sid) \ diff -puN security/selinux/ss/symtab.c~selinux-separate-output-dir-fix security/selinux/ss/symtab.c --- 25/security/selinux/ss/symtab.c~selinux-separate-output-dir-fix Fri Dec 19 17:31:45 2003 +++ 25-akpm/security/selinux/ss/symtab.c Fri Dec 19 17:31:45 2003 @@ -3,6 +3,10 @@ * * Author : Stephen Smalley, */ +#include +#include +#include +#include #include "symtab.h" static unsigned int symhash(struct hashtab *h, void *key) _