Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751561AbbBPXGF (ORCPT ); Mon, 16 Feb 2015 18:06:05 -0500 Received: from mail.kapsi.fi ([217.30.184.167]:49793 "EHLO mail.kapsi.fi" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750931AbbBPXGD (ORCPT ); Mon, 16 Feb 2015 18:06:03 -0500 From: Mikko Rapeli To: linux-kernel@vger.kernel.org Cc: Mikko Rapeli Subject: [PATCH RFC v02 00/45] Compile test and fixes for exported header files Date: Tue, 17 Feb 2015 00:05:03 +0100 Message-Id: <1424127948-22484-1-git-send-email-mikko.rapeli@iki.fi> X-Mailer: git-send-email 2.1.4 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-SA-Exim-Connect-IP: 2a02:8070:d1af:b300:219:d2ff:fe03:c7a9 X-SA-Exim-Mail-From: mikko.rapeli@iki.fi X-SA-Exim-Scanned: No (on mail.kapsi.fi); SAEximRunCond expanded to false Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 6017 Lines: 124 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 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 majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/