diff options
author | "Steven J. Hill" <sjhill@realitydiluted.com> | 2008-02-28 02:13:42 +0000 |
---|---|---|
committer | "Steven J. Hill" <sjhill@realitydiluted.com> | 2008-02-28 02:13:42 +0000 |
commit | bebbe792df26f355f82da8d7508f719f56a8a559 (patch) | |
tree | 0fb2714dffe92e06f25dd96db8c01d2139576a8c /toolchain | |
parent | 49609366cfac5fa5a6347068fb61c8a61f85c034 (diff) |
Make sure 'linkage.h' headers are installed. Add hack to bootstrap newer
versions of GCC. Filter out 'gnu99' from assembly flags. Use the
'headers' target instead of 'pregen' to prepare for more NPTL
integration. Fix broken MTD package configuration....someone believes in
the Klingon release process apparently. Fix build issues with netplug
and libpng. Fix source path for microcom as original site no longer
exists.
Diffstat (limited to 'toolchain')
4 files changed, 94 insertions, 1 deletions
diff --git a/toolchain/gcc/4.1.2/801-arm-bootstrap-libgcc.patch b/toolchain/gcc/4.1.2/801-arm-bootstrap-libgcc.patch new file mode 100644 index 000000000..078da5bb4 --- /dev/null +++ b/toolchain/gcc/4.1.2/801-arm-bootstrap-libgcc.patch @@ -0,0 +1,63 @@ +diff -ur gcc-4.1.2/gcc/config/arm/unwind-arm.c gcc-4.1.2-patched/gcc/config/arm/unwind-arm.c +--- gcc-4.1.2/gcc/config/arm/unwind-arm.c 2006-09-20 12:31:12.000000000 -0500 ++++ gcc-4.1.2-patched/gcc/config/arm/unwind-arm.c 2008-02-27 13:30:45.339282365 -0600 +@@ -29,7 +29,13 @@ + + /* We add a prototype for abort here to avoid creating a dependency on + target headers. */ ++#ifndef BOOTSTRAP_GCC + extern void abort (void); ++#else ++void abort (void) ++{ ++} ++#endif + + /* Definitions for C++ runtime support routines. We make these weak + declarations to avoid pulling in libsupc++ unnecessarily. */ +@@ -542,7 +548,9 @@ + { + UCB_SAVED_CALLSITE_ADDR (ucbp) = saved_vrs.core.r[R_PC]; + ++#ifndef BOOTSTRAP_GCC + next_vrs = saved_vrs; ++#endif + + /* Call the pr to decide what to do. */ + pr_result = ((personality_routine) UCB_PR_ADDR (ucbp)) +@@ -572,7 +580,9 @@ + if (entry_code != _URC_OK) + return entry_code; + ++#ifndef BOOTSTRAP_GCC + saved_vrs = next_vrs; ++#endif + } + while (pr_result == _URC_CONTINUE_UNWIND); + +diff -ur gcc-4.1.2/gcc/mklibgcc.in gcc-4.1.2-patched/gcc/mklibgcc.in +--- gcc-4.1.2/gcc/mklibgcc.in 2006-09-10 02:13:12.000000000 -0500 ++++ gcc-4.1.2-patched/gcc/mklibgcc.in 2008-02-27 13:39:15.697843177 -0600 +@@ -169,7 +169,7 @@ + # It is too hard to guarantee that vis_hide and gen-hide-list will never + # be referenced if SHLIB_LINK is not set, so set them to the values they'd + # have if SHLIB_LINK were set and we didn't have visibility support. +- echo "vis_hide =" ++ echo "vis_hide :=-DBOOTSTRAP_GCC" + echo "gen-hide-list = echo > \$@" + fi + +diff -ur gcc-4.1.2/gcc/unwind-dw2.c gcc-4.1.2-patched/gcc/unwind-dw2.c +--- gcc-4.1.2/gcc/unwind-dw2.c 2005-11-17 19:19:10.000000000 -0600 ++++ gcc-4.1.2-patched/gcc/unwind-dw2.c 2008-02-27 13:29:55.414640030 -0600 +@@ -1311,8 +1311,10 @@ + void *c = current->reg[i]; + void *t = target->reg[i]; + ++#ifndef BOOTSTRAP_GCC + if (t && c && t != c) + memcpy (c, t, dwarf_reg_size_table[i]); ++#endif + } + + /* If the current frame doesn't have a saved stack pointer, then we diff --git a/toolchain/kernel-headers/linux-2.6.21.5-001-add-linkage-header.patch b/toolchain/kernel-headers/linux-2.6.21.5-001-add-linkage-header.patch new file mode 100644 index 000000000..dd89d4a89 --- /dev/null +++ b/toolchain/kernel-headers/linux-2.6.21.5-001-add-linkage-header.patch @@ -0,0 +1,18 @@ +diff -ur linux-2.6.21.5/include/asm-arm/Kbuild linux-2.6.21.5-patched/include/asm-arm/Kbuild +--- linux-2.6.21.5/include/asm-arm/Kbuild 2007-06-11 13:37:06.000000000 -0500 ++++ linux-2.6.21.5-patched/include/asm-arm/Kbuild 2008-02-27 18:17:46.999128276 -0600 +@@ -1 +1,3 @@ + include include/asm-generic/Kbuild.asm ++ ++header-y += linkage.h +diff -ur linux-2.6.21.5/include/linux/Kbuild linux-2.6.21.5-patched/include/linux/Kbuild +--- linux-2.6.21.5/include/linux/Kbuild 2007-06-11 13:37:06.000000000 -0500 ++++ linux-2.6.21.5-patched/include/linux/Kbuild 2008-02-27 18:15:05.921149678 -0600 +@@ -100,6 +100,7 @@ + header-y += jffs2.h + header-y += keyctl.h + header-y += limits.h ++header-y += linkage.h + header-y += lock_dlm_plock.h + header-y += magic.h + header-y += major.h diff --git a/toolchain/uClibc/uClibc-0.9.29-filter-gnu99-from-assembly-flags.patch b/toolchain/uClibc/uClibc-0.9.29-filter-gnu99-from-assembly-flags.patch new file mode 100644 index 000000000..d1a7e3ac4 --- /dev/null +++ b/toolchain/uClibc/uClibc-0.9.29-filter-gnu99-from-assembly-flags.patch @@ -0,0 +1,12 @@ +diff -ur uClibc-0.9.29/Makerules uClibc-0.9.29-patched/Makerules +--- uClibc-0.9.29/Makerules 2006-12-10 18:25:23.000000000 -0600 ++++ uClibc-0.9.29-patched/Makerules 2008-01-26 17:04:50.965699518 -0600 +@@ -96,7 +96,7 @@ + disp_ld = $($(DISP)_disp_ld) + + cmd_compile.c = $(CC) -c $< -o $@ $(CFLAGS) $(ARCH_CFLAGS) $(CFLAGS-$(suffix $@)) $(filter-out $(CFLAGS-OMIT-$(notdir $<)),$(CFLAGS-$(notdir $(^D)))) $(CFLAGS-$(subst $(top_srcdir),,$(dir $<))) $(CFLAGS-$(notdir $<)) $(CFLAGS-$(notdir $@)) +-cmd_compile.S = $(cmd_compile.c) -D__ASSEMBLER__ $(ASFLAGS) $(ARCH_ASFLAGS) $(ASFLAGS-$(suffix $@)) $(ASFLAGS-$(notdir $<)) $(ASFLAGS-$(notdir $@)) ++cmd_compile.S = $(filter-out -std=gnu99, $(cmd_compile.c)) -D__ASSEMBLER__ $(ASFLAGS) $(ARCH_ASFLAGS) $(ASFLAGS-$(suffix $@)) $(ASFLAGS-$(notdir $<)) $(ASFLAGS-$(notdir $@)) + cmd_compile.m = $(cmd_compile.c) -DL_$(patsubst %$(suffix $(notdir $@)),%,$(notdir $@)) + cmd_compile-m = $(CC) $^ -c -o $@ $(CFLAGS) $(ARCH_CFLAGS) $(CFLAGS-$(suffix $@)) $(CFLAGS-$(notdir $(@D))) $(CFLAGS-$(notdir $@)) + cmd_strip = $(STRIPTOOL) $(STRIP_FLAGS) $^ diff --git a/toolchain/uClibc/uclibc.mk b/toolchain/uClibc/uclibc.mk index 9c70f709d..b9f73bcd0 100644 --- a/toolchain/uClibc/uclibc.mk +++ b/toolchain/uClibc/uclibc.mk @@ -378,7 +378,7 @@ $(UCLIBC_DIR)/.configured: $(LINUX_HEADERS_DIR)/.configured $(UCLIBC_DIR)/.confi DEVEL_PREFIX=/usr/ \ RUNTIME_PREFIX=$(TOOL_BUILD_DIR)/uClibc_dev/ \ HOSTCC="$(HOSTCC)" \ - pregen install_dev + headers install_dev # Install the kernel headers to the first stage gcc include dir # if necessary ifeq ($(LINUX_HEADERS_IS_KERNEL),y) |