Commit 61562f98 authored by Nicolas Dichtel's avatar Nicolas Dichtel Committed by Masahiro Yamada

uapi: export all arch specifics directories

This patch removes the need of subdir-y. Now all files/directories under
arch/<arch>/include/uapi/ are exported.

The only change for userland is the layout of the command 'make
headers_install_all': directories asm-<arch> are replaced by arch-<arch>/.
Those new directories contains all files/directories of the specified arch.

Note that only cris and tile have more directories than only asm:
 - arch-v[10|32] for cris;
 - arch for tile.
Signed-off-by: default avatarNicolas Dichtel <nicolas.dichtel@6wind.com>
Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
parent fcc8487d
...@@ -49,7 +49,6 @@ This document describes the Linux kernel Makefiles. ...@@ -49,7 +49,6 @@ This document describes the Linux kernel Makefiles.
--- 7.3 generic-y --- 7.3 generic-y
--- 7.4 generated-y --- 7.4 generated-y
--- 7.5 mandatory-y --- 7.5 mandatory-y
--- 7.6 subdir-y
=== 8 Kbuild Variables === 8 Kbuild Variables
=== 9 Makefile language === 9 Makefile language
...@@ -1265,7 +1264,7 @@ The pre-processing does: ...@@ -1265,7 +1264,7 @@ The pre-processing does:
- drop all sections that are kernel internal (guarded by ifdef __KERNEL__) - drop all sections that are kernel internal (guarded by ifdef __KERNEL__)
All headers under include/uapi/, include/generated/uapi/, All headers under include/uapi/, include/generated/uapi/,
arch/<arch>/include/uapi/asm/ and arch/<arch>/include/generated/uapi/asm/ arch/<arch>/include/uapi/ and arch/<arch>/include/generated/uapi/
are exported. are exported.
A Kbuild file may be defined under arch/<arch>/include/uapi/asm/ and A Kbuild file may be defined under arch/<arch>/include/uapi/asm/ and
...@@ -1338,18 +1337,6 @@ See subsequent chapter for the syntax of the Kbuild file. ...@@ -1338,18 +1337,6 @@ See subsequent chapter for the syntax of the Kbuild file.
The convention is to list one subdir per line and The convention is to list one subdir per line and
preferably in alphabetic order. preferably in alphabetic order.
--- 7.6 subdir-y
subdir-y may be used to specify a subdirectory to be exported.
Example:
#arch/cris/include/uapi/asm/Kbuild
subdir-y += ../arch-v10/arch/
subdir-y += ../arch-v32/arch/
The convention is to list one subdir per line and
preferably in alphabetic order.
=== 8 Kbuild Variables === 8 Kbuild Variables
The top Makefile exports the following variables: The top Makefile exports the following variables:
......
...@@ -1128,7 +1128,7 @@ firmware_install: ...@@ -1128,7 +1128,7 @@ firmware_install:
export INSTALL_HDR_PATH = $(objtree)/usr export INSTALL_HDR_PATH = $(objtree)/usr
# If we do an all arch process set dst to asm-$(hdr-arch) # If we do an all arch process set dst to asm-$(hdr-arch)
hdr-dst = $(if $(KBUILD_HEADERS), dst=include/asm-$(hdr-arch), dst=include/asm) hdr-dst = $(if $(KBUILD_HEADERS), dst=include/arch-$(hdr-arch), dst=include)
PHONY += archheaders PHONY += archheaders
archheaders: archheaders:
...@@ -1149,7 +1149,7 @@ headers_install: __headers ...@@ -1149,7 +1149,7 @@ headers_install: __headers
$(if $(wildcard $(srctree)/arch/$(hdr-arch)/include/uapi/asm/Kbuild),, \ $(if $(wildcard $(srctree)/arch/$(hdr-arch)/include/uapi/asm/Kbuild),, \
$(error Headers not exportable for the $(SRCARCH) architecture)) $(error Headers not exportable for the $(SRCARCH) architecture))
$(Q)$(MAKE) $(hdr-inst)=include/uapi $(Q)$(MAKE) $(hdr-inst)=include/uapi
$(Q)$(MAKE) $(hdr-inst)=arch/$(hdr-arch)/include/uapi/asm $(hdr-dst) $(Q)$(MAKE) $(hdr-inst)=arch/$(hdr-arch)/include/uapi $(hdr-dst)
PHONY += headers_check_all PHONY += headers_check_all
headers_check_all: headers_install_all headers_check_all: headers_install_all
...@@ -1158,7 +1158,7 @@ headers_check_all: headers_install_all ...@@ -1158,7 +1158,7 @@ headers_check_all: headers_install_all
PHONY += headers_check PHONY += headers_check
headers_check: headers_install headers_check: headers_install
$(Q)$(MAKE) $(hdr-inst)=include/uapi HDRCHECK=1 $(Q)$(MAKE) $(hdr-inst)=include/uapi HDRCHECK=1
$(Q)$(MAKE) $(hdr-inst)=arch/$(hdr-arch)/include/uapi/asm $(hdr-dst) HDRCHECK=1 $(Q)$(MAKE) $(hdr-inst)=arch/$(hdr-arch)/include/uapi/ $(hdr-dst) HDRCHECK=1
# --------------------------------------------------------------------------- # ---------------------------------------------------------------------------
# Kernel selftest # Kernel selftest
......
# UAPI Header export list # UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm include include/uapi/asm-generic/Kbuild.asm
subdir-y += ../arch-v10/arch/
subdir-y += ../arch-v32/arch/
...@@ -2,5 +2,3 @@ ...@@ -2,5 +2,3 @@
include include/uapi/asm-generic/Kbuild.asm include include/uapi/asm-generic/Kbuild.asm
generic-y += ucontext.h generic-y += ucontext.h
subdir-y += ../arch
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
# Installing headers # Installing headers
# #
# All headers under include/uapi, include/generated/uapi, # All headers under include/uapi, include/generated/uapi,
# arch/<arch>/include/uapi/asm and arch/<arch>/include/generated/uapi/asm are # arch/<arch>/include/uapi and arch/<arch>/include/generated/uapi are
# exported. # exported.
# They are preprocessed to remove __KERNEL__ section of the file. # They are preprocessed to remove __KERNEL__ section of the file.
# #
...@@ -30,7 +30,6 @@ installdir := $(INSTALL_HDR_PATH)/$(subst uapi/,,$(_dst)) ...@@ -30,7 +30,6 @@ installdir := $(INSTALL_HDR_PATH)/$(subst uapi/,,$(_dst))
srcdir := $(srctree)/$(obj) srcdir := $(srctree)/$(obj)
gendir := $(objtree)/$(gen) gendir := $(objtree)/$(gen)
subdirs := $(patsubst $(srcdir)/%/.,%,$(wildcard $(srcdir)/*/.)) subdirs := $(patsubst $(srcdir)/%/.,%,$(wildcard $(srcdir)/*/.))
subdirs += $(subdir-y)
header-files := $(notdir $(wildcard $(srcdir)/*.h)) header-files := $(notdir $(wildcard $(srcdir)/*.h))
header-files += $(notdir $(wildcard $(srcdir)/*.agh)) header-files += $(notdir $(wildcard $(srcdir)/*.agh))
header-files := $(filter-out $(no-export-headers), $(header-files)) header-files := $(filter-out $(no-export-headers), $(header-files))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment