[PATCH v11 00/12] uapi: export all headers under uapi directories

From: Nicolas Dichtel
Date: Mon Mar 27 2017 - 08:21:42 EST




Patches #1 and #2 are just cleanup: some exported headers were still under
a non-uapi directory. Patch #3 is a fix to avoid exporting a file that was
not under an uapi directory.
After these three patches, all exported headers are under an uapi directory:
path #4 stops searching files in non uapi directories.
The patch #5 was spotted by code review: there is no in-tree user of this
functionality.
Patch #6 fixes some warnings/errors reported by 0-day tests.
Patch #7 to #9 fix some errors when the corresponding files are included by
userland.
Patches #10 and #11 remove the need to list explicitly headers. Now all files
under an uapi directory are exported.
Patch #12 is also a small cleanup.

This series has been tested with a 'make headers_install' on x86 and a
'make headers_install_all'. I've checked the result of both commands.

This patch is built on top of masahiroy/linux-kbuild.git#for-next (v4.11-rc1).
I didn't find any conflict with v4.11-rc4.

v10 -> v11:
- patch #1: restore the double '_' in the header guard
- patch #6, #7, #8: order '#include' in alphabetical order
- patch #10: rename header-n to no-export-headers
cleanup management of kvm.h, kvm_para.h and a.out.h
- patch #12: add it
- rebase on top of masahiroy/linux-kbuild.git#for-next

v9 -> v10:
- rebase on top of masahiroy/linux-kbuild.git#for-next
- patch #4 & #10: fix dependency check
- fix some typos in commits logs

v8 -> v9:
- rebase on top of linus tree
- patch #8: add include/uapi/linux/crypto.h

v7 -> v8:
- rebase on top of linus tree
- add patch #7, #8 and #9

v6 -> v7:
- rebase on top of linus tree
- patch #7: remove autogenerated files from the list in the commit log

v5 -> v6:
- patch #6: remove change of include/uapi/linux/media.h
- patch #7: fix hdr export when 'make O=' is used (look for genhdr files in
the right directory)
- patch #8: fix 'make headers_check'

v4 -> v5:
- patch #3: get back to v3 (don't export msr-index.h)
- patch #6: new in this version
- patch #7: fix compilation by introducing header-n

v3 -> v4:
- first patch has been included
- patch #4: get back to v2 and remove arch/x86/include/asm/msr-index.h

v2 -> v3:
- patch #1: remove arch/arm/include/asm/types.h
- patch #2: remove arch/h8300/include/asm/bitsperlong.h
- patch #3: remove arch/nios2/include/uapi/asm/setup.h
- patch #4: don't export msr-index.h
- patch #5: fix a typo: s/unput-files3-name/input-files3-name
- patch #6: no change
- patch #7: fix include/uapi/asm-generic/Kbuild.asm by introducing mandatory-y
- add patch #8

v1 -> v2:
- add patch #1 to #6
- patch #7: remove use of header-y

Comments are welcomed,
Nicolas