In v4.12-rc1, we had a big progress for headers_install. All (and only) headers under UAPI directories are exported. However, asm-generic wrappers are still exceptions because most of arch/*/include/asm/Kbuild include "generic-y" for exported headers. As a result, many of generic-wrappers to be exported are generated outside UAPI directories. To finish de-coupling UAPI, "generic-y" for exported headers should be moved to arch/*/include/uapi/asm/Kbuild. With those cleanups, the logic of headers_install will become even simpler. UAPI will be completely self-contained. This series is based on v4.12-rc2 tag. This series touches Kbuild files under arch/. We have two options to merge this series. [1] I will collect Acked-by from arch maintainers, then apply the whole series to the Kbuild tree. [2] I will ask arch maintainers to pick up arch changes (for v4.13), then apply Makefile changes to the Kbuild tree (for v4.14). [1] will finish this work by v4.13, but need to deal with some conflicts. [2] will allow us to reduce conflicts (still a bit conflicts), but take more time to finish this work. If arch maintainers ack [1], I can manage conflicts before sending a pull request to Linus. Masahiro Yamada (27): kbuild: remove useless $(gen) variable in Makefile.headersinst kbuild: fix comment about dst of headers_{install,check}_all kbuild: pass dst= to Makefile.headersinst from top Makefile arm64: move generic-y of exported headers to uapi/asm/Kbuild ARM: move generic-y of exported headers to uapi/asm/Kbuild arc: move generic-y of exported headers to uapi/asm/Kbuild blackfin: move generic-y of exported headers to uapi/asm/Kbuild c6x: move generic-y of exported headers to uapi/asm/Kbuild cris: move generic-y of exported headers to uapi/asm/Kbuild h8300: move generic-y of exported headers to uapi/asm/Kbuild hexagon: move generic-y of exported headers to uapi/asm/Kbuild ia64: move generic-y of exported headers to uapi/asm/Kbuild m32r: move generic-y of exported headers to uapi/asm/Kbuild m68k: move generic-y of exported headers to uapi/asm/Kbuild metag: move generic-y of exported headers to uapi/asm/Kbuild nios2: remove unneeded arch/nios2/include/(generated/)asm/signal.h nios2: move generic-y of exported headers to uapi/asm/Kbuild openrisc: move generic-y of exported headers to uapi/asm/Kbuild parisc: move generic-y of exported headers to uapi/asm/Kbuild sh: move generic-y of exported headers to uapi/asm/Kbuild sparc: move generic-y of exported headers to uapi/asm/Kbuild tile: move generic-y of exported headers to uapi/asm/Kbuild unicore32: move generic-y of exported headers to uapi/asm/Kbuild xtensa: move generic-y of exported headers to uapi/asm/Kbuild kbuild: do not include old-kbuild-file from Makefile.headersinst kbuild: split exported generic header creation into uapi-asm-generic kbuild: remove wrapper files handling from Makefile.headersinst Makefile | 13 +++++++------ arch/arc/include/asm/Kbuild | 25 ------------------------- arch/arc/include/uapi/asm/Kbuild | 26 ++++++++++++++++++++++++++ arch/arm/include/asm/Kbuild | 17 ----------------- arch/arm/include/uapi/asm/Kbuild | 16 ++++++++++++++++ arch/arm64/include/asm/Kbuild | 17 ----------------- arch/arm64/include/uapi/asm/Kbuild | 16 ++++++++++++++++ arch/blackfin/include/asm/Kbuild | 22 ---------------------- arch/blackfin/include/uapi/asm/Kbuild | 22 ++++++++++++++++++++++ arch/c6x/include/asm/Kbuild | 27 --------------------------- arch/c6x/include/uapi/asm/Kbuild | 26 ++++++++++++++++++++++++++ arch/cris/include/asm/Kbuild | 18 ------------------ arch/cris/include/uapi/asm/Kbuild | 19 +++++++++++++++++++ arch/h8300/include/asm/Kbuild | 27 --------------------------- arch/h8300/include/uapi/asm/Kbuild | 28 ++++++++++++++++++++++++++++ arch/hexagon/include/asm/Kbuild | 23 ----------------------- arch/hexagon/include/uapi/asm/Kbuild | 24 ++++++++++++++++++++++++ arch/ia64/include/asm/Kbuild | 2 -- arch/m32r/include/asm/Kbuild | 2 -- arch/m32r/include/uapi/asm/Kbuild | 2 ++ arch/m68k/include/asm/Kbuild | 12 ------------ arch/m68k/include/uapi/asm/Kbuild | 11 +++++++++++ arch/metag/include/asm/Kbuild | 24 ------------------------ arch/metag/include/uapi/asm/Kbuild | 24 ++++++++++++++++++++++++ arch/nios2/include/asm/Kbuild | 25 ------------------------- arch/nios2/include/asm/signal.h | 22 ---------------------- arch/nios2/include/uapi/asm/Kbuild | 24 ++++++++++++++++++++++++ arch/openrisc/include/asm/Kbuild | 28 ---------------------------- arch/openrisc/include/uapi/asm/Kbuild | 29 +++++++++++++++++++++++++++++ arch/parisc/include/asm/Kbuild | 5 ----- arch/parisc/include/uapi/asm/Kbuild | 4 ++++ arch/sh/include/asm/Kbuild | 20 -------------------- arch/sh/include/uapi/asm/Kbuild | 20 ++++++++++++++++++++ arch/sparc/include/asm/Kbuild | 1 - arch/sparc/include/uapi/asm/Kbuild | 2 ++ arch/tile/include/asm/Kbuild | 19 ------------------- arch/tile/include/uapi/asm/Kbuild | 19 +++++++++++++++++++ arch/unicore32/include/asm/Kbuild | 31 +------------------------------ arch/unicore32/include/uapi/asm/Kbuild | 28 ++++++++++++++++++++++++++++ arch/xtensa/include/asm/Kbuild | 9 --------- arch/xtensa/include/uapi/asm/Kbuild | 10 ++++++++++ scripts/Makefile.headersinst | 28 ++++------------------------ 42 files changed, 362 insertions(+), 405 deletions(-) delete mode 100644 arch/nios2/include/asm/signal.h -- 2.7.4