From 7b14666f6f0e9ac8a28984cdfbb048274b375eb4 Mon Sep 17 00:00:00 2001 From: kaloz Date: Fri, 27 Jan 2006 10:00:40 +0000 Subject: add gcc4 fix for mips git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@3053 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../linux/generic-2.6/patches/005-gcc4_fix.patch | 173 +++++++++++++++++++++ 1 file changed, 173 insertions(+) create mode 100644 target/linux/generic-2.6/patches/005-gcc4_fix.patch (limited to 'target/linux/generic-2.6/patches/005-gcc4_fix.patch') diff --git a/target/linux/generic-2.6/patches/005-gcc4_fix.patch b/target/linux/generic-2.6/patches/005-gcc4_fix.patch new file mode 100644 index 000000000..ff1f4bec1 --- /dev/null +++ b/target/linux/generic-2.6/patches/005-gcc4_fix.patch @@ -0,0 +1,173 @@ +diff -Nur linux-2.6.15.1/include/asm-mips/libgcc.h linux-2.6.15.1-openwrt/include/asm-mips/libgcc.h +--- linux-2.6.15.1/include/asm-mips/libgcc.h 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.15.1-openwrt/include/asm-mips/libgcc.h 2006-01-20 10:32:28.000000000 +0100 +@@ -0,0 +1,8 @@ ++#ifndef __ASM_LIBGCC_H ++#define __ASM_LIBGCC_H ++ ++#define ARCH_NEEDS_ashldi3 ++#define ARCH_NEEDS_ashrdi3 ++#define ARCH_NEEDS_lshrdi3 ++ ++#endif /* __ASM_LIBGCC_H */ +diff -Nur linux-2.6.15.1/include/linux/libgcc.h linux-2.6.15.1-openwrt/include/linux/libgcc.h +--- linux-2.6.15.1/include/linux/libgcc.h 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.15.1-openwrt/include/linux/libgcc.h 2006-01-20 10:33:38.000000000 +0100 +@@ -0,0 +1,32 @@ ++#ifndef __LINUX_LIBGCC_H ++#define __LINUX_LIBGCC_H ++ ++#include ++#include ++ ++typedef long long DWtype; ++typedef int Wtype; ++typedef unsigned int UWtype; ++typedef int word_type __attribute__ ((mode (__word__))); ++ ++#define BITS_PER_UNIT 8 ++ ++#ifdef __BIG_ENDIAN ++struct DWstruct { ++ Wtype high, low; ++}; ++#elif defined(__LITTLE_ENDIAN) ++struct DWstruct { ++ Wtype low, high; ++}; ++#else ++#error I feel sick. ++#endif ++ ++typedef union ++{ ++ struct DWstruct s; ++ DWtype ll; ++} DWunion; ++ ++#endif /* __LINUX_LIBGCC_H */ +diff -Nur linux-2.6.15.1/lib/ashldi3.c linux-2.6.15.1-openwrt/lib/ashldi3.c +--- linux-2.6.15.1/lib/ashldi3.c 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.15.1-openwrt/lib/ashldi3.c 2006-01-20 10:38:41.000000000 +0100 +@@ -0,0 +1,32 @@ ++#include ++#include ++ ++#ifdef ARCH_NEEDS_ashldi3 ++ ++DWtype __ashldi3(DWtype u, word_type b) ++{ ++ DWunion uu, w; ++ word_type bm; ++ ++ if (b == 0) ++ return u; ++ ++ uu.ll = u; ++ bm = (sizeof(Wtype) * BITS_PER_UNIT) - b; ++ ++ if (bm <= 0) { ++ w.s.low = 0; ++ w.s.high = (UWtype) uu.s.low << -bm; ++ } else { ++ const UWtype carries = (UWtype) uu.s.low >> bm; ++ ++ w.s.low = (UWtype) uu.s.low << b; ++ w.s.high = ((UWtype) uu.s.high << b) | carries; ++ } ++ ++ return w.ll; ++} ++ ++EXPORT_SYMBOL(__ashldi3); ++ ++#endif /* ARCH_NEEDS_ashldi3 */ +diff -Nur linux-2.6.15.1/lib/ashrdi3.c linux-2.6.15.1-openwrt/lib/ashrdi3.c +--- linux-2.6.15.1/lib/ashrdi3.c 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.15.1-openwrt/lib/ashrdi3.c 2006-01-20 10:39:29.000000000 +0100 +@@ -0,0 +1,36 @@ ++#include ++#include ++ ++/* Unless shift functions are defined with full ANSI prototypes, ++ parameter b will be promoted to int if word_type is smaller than an int. */ ++#ifdef ARCH_NEEDS_ashrdi3 ++ ++DWtype __ashrdi3(DWtype u, word_type b) ++{ ++ DWunion uu, w; ++ word_type bm; ++ ++ if (b == 0) ++ return u; ++ ++ uu.ll = u; ++ bm = (sizeof(Wtype) * BITS_PER_UNIT) - b; ++ ++ if (bm <= 0) { ++ /* w.s.high = 1..1 or 0..0 */ ++ w.s.high = ++ uu.s.high >> (sizeof(Wtype) * BITS_PER_UNIT - 1); ++ w.s.low = uu.s.high >> -bm; ++ } else { ++ const UWtype carries = (UWtype) uu.s.high << bm; ++ ++ w.s.high = uu.s.high >> b; ++ w.s.low = ((UWtype) uu.s.low >> b) | carries; ++ } ++ ++ return w.ll; ++} ++ ++EXPORT_SYMBOL(__ashrdi3); ++ ++#endif /* ARCH_NEEDS_ashrdi3 */ +diff -Nur linux-2.6.15.1/lib/lshrdi3.c linux-2.6.15.1-openwrt/lib/lshrdi3.c +--- linux-2.6.15.1/lib/lshrdi3.c 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.15.1-openwrt/lib/lshrdi3.c 2006-01-20 10:40:10.000000000 +0100 +@@ -0,0 +1,34 @@ ++#include ++#include ++ ++/* Unless shift functions are defined with full ANSI prototypes, ++ parameter b will be promoted to int if word_type is smaller than an int. */ ++#ifdef ARCH_NEEDS_lshrdi3 ++ ++DWtype __lshrdi3(DWtype u, word_type b) ++{ ++ DWunion uu, w; ++ word_type bm; ++ ++ if (b == 0) ++ return u; ++ ++ uu.ll = u; ++ bm = (sizeof(Wtype) * BITS_PER_UNIT) - b; ++ ++ if (bm <= 0) { ++ w.s.high = 0; ++ w.s.low = (UWtype) uu.s.high >> -bm; ++ } else { ++ const UWtype carries = (UWtype) uu.s.high << bm; ++ ++ w.s.high = (UWtype) uu.s.high >> b; ++ w.s.low = ((UWtype) uu.s.low >> b) | carries; ++ } ++ ++ return w.ll; ++} ++ ++EXPORT_SYMBOL(__lshrdi3); ++ ++#endif /* ARCH_NEEDS_lshrdi3 */ +diff -Nur linux-2.6.15.1/lib/Makefile linux-2.6.15.1-openwrt/lib/Makefile +--- linux-2.6.15.1/lib/Makefile 2006-01-15 07:16:02.000000000 +0100 ++++ linux-2.6.15.1-openwrt/lib/Makefile 2006-01-20 10:34:19.000000000 +0100 +@@ -8,6 +8,7 @@ + sha1.o + + lib-y += kobject.o kref.o kobject_uevent.o klist.o ++lib-y += ashldi3.o ashrdi3.o lshrdi3.o + + obj-y += sort.o parser.o halfmd4.o + -- cgit v1.2.3 From a9c2d68afc5946a90633ada662d80e146d21fd89 Mon Sep 17 00:00:00 2001 From: nico Date: Fri, 3 Feb 2006 08:11:53 +0000 Subject: fix x86-2.6 build git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@3118 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- target/linux/generic-2.6/patches/005-gcc4_fix.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'target/linux/generic-2.6/patches/005-gcc4_fix.patch') diff --git a/target/linux/generic-2.6/patches/005-gcc4_fix.patch b/target/linux/generic-2.6/patches/005-gcc4_fix.patch index ff1f4bec1..91da40ac3 100644 --- a/target/linux/generic-2.6/patches/005-gcc4_fix.patch +++ b/target/linux/generic-2.6/patches/005-gcc4_fix.patch @@ -1,3 +1,15 @@ +diff -ruN linux-2.6.15.1/include/asm-i386/libgcc.h linux-2.6.15.1-openwrt/include/asm-i386/libgcc.h +--- linux-2.6.15.1/include/asm-i386/libgcc.h 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.15.1-openwrt/include/asm-i386/libgcc.h 2006-02-01 15:47:53.000000000 +0100 +@@ -0,0 +1,8 @@ ++#ifndef __ASM_LIBGCC_H ++#define __ASM_LIBGCC_H ++ ++#undef ARCH_NEEDS_ashldi3 ++#undef ARCH_NEEDS_ashrdi3 ++#undef ARCH_NEEDS_lshrdi3 ++ ++#endif /* __ASM_LIBGCC_H */ diff -Nur linux-2.6.15.1/include/asm-mips/libgcc.h linux-2.6.15.1-openwrt/include/asm-mips/libgcc.h --- linux-2.6.15.1/include/asm-mips/libgcc.h 1970-01-01 01:00:00.000000000 +0100 +++ linux-2.6.15.1-openwrt/include/asm-mips/libgcc.h 2006-01-20 10:32:28.000000000 +0100 -- cgit v1.2.3 From be8ad0190d689eb7f797bdc0618d7e87892a831d Mon Sep 17 00:00:00 2001 From: nbd Date: Tue, 30 May 2006 19:38:38 +0000 Subject: resync with kamikaze git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@3844 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- target/linux/generic-2.6/patches/005-gcc4_fix.patch | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'target/linux/generic-2.6/patches/005-gcc4_fix.patch') diff --git a/target/linux/generic-2.6/patches/005-gcc4_fix.patch b/target/linux/generic-2.6/patches/005-gcc4_fix.patch index 91da40ac3..72df58184 100644 --- a/target/linux/generic-2.6/patches/005-gcc4_fix.patch +++ b/target/linux/generic-2.6/patches/005-gcc4_fix.patch @@ -179,7 +179,19 @@ diff -Nur linux-2.6.15.1/lib/Makefile linux-2.6.15.1-openwrt/lib/Makefile sha1.o lib-y += kobject.o kref.o kobject_uevent.o klist.o -+lib-y += ashldi3.o ashrdi3.o lshrdi3.o ++obj-y += ashldi3.o ashrdi3.o lshrdi3.o obj-y += sort.o parser.o halfmd4.o +diff -Nur linux-2.6.15.1/include/asm-arm/libgcc.h linux-2.6.15.1-openwrt/include/asm-arm/libgcc.h +--- linux-2.6.15.1/include/asm-arm/libgcc.h 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.15.1-openwrt/include/asm-arm/libgcc.h 2006-04-12 23:01:18.000000000 +0200 +@@ -0,0 +1,8 @@ ++#ifndef __ASM_LIBGCC_H ++#define __ASM_LIBGCC_H ++ ++#undef ARCH_NEEDS_ashldi3 ++#undef ARCH_NEEDS_ashrdi3 ++#undef ARCH_NEEDS_lshrdi3 ++ ++#endif /* __ASM_LIBGCC_H */ -- cgit v1.2.3 From 0afe2603ce9afb1e2b32d319a676a76d1a412e2e Mon Sep 17 00:00:00 2001 From: groz Date: Thu, 20 Jul 2006 18:42:12 +0000 Subject: Start adding uml target git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@4177 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- target/linux/generic-2.6/patches/005-gcc4_fix.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'target/linux/generic-2.6/patches/005-gcc4_fix.patch') diff --git a/target/linux/generic-2.6/patches/005-gcc4_fix.patch b/target/linux/generic-2.6/patches/005-gcc4_fix.patch index 72df58184..0d4805228 100644 --- a/target/linux/generic-2.6/patches/005-gcc4_fix.patch +++ b/target/linux/generic-2.6/patches/005-gcc4_fix.patch @@ -10,6 +10,18 @@ diff -ruN linux-2.6.15.1/include/asm-i386/libgcc.h linux-2.6.15.1-openwrt/includ +#undef ARCH_NEEDS_lshrdi3 + +#endif /* __ASM_LIBGCC_H */ +diff -ruN linux-2.6.15.1/include/asm-um/libgcc.h linux-2.6.15.1-openwrt/include/asm-i386/libgcc.h +--- linux-2.6.15.1/include/asm-um/libgcc.h 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.15.1-openwrt/include/asm-um/libgcc.h 2006-02-01 15:47:53.000000000 +0100 +@@ -0,0 +1,8 @@ ++#ifndef __ASM_LIBGCC_H ++#define __ASM_LIBGCC_H ++ ++#undef ARCH_NEEDS_ashldi3 ++#undef ARCH_NEEDS_ashrdi3 ++#undef ARCH_NEEDS_lshrdi3 ++ ++#endif /* __ASM_LIBGCC_H */ diff -Nur linux-2.6.15.1/include/asm-mips/libgcc.h linux-2.6.15.1-openwrt/include/asm-mips/libgcc.h --- linux-2.6.15.1/include/asm-mips/libgcc.h 1970-01-01 01:00:00.000000000 +0100 +++ linux-2.6.15.1-openwrt/include/asm-mips/libgcc.h 2006-01-20 10:32:28.000000000 +0100 -- cgit v1.2.3 From 3f494f8d220f2b1a40a6749e814b46eca48792ac Mon Sep 17 00:00:00 2001 From: kaloz Date: Fri, 25 Aug 2006 21:53:54 +0000 Subject: add basic support for the Magicbox boards git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@4672 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- target/linux/generic-2.6/patches/005-gcc4_fix.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'target/linux/generic-2.6/patches/005-gcc4_fix.patch') diff --git a/target/linux/generic-2.6/patches/005-gcc4_fix.patch b/target/linux/generic-2.6/patches/005-gcc4_fix.patch index 0d4805228..99489b94b 100644 --- a/target/linux/generic-2.6/patches/005-gcc4_fix.patch +++ b/target/linux/generic-2.6/patches/005-gcc4_fix.patch @@ -1,3 +1,15 @@ +diff -ruN linux-2.6.15.1/include/asm-ppc/libgcc.h linux-2.6.15.1-openwrt/include/asm-ppc/libgcc.h +--- linux-2.6.15.1/include/asm-ppc/libgcc.h 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.15.1-openwrt/include/asm-ppc/libgcc.h 2006-02-01 15:47:53.000000000 +0100 +@@ -0,0 +1,8 @@ ++#ifndef __ASM_LIBGCC_H ++#define __ASM_LIBGCC_H ++ ++#undef ARCH_NEEDS_ashldi3 ++#undef ARCH_NEEDS_ashrdi3 ++#undef ARCH_NEEDS_lshrdi3 ++ ++#endif /* __ASM_LIBGCC_H */ diff -ruN linux-2.6.15.1/include/asm-i386/libgcc.h linux-2.6.15.1-openwrt/include/asm-i386/libgcc.h --- linux-2.6.15.1/include/asm-i386/libgcc.h 1970-01-01 01:00:00.000000000 +0100 +++ linux-2.6.15.1-openwrt/include/asm-i386/libgcc.h 2006-02-01 15:47:53.000000000 +0100 -- cgit v1.2.3