From 2a03f42f963fb180116c53b4d9f96f32ffd68e77 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Thu, 25 May 2006 10:19:56 +0000 Subject: Add linux-libc-headers --- packages/linux-libc-headers/.mtn2git_empty | 0 packages/linux-libc-headers/files/.mtn2git_empty | 0 packages/linux-libc-headers/files/keyboard.patch | 78 +++++++++++++++++++++ .../linux-libc-headers-2.6.15.99/.mtn2git_empty | 0 .../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 ++++++++++++++++++++++ 11 files changed, 318 insertions(+) create mode 100644 packages/linux-libc-headers/.mtn2git_empty create mode 100644 packages/linux-libc-headers/files/.mtn2git_empty create mode 100644 packages/linux-libc-headers/files/keyboard.patch create mode 100644 packages/linux-libc-headers/linux-libc-headers-2.6.15.99/.mtn2git_empty create mode 100644 packages/linux-libc-headers/linux-libc-headers-2.6.15.99/3477-1.patch create mode 100644 packages/linux-libc-headers/linux-libc-headers-2.6.15.99/asm-arch-irqs.patch create mode 100644 packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netdevice.patch create mode 100644 packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-netfilter_ipv4.patch create mode 100644 packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-rtc.patch create mode 100644 packages/linux-libc-headers/linux-libc-headers-2.6.15.99/linux-videodev2.patch create mode 100644 packages/linux-libc-headers/linux-libc-headers_2.6.15.99.bb diff --git a/packages/linux-libc-headers/.mtn2git_empty b/packages/linux-libc-headers/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 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 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 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 +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/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 + + #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 +- + /* + * 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/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 /* 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/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}/ +} + -- cgit 1.2.3-korg