You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
Merge tag 'uapi-prep-20121002' of git://git.infradead.org/users/dhowells/linux-headers
Pull preparatory patches for user API disintegration from David Howells:
"The patches herein prepare for the extraction of the Userspace API
bits from the various header files named in the Kbuild files.
New subdirectories are created under either include/uapi/ or
arch/x/include/uapi/ that correspond to the subdirectory containing
that file under include/ or arch/x/include/.
The new subdirs under the uapi/ directory are populated with Kbuild
files that mostly do nothing at this time. Further patches will
disintegrate the headers in each original directory and fill in the
Kbuild files as they do it.
These patches also:
(1) fix up #inclusions of "foo.h" rather than <foo.h>.
(2) Remove some redundant #includes from the DRM code.
(3) Make the kernel build infrastructure handle Kbuild files both in
the old places and the new UAPI place that both specify headers
to be exported.
(4) Fix some kernel tools that #include kernel headers during their
build.
I have compile tested this with allyesconfig against x86_64,
allmodconfig against i386 and a scattering of additional defconfigs of
other arches. Prepared for main script
Signed-off-by: David Howells <dhowells@redhat.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Michael Kerrisk <mtk.manpages@gmail.com>
Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Acked-by: Dave Jones <davej@redhat.com>
Acked-by: H. Peter Anvin <hpa@zytor.com>"
* tag 'uapi-prep-20121002' of git://git.infradead.org/users/dhowells/linux-headers:
UAPI: Plumb the UAPI Kbuilds into the user header installation and checking
UAPI: x86: Differentiate the generated UAPI and internal headers
UAPI: Remove the objhdr-y export list
UAPI: Move linux/version.h
UAPI: Set up uapi/asm/Kbuild.asm
UAPI: x86: Fix insn_sanity build failure after UAPI split
UAPI: x86: Fix the test_get_len tool
UAPI: (Scripted) Set up UAPI Kbuild files
UAPI: Partition the header include path sets and add uapi/ header directories
UAPI: (Scripted) Convert #include "..." to #include <path/...> in kernel system headers
UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/
UAPI: (Scripted) Remove redundant DRM UAPI header #inclusions from drivers/gpu/.
UAPI: Refer to the DRM UAPI headers with <...> and from certain headers only
This commit is contained in:
@@ -45,7 +45,7 @@ This document describes the Linux kernel Makefiles.
|
||||
|
||||
=== 7 Kbuild syntax for exported headers
|
||||
--- 7.1 header-y
|
||||
--- 7.2 objhdr-y
|
||||
--- 7.2 genhdr-y
|
||||
--- 7.3 destination-y
|
||||
--- 7.4 generic-y
|
||||
|
||||
@@ -1282,15 +1282,15 @@ See subsequent chapter for the syntax of the Kbuild file.
|
||||
|
||||
Subdirectories are visited before their parent directories.
|
||||
|
||||
--- 7.2 objhdr-y
|
||||
--- 7.2 genhdr-y
|
||||
|
||||
objhdr-y specifies generated files to be exported.
|
||||
genhdr-y specifies generated files to be exported.
|
||||
Generated files are special as they need to be looked
|
||||
up in another directory when doing 'make O=...' builds.
|
||||
|
||||
Example:
|
||||
#include/linux/Kbuild
|
||||
objhdr-y += version.h
|
||||
genhdr-y += version.h
|
||||
|
||||
--- 7.3 destination-y
|
||||
|
||||
|
||||
@@ -350,12 +350,22 @@ AFLAGS_KERNEL =
|
||||
CFLAGS_GCOV = -fprofile-arcs -ftest-coverage
|
||||
|
||||
|
||||
# Use USERINCLUDE when you must reference the UAPI directories only.
|
||||
USERINCLUDE := \
|
||||
-I$(srctree)/arch/$(hdr-arch)/include/uapi \
|
||||
-Iarch/$(hdr-arch)/include/generated/uapi \
|
||||
-I$(srctree)/include/uapi \
|
||||
-Iinclude/generated/uapi \
|
||||
-include $(srctree)/include/linux/kconfig.h
|
||||
|
||||
# Use LINUXINCLUDE when you must reference the include/ directory.
|
||||
# Needed to be compatible with the O= option
|
||||
LINUXINCLUDE := -I$(srctree)/arch/$(hdr-arch)/include \
|
||||
-Iarch/$(hdr-arch)/include/generated -Iinclude \
|
||||
$(if $(KBUILD_SRC), -I$(srctree)/include) \
|
||||
-include $(srctree)/include/linux/kconfig.h
|
||||
LINUXINCLUDE := \
|
||||
-I$(srctree)/arch/$(hdr-arch)/include \
|
||||
-Iarch/$(hdr-arch)/include/generated \
|
||||
$(if $(KBUILD_SRC), -I$(srctree)/include) \
|
||||
-Iinclude \
|
||||
$(USERINCLUDE)
|
||||
|
||||
KBUILD_CPPFLAGS := -D__KERNEL__
|
||||
|
||||
@@ -437,9 +447,11 @@ asm-generic:
|
||||
# Detect when mixed targets is specified, and make a second invocation
|
||||
# of make so .config is not included in this case either (for *config).
|
||||
|
||||
version_h := include/generated/uapi/linux/version.h
|
||||
|
||||
no-dot-config-targets := clean mrproper distclean \
|
||||
cscope gtags TAGS tags help %docs check% coccicheck \
|
||||
include/linux/version.h headers_% archheaders archscripts \
|
||||
$(version_h) headers_% archheaders archscripts \
|
||||
kernelversion %src-pkg
|
||||
|
||||
config-targets := 0
|
||||
@@ -809,7 +821,7 @@ endif
|
||||
# prepare2 creates a makefile if using a separate output directory
|
||||
prepare2: prepare3 outputmakefile asm-generic
|
||||
|
||||
prepare1: prepare2 include/linux/version.h include/generated/utsrelease.h \
|
||||
prepare1: prepare2 $(version_h) include/generated/utsrelease.h \
|
||||
include/config/auto.conf
|
||||
$(cmd_crmodverdir)
|
||||
|
||||
@@ -842,7 +854,7 @@ define filechk_version.h
|
||||
echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))';)
|
||||
endef
|
||||
|
||||
include/linux/version.h: $(srctree)/Makefile FORCE
|
||||
$(version_h): $(srctree)/Makefile FORCE
|
||||
$(call filechk,version.h)
|
||||
|
||||
include/generated/utsrelease.h: include/config/kernel.release FORCE
|
||||
@@ -887,7 +899,7 @@ PHONY += archscripts
|
||||
archscripts:
|
||||
|
||||
PHONY += __headers
|
||||
__headers: include/linux/version.h scripts_basic asm-generic archheaders archscripts FORCE
|
||||
__headers: $(version_h) scripts_basic asm-generic archheaders archscripts FORCE
|
||||
$(Q)$(MAKE) $(build)=scripts build_unifdef
|
||||
|
||||
PHONY += headers_install_all
|
||||
@@ -896,10 +908,10 @@ headers_install_all:
|
||||
|
||||
PHONY += headers_install
|
||||
headers_install: __headers
|
||||
$(if $(wildcard $(srctree)/arch/$(hdr-arch)/include/asm/Kbuild),, \
|
||||
$(error Headers not exportable for the $(SRCARCH) architecture))
|
||||
$(Q)$(MAKE) $(hdr-inst)=include
|
||||
$(Q)$(MAKE) $(hdr-inst)=arch/$(hdr-arch)/include/asm $(hdr-dst)
|
||||
$(if $(wildcard $(srctree)/arch/$(hdr-arch)/include/uapi/asm/Kbuild),, \
|
||||
$(error Headers not exportable for the $(SRCARCH) architecture))
|
||||
$(Q)$(MAKE) $(hdr-inst)=include/uapi
|
||||
$(Q)$(MAKE) $(hdr-inst)=arch/$(hdr-arch)/include/uapi/asm $(hdr-dst)
|
||||
|
||||
PHONY += headers_check_all
|
||||
headers_check_all: headers_install_all
|
||||
@@ -907,8 +919,8 @@ headers_check_all: headers_install_all
|
||||
|
||||
PHONY += headers_check
|
||||
headers_check: headers_install
|
||||
$(Q)$(MAKE) $(hdr-inst)=include HDRCHECK=1
|
||||
$(Q)$(MAKE) $(hdr-inst)=arch/$(hdr-arch)/include/asm $(hdr-dst) HDRCHECK=1
|
||||
$(Q)$(MAKE) $(hdr-inst)=include/uapi HDRCHECK=1
|
||||
$(Q)$(MAKE) $(hdr-inst)=arch/$(hdr-arch)/include/uapi/asm $(hdr-dst) HDRCHECK=1
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Modules
|
||||
@@ -997,8 +1009,7 @@ CLEAN_DIRS += $(MODVERDIR)
|
||||
# Directories & files removed with 'make mrproper'
|
||||
MRPROPER_DIRS += include/config usr/include include/generated \
|
||||
arch/*/include/generated
|
||||
MRPROPER_FILES += .config .config.old .version .old_version \
|
||||
include/linux/version.h \
|
||||
MRPROPER_FILES += .config .config.old .version .old_version $(version_h) \
|
||||
Module.symvers tags TAGS cscope* GPATH GTAGS GRTAGS GSYMS
|
||||
|
||||
# clean - Delete most, but leave enough to build external modules
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# UAPI Header export list
|
||||
include include/uapi/asm-generic/Kbuild.asm
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
|
||||
#ifndef CONFIG_MMU
|
||||
|
||||
#include "page-nommu.h"
|
||||
#include <asm/page-nommu.h>
|
||||
|
||||
#else
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
#ifndef CONFIG_MMU
|
||||
|
||||
#include <asm-generic/4level-fixup.h>
|
||||
#include "pgtable-nommu.h"
|
||||
#include <asm/pgtable-nommu.h>
|
||||
|
||||
#else
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
*/
|
||||
#include <asm/hwcap.h>
|
||||
|
||||
#include "vfp.h"
|
||||
#include <asm/vfp.h>
|
||||
|
||||
@ Macros to allow building with old toolkits (with no VFP support)
|
||||
.macro VFPFMRX, rd, sysreg, cond
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# UAPI Header export list
|
||||
include include/uapi/asm-generic/Kbuild.asm
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# UAPI Header export list
|
||||
include include/uapi/asm-generic/Kbuild.asm
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# UAPI Header export list
|
||||
include include/uapi/asm-generic/Kbuild.asm
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# UAPI Header export list
|
||||
include include/uapi/asm-generic/Kbuild.asm
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# UAPI Header export list
|
||||
include include/uapi/asm-generic/Kbuild.asm
|
||||
|
||||
+3
-1
@@ -23,7 +23,9 @@ mach-$(CONFIG_ETRAXFS) := fs
|
||||
|
||||
ifneq ($(arch-y),)
|
||||
SARCH := arch-$(arch-y)
|
||||
inc := -Iarch/cris/include/$(SARCH)
|
||||
inc := -Iarch/cris/include/uapi/$(SARCH)
|
||||
inc += -Iarch/cris/include/$(SARCH)
|
||||
inc += -Iarch/cris/include/uapi/$(SARCH)/arch
|
||||
inc += -Iarch/cris/include/$(SARCH)/arch
|
||||
else
|
||||
SARCH :=
|
||||
|
||||
@@ -114,7 +114,7 @@
|
||||
|
||||
/*------------------------------------------------------------*/
|
||||
|
||||
#include "sv_addr.agh"
|
||||
#include <arch/sv_addr.agh>
|
||||
|
||||
#if __test_sv_addr__
|
||||
/* IO_MASK( R_BUS_CONFIG , CE ) */
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#ifndef _ASM_CRIS_SVINTO_H
|
||||
#define _ASM_CRIS_SVINTO_H
|
||||
|
||||
#include "sv_addr_ag.h"
|
||||
#include <arch/sv_addr_ag.h>
|
||||
|
||||
extern unsigned int genconfig_shadow; /* defined and set in head.S */
|
||||
|
||||
|
||||
@@ -1 +1 @@
|
||||
#include "mach/dma.h"
|
||||
#include <mach/dma.h>
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#define dma_h
|
||||
|
||||
/* registers */ /* Really needed, since both are listed in sw.list? */
|
||||
#include "dma_defs.h"
|
||||
#include <arch/hwregs/dma_defs.h>
|
||||
|
||||
|
||||
/* descriptors */
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
# UAPI Header export list
|
||||
@@ -0,0 +1 @@
|
||||
# UAPI Header export list
|
||||
@@ -0,0 +1,5 @@
|
||||
# UAPI Header export list
|
||||
include include/uapi/asm-generic/Kbuild.asm
|
||||
|
||||
header-y += arch-v10/
|
||||
header-y += arch-v32/
|
||||
@@ -0,0 +1,3 @@
|
||||
# UAPI Header export list
|
||||
include include/uapi/asm-generic/Kbuild.asm
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user