# HG changeset patch # User Rob Landley # Date 1259718563 21600 # Node ID f1671488c740dc858241b0e682275d87c3e86982 # Parent 1720e1d988db79b655a5444ef517fa74cf8e05ba Split busybox and toybox builds, update toybox and linux package versions. diff -r 1720e1d988db -r f1671488c740 download.sh --- a/download.sh Tue Dec 01 19:43:42 2009 -0600 +++ b/download.sh Tue Dec 01 19:49:23 2009 -0600 @@ -30,8 +30,8 @@ # Building a cross compile toolchain requires linux headers, uClibc, # binutils, and gcc. -URL=http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.31.5.tar.bz2 \ -SHA1=f4a580f75f605b8f7c285958c4f3ec11183dff6c \ +URL=http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.31.6.tar.bz2 \ +SHA1=00967b9eb7e2bd635425b684968761569a69479e \ UNSTABLE=http://kernel.org/pub/linux/kernel/v2.6/testing/linux-2.6.32-rc7.tar.bz2 \ download || dienow @@ -84,8 +84,8 @@ # These are optional parts of the native root filesystem. -URL=http://impactlinux.com/code/toybox/downloads/toybox-0.0.9.2.tar.bz2 \ -SHA1=83a8763833abc55f84f8cf1f39cad279bffd1db7 \ +URL=http://impactlinux.com/code/toybox/downloads/toybox-0.1.0.tar.bz2 \ +SHA1=ad42f9317e3805312c521fc62c6bfd2d4c61906c \ UNSTABLE=http://impactlinux.com/fwl/mirror/alt-toybox-0.tar.bz2 download || dienow diff -r 1720e1d988db -r f1671488c740 host-tools.sh --- a/host-tools.sh Tue Dec 01 19:43:42 2009 -0600 +++ b/host-tools.sh Tue Dec 01 19:49:23 2009 -0600 @@ -66,10 +66,8 @@ # system has (or lacks, such as "which"), so throw busybox at it first # thing. -if [ ! -f "${STAGE_DIR}/busybox" ] -then - build_section busybox -fi +[ ! -f "$STAGE_DIR/busybox" ] && build_section busybox +[ ! -f "$STAGE_DIR/toybox" ] && build_section toybox # Create symlinks to the host toolchain. We need a usable existing host # toolchain in order to build anything else (even a new host toolchain), diff -r 1720e1d988db -r f1671488c740 root-filesystem.sh --- a/root-filesystem.sh Tue Dec 01 19:43:42 2009 -0600 +++ b/root-filesystem.sh Tue Dec 01 19:49:23 2009 -0600 @@ -95,6 +95,8 @@ STAGE_DIR="$ROOT_TOPDIR"/bin build_section busybox cp "$WORK"/config-busybox "$ROOT_TOPDIR"/src || dienow +STAGE_DIR="$ROOT_TOPDIR"/bin build_section toybox + # Build and install make setupfor make diff -r 1720e1d988db -r f1671488c740 sources/include.sh --- a/sources/include.sh Tue Dec 01 19:43:42 2009 -0600 +++ b/sources/include.sh Tue Dec 01 19:49:23 2009 -0600 @@ -54,7 +54,7 @@ export WRAPPY_LOGPATH="$BUILD/logs/cmdlines.$ARCH_NAME.early" OLDPATH="$PATH:$OLDPATH" PATH="$WRAPDIR" -elif [ ! -f "$HOSTTOOLS/busybox" ] +elif [ ! -f "$HOSTTOOLS/busybox" ] || [ ! -f "$HOSTTOOLS/toybox" ] then PATH="$PATH:$OLDPATH" fi diff -r 1720e1d988db -r f1671488c740 sources/patches/linux-mipsfix.patch --- a/sources/patches/linux-mipsfix.patch Tue Dec 01 19:43:42 2009 -0600 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,57 +0,0 @@ -commit d71789b6fa37c21ce5eb588d279f57904a62e7e2 -Author: Manuel Lauss -Date: Thu Sep 24 21:44:24 2009 +0200 - - mips: fix build of vmlinux.lds - - Commit 51b563fc93c8cb5bff1d67a0a71c374e4a4ea049 ("arm, cris, mips, - sparc, powerpc, um, xtensa: fix build with bash 4.0") removed a few - CPPFLAGS with vital include paths necessary to build vmlinux.lds - on MIPS, and moved the calculation of the 'jiffies' symbol - directly to vmlinux.lds.S but forgot to change make ifdef/... to - cpp macros. - - Signed-off-by: Manuel Lauss - [sam: moved assignment of CPPFLAGS arch/mips/kernel/Makefile] - Signed-off-by: Sam Ravnborg - Acked-by: Dmitri Vorobiev - -diff --git a/arch/mips/kernel/Makefile b/arch/mips/kernel/Makefile -index e961221..eecd2a9 100644 ---- a/arch/mips/kernel/Makefile -+++ b/arch/mips/kernel/Makefile -@@ -2,6 +2,8 @@ - # Makefile for the Linux/MIPS kernel. - # - -+CPPFLAGS_vmlinux.lds := $(KBUILD_CFLAGS) -+ - extra-y := head.o init_task.o vmlinux.lds - - obj-y += cpu-probe.o branch.o entry.o genex.o irq.o process.o \ -diff --git a/arch/mips/kernel/vmlinux.lds.S b/arch/mips/kernel/vmlinux.lds.S -index 9bf0e3d..162b299 100644 ---- a/arch/mips/kernel/vmlinux.lds.S -+++ b/arch/mips/kernel/vmlinux.lds.S -@@ -11,15 +11,15 @@ PHDRS { - note PT_NOTE FLAGS(4); /* R__ */ - } - --ifdef CONFIG_32BIT -- ifdef CONFIG_CPU_LITTLE_ENDIAN -+#ifdef CONFIG_32BIT -+ #ifdef CONFIG_CPU_LITTLE_ENDIAN - jiffies = jiffies_64; -- else -+ #else - jiffies = jiffies_64 + 4; -- endif --else -+ #endif -+#else - jiffies = jiffies_64; --endif -+#endif - - SECTIONS - { diff -r 1720e1d988db -r f1671488c740 sources/sections/busybox.sh --- a/sources/sections/busybox.sh Tue Dec 01 19:43:42 2009 -0600 +++ b/sources/sections/busybox.sh Tue Dec 01 19:49:23 2009 -0600 @@ -1,22 +1,17 @@ -#!/bin/bash - -[ ! -z "$ARCH" ] && DO_CROSS=CROSS_COMPILE=${ARCH}- - # Build busybox statically by default, but don't statically link against # glibc because glibc is buggy and can't combine --static with --gc-sections. [ "$BUILD_STATIC" != "none" ] && [ ! -z "$ARCH" ] && BUSYBOX_STATIC="--static" +[ ! -z "$ARCH" ] && DO_CROSS=CROSS_COMPILE=${ARCH}- # Build busybox setupfor busybox make allyesconfig KCONFIG_ALLCONFIG="${SOURCES}/trimconfig-busybox" && -cp .config "$WORK"/config-busybox +cp .config "$WORK"/config-busybox && LDFLAGS="$LDFLAGS $BUSYBOX_STATIC" make -j $CPUS $VERBOSITY $DO_CROSS && make busybox.links && -cp busybox "${STAGE_DIR}" - -[ $? -ne 0 ] && dienow +cp busybox "${STAGE_DIR}" || dienow for i in $(sed 's@.*/@@' busybox.links) do @@ -25,22 +20,3 @@ done cleanup - -# Build toybox - -[ ! -z "$ARCH" ] && DO_CROSS=CROSS_COMPILE=${ARCH}- - -setupfor toybox -make defconfig && -CFLAGS="$CFLAGS $STATIC_FLAGS" make $DO_CROSS || dienow -if [ -z "$USE_TOYBOX" ] -then - mv toybox "$STAGE_DIR" && - ln -sf toybox "$STAGE_DIR"/patch && - ln -sf toybox "$STAGE_DIR"/oneit && - ln -sf toybox "$STAGE_DIR"/netcat || dienow -else - make install_flat PREFIX="$STAGE_DIR" || dienow -fi - -cleanup diff -r 1720e1d988db -r f1671488c740 sources/sections/toybox.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sources/sections/toybox.sh Tue Dec 01 19:49:23 2009 -0600 @@ -0,0 +1,19 @@ +# Build toybox + +[ ! -z "$ARCH" ] && DO_CROSS=CROSS_COMPILE=${ARCH}- + +setupfor toybox +make defconfig && +CFLAGS="$CFLAGS $STATIC_FLAGS" make $DO_CROSS || dienow + +if [ -z "$USE_TOYBOX" ] +then + mv toybox "$STAGE_DIR" && + ln -sf toybox "$STAGE_DIR"/patch && + ln -sf toybox "$STAGE_DIR"/oneit && + ln -sf toybox "$STAGE_DIR"/netcat || dienow +else + make install_flat PREFIX="$STAGE_DIR" || dienow +fi + +cleanup