v2: added cross compiler support with CROSS_COMPILE, detecting libc and GCC headers from compiler, more header file fixes
v1: https://lkml.org/lkml/2014/8/21/665 Users of kernel header files would be happier if they did not contain kernel specific parts and would contain #include statements for all other header files that they depend on, and in general would compile. This patch set fixes some headers_install issues, then introduces a compile test for headers exported to userspace and then fixes many of the userspace header compilation failures. Changes are also available in headers_test_v02 branch at github: https://github.com/mcfrisk/linux/tree/headers_test_v02 Mikko Rapeli (45): Makefile: propagate verbose options scripts/headers.sh: add verbose option to make calls if defined headers_install.sh: enhance error handling scripts/headers_compile_test.sh: compile test script for exported headers drm.h: include stdlib.h in userspace drm_mode.h: include stdint.h and linux/types.h in userspace exynos_drm.h: include stdint.h in userspace nouveau_drm.h: include stdint.h in userspace radeon_drm.h: include stdint.h in userspace r128_drm.h: include drm/drm.h via_drm.h: include linux/types.h instead of non-existing via_drmclient.h via_drm.h: hide struct via_file_private in userspace savage_drm.h: include <drm/drm.h> sis_drm.h: hide sis_file_private in userspace dm-log-userspace.h: include stdint.h in userspace hsi_char.h: include stdint.h in userspace ebtables.h: include stdint.h in userspace cld.h: include stdint.h in userspace rds.h: include stdint.h in userspace sctp.h: include stdint.h in userspace scsi_bsg_fc.h: include stdint.h in userspace scsi_netlink.h: include stdint.h in userspace scsi_netlink_fc.h: include stdint.h in userspace hdspm.h: include stdint.h in userspace gntalloc.h: include stdint.h in userspace gntdev.h: include stdint.h in userspace include/uapi/linux/sysctl.h: include stdlib.h in userspace include/uapi/asm-generic/ipcbuf.h: include linux/posix_types.h include/uapi/asm-generic/msgbuf.h: include asm/ipcbuf.h include/uapi/asm-generic/shmbuf.h: include fixes asm-generic/sembuf.h: include asm/posix_types.h and asm/ipcbuf.h drm/i810_drm.h: include drm/drm.h include/uapi/asm-generic/signal.h: include stdlib.h in userspace include/uapi/asm-generic/signal.h: hide sigset_t definition in userspace include/uapi/sound/asound.h: include stdlib.h in userspace include/uapi/linux/netfilter.h: include in.h and in6.h include/uapi/linux/socket.h: include sys/socket.h in userspace include/uapi/linux/agpgart.h: include stdlib.h in userspace include/uapi/sound/asequencer.h: include sound/asound.h include/uapi/sound/emu10k1.h: include sound/asound.h include/uapi/sound/emu10k1.h: hide gpr_valid, tram_valid and code_valid in userspace include/uapi/linux/rds.h: include linux/socket.h and linux/types.h always include/uapi/linux/netfilter_bridge.h: include if.h nf_conntrack_tuple_common.h: include linux/types.h and linux/netfilter.h include/uapi/asm-generic/ucontext.h: include signal.h and sigcontext.h Makefile | 8 +- include/uapi/asm-generic/ipcbuf.h | 2 + include/uapi/asm-generic/msgbuf.h | 2 + include/uapi/asm-generic/sembuf.h | 2 + include/uapi/asm-generic/shmbuf.h | 6 + include/uapi/asm-generic/signal.h | 7 + include/uapi/asm-generic/ucontext.h | 3 + include/uapi/drm/drm.h | 4 + include/uapi/drm/drm_mode.h | 5 + include/uapi/drm/exynos_drm.h | 5 + include/uapi/drm/i810_drm.h | 2 + include/uapi/drm/nouveau_drm.h | 6 + include/uapi/drm/r128_drm.h | 2 + include/uapi/drm/radeon_drm.h | 5 + include/uapi/drm/savage_drm.h | 2 + include/uapi/drm/sis_drm.h | 2 + include/uapi/drm/via_drm.h | 6 +- include/uapi/linux/agpgart.h | 1 + include/uapi/linux/dm-log-userspace.h | 5 + include/uapi/linux/hsi/hsi_char.h | 7 +- include/uapi/linux/netfilter.h | 3 +- .../linux/netfilter/nf_conntrack_tuple_common.h | 3 + include/uapi/linux/netfilter_bridge.h | 1 + include/uapi/linux/netfilter_bridge/ebtables.h | 5 + include/uapi/linux/nfsd/cld.h | 6 + include/uapi/linux/rds.h | 4 + include/uapi/linux/sctp.h | 4 + include/uapi/linux/socket.h | 4 + include/uapi/linux/sysctl.h | 4 + include/uapi/scsi/scsi_bsg_fc.h | 6 + include/uapi/scsi/scsi_netlink.h | 6 +- include/uapi/scsi/scsi_netlink_fc.h | 5 + include/uapi/sound/asequencer.h | 1 + include/uapi/sound/asound.h | 3 + include/uapi/sound/emu10k1.h | 9 +- include/uapi/sound/hdspm.h | 6 + include/uapi/xen/gntalloc.h | 6 + include/uapi/xen/gntdev.h | 6 + scripts/headers.sh | 2 +- scripts/headers_compile_test.sh | 143 +++++++++++++++++++++ scripts/headers_install.sh | 15 ++- 41 files changed, 306 insertions(+), 18 deletions(-) create mode 100755 scripts/headers_compile_test.sh -- 2.1.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/