summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKoen Kooi <koen@openembedded.org>2006-05-25 10:19:56 +0000
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>2006-05-25 10:19:56 +0000
commit2a03f42f963fb180116c53b4d9f96f32ffd68e77 (patch)
treef16f6c08640f3b0aae02b327661d36c50f843ea9
parent4aa5363cf9794c8066346ae01ac8bb86640efbb9 (diff)
downloadopenembedded-2a03f42f963fb180116c53b4d9f96f32ffd68e77.tar.gz
Add linux-libc-headers
-rw-r--r--packages/linux-libc-headers/.mtn2git_empty0
-rw-r--r--packages/linux-libc-headers/files/.mtn2git_empty0
-rw-r--r--packages/linux-libc-headers/files/keyboard.patch78
-rw-r--r--packages/linux-libc-headers/linux-libc-headers-2.6.15.99/.mtn2git_empty0
-rw-r--r--packages/linux-libc-headers/linux-libc-headers-2.6.15.99/3477-1.patch43
-rw-r--r--packages/linux-libc-headers/linux-libc-headers-2.6.15.99/asm-arch-irqs.patch19
-rw-r--r--packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netdevice.patch11
-rw-r--r--packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netfilter_ipv4.patch31
-rw-r--r--packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-rtc.patch11
-rw-r--r--packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-videodev2.patch45
-rw-r--r--packages/linux-libc-headers/linux-libc-headers_2.6.15.99.bb80
11 files changed, 318 insertions, 0 deletions
diff --git a/packages/linux-libc-headers/.mtn2git_empty b/packages/linux-libc-headers/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/linux-libc-headers/.mtn2git_empty
diff --git a/packages/linux-libc-headers/files/.mtn2git_empty b/packages/linux-libc-headers/files/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/linux-libc-headers/files/.mtn2git_empty
diff --git a/packages/linux-libc-headers/files/keyboard.patch b/packages/linux-libc-headers/files/keyboard.patch
new file mode 100644
index 0000000000..7df00418b1
--- /dev/null
+++ b/packages/linux-libc-headers/files/keyboard.patch
@@ -0,0 +1,78 @@
+--- kernel/include/linux/keyboard.h 2004-01-17 23:04:30.000000000 +0000
++++ kernel/include/linux/keyboard.h 2004-08-30 12:49:41.000000000 +0100
+@@ -37,6 +44,8 @@
+ #define KT_ASCII 9
+ #define KT_LOCK 10
+ #define KT_SLOCK 12
++#define KT_X 13 /* A few useful symbols from the base X Keysym set, that go with... */
++#define KT_XF 14 /* The XFree86 Internet multimedia and PDA keyboard symbols */
+
+ #define K(t,v) (((t)<<8)|(v))
+ #define KTYP(x) ((x) >> 8)
+@@ -421,4 +430,66 @@
+ #define NR_LOCK 8
+
+ #define MAX_DIACR 256
++
++/*
++ * modifications to this section of this list should be coordinated with
++ * the X Window System keysym list; life is much easier that way
++ *
++ */
++
++/* These don't correspond identically. */
++#define K_XMENU K(KT_X, 0x1)
++#define K_XTELEPHONE K(KT_X, 0x2)
++
++/*
++ * XFree86 vendor specific keysyms.
++ *
++ * These map to XFree86 X keysym range is 0x1008FF01 - 0x1008FFFF;
++ * for simplicity's sake, we'll define a simple identity mapping for these.
++ *
++ * Please coordinate changes here with XFree86.org, so this simple
++ * identity mapping can be maintained (and old code "just works").
++ *
++ * Keys found on some "Internet" keyboards.
++ */
++#define K_XFSTANDBY K(KT_XF,0x10)
++#define K_XFAUDIOLOWERVOLUME K(KT_XF,0x11)
++#define K_XFAUDIOMUTE K(KT_XF,0x12)
++#define K_XFAUDIORAISEVOLUME K(KT_XF,0x13)
++#define K_XFAUDIOPLAY K(KT_XF,0x14)
++#define K_XFAUDIOSTOP K(KT_XF,0x15)
++#define K_XFAUDIOPREV K(KT_XF,0x16)
++#define K_XFAUDIONEXT K(KT_XF,0x17)
++#define K_XFHOMEPAGE K(KT_XF,0x18)
++#define K_XFMAIL K(KT_XF,0x19)
++#define K_XFSTART K(KT_XF,0x1A)
++#define K_XFSEARCH K(KT_XF,0x1B)
++#define K_XFAUDIORECORD K(KT_XF,0x1C)
++
++/* These are sometimes found on PDA's (e.g. Palm, PocketPC or elsewhere) */
++#define K_XFCALCULATOR K(KT_XF,0x1D)
++#define K_XFMEMO K(KT_XF,0x1E)
++#define K_XFTODOLIST K(KT_XF,0x1F)
++#define K_XFCALENDAR K(KT_XF,0x20)
++#define K_XFPOWERDOWN K(KT_XF,0x21)
++#define K_XFCONTRASTADJUST K(KT_XF,0x22)
++#define K_XFROCKERUP K(KT_XF,0x23)
++#define K_XFROCKERDOWN K(KT_XF,0x24)
++#define K_XFROCKERENTER K(KT_XF,0x25)
++
++/* Some more "Internet" keyboard symbols */
++#define K_XFBACK K(KT_XF,0x26)
++#define K_XFFORWARD K(KT_XF,0x27)
++#define K_XFSTOP K(KT_XF,0x28)
++#define K_XFREFRESH K(KT_XF,0x29)
++
++/* Some more ... */
++#define K_XFFAVORITES K(KT_XF,0x30)
++#define K_XFAUDIOPAUSE K(KT_XF,0x31)
++#define K_XFAUDIOMEDIA K(KT_XF,0x32)
++#define K_XFMYCOMPUTER K(KT_XF,0x33)
++#define K_XFVENDORHOME K(KT_XF,0x34)
++#define K_XFLIGHTBULB K(KT_XF,0x35)
++#define K_XFSHOP K(KT_XF,0x36)
++
+ #endif
diff --git a/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/.mtn2git_empty b/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/.mtn2git_empty
diff --git a/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/3477-1.patch b/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/3477-1.patch
new file mode 100644
index 0000000000..1b207b3cd9
--- /dev/null
+++ b/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/3477-1.patch
@@ -0,0 +1,43 @@
+From: Nicolas Pitre <nico@cam.org>
+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 <nico@cam.org>
+Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
+---
+
+--- 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/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/asm-arch-irqs.patch b/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/asm-arch-irqs.patch
new file mode 100644
index 0000000000..4785275db4
--- /dev/null
+++ b/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 <asm/mach-types.h>
+
+ #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/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netdevice.patch b/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netdevice.patch
new file mode 100644
index 0000000000..588aea4ba8
--- /dev/null
+++ b/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/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netfilter_ipv4.patch b/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netfilter_ipv4.patch
new file mode 100644
index 0000000000..f7f77af0de
--- /dev/null
+++ b/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/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-rtc.patch b/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-rtc.patch
new file mode 100644
index 0000000000..36b80fb9d2
--- /dev/null
+++ b/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 <linux/interrupt.h>
+-
+ /*
+ * The struct used to pass data via the following ioctl. Similar to the
+ * struct tm in <time.h>, but it needs to be here so that the kernel
diff --git a/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-videodev2.patch b/packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-videodev2.patch
new file mode 100644
index 0000000000..95335c99b6
--- /dev/null
+++ b/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 <sys/time.h> /* need struct timeval */
+ #include <asm/types.h> /* 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/packages/linux-libc-headers/linux-libc-headers_2.6.15.99.bb b/packages/linux-libc-headers/linux-libc-headers_2.6.15.99.bb
new file mode 100644
index 0000000000..28926f0264
--- /dev/null
+++ b/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}/
+}
+