From 8e898fe29b4b621df383b49b4a1df8d7d12b9a8f Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Tue, 9 May 2006 16:35:43 +0000 Subject: Add EABI toolchain git-svn-id: https://svn.o-hand.com/repos/poky/trunk@379 311d38ba-8fff-0310-9ca6-ca027cbcb966 --- .../linux-libc-headers-2.6.15.99/3477-1.patch | 43 ++++++++++++ .../asm-arch-irqs.patch | 19 +++++ .../linux-netdevice.patch | 11 +++ .../linux-netfilter_ipv4.patch | 31 +++++++++ .../linux-libc-headers-2.6.15.99/linux-rtc.patch | 11 +++ .../linux-videodev2.patch | 45 ++++++++++++ .../linux-libc-headers_2.6.15.99.bb | 80 ++++++++++++++++++++++ 7 files changed, 240 insertions(+) create mode 100644 openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/3477-1.patch create mode 100644 openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/asm-arch-irqs.patch create mode 100644 openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netdevice.patch create mode 100644 openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netfilter_ipv4.patch create mode 100644 openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-rtc.patch create mode 100644 openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-videodev2.patch create mode 100644 openembedded/packages/linux-libc-headers/linux-libc-headers_2.6.15.99.bb (limited to 'openembedded/packages/linux-libc-headers') diff --git a/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/3477-1.patch b/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/3477-1.patch new file mode 100644 index 000000000..1b207b3cd --- /dev/null +++ b/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/3477-1.patch @@ -0,0 +1,43 @@ +From: Nicolas Pitre +Date: Sat, 15 Apr 2006 15:10:43 +0000 (+0100) +Subject: [ARM] 3477/1: ARM EABI: undefine removed syscalls +X-Git-Url: http://git.infradead.org/?p=mtd-2.6.git;a=commitdiff;h=463b158aab247b600e4e93614b7b8f42a66331c9 + +[ARM] 3477/1: ARM EABI: undefine removed syscalls + +Patch from Nicolas Pitre + +Avoid confusion for libraries assuming that a given syscall is available +when corresponding symbol is defined. + +Signed-off-by: Nicolas Pitre +Signed-off-by: Russell King +--- + +--- a/include/asm-arm/unistd.h ++++ b/include/asm-arm/unistd.h +@@ -360,6 +360,24 @@ + #define __ARM_NR_usr32 (__ARM_NR_BASE+4) + #define __ARM_NR_set_tls (__ARM_NR_BASE+5) + ++/* ++ * The following syscalls are obsolete and no longer available for EABI. ++ */ ++#if defined(__ARM_EABI__) ++#undef __NR_time ++#undef __NR_umount ++#undef __NR_stime ++#undef __NR_alarm ++#undef __NR_utime ++#undef __NR_getrlimit ++#undef __NR_select ++#undef __NR_readdir ++#undef __NR_mmap ++#undef __NR_socketcall ++#undef __NR_syscall ++#undef __NR_ipc ++#endif ++ + #define __sys2(x) #x + #define __sys1(x) __sys2(x) + diff --git a/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/asm-arch-irqs.patch b/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/asm-arch-irqs.patch new file mode 100644 index 000000000..4785275db --- /dev/null +++ b/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/asm-arch-irqs.patch @@ -0,0 +1,19 @@ +--- linux-libc-headers-2.6.15.99/include/asm-arm/arch-ebsa285/irqs.h.orig 2006-03-19 17:01:59.000000000 +0100 ++++ linux-libc-headers-2.6.15.99/include/asm-arm/arch-ebsa285/irqs.h 2006-03-19 17:02:50.000000000 +0100 +@@ -8,7 +8,6 @@ + * 20-Jan-1998 RMK Started merge of EBSA286, CATS and NetWinder + * 01-Feb-1999 PJB ISA IRQs start at 0 not 16 + */ +-#include + + #define NR_IRQS 36 + #define NR_DC21285_IRQS 16 +@@ -92,7 +91,7 @@ + #undef RTC_IRQ + #define RTC_IRQ IRQ_ISA_RTC_ALARM + #define I8042_KBD_IRQ IRQ_ISA_KEYBOARD +-#define I8042_AUX_IRQ (machine_is_netwinder() ? IRQ_NETWINDER_PS2MOUSE : IRQ_ISA_PS2MOUSE) ++#define I8042_AUX_IRQ IRQ_ISA_PS2MOUSE + #define IRQ_FLOPPYDISK IRQ_ISA_FLOPPY + + #define irq_canonicalize(_i) (((_i) == IRQ_ISA_CASCADE) ? IRQ_ISA_2 : _i) diff --git a/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netdevice.patch b/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netdevice.patch new file mode 100644 index 000000000..588aea4ba --- /dev/null +++ b/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netdevice.patch @@ -0,0 +1,11 @@ +--- linux-libc-headers-2.6.15.99/include/linux/netdevice.h.orig 2006-04-29 14:10:39.245687500 +0200 ++++ linux-libc-headers-2.6.15.99/include/linux/netdevice.h 2006-04-29 14:11:08.819535750 +0200 +@@ -100,8 +100,6 @@ + unsigned long tx_compressed; + }; + +-extern int __init netdev_boot_setup(char *str); +- + /* Media selection options. */ + enum { + IF_PORT_UNKNOWN = 0, diff --git a/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netfilter_ipv4.patch b/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netfilter_ipv4.patch new file mode 100644 index 000000000..f7f77af0d --- /dev/null +++ b/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netfilter_ipv4.patch @@ -0,0 +1,31 @@ +iptables 1.3.3 assumes that ipt_scpt.h defines ELEMCOUNT, but ipt_scpt.h +moved to ARRAY_SIZE (which would be defined in linux/kernel.h). +The ip_conntrack_dir definition now resides in linux/netfilter/ip_conntrack_common.h + +--- linux-libc-headers-2.6.15.99/include/linux/netfilter_ipv4/ipt_sctp.h.orig 2006-03-20 22:03:04.000000000 +0100 ++++ linux-libc-headers-2.6.15.99/include/linux/netfilter_ipv4/ipt_sctp.h 2006-03-20 22:07:09.000000000 +0100 +@@ -7,6 +7,8 @@ + + #define IPT_SCTP_VALID_FLAGS 0x07 + ++#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) ++#define ELEMCOUNT(x) (sizeof(x) / sizeof((x)[0])) + + struct ipt_sctp_flag_info { + u_int8_t chunktype; +--- linux-libc-headers-2.6.15.99/include/linux/netfilter_ipv4/ip_conntrack_tuple.h.orig 2006-03-20 21:51:10.000000000 +0100 ++++ linux-libc-headers-2.6.15.99/include/linux/netfilter_ipv4/ip_conntrack_tuple.h 2006-03-20 21:51:12.000000000 +0100 +@@ -89,13 +89,6 @@ + (tuple)->dst.u.all = 0; \ + } while (0) + +-enum ip_conntrack_dir +-{ +- IP_CT_DIR_ORIGINAL, +- IP_CT_DIR_REPLY, +- IP_CT_DIR_MAX +-}; +- + static inline int ip_ct_tuple_src_equal(const struct ip_conntrack_tuple *t1, + const struct ip_conntrack_tuple *t2) + { diff --git a/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-rtc.patch b/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-rtc.patch new file mode 100644 index 000000000..36b80fb9d --- /dev/null +++ b/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-rtc.patch @@ -0,0 +1,11 @@ +--- linux-libc-headers-2.6.15.99/include/linux/rtc.h.orig 2006-03-19 12:31:07.000000000 +0100 ++++ linux-libc-headers-2.6.15.99/include/linux/rtc.h 2006-03-19 12:31:14.000000000 +0100 +@@ -11,8 +11,6 @@ + #ifndef _LINUX_RTC_H_ + #define _LINUX_RTC_H_ + +-#include +- + /* + * The struct used to pass data via the following ioctl. Similar to the + * struct tm in , but it needs to be here so that the kernel diff --git a/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-videodev2.patch b/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-videodev2.patch new file mode 100644 index 000000000..95335c99b --- /dev/null +++ b/openembedded/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-videodev2.patch @@ -0,0 +1,45 @@ +--- linux-libc-headers-2.6.15.99/include/linux/videodev2.h.orig 2006-03-20 11:14:35.000000000 +0100 ++++ linux-libc-headers-2.6.15.99/include/linux/videodev2.h 2006-03-20 11:14:37.000000000 +0100 +@@ -15,7 +15,32 @@ + */ + #include /* need struct timeval */ + #include /* needed __u64 */ +- ++ ++#define OBSOLETE_OWNER 1 /* It will be removed for 2.6.15 */ ++#define HAVE_V4L2 1 ++ ++/* ++ * Common stuff for both V4L1 and V4L2 ++ * Moved from videodev.h ++ */ ++ ++#define VIDEO_MAX_FRAME 32 ++ ++#define VID_TYPE_CAPTURE 1 /* Can capture */ ++#define VID_TYPE_TUNER 2 /* Can tune */ ++#define VID_TYPE_TELETEXT 4 /* Does teletext */ ++#define VID_TYPE_OVERLAY 8 /* Overlay onto frame buffer */ ++#define VID_TYPE_CHROMAKEY 16 /* Overlay by chromakey */ ++#define VID_TYPE_CLIPPING 32 /* Can clip */ ++#define VID_TYPE_FRAMERAM 64 /* Uses the frame buffer memory */ ++#define VID_TYPE_SCALES 128 /* Scalable */ ++#define VID_TYPE_MONOCHROME 256 /* Monochrome only */ ++#define VID_TYPE_SUBCAPTURE 512 /* Can capture subareas of the image */ ++#define VID_TYPE_MPEG_DECODER 1024 /* Can decode MPEG streams */ ++#define VID_TYPE_MPEG_ENCODER 2048 /* Can encode MPEG streams */ ++#define VID_TYPE_MJPEG_DECODER 4096 /* Can decode MJPEG streams */ ++#define VID_TYPE_MJPEG_ENCODER 8192 /* Can encode MJPEG streams */ ++ + /* + * M I S C E L L A N E O U S + */ +@@ -464,7 +489,7 @@ + struct v4l2_clip + { + struct v4l2_rect c; +- struct v4l2_clip __user *next; ++ struct v4l2_clip *next; + }; + + struct v4l2_window diff --git a/openembedded/packages/linux-libc-headers/linux-libc-headers_2.6.15.99.bb b/openembedded/packages/linux-libc-headers/linux-libc-headers_2.6.15.99.bb new file mode 100644 index 000000000..28926f026 --- /dev/null +++ b/openembedded/packages/linux-libc-headers/linux-libc-headers_2.6.15.99.bb @@ -0,0 +1,80 @@ +SECTION = "devel" +DESCRIPTION = "Sanitized set of 2.6 kernel headers for the C library's use." +# This package is derived from the original linux-libc-headers at +# http://ep09.pld-linux.org/~mmazur/linux-libc-headers/ +# More specifically, llh-2.6.12.0 was patched up to 2.6.16-rc6 with +# the official linux patches (where applicable) and then fixed up just +# enough to build glibc-2.4. BEWARE! +# +# license note from the linux-libc-headers package: +# Linux-libc-headers are derived from linux kernel headers. For license of a +# particular header, check it's content, and if copyright notice isn't present, +# standard linux kernel license applies. +# since we assume GPL for linux i think we can also assume it here +LICENSE = "GPL" +DEFAULT_PREFERENCE = "-1" +INHIBIT_DEFAULT_DEPS = "1" +PR = "r4" + +SRC_URI = "http://ewi546.ewi.utwente.nl/OE/eabi/linux-libc-headers-${PV}.tar.bz2 \ + file://keyboard.patch;patch=1 \ + file://asm-arch-irqs.patch;patch=1 \ + file://linux-netdevice.patch;patch=1 \ + file://linux-netfilter_ipv4.patch;patch=1 \ + file://linux-rtc.patch;patch=1 \ + file://linux-videodev2.patch;patch=1 \ + file://3477-1.patch;patch=1" + +S = "${WORKDIR}/linux-libc-headers-${PV}" + +do_configure () { + case ${TARGET_ARCH} in + alpha*) ARCH=alpha ;; + arm*) ARCH=arm ;; + cris*) ARCH=cris ;; + hppa*) ARCH=parisc ;; + i*86*) ARCH=i386 ;; + ia64*) ARCH=ia64 ;; + mips*) ARCH=mips ;; + m68k*) ARCH=m68k ;; + powerpc*) ARCH=ppc ;; + s390*) ARCH=s390 ;; + sh*) ARCH=sh ;; + sparc64*) ARCH=sparc64 ;; + sparc*) ARCH=sparc ;; + x86_64*) ARCH=x86_64 ;; + esac + if test ! -e include/asm-$ARCH; then + oefatal unable to create asm symlink in kernel headers + fi + rm "include/asm" + cp -pPR "include/asm-$ARCH" "include/asm" + if test "$ARCH" = "arm"; then + cp -pPR include/asm/arch-ebsa285 include/asm/arch + elif test "$ARCH" = "sh"; then + cp -pPR include/asm/cpu-${TARGET_ARCH} include/asm/cpu || die "unable to create include/asm/cpu" + fi +} + +do_stage () { + install -d ${STAGING_INCDIR} + rm -rf ${STAGING_INCDIR}/linux ${STAGING_INCDIR}/asm ${STAGING_INCDIR}/asm-generic + cp -pfLR include/linux ${STAGING_INCDIR}/ + cp -pfLR include/asm ${STAGING_INCDIR}/ + cp -pfLR include/asm-generic ${STAGING_INCDIR}/ + rm -rf ${CROSS_DIR}/${TARGET_SYS}/include/linux + rm -rf ${CROSS_DIR}/${TARGET_SYS}/include/asm + rm -rf ${CROSS_DIR}/${TARGET_SYS}/include/asm-generic + install -d ${CROSS_DIR}/${TARGET_SYS}/include + cp -pfLR include/linux ${CROSS_DIR}/${TARGET_SYS}/include/ + cp -pfLR include/asm ${CROSS_DIR}/${TARGET_SYS}/include/ + cp -pfLR include/asm-generic ${CROSS_DIR}/${TARGET_SYS}/include/ +} + +do_install() { + install -d ${D}${includedir} + cp -pfLR include/linux ${D}${includedir}/ + cp -pfLR include/asm ${D}${includedir}/ + cp -pfLR include/asm-generic ${D}${includedir}/ +} + -- cgit v1.2.3