uapi: export all arch specifics directories
authorNicolas Dichtel <nicolas.dichtel@6wind.com>
Mon, 27 Mar 2017 12:20:16 +0000 (14:20 +0200)
committerMasahiro Yamada <yamada.masahiro@socionext.com>
Wed, 10 May 2017 15:22:17 +0000 (00:22 +0900)
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: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Documentation/kbuild/makefiles.txt
Makefile
arch/cris/include/uapi/asm/Kbuild
arch/tile/include/uapi/asm/Kbuild
scripts/Makefile.headersinst

index b9f7ca4e62ae80d5270e31e21437d4b0a2ea4792..e18daca65ccd2add180e5e74f97d0cc4743677cb 100644 (file)
@@ -49,7 +49,6 @@ This document describes the Linux kernel Makefiles.
                --- 7.3 generic-y
                --- 7.4 generated-y
                --- 7.5 mandatory-y
-               --- 7.6 subdir-y
 
        === 8 Kbuild Variables
        === 9 Makefile language
@@ -1265,7 +1264,7 @@ The pre-processing does:
 - drop all sections that are kernel internal (guarded by ifdef __KERNEL__)
 
 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.
 
 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.
        The convention is to list one subdir per line and
        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
 
 The top Makefile exports the following variables:
index 220121fdca4d43f9df3314f300064ae8a51de28a..4c5a02d301187e53c68005d148a89c0912e6e830 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1128,7 +1128,7 @@ firmware_install:
 export INSTALL_HDR_PATH = $(objtree)/usr
 
 # 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
 archheaders:
@@ -1149,7 +1149,7 @@ headers_install: __headers
        $(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)
+       $(Q)$(MAKE) $(hdr-inst)=arch/$(hdr-arch)/include/uapi $(hdr-dst)
 
 PHONY += headers_check_all
 headers_check_all: headers_install_all
@@ -1158,7 +1158,7 @@ headers_check_all: headers_install_all
 PHONY += headers_check
 headers_check: headers_install
        $(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
index d0c5471856e0a726c16958f97dfe1fb18bd7c89f..b15bf6bc0e94f46f035e8781ffa921060341fe91 100644 (file)
@@ -1,5 +1,2 @@
 # UAPI Header export list
 include include/uapi/asm-generic/Kbuild.asm
-
-subdir-y += ../arch-v10/arch/
-subdir-y += ../arch-v32/arch/
index e0a50111e07fa4f783efeeb44a763946e57ca70f..0c74c3c5ebfa4f6a1c47a9ea4c5ce784bc6188ca 100644 (file)
@@ -2,5 +2,3 @@
 include include/uapi/asm-generic/Kbuild.asm
 
 generic-y += ucontext.h
-
-subdir-y += ../arch
index 20be1fbc19cc8e9a33842288f2c9ffced3397595..6ba97a1f9c5a26304abdf0f043211efe6c273ffc 100644 (file)
@@ -2,7 +2,7 @@
 # Installing headers
 #
 # 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.
 # They are preprocessed to remove __KERNEL__ section of the file.
 #
@@ -30,7 +30,6 @@ installdir    := $(INSTALL_HDR_PATH)/$(subst uapi/,,$(_dst))
 srcdir        := $(srctree)/$(obj)
 gendir        := $(objtree)/$(gen)
 subdirs       := $(patsubst $(srcdir)/%/.,%,$(wildcard $(srcdir)/*/.))
-subdirs       += $(subdir-y)
 header-files  := $(notdir $(wildcard $(srcdir)/*.h))
 header-files  += $(notdir $(wildcard $(srcdir)/*.agh))
 header-files  := $(filter-out $(no-export-headers), $(header-files))