diff options
Diffstat (limited to 'toolchain/kernel-headers')
-rw-r--r-- | toolchain/kernel-headers/Makefile | 24 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.4.13/aufs2.patch (renamed from toolchain/kernel-headers/patches/3.4.9/aufs2.patch) | 0 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.4.13/cleankernel.patch (renamed from toolchain/kernel-headers/patches/3.4.9/cleankernel.patch) | 0 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.4.13/etrax-header.patch (renamed from toolchain/kernel-headers/patches/3.4.9/etrax-header.patch) | 0 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.4.13/linux-gcc-check.patch (renamed from toolchain/kernel-headers/patches/3.4.9/linux-gcc-check.patch) | 0 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.4.13/microperl.patch (renamed from toolchain/kernel-headers/patches/3.4.9/microperl.patch) | 0 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.4.13/mkpiggy.patch (renamed from toolchain/kernel-headers/patches/3.4.9/mkpiggy.patch) | 0 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.4.13/relocs.patch (renamed from toolchain/kernel-headers/patches/3.4.9/relocs.patch) | 0 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.5.6/aufs2.patch (renamed from toolchain/kernel-headers/patches/3.5.4/aufs2.patch) | 0 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.5.6/cleankernel.patch (renamed from toolchain/kernel-headers/patches/3.5.4/cleankernel.patch) | 0 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.5.6/etrax-header.patch (renamed from toolchain/kernel-headers/patches/3.5.4/etrax-header.patch) | 0 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.5.6/linux-gcc-check.patch (renamed from toolchain/kernel-headers/patches/3.5.4/linux-gcc-check.patch) | 0 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.5.6/microperl.patch (renamed from toolchain/kernel-headers/patches/3.5.4/microperl.patch) | 0 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.5.6/mkpiggy.patch (renamed from toolchain/kernel-headers/patches/3.5.4/mkpiggy.patch) | 0 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.5.6/relocs.patch (renamed from toolchain/kernel-headers/patches/3.5.4/relocs.patch) | 0 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.5.6/sortext.patch (renamed from toolchain/kernel-headers/patches/3.5.4/sortext.patch) | 0 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.6.1/aufs2.patch | 238 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.6.1/cleankernel.patch | 11 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.6.1/etrax-header.patch | 94 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.6.1/linux-gcc-check.patch | 18 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.6.1/microperl.patch | 24 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.6.1/mkpiggy.patch | 28 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.6.1/relocs.patch | 3131 | ||||
-rw-r--r-- | toolchain/kernel-headers/patches/3.6.1/sortext.patch | 22 |
24 files changed, 3590 insertions, 0 deletions
diff --git a/toolchain/kernel-headers/Makefile b/toolchain/kernel-headers/Makefile index 4346cb1a6..8b364d760 100644 --- a/toolchain/kernel-headers/Makefile +++ b/toolchain/kernel-headers/Makefile @@ -10,6 +10,30 @@ $(WRKBUILD)/.headers: $(MAKE) -C $(WRKBUILD) HOSTCC=$(CC_FOR_BUILD) ARCH=$(ARCH) V=1 \ INSTALL_HDR_PATH=$(STAGING_DIR)/usr \ headers_install +ifeq ($(ADK_TARGET_WITH_MULTILIB),y) +ifeq ($(ADK_LINUX_MIPS),y) + $(MAKE) -C $(WRKBUILD) HOSTCC=$(CC_FOR_BUILD) ARCH=mips V=1 \ + INSTALL_HDR_PATH=$(STAGING_TARGET_DIR)-n32/usr \ + headers_install + $(MAKE) -C $(WRKBUILD) HOSTCC=$(CC_FOR_BUILD) ARCH=mips V=1 \ + INSTALL_HDR_PATH=$(STAGING_TARGET_DIR)-64/usr \ + headers_install + $(MAKE) -C $(WRKBUILD) HOSTCC=$(CC_FOR_BUILD) ARCH=mips V=1 \ + INSTALL_HDR_PATH=$(STAGING_TARGET_DIR)-o32/usr \ + headers_install +endif +ifeq ($(ADK_LINUX_X86_64),y) + $(MAKE) -C $(WRKBUILD) HOSTCC=$(CC_FOR_BUILD) ARCH=x86 V=1 \ + INSTALL_HDR_PATH=$(STAGING_TARGET_DIR)-32/usr \ + headers_install + $(MAKE) -C $(WRKBUILD) HOSTCC=$(CC_FOR_BUILD) ARCH=x86 V=1 \ + INSTALL_HDR_PATH=$(STAGING_TARGET_DIR)-x32/usr \ + headers_install + $(MAKE) -C $(WRKBUILD) HOSTCC=$(CC_FOR_BUILD) ARCH=x86 V=1 \ + INSTALL_HDR_PATH=$(STAGING_TARGET_DIR)-64/usr \ + headers_install +endif +endif $(MAKE) -C $(WRKBUILD) HOSTCC=$(CC_FOR_BUILD) ARCH=$(ARCH) V=1 \ INSTALL_HDR_PATH=$(LINUX_HEADER_DIR) \ headers_install diff --git a/toolchain/kernel-headers/patches/3.4.9/aufs2.patch b/toolchain/kernel-headers/patches/3.4.13/aufs2.patch index d40c9a3fe..d40c9a3fe 100644 --- a/toolchain/kernel-headers/patches/3.4.9/aufs2.patch +++ b/toolchain/kernel-headers/patches/3.4.13/aufs2.patch diff --git a/toolchain/kernel-headers/patches/3.4.9/cleankernel.patch b/toolchain/kernel-headers/patches/3.4.13/cleankernel.patch index f8d5448ee..f8d5448ee 100644 --- a/toolchain/kernel-headers/patches/3.4.9/cleankernel.patch +++ b/toolchain/kernel-headers/patches/3.4.13/cleankernel.patch diff --git a/toolchain/kernel-headers/patches/3.4.9/etrax-header.patch b/toolchain/kernel-headers/patches/3.4.13/etrax-header.patch index 559c0f322..559c0f322 100644 --- a/toolchain/kernel-headers/patches/3.4.9/etrax-header.patch +++ b/toolchain/kernel-headers/patches/3.4.13/etrax-header.patch diff --git a/toolchain/kernel-headers/patches/3.4.9/linux-gcc-check.patch b/toolchain/kernel-headers/patches/3.4.13/linux-gcc-check.patch index 7cc381845..7cc381845 100644 --- a/toolchain/kernel-headers/patches/3.4.9/linux-gcc-check.patch +++ b/toolchain/kernel-headers/patches/3.4.13/linux-gcc-check.patch diff --git a/toolchain/kernel-headers/patches/3.4.9/microperl.patch b/toolchain/kernel-headers/patches/3.4.13/microperl.patch index 44c39f6e8..44c39f6e8 100644 --- a/toolchain/kernel-headers/patches/3.4.9/microperl.patch +++ b/toolchain/kernel-headers/patches/3.4.13/microperl.patch diff --git a/toolchain/kernel-headers/patches/3.4.9/mkpiggy.patch b/toolchain/kernel-headers/patches/3.4.13/mkpiggy.patch index d4e815cd2..d4e815cd2 100644 --- a/toolchain/kernel-headers/patches/3.4.9/mkpiggy.patch +++ b/toolchain/kernel-headers/patches/3.4.13/mkpiggy.patch diff --git a/toolchain/kernel-headers/patches/3.4.9/relocs.patch b/toolchain/kernel-headers/patches/3.4.13/relocs.patch index 43c5bb580..43c5bb580 100644 --- a/toolchain/kernel-headers/patches/3.4.9/relocs.patch +++ b/toolchain/kernel-headers/patches/3.4.13/relocs.patch diff --git a/toolchain/kernel-headers/patches/3.5.4/aufs2.patch b/toolchain/kernel-headers/patches/3.5.6/aufs2.patch index d40c9a3fe..d40c9a3fe 100644 --- a/toolchain/kernel-headers/patches/3.5.4/aufs2.patch +++ b/toolchain/kernel-headers/patches/3.5.6/aufs2.patch diff --git a/toolchain/kernel-headers/patches/3.5.4/cleankernel.patch b/toolchain/kernel-headers/patches/3.5.6/cleankernel.patch index f8d5448ee..f8d5448ee 100644 --- a/toolchain/kernel-headers/patches/3.5.4/cleankernel.patch +++ b/toolchain/kernel-headers/patches/3.5.6/cleankernel.patch diff --git a/toolchain/kernel-headers/patches/3.5.4/etrax-header.patch b/toolchain/kernel-headers/patches/3.5.6/etrax-header.patch index 03d19a9ab..03d19a9ab 100644 --- a/toolchain/kernel-headers/patches/3.5.4/etrax-header.patch +++ b/toolchain/kernel-headers/patches/3.5.6/etrax-header.patch diff --git a/toolchain/kernel-headers/patches/3.5.4/linux-gcc-check.patch b/toolchain/kernel-headers/patches/3.5.6/linux-gcc-check.patch index 7cc381845..7cc381845 100644 --- a/toolchain/kernel-headers/patches/3.5.4/linux-gcc-check.patch +++ b/toolchain/kernel-headers/patches/3.5.6/linux-gcc-check.patch diff --git a/toolchain/kernel-headers/patches/3.5.4/microperl.patch b/toolchain/kernel-headers/patches/3.5.6/microperl.patch index 44c39f6e8..44c39f6e8 100644 --- a/toolchain/kernel-headers/patches/3.5.4/microperl.patch +++ b/toolchain/kernel-headers/patches/3.5.6/microperl.patch diff --git a/toolchain/kernel-headers/patches/3.5.4/mkpiggy.patch b/toolchain/kernel-headers/patches/3.5.6/mkpiggy.patch index d4e815cd2..d4e815cd2 100644 --- a/toolchain/kernel-headers/patches/3.5.4/mkpiggy.patch +++ b/toolchain/kernel-headers/patches/3.5.6/mkpiggy.patch diff --git a/toolchain/kernel-headers/patches/3.5.4/relocs.patch b/toolchain/kernel-headers/patches/3.5.6/relocs.patch index 43c5bb580..43c5bb580 100644 --- a/toolchain/kernel-headers/patches/3.5.4/relocs.patch +++ b/toolchain/kernel-headers/patches/3.5.6/relocs.patch diff --git a/toolchain/kernel-headers/patches/3.5.4/sortext.patch b/toolchain/kernel-headers/patches/3.5.6/sortext.patch index d82b76a2d..d82b76a2d 100644 --- a/toolchain/kernel-headers/patches/3.5.4/sortext.patch +++ b/toolchain/kernel-headers/patches/3.5.6/sortext.patch diff --git a/toolchain/kernel-headers/patches/3.6.1/aufs2.patch b/toolchain/kernel-headers/patches/3.6.1/aufs2.patch new file mode 100644 index 000000000..d40c9a3fe --- /dev/null +++ b/toolchain/kernel-headers/patches/3.6.1/aufs2.patch @@ -0,0 +1,238 @@ +diff -Nur linux-3.1.4.orig/include/linux/Kbuild linux-3.1.4/include/linux/Kbuild +--- linux-3.1.4.orig/include/linux/Kbuild 2011-11-28 23:48:14.000000000 +0100 ++++ linux-3.1.4/include/linux/Kbuild 2011-12-01 12:44:17.000000000 +0100 +@@ -65,6 +65,7 @@ + header-y += atmsap.h + header-y += atmsvc.h + header-y += audit.h ++header-y += aufs_type.h + header-y += auto_fs.h + header-y += auto_fs4.h + header-y += auxvec.h +diff -Nur linux-3.1.4.orig/include/linux/aufs_type.h linux-3.1.4/include/linux/aufs_type.h +--- linux-3.1.4.orig/include/linux/aufs_type.h 1970-01-01 01:00:00.000000000 +0100 ++++ linux-3.1.4/include/linux/aufs_type.h 2011-12-01 12:44:17.000000000 +0100 +@@ -0,0 +1,197 @@ ++/* ++ * Copyright (C) 2005-2011 Junjiro R. Okajima ++ * ++ * This program, aufs is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA ++ */ ++ ++#ifndef __AUFS_TYPE_H__ ++#define __AUFS_TYPE_H__ ++ ++#include <linux/ioctl.h> ++#include <linux/kernel.h> ++#include <linux/limits.h> ++#include <linux/types.h> ++ ++#define AUFS_VERSION "2.1-standalone.tree-36-20110110" ++ ++/* todo? move this to linux-2.6.19/include/magic.h */ ++#define AUFS_SUPER_MAGIC ('a' << 24 | 'u' << 16 | 'f' << 8 | 's') ++ ++/* ---------------------------------------------------------------------- */ ++ ++#ifdef CONFIG_AUFS_BRANCH_MAX_127 ++typedef __s8 aufs_bindex_t; ++#define AUFS_BRANCH_MAX 127 ++#else ++typedef __s16 aufs_bindex_t; ++#ifdef CONFIG_AUFS_BRANCH_MAX_511 ++#define AUFS_BRANCH_MAX 511 ++#elif defined(CONFIG_AUFS_BRANCH_MAX_1023) ++#define AUFS_BRANCH_MAX 1023 ++#elif defined(CONFIG_AUFS_BRANCH_MAX_32767) ++#define AUFS_BRANCH_MAX 32767 ++#endif ++#endif ++ ++#ifdef __KERNEL__ ++#ifndef AUFS_BRANCH_MAX ++#error unknown CONFIG_AUFS_BRANCH_MAX value ++#endif ++#endif /* __KERNEL__ */ ++ ++/* ---------------------------------------------------------------------- */ ++ ++#define AUFS_NAME "aufs" ++#define AUFS_FSTYPE AUFS_NAME ++ ++#define AUFS_ROOT_INO 2 ++#define AUFS_FIRST_INO 11 ++ ++#define AUFS_WH_PFX ".wh." ++#define AUFS_WH_PFX_LEN ((int)sizeof(AUFS_WH_PFX) - 1) ++#define AUFS_WH_TMP_LEN 4 ++/* a limit for rmdir/rename a dir */ ++#define AUFS_MAX_NAMELEN (NAME_MAX \ ++ - AUFS_WH_PFX_LEN * 2 /* doubly whiteouted */\ ++ - 1 /* dot */\ ++ - AUFS_WH_TMP_LEN) /* hex */ ++#define AUFS_XINO_FNAME "." AUFS_NAME ".xino" ++#define AUFS_XINO_DEFPATH "/tmp/" AUFS_XINO_FNAME ++#define AUFS_XINO_TRUNC_INIT 64 /* blocks */ ++#define AUFS_XINO_TRUNC_STEP 4 /* blocks */ ++#define AUFS_DIRWH_DEF 3 ++#define AUFS_RDCACHE_DEF 10 /* seconds */ ++#define AUFS_RDCACHE_MAX 3600 /* seconds */ ++#define AUFS_RDBLK_DEF 512 /* bytes */ ++#define AUFS_RDHASH_DEF 32 ++#define AUFS_WKQ_NAME AUFS_NAME "d" ++#define AUFS_WKQ_PRE_NAME AUFS_WKQ_NAME "_pre" ++#define AUFS_MFS_DEF_SEC 30 /* seconds */ ++#define AUFS_MFS_MAX_SEC 3600 /* seconds */ ++#define AUFS_PLINK_WARN 100 /* number of plinks */ ++ ++/* pseudo-link maintenace under /proc */ ++#define AUFS_PLINK_MAINT_NAME "plink_maint" ++#define AUFS_PLINK_MAINT_DIR "fs/" AUFS_NAME ++#define AUFS_PLINK_MAINT_PATH AUFS_PLINK_MAINT_DIR "/" AUFS_PLINK_MAINT_NAME ++ ++#define AUFS_DIROPQ_NAME AUFS_WH_PFX ".opq" /* whiteouted doubly */ ++#define AUFS_WH_DIROPQ AUFS_WH_PFX AUFS_DIROPQ_NAME ++ ++#define AUFS_BASE_NAME AUFS_WH_PFX AUFS_NAME ++#define AUFS_PLINKDIR_NAME AUFS_WH_PFX "plnk" ++#define AUFS_ORPHDIR_NAME AUFS_WH_PFX "orph" ++ ++/* doubly whiteouted */ ++#define AUFS_WH_BASE AUFS_WH_PFX AUFS_BASE_NAME ++#define AUFS_WH_PLINKDIR AUFS_WH_PFX AUFS_PLINKDIR_NAME ++#define AUFS_WH_ORPHDIR AUFS_WH_PFX AUFS_ORPHDIR_NAME ++ ++/* branch permission */ ++#define AUFS_BRPERM_RW "rw" ++#define AUFS_BRPERM_RO "ro" ++#define AUFS_BRPERM_RR "rr" ++#define AUFS_BRPERM_WH "wh" ++#define AUFS_BRPERM_NLWH "nolwh" ++#define AUFS_BRPERM_ROWH AUFS_BRPERM_RO "+" AUFS_BRPERM_WH ++#define AUFS_BRPERM_RRWH AUFS_BRPERM_RR "+" AUFS_BRPERM_WH ++#define AUFS_BRPERM_RWNLWH AUFS_BRPERM_RW "+" AUFS_BRPERM_NLWH ++ ++/* ---------------------------------------------------------------------- */ ++ ++/* ioctl */ ++enum { ++ /* readdir in userspace */ ++ AuCtl_RDU, ++ AuCtl_RDU_INO, ++ ++ /* pathconf wrapper */ ++ AuCtl_WBR_FD ++}; ++ ++/* borrowed from linux/include/linux/kernel.h */ ++#ifndef ALIGN ++#define ALIGN(x, a) __ALIGN_MASK(x, (typeof(x))(a)-1) ++#define __ALIGN_MASK(x, mask) (((x)+(mask))&~(mask)) ++#endif ++ ++/* borrowed from linux/include/linux/compiler-gcc3.h */ ++#ifndef __aligned ++#define __aligned(x) __attribute__((aligned(x))) ++#define __packed __attribute__((packed)) ++#endif ++ ++struct au_rdu_cookie { ++ __u64 h_pos; ++ __s16 bindex; ++ __u8 flags; ++ __u8 pad; ++ __u32 generation; ++} __aligned(8); ++ ++struct au_rdu_ent { ++ __u64 ino; ++ __s16 bindex; ++ __u8 type; ++ __u8 nlen; ++ __u8 wh; ++ char name[0]; ++} __aligned(8); ++ ++static inline int au_rdu_len(int nlen) ++{ ++ /* include the terminating NULL */ ++ return ALIGN(sizeof(struct au_rdu_ent) + nlen + 1, ++ sizeof(__u64)); ++} ++ ++union au_rdu_ent_ul { ++ struct au_rdu_ent __user *e; ++ __u64 ul; ++}; ++ ++enum { ++ AufsCtlRduV_SZ, ++ AufsCtlRduV_End ++}; ++ ++struct aufs_rdu { ++ /* input */ ++ union { ++ __u64 sz; /* AuCtl_RDU */ ++ __u64 nent; /* AuCtl_RDU_INO */ ++ }; ++ union au_rdu_ent_ul ent; ++ __u16 verify[AufsCtlRduV_End]; ++ ++ /* input/output */ ++ __u32 blk; ++ ++ /* output */ ++ union au_rdu_ent_ul tail; ++ /* number of entries which were added in a single call */ ++ __u64 rent; ++ __u8 full; ++ __u8 shwh; ++ ++ struct au_rdu_cookie cookie; ++} __aligned(8); ++ ++#define AuCtlType 'A' ++#define AUFS_CTL_RDU _IOWR(AuCtlType, AuCtl_RDU, struct aufs_rdu) ++#define AUFS_CTL_RDU_INO _IOWR(AuCtlType, AuCtl_RDU_INO, struct aufs_rdu) ++#define AUFS_CTL_WBR_FD _IO(AuCtlType, AuCtl_WBR_FD) ++ ++#endif /* __AUFS_TYPE_H__ */ +diff -Nur linux-3.1.4.orig/include/linux/namei.h linux-3.1.4/include/linux/namei.h +--- linux-3.1.4.orig/include/linux/namei.h 2011-11-28 23:48:14.000000000 +0100 ++++ linux-3.1.4/include/linux/namei.h 2011-12-01 12:44:17.000000000 +0100 +@@ -85,6 +85,9 @@ + extern struct file *lookup_instantiate_filp(struct nameidata *nd, struct dentry *dentry, + int (*open)(struct inode *, struct file *)); + ++extern struct dentry *lookup_hash(struct nameidata *nd); ++extern int __lookup_one_len(const char *name, struct qstr *this, ++ struct dentry *base, int len); + extern struct dentry *lookup_one_len(const char *, struct dentry *, int); + + extern int follow_down_one(struct path *); +diff -Nur linux-3.1.4.orig/include/linux/splice.h linux-3.1.4/include/linux/splice.h +--- linux-3.1.4.orig/include/linux/splice.h 2011-11-28 23:48:14.000000000 +0100 ++++ linux-3.1.4/include/linux/splice.h 2011-12-01 12:45:51.000000000 +0100 +@@ -91,4 +91,9 @@ + extern void spd_release_page(struct splice_pipe_desc *, unsigned int); + + extern const struct pipe_buf_operations page_cache_pipe_buf_ops; ++extern long do_splice_from(struct pipe_inode_info *pipe, struct file *out, ++ loff_t *ppos, size_t len, unsigned int flags); ++extern long do_splice_to(struct file *in, loff_t *ppos, ++ struct pipe_inode_info *pipe, size_t len, ++ unsigned int flags); + #endif diff --git a/toolchain/kernel-headers/patches/3.6.1/cleankernel.patch b/toolchain/kernel-headers/patches/3.6.1/cleankernel.patch new file mode 100644 index 000000000..f8d5448ee --- /dev/null +++ b/toolchain/kernel-headers/patches/3.6.1/cleankernel.patch @@ -0,0 +1,11 @@ +diff -Nur linux-2.6.29.1.orig/scripts/Makefile.headersinst linux-2.6.29.1/scripts/Makefile.headersinst +--- linux-2.6.29.1.orig/scripts/Makefile.headersinst 2009-04-02 22:55:27.000000000 +0200 ++++ linux-2.6.29.1/scripts/Makefile.headersinst 2009-04-17 20:56:09.143476927 +0200 +@@ -65,7 +65,6 @@ + + targets += $(install-file) + $(install-file): scripts/headers_install.pl $(input-files) FORCE +- $(if $(unwanted),$(call cmd,remove),) + $(if $(wildcard $(dir $@)),,$(shell mkdir -p $(dir $@))) + $(call if_changed,install) + diff --git a/toolchain/kernel-headers/patches/3.6.1/etrax-header.patch b/toolchain/kernel-headers/patches/3.6.1/etrax-header.patch new file mode 100644 index 000000000..03d19a9ab --- /dev/null +++ b/toolchain/kernel-headers/patches/3.6.1/etrax-header.patch @@ -0,0 +1,94 @@ +diff -Nur linux-3.5.orig//arch/cris/include/arch-v10/arch/Kbuild linux-3.5/arch/cris/include/arch-v10/arch/Kbuild +--- linux-3.5.orig//arch/cris/include/arch-v10/arch/Kbuild 2012-07-21 22:58:29.000000000 +0200 ++++ linux-3.5/arch/cris/include/arch-v10/arch/Kbuild 2012-07-27 14:01:25.000000000 +0200 +@@ -1,4 +1,10 @@ ++header-y += dma.h ++header-y += io_interface_mux.h + header-y += user.h + header-y += svinto.h + header-y += sv_addr_ag.h + header-y += sv_addr.agh ++header-y += elf.h ++header-y += page.h ++header-y += ptrace.h ++header-y += system.h +diff -Nur linux-3.5.orig//arch/cris/include/arch-v32/arch/Kbuild linux-3.5/arch/cris/include/arch-v32/arch/Kbuild +--- linux-3.5.orig//arch/cris/include/arch-v32/arch/Kbuild 2012-07-21 22:58:29.000000000 +0200 ++++ linux-3.5/arch/cris/include/arch-v32/arch/Kbuild 2012-07-27 14:01:25.000000000 +0200 +@@ -1,2 +1,7 @@ + header-y += user.h + header-y += cryptocop.h ++header-y += elf.h ++header-y += page.h ++header-y += ptrace.h ++header-y += system.h ++ +diff -Nur linux-3.5.orig//arch/cris/include/asm/Kbuild linux-3.5/arch/cris/include/asm/Kbuild +--- linux-3.5.orig//arch/cris/include/asm/Kbuild 2012-07-21 22:58:29.000000000 +0200 ++++ linux-3.5/arch/cris/include/asm/Kbuild 2012-07-27 14:02:20.000000000 +0200 +@@ -1,9 +1,12 @@ + include include/asm-generic/Kbuild.asm + +-header-y += arch-v10/ +-header-y += arch-v32/ ++header-y += ../arch-v10/arch/ ++header-y += ../arch-v32/arch/ + ++header-y += elf.h + header-y += ethernet.h + header-y += etraxgpio.h + header-y += rs485.h + header-y += sync_serial.h ++header-y += page.h ++header-y += user.h +diff -Nur linux-3.5.orig//arch/cris/include/asm/posix_types.h linux-3.5/arch/cris/include/asm/posix_types.h +--- linux-3.5.orig//arch/cris/include/asm/posix_types.h 2012-07-21 22:58:29.000000000 +0200 ++++ linux-3.5/arch/cris/include/asm/posix_types.h 2012-07-27 14:01:25.000000000 +0200 +@@ -6,6 +6,7 @@ + #ifndef __ARCH_CRIS_POSIX_TYPES_H + #define __ARCH_CRIS_POSIX_TYPES_H + ++ + /* + * This file is generally used by user-level software, so you need to + * be a little careful about namespace pollution etc. Also, we cannot +@@ -32,4 +33,6 @@ + + #include <asm-generic/posix_types.h> + ++#include <asm-generic/posix_types.h> ++ + #endif /* __ARCH_CRIS_POSIX_TYPES_H */ +diff -Nur linux-3.5.orig//include/asm-generic/Kbuild linux-3.5/include/asm-generic/Kbuild +--- linux-3.5.orig//include/asm-generic/Kbuild 2012-07-21 22:58:29.000000000 +0200 ++++ linux-3.5/include/asm-generic/Kbuild 2012-07-27 14:03:16.000000000 +0200 +@@ -3,15 +3,18 @@ + header-y += errno-base.h + header-y += errno.h + header-y += fcntl.h ++header-y += getorder.h + header-y += int-l64.h + header-y += int-ll64.h + header-y += ioctl.h + header-y += ioctls.h + header-y += ipcbuf.h + header-y += kvm_para.h ++header-y += memory_model.h + header-y += mman-common.h + header-y += mman.h + header-y += msgbuf.h ++header-y += page.h + header-y += param.h + header-y += poll.h + header-y += posix_types.h +diff -Nur linux-3.5.orig//include/linux/Kbuild linux-3.5/include/linux/Kbuild +--- linux-3.5.orig//include/linux/Kbuild 2012-07-21 22:58:29.000000000 +0200 ++++ linux-3.5/include/linux/Kbuild 2012-07-27 14:01:25.000000000 +0200 +@@ -382,6 +382,7 @@ + header-y += un.h + header-y += unistd.h + header-y += usbdevice_fs.h ++header-y += user.h + header-y += utime.h + header-y += utsname.h + header-y += uuid.h diff --git a/toolchain/kernel-headers/patches/3.6.1/linux-gcc-check.patch b/toolchain/kernel-headers/patches/3.6.1/linux-gcc-check.patch new file mode 100644 index 000000000..7cc381845 --- /dev/null +++ b/toolchain/kernel-headers/patches/3.6.1/linux-gcc-check.patch @@ -0,0 +1,18 @@ +diff -Nur linux-2.6.32.orig/arch/mips/include/asm/sgidefs.h linux-2.6.32/arch/mips/include/asm/sgidefs.h +--- linux-2.6.32.orig/arch/mips/include/asm/sgidefs.h 2009-12-03 04:51:21.000000000 +0100 ++++ linux-2.6.32/arch/mips/include/asm/sgidefs.h 2010-02-14 11:49:21.000000000 +0100 +@@ -11,14 +11,6 @@ + #define __ASM_SGIDEFS_H + + /* +- * Using a Linux compiler for building Linux seems logic but not to +- * everybody. +- */ +-#ifndef __linux__ +-#error Use a Linux compiler or give up. +-#endif +- +-/* + * Definitions for the ISA levels + * + * With the introduction of MIPS32 / MIPS64 instruction sets definitions diff --git a/toolchain/kernel-headers/patches/3.6.1/microperl.patch b/toolchain/kernel-headers/patches/3.6.1/microperl.patch new file mode 100644 index 000000000..44c39f6e8 --- /dev/null +++ b/toolchain/kernel-headers/patches/3.6.1/microperl.patch @@ -0,0 +1,24 @@ +diff -Nur linux-3.4.2.orig/scripts/headers_check.pl linux-3.4.2/scripts/headers_check.pl +--- linux-3.4.2.orig/scripts/headers_check.pl 2012-06-09 17:36:33.000000000 +0200 ++++ linux-3.4.2/scripts/headers_check.pl 2012-06-15 12:45:43.000000000 +0200 +@@ -18,7 +18,7 @@ + # + # 3) Check for leaked CONFIG_ symbols + +-use strict; ++#use strict; + use File::Basename; + + my ($dir, $arch, @files) = @ARGV; +diff -Nur linux-3.4.2.orig/scripts/headers_install.pl linux-3.4.2/scripts/headers_install.pl +--- linux-3.4.2.orig/scripts/headers_install.pl 2012-06-09 17:36:33.000000000 +0200 ++++ linux-3.4.2/scripts/headers_install.pl 2012-06-15 12:45:11.000000000 +0200 +@@ -16,7 +16,7 @@ + # 2) Drop include of compiler.h + # 3) Drop all sections defined out by __KERNEL__ (using unifdef) + +-use strict; ++#use strict; + + my ($readdir, $installdir, $arch, @files) = @ARGV; + diff --git a/toolchain/kernel-headers/patches/3.6.1/mkpiggy.patch b/toolchain/kernel-headers/patches/3.6.1/mkpiggy.patch new file mode 100644 index 000000000..d4e815cd2 --- /dev/null +++ b/toolchain/kernel-headers/patches/3.6.1/mkpiggy.patch @@ -0,0 +1,28 @@ +diff -Nur linux-3.4.4.orig/arch/x86/boot/compressed/mkpiggy.c linux-3.4.4/arch/x86/boot/compressed/mkpiggy.c +--- linux-3.4.4.orig/arch/x86/boot/compressed/mkpiggy.c 2012-06-22 20:37:50.000000000 +0200 ++++ linux-3.4.4/arch/x86/boot/compressed/mkpiggy.c 2012-07-03 09:48:02.000000000 +0200 +@@ -29,7 +29,14 @@ + #include <stdio.h> + #include <string.h> + #include <inttypes.h> +-#include <tools/le_byteshift.h> ++ ++static uint32_t getle32(const void *p) ++{ ++ const uint8_t *cp = p; ++ ++ return (uint32_t)cp[0] + ((uint32_t)cp[1] << 8) + ++ ((uint32_t)cp[2] << 16) + ((uint32_t)cp[3] << 24); ++} + + int main(int argc, char *argv[]) + { +@@ -62,7 +69,7 @@ + } + + ilen = ftell(f); +- olen = get_unaligned_le32(&olen); ++ olen = getle32(&olen); + fclose(f); + + /* diff --git a/toolchain/kernel-headers/patches/3.6.1/relocs.patch b/toolchain/kernel-headers/patches/3.6.1/relocs.patch new file mode 100644 index 000000000..43c5bb580 --- /dev/null +++ b/toolchain/kernel-headers/patches/3.6.1/relocs.patch @@ -0,0 +1,3131 @@ +diff -Nur linux-3.4.4.orig/arch/x86/tools/relocs.c linux-3.4.4/arch/x86/tools/relocs.c +--- linux-3.4.4.orig/arch/x86/tools/relocs.c 2012-06-22 20:37:50.000000000 +0200 ++++ linux-3.4.4/arch/x86/tools/relocs.c 2012-07-03 09:19:18.000000000 +0200 +@@ -5,12 +5,3123 @@ + #include <string.h> + #include <errno.h> + #include <unistd.h> +-#include <elf.h> +-#include <byteswap.h> ++//#include <elf.h> ++//#include <byteswap.h> + #define USE_BSD +-#include <endian.h> ++//#include <endian.h> + #include <regex.h> +-#include <tools/le_byteshift.h> ++//#include <tools/le_byteshift.h> ++ ++static inline void __put_unaligned_le16(int val, int *p) ++{ ++ *p++ = val; ++ *p++ = val >> 8; ++} ++ ++static inline void __put_unaligned_le32(int val, int *p) ++{ ++ __put_unaligned_le16(val >> 16, p + 2); ++ __put_unaligned_le16(val, p); ++} ++ ++static inline void __put_unaligned_le64(int val, int *p) ++{ ++ __put_unaligned_le32(val >> 32, p + 4); ++ __put_unaligned_le32(val, p); ++} ++ ++static inline void put_unaligned_le16(int val, void *p) ++{ ++ __put_unaligned_le16(val, p); ++} ++ ++static inline void put_unaligned_le32(int val, void *p) ++{ ++ __put_unaligned_le32(val, p); ++} ++ ++static inline void put_unaligned_le64(int val, void *p) ++{ ++ __put_unaligned_le64(val, p); ++} ++ ++/* Type for a 16-bit quantity. */ ++typedef uint16_t Elf32_Half; ++typedef uint16_t Elf64_Half; ++ ++/* Types for signed and unsigned 32-bit quantities. */ ++typedef uint32_t Elf32_Word; ++typedef int32_t Elf32_Sword; ++typedef uint32_t Elf64_Word; ++typedef int32_t Elf64_Sword; ++ ++/* Types for signed and unsigned 64-bit quantities. */ ++typedef uint64_t Elf32_Xword; ++typedef int64_t Elf32_Sxword; ++typedef uint64_t Elf64_Xword; ++typedef int64_t Elf64_Sxword; ++ ++/* Type of addresses. */ ++typedef uint32_t Elf32_Addr; ++typedef uint64_t Elf64_Addr; ++ ++/* Type of file offsets. */ ++typedef uint32_t Elf32_Off; ++typedef uint64_t Elf64_Off; ++ ++/* Type for section indices, which are 16-bit quantities. */ ++typedef uint16_t Elf32_Section; ++typedef uint16_t Elf64_Section; ++ ++/* Type for version symbol information. */ ++typedef Elf32_Half Elf32_Versym; ++typedef Elf64_Half Elf64_Versym; ++ ++ ++/* The ELF file header. This appears at the start of every ELF file. */ ++ ++#define EI_NIDENT (16) ++ ++typedef struct ++{ ++ unsigned char e_ident[EI_NIDENT]; /* Magic number and other info */ ++ Elf32_Half e_type; /* Object file type */ ++ Elf32_Half e_machine; /* Architecture */ ++ Elf32_Word e_version; /* Object file version */ ++ Elf32_Addr e_entry; /* Entry point virtual address */ ++ Elf32_Off e_phoff; /* Program header table file offset */ ++ Elf32_Off e_shoff; /* Section header table file offset */ ++ Elf32_Word e_flags; /* Processor-specific flags */ ++ Elf32_Half e_ehsize; /* ELF header size in bytes */ ++ Elf32_Half e_phentsize; /* Program header table entry size */ ++ Elf32_Half e_phnum; /* Program header table entry count */ ++ Elf32_Half e_shentsize; /* Section header table entry size */ ++ Elf32_Half e_shnum; /* Section header table entry count */ ++ Elf32_Half e_shstrndx; /* Section header string table index */ ++} Elf32_Ehdr; ++ ++typedef struct ++{ ++ unsigned char e_ident[EI_NIDENT]; /* Magic number and other info */ ++ Elf64_Half e_type; /* Object file type */ ++ Elf64_Half e_machine; /* Architecture */ ++ Elf64_Word e_version; /* Object file version */ ++ Elf64_Addr e_entry; /* Entry point virtual address */ ++ Elf64_Off e_phoff; /* Program header table file offset */ ++ Elf64_Off e_shoff; /* Section header table file offset */ ++ Elf64_Word e_flags; /* Processor-specific flags */ ++ Elf64_Half e_ehsize; /* ELF header size in bytes */ ++ Elf64_Half e_phentsize; /* Program header table entry size */ ++ Elf64_Half e_phnum; /* Program header table entry count */ ++ Elf64_Half e_shentsize; /* Section header table entry size */ ++ Elf64_Half e_shnum; /* Section header table entry count */ ++ Elf64_Half e_shstrndx; /* Section header string table index */ ++} Elf64_Ehdr; ++ ++/* Fields in the e_ident array. The EI_* macros are indices into the ++ array. The macros under each EI_* macro are the values the byte ++ may have. */ ++ ++#define EI_MAG0 0 /* File identification byte 0 index */ ++#define ELFMAG0 0x7f /* Magic number byte 0 */ ++ ++#define EI_MAG1 1 /* File identification byte 1 index */ ++#define ELFMAG1 'E' /* Magic number byte 1 */ ++ ++#define EI_MAG2 2 /* File identification byte 2 index */ ++#define ELFMAG2 'L' /* Magic number byte 2 */ ++ ++#define EI_MAG3 3 /* File identification byte 3 index */ ++#define ELFMAG3 'F' /* Magic number byte 3 */ ++ ++/* Conglomeration of the identification bytes, for easy testing as a word. */ ++#define ELFMAG "\177ELF" ++#define SELFMAG 4 ++#if __BYTE_ORDER == __LITTLE_ENDIAN ++# define ELFMAG_U32 ((uint32_t)(ELFMAG0 + 0x100 * (ELFMAG1 + (0x100 * (ELFMAG2 + 0x100 * ELFMAG3))))) ++#elif __BYTE_ORDER == __BIG_ENDIAN ++# define ELFMAG_U32 ((uint32_t)((((ELFMAG0 * 0x100) + ELFMAG1) * 0x100 + ELFMAG2) * 0x100 + ELFMAG3)) ++#endif ++ ++#define EI_CLASS 4 /* File class byte index */ ++#define ELFCLASSNONE 0 /* Invalid class */ ++#define ELFCLASS32 1 /* 32-bit objects */ |