diff options
102 files changed, 2176 insertions, 1838 deletions
@@ -1,12 +1,25 @@ 2009.08, Not yet released: + Improvement of external toolchain support: + - Support for glibc toolchains. + - The toolchain configuration announced to Buildroot is + verified against the real toolchain configuration. + - Fixes, documentation. + + Cleanup X.org support: clarified configuration options, and + removed mandatory dependency on useless libraries such as + libXt or libXaw. + Issues resolved (http://bugs.uclibc.org): #83: liblockfile fails to compile due to eaccess redefinition + #163: Xtensa architecture port #241: device mapper + lvm2: build together #271: Library 'libgcc_s.so.1' not installed in search path + #287: New package libnl #333: Bump sqlite package to 3.6.15 #349: update libsoup to version 2.26.2 + #357: New package netstat-nat #359,#413: Upgrade openvpn to Makefile.autotools.in #367: linux kernel compile error for arm926t #369: Add SDL_gfx package @@ -15,14 +28,18 @@ #383: gst-plugins-good: Allow soup plugin to be configured #385: neon: Fix pkgconfig dependency #387: Tremor not installed to toolchain + #389: New package bmon #391: gstreamer: Bump version to 0.10.23 #393: gst-plugins-base: Bump version to 0.10.23 #395: gst-plugins-bad: New package + #403: Error while building iso9660 image #409: Bump php package to 5.2.10 #411: ipsec-tools: Bump version to 0.7.2 #417: New package spawn-fcgi #419: Bump lighttpd package to 1.4.23 + #421: toolchain: Clean up toolchain locale support menu #467: DirectFB 1.4.1 + #473: memstat_0.5.tar.gz has install with -D and that fails "make" 2009.05, Released June 1st, 2009: @@ -332,6 +332,9 @@ $(PROJECT_BUILD_DIR)/.root: if [ -d "$(TARGET_SKELETON)" ]; then \ cp -fa $(TARGET_SKELETON)/* $(TARGET_DIR)/; \ fi; \ + if [ -d "$(TARGET_SKELETON_PATCH)" ]; then \ + toolchain/patch-kernel.sh $(TARGET_DIR) $(TARGET_SKELETON_PATCH)/ \*patch\*; \ + fi; \ touch $(STAGING_DIR)/.fakeroot.00000; \ fi -find $(TARGET_DIR) -type d -name CVS -o -name .svn -print0 | xargs -0 rm -rf @@ -360,6 +363,10 @@ endif find $(TARGET_DIR) -type f -perm +111 | xargs $(STRIPCMD) 2>/dev/null || true $(TARGET_LDCONFIG) -r $(TARGET_DIR) 2>/dev/null +ifneq ($(BR2_ROOTFS_POST_BUILD_SCRIPT),"") + $(BR2_ROOTFS_POST_BUILD_SCRIPT) $(TARGET_DIR) +endif + ifeq ($(BR2_ENABLE_LOCALE_PURGE),y) LOCALE_WHITELIST=$(PROJECT_BUILD_DIR)/locales.nopurge LOCALE_NOPURGE=$(strip $(subst ",,$(BR2_ENABLE_LOCALE_WHITELIST))) @@ -5,10 +5,3 @@ Buildroot2 TODOs - convert all packages that use autoconf to use the infrastructure of packages/Makefile.autotools.in - fix setting of flags for packages - -- stabilize for a 0.10.0 release - -- think about using a common --config-cache for configure - Should take care of expanding TARGET_CONFIGURE_ARGS for cross compiles - to working presets. - diff --git a/docs/buildroot.html b/docs/buildroot.html index e97d6011f..b49208c27 100644 --- a/docs/buildroot.html +++ b/docs/buildroot.html @@ -37,6 +37,7 @@ <li><a href="#external_toolchain">Use an external toolchain</a></li> <li><a href="#downloaded_packages">Location of downloaded packages</a> </li> + <li><a href="#adapting_rootfs">Adapting the rootfs for own binaries</a></li> <li><a href="#add_software">Extending Buildroot with more Software</a></li> <li><a href="#links">Resources</a></li> @@ -877,6 +878,22 @@ It allows to generate toolchains based on <i>uClibc</i>, <i>glibc</i> and <i>eglibc</i> for a wide range of architectures, and has good community support.</p> + <h2><a name="adapting_rootfs" id="adapting_rootfs">Adapting the rootfs + for own binaries</h2> + + <p>When using BR2 in an environment where own software binaries or + static data should be part of the generated rootfs package, the + <code>BR2_ROOTFS_POST_BUILD_SCRIPT</code> feature might interest + you. You can specify a command here which is called <i>after</i> BR2 + built all the selected software, but <i>before</i> the the rootfs + packages are assembled. The destination rootfs folder is given as + first argument. You can add own components here, change + default configurations and remove unwanted files.</p> + <p>You should, however, use that feature with care. Whenever you + find that a certain package generates wrong or unneeded files, you + should rather fix than package than working around it with a + cleanup script.</p> + <h2><a name="add_software" id="add_software"></a>Extending Buildroot with more software</h2> diff --git a/package/Config.in b/package/Config.in index c88732313..ba3418fe8 100644 --- a/package/Config.in +++ b/package/Config.in @@ -133,6 +133,7 @@ if !BR2_PACKAGE_BUSYBOX_HIDE_OTHERS source "package/boa/Config.in" endif source "package/bind/Config.in" +source "package/bmon/Config.in" source "package/bridge-utils/Config.in" if !BR2_PACKAGE_BUSYBOX_HIDE_OTHERS source "package/dhcp/Config.in" @@ -155,6 +156,7 @@ source "package/libcgicc/Config.in" source "package/libcurl/Config.in" source "package/libdnet/Config.in" source "package/libeXosip2/Config.in" +source "package/libnl/Config.in" source "package/libosip2/Config.in" source "package/libpcap/Config.in" source "package/libsoup/Config.in" @@ -181,6 +183,7 @@ source "package/netkitbase/Config.in" source "package/netkittelnet/Config.in" source "package/netplug/Config.in" source "package/netsnmp/Config.in" +source "package/netstat-nat/Config.in" source "package/nfs-utils/Config.in" source "package/ntp/Config.in" source "package/olsr/Config.in" @@ -319,42 +322,9 @@ source "package/qt/Config.in" #source "package/microwin/Config.in" - -choice - prompt "X Window System server" - default BR2_PACKAGE_XSERVER_none - help - Select the X Window System server to use - -config BR2_PACKAGE_XSERVER_none - bool "none" -config BR2_PACKAGE_XSERVER_xorg - bool "modular xorg" - depends on BR2_USE_WCHAR && BR2_LARGEFILE && BR2_INSTALL_LIBSTDCPP # && BR2_ENABLE_LOCALE -# depending on BR2_ENABLE_LOCALE gives a recursion error with dbus -config BR2_PACKAGE_XSERVER_tinyx - bool "tinyx" - depends on BR2_USE_WCHAR -endchoice - -comment "xorg requires a toolchain with C++, LOCALE, LARGEFILE and WCHAR support" - depends on !(BR2_USE_WCHAR && BR2_LARGEFILE && BR2_INSTALL_LIBSTDCPP && BR2_ENABLE_LOCALE) -comment "tinyx requires a toolchain with WCHAR support" - depends on !BR2_USE_WCHAR - -config BR2_X11_PREFIX - string - default "/usr/X11R6" if BR2_PACKAGE_XSERVER_xorg - default "/usr" if BR2_PACKAGE_XSERVER_tinyx - help - X11 apps root location - -if !BR2_PACKAGE_XSERVER_none source "package/x11r7/Config.in" -endif comment "X libraries and helper libraries" -#XXX: maybe some of these should depend on !BR2_PACKAGE_XSERVER_none source "package/atk/Config.in" source "package/cairo/Config.in" source "package/pango/Config.in" diff --git a/package/Makefile.in b/package/Makefile.in index dfe4347cf..f0dc47a36 100644 --- a/package/Makefile.in +++ b/package/Makefile.in @@ -205,6 +205,7 @@ HOST_ARCH:=$(shell $(HOSTCC) -dumpmachine | sed -e s'/-.*//' \ -e 's/mipsel-.*/mipsel/' \ -e 's/cris.*/cris/' \ -e 's/i[3-9]86/i386/' \ + -e 's/xtensa.*/xtensa/' \ ) GNU_HOST_NAME:=$(HOST_ARCH)-$(subst ",,$(BR2_GNU_BUILD_SUFFIX)) #") @@ -380,23 +381,8 @@ else ENABLE_DEBUG:= endif - # X Windowing system -XSERVER:= -ifeq ($(BR2_PACKAGE_TINYX),y) -XSERVER+=tinyx -endif -ifeq ($(BR2_PACKAGE_XORG),y) -XSERVER+=xorg -endif -ifeq ($(BR2_PACKAGE_XORG7),y) -XSERVER+=xserver_xorg-server -endif -ifeq ($(BR2_PACKAGE_XGGI),y) -XSERVER+=xggi -endif - X11_PREFIX:=$(strip $(subst ",, $(BR2_X11_PREFIX))) #")) diff --git a/package/atk/atk.mk b/package/atk/atk.mk index 199ec7d5c..2d3a4e5af 100644 --- a/package/atk/atk.mk +++ b/package/atk/atk.mk @@ -45,7 +45,7 @@ ATK_CONF_OPT = --enable-shared \ --disable-glibtest --enable-explicit-deps=no \ --disable-debug -ifneq ($(BR2_PACKAGE_XSERVER_none),y) +ifeq ($(BR2_PACKAGE_XORG7),y) ATK_CONF_OPT += --with-x \ --x-includes=$(STAGING_DIR)/usr/include/X11 \ --x-libraries=$(STAGING_DIR)/usr/lib --disable-glibtest diff --git a/package/blackbox/Config.in b/package/blackbox/Config.in index d6819b44c..bf237c53a 100644 --- a/package/blackbox/Config.in +++ b/package/blackbox/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_BLACKBOX bool "blackbox" - depends on BR2_PACKAGE_XORG||BR2_PACKAGE_XORG7 + depends on BR2_PACKAGE_XORG7 depends on BR2_INSTALL_LIBSTDCPP help Blackbox is a fast, lightweight window manager for the X diff --git a/package/blackbox/blackbox.mk b/package/blackbox/blackbox.mk index a85c7535b..371a4a44d 100644 --- a/package/blackbox/blackbox.mk +++ b/package/blackbox/blackbox.mk @@ -14,6 +14,6 @@ BLACKBOX_INSTALL_TARGET:=YES BLACKBOX_CONF_OPT:=--x-includes=$(STAGING_DIR)/usr/include/X11 \ --x-libraries=$(STAGING_DIR)/usr/lib -BLACKBOX_DEPENDENCIES:=uclibc $(XSERVER) +BLACKBOX_DEPENDENCIES:=uclibc xserver_xorg-server $(eval $(call AUTOTARGETS,package,blackbox)) diff --git a/package/bmon/Config.in b/package/bmon/Config.in new file mode 100644 index 000000000..f42d19ad6 --- /dev/null +++ b/package/bmon/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_BMON + bool "bmon" + select BR2_PACKAGE_NCURSES + help + Linux bandwidth monitor diff --git a/package/bmon/bmon-gcc4.patch b/package/bmon/bmon-gcc4.patch new file mode 100644 index 000000000..23c12b538 --- /dev/null +++ b/package/bmon/bmon-gcc4.patch @@ -0,0 +1,36 @@ +diff -ru bmon-2.1.0~/src/out_audio.c bmon-2.1.0/src/out_audio.c +--- bmon-2.1.0~/src/out_audio.c 2008-07-26 20:06:24.000000000 +0200 ++++ bmon-2.1.0/src/out_audio.c 2008-07-26 20:09:42.000000000 +0200 +@@ -141,7 +141,7 @@ + .om_draw = audio_draw, + .om_set_opts = audio_set_opts, + .om_probe = audio_probe, +- .om_shutdown audio_shutdown, ++ .om_shutdown = audio_shutdown + }; + + static void __init audio_init(void) +diff -ru bmon-2.1.0~/src/out_db.c bmon-2.1.0/src/out_db.c +--- bmon-2.1.0~/src/out_db.c 2008-07-26 20:06:24.000000000 +0200 ++++ bmon-2.1.0/src/out_db.c 2008-07-26 20:07:44.000000000 +0200 +@@ -679,7 +679,7 @@ + .om_draw = db_draw, + .om_set_opts = db_set_opts, + .om_probe = db_probe, +- .om_shutdown db_shutdown, ++ .om_shutdown = db_shutdown, + }; + + static void __init db_init(void) +diff -ru bmon-2.1.0~/src/out_xml_event.c bmon-2.1.0/src/out_xml_event.c +--- bmon-2.1.0~/src/out_xml_event.c 2008-07-26 20:06:24.000000000 +0200 ++++ bmon-2.1.0/src/out_xml_event.c 2008-07-26 20:09:42.000000000 +0200 +@@ -127,7 +127,7 @@ + .om_draw = xml_event_draw, + .om_set_opts = xml_event_set_opts, + .om_probe = xml_event_probe, +- .om_shutdown xml_event_shutdown, ++ .om_shutdown = xml_event_shutdown + }; + + static void __init xml_event_init(void) diff --git a/package/bmon/bmon-nolibnl.patch b/package/bmon/bmon-nolibnl.patch new file mode 100644 index 000000000..4925cd4c9 --- /dev/null +++ b/package/bmon/bmon-nolibnl.patch @@ -0,0 +1,24 @@ +diff -Nura bmon/configure bmon.libnl/configure +--- bmon/configure 2005-04-05 12:01:33.000000000 -0300 ++++ bmon.libnl/configure 2009-06-10 16:10:52.000000000 -0300 +@@ -7327,13 +7327,13 @@ + echo "${ECHO_T}$ac_cv_lib_nl_nl_connect" >&6 + if test $ac_cv_lib_nl_nl_connect = yes; then + +- +-cat >>confdefs.h <<_ACEOF +-#define HAVE_NL "1" +-_ACEOF +- +- LIBNL="-lnl" +- NL="Yes" ++ case ${target_os} in ++ *linux*) ++ echo ++ echo "*** Warning: Building bmon on Linux w/o libnl ***" ++ echo ++ ;; ++ esac + + else + diff --git a/package/bmon/bmon-nostrip.patch b/package/bmon/bmon-nostrip.patch new file mode 100644 index 000000000..d457e84a2 --- /dev/null +++ b/package/bmon/bmon-nostrip.patch @@ -0,0 +1,12 @@ +diff -Nura bmon/GNUmakefile bmon.nostrip/GNUmakefile +--- bmon/GNUmakefile 2005-04-05 12:01:33.000000000 -0300 ++++ bmon.nostrip/GNUmakefile 2009-06-10 16:12:04.000000000 -0300 +@@ -50,7 +50,7 @@ + install: + ./install-sh -d -m 0755 $(DESTDIR)$(prefix)/bin + ./install-sh -d -m 0755 $(DESTDIR)$(mandir)/man1 +- ./install-sh -c -s -m 0755 src/bmon $(DESTDIR)$(prefix)/bin ++ ./install-sh -c -m 0755 src/bmon $(DESTDIR)$(prefix)/bin + ./install-sh -c -m 0644 man/bmon.1 $(DESTDIR)$(mandir)/man1 + + show: Makefile.opts diff --git a/package/bmon/bmon.mk b/package/bmon/bmon.mk new file mode 100644 index 000000000..0b60ad420 --- /dev/null +++ b/package/bmon/bmon.mk @@ -0,0 +1,18 @@ +############################################################# +# +# bmon +# +############################################################# + +BMON_VERSION = 2.1.0 +BMON_SOURCE = bmon-$(BMON_VERSION).tar.gz +BMON_SITE = http://distfiles.gentoo.org/distfiles +BMON_DEPENDENCIES = ncurses uclibc +BMON_INSTALL_TARGET_OPT = DESTDIR=$(TARGET_DIR) install + +$(eval $(call AUTOTARGETS,package,bmon)) + +$(BMON_TARGET_UNINSTALL): + $(call MESSAGE,"Uninstalling") + rm -f $(TARGET_DIR)/usr/bin/bmon + rm -f $(BMON_TARGET_INSTALL_TARGET) $(BMON_HOOK_POST_INSTALL) diff --git a/package/cairo/cairo.mk b/package/cairo/cairo.mk index 048351e50..a0840834f 100644 --- a/package/cairo/cairo.mk +++ b/package/cairo/cairo.mk @@ -48,9 +48,9 @@ else CAIRO_CONF_OPT += --disable-directfb endif -ifneq ($(BR2_PACKAGE_XSERVER_none),y) +ifeq ($(BR2_PACKAGE_XORG7),y) CAIRO_CONF_OPT += --enable-xlib --with-x - CAIRO_DEPENDENCIES += $(XSERVER) + CAIRO_DEPENDENCIES += xserver_xorg-server else CAIRO_CONF_OPT += --disable-xlib --without-x endif diff --git a/package/cups/cups.mk b/package/cups/cups.mk index 9051e0d0f..a22651fc7 100644 --- a/package/cups/cups.mk +++ b/package/cups/cups.mk @@ -18,7 +18,7 @@ else CUPS_CONF_OPT += --disable-dbus endif -ifneq ($(BR2_PACKAGE_XSERVER_none),y) +ifeq ($(BR2_PACKAGE_XORG7),y) CUPS_DEPENDENCIES += xlib_libX11 endif diff --git a/package/dillo/Config.in b/package/dillo/Config.in index f0682d9fd..87418d297 100644 --- a/package/dillo/Config.in +++ b/package/dillo/Config.in @@ -1,15 +1,12 @@ config BR2_PACKAGE_DILLO bool "dillo" - depends on BR2_PACKAGE_JPEG - depends on BR2_PACKAGE_LIBGLIB12 - depends on BR2_PACKAGE_LIBGTK12 - depends on BR2_PACKAGE_ZLIB - depends on BR2_PACKAGE_LIBPNG - depends on BR2_PACKAGE_XORG||BR2_PACKAGE_XORG7 + select BR2_PACKAGE_JPEG + select BR2_PACKAGE_LIBGLIB12 + select BR2_PACKAGE_LIBGTK12 + select BR2_PACKAGE_ZLIB + select BR2_PACKAGE_LIBPNG + depends on BR2_PACKAGE_XORG7 help Dillo is a small GTK+ based web browser written in C. http://www.dillo.org/ - -comment "dillo - disabled (requires jpeg,libglib12,libgtk12,zlib,libpng and Xorg(7))" - depends on !BR2_PACKAGE_JPEG || !BR2_PACKAGE_LIBGLIB12 || !BR2_PACKAGE_LIBGTK12 || !BR2_PACKAGE_ZLIB || !BR2_PACKAGE_LIBPNG || !(BR2_PACKAGE_XORG || BR2_PACKAGE_XORG7) diff --git a/package/dillo/dillo.mk b/package/dillo/dillo.mk index 12d9a5ce1..1dcfd5557 100644 --- a/package/dillo/dillo.mk +++ b/package/dillo/dillo.mk @@ -39,7 +39,7 @@ $(DILLO_DIR)/.installed: $(DILLO_DIR)/src/dillo $(MAKE) -C $(DILLO_DIR) DESTDIR=$(TARGET_DIR) install touch $(DILLO_DIR)/.installed -dillo: uclibc $(XSERVER) libglib12 libgtk12 jpeg libpng $(DILLO_DIR)/.installed +dillo: uclibc xserver_xorg-server libglib12 libgtk12 jpeg libpng $(DILLO_DIR)/.installed dillo-source: $(DL_DIR)/$(DILLO_SOURCE) diff --git a/package/directfb/Config.in b/package/directfb/Config.in index 1f081744a..fce9ed46c 100644 --- a/package/directfb/Config.in +++ b/package/directfb/Config.in @@ -16,7 +16,7 @@ config BR2_PACKAGE_DIRECTFB_MULTI config BR2_PACKAGE_DIRECTFB_XSERVER bool "build with X server backend" depends on BR2_PACKAGE_DIRECTFB - depends on !BR2_PACKAGE_XSERVER_none + depends on BR2_PACKAGE_XORG7 config BR2_PACKAGE_DIRECTFB_UNIQUE bool "enable unique window manager" diff --git a/package/docker/Config.in b/package/docker/Config.in index 1c89a79c8..02ef83c2e 100644 --- a/package/docker/Config.in +++ b/package/docker/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_DOCKER bool "docker" - depends on BR2_PACKAGE_XORG||BR2_PACKAGE_XORG7||BR2_PACKAGE_TINYX + depends on BR2_PACKAGE_XORG7 select BR2_PACKAGE_LIBGLIB2 help a system tray dock for X diff --git a/package/docker/docker.mk b/package/docker/docker.mk index 860cd7e81..3b8c25cfe 100644 --- a/package/docker/docker.mk +++ b/package/docker/docker.mk @@ -19,7 +19,7 @@ DOCKER_MAKE_OPT = CC=$(TARGET_CC) CXX=$(TARGET_CXX) LD=$(TARGET_LD) \ DOCKER_INSTALL_TARGET_OPT = PREFIX=$(TARGET_DIR)/usr install -DOCKER_DEPENDENCIES = uclibc host-pkgconfig libglib2 $(XSERVER) +DOCKER_DEPENDENCIES = uclibc host-pkgconfig libglib2 xserver_xorg-server $(eval $(call AUTOTARGETS,package,docker)) diff --git a/package/fltk/Config.in b/package/fltk/Config.in index 120ee680a..b0ffb4e7e 100644 --- a/package/fltk/Config.in +++ b/package/fltk/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_FLTK bool "fltk" - depends on BR2_PACKAGE_XORG||BR2_PACKAGE_XORG7 + depends on BR2_PACKAGE_XORG7 help A cross-platform C++ GUI toolkit for UNIX/Linux (X11), Microsoft Windows, and MacOS X. diff --git a/package/fltk/fltk.mk b/package/fltk/fltk.mk index f4a04986e..9574cb84a 100644 --- a/package/fltk/fltk.mk +++ b/package/fltk/fltk.mk @@ -18,6 +18,6 @@ FLTK_CONF_OPT = --target=$(GNU_TARGET_NAME) --host=$(GNU_TARGET_NAME) \ --build=$(GNU_HOST_NAME) --prefix=/usr \ --sysconfdir=/etc --enable-shared --enable-threads --with-x -FLTK_DEPENDENCIES = uclibc $(XSERVER) +FLTK_DEPENDENCIES = uclibc xserver_xorg-server $(eval $(call AUTOTARGETS,package,fltk))
\ No newline at end of file diff --git a/package/games/ace_of_penguins/Config.in b/package/games/ace_of_penguins/Config.in index 3e1a9db2f..edbaf26ce 100644 --- a/package/games/ace_of_penguins/Config.in +++ b/package/games/ace_of_penguins/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_ACE_OF_PENGUINS bool "ace_of_penguins" select BR2_PACKAGE_LIBPNG - depends on BR2_PACKAGE_XORG||BR2_PACKAGE_XORG7 + depends on BR2_PACKAGE_XORG7 help The Ace of Penguins is a set of Unix/X solitaire games based on the ones available for Windows but with a number of diff --git a/package/games/ace_of_penguins/ace_of_penguins.mk b/package/games/ace_of_penguins/ace_of_penguins.mk index 2aaf7aac8..2e4fda6e9 100644 --- a/package/games/ace_of_penguins/ace_of_penguins.mk +++ b/package/games/ace_of_penguins/ace_of_penguins.mk @@ -10,6 +10,6 @@ ACE_OF_PENGUINS_AUTORECONF = YES ACE_OF_PENGUINS_STAGING = NO ACE_OF_PENGUINS_TARGET = YES -ACE_OF_PENGUINS_DEPENDENCIES = uclibc libpng $(XSERVER) +ACE_OF_PENGUINS_DEPENDENCIES = uclibc libpng xserver_xorg-server $(eval $(call AUTOTARGETS,package/games,ace_of_penguins)) diff --git a/package/games/lxdoom/Config.in b/package/games/lxdoom/Config.in index 8eb7d5280..ebef9f5e6 100644 --- a/package/games/lxdoom/Config.in +++ b/package/games/lxdoom/Config.in @@ -1,5 +1,5 @@ config BR2_PACKAGE_LXDOOM bool "lxdoom" - depends on !BR2_PACKAGE_XSERVER_none + depends on BR2_PACKAGE_XORG7 help This is the linux version of the popular doom game. diff --git a/package/gnuconfig/config.guess b/package/gnuconfig/config.guess index ebf353e3d..ced32b63a 100755 --- a/package/gnuconfig/config.guess +++ b/package/gnuconfig/config.guess @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, # Inc. -timestamp='2007-07-22' +timestamp='2009-07-24' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -971,8 +971,8 @@ EOF x86_64:Linux:*:*) echo x86_64-unknown-linux-${LIBC} exit ;; - xtensa:Linux:*:*) - echo xtensa-unknown-linux-${LIBC} + xtensa*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; i*86:Linux:*:*) # The BFD linker knows what the default object file format is, so diff --git a/package/gnuconfig/config.sub b/package/gnuconfig/config.sub index 392e21fc2..efbb230f4 100755 --- a/package/gnuconfig/config.sub +++ b/package/gnuconfig/config.sub @@ -370,10 +370,14 @@ case $basic_machine in | v850-* | v850e-* | vax-* \ | we32k-* \ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ - | xstormy16-* | xtensa-* \ + | xstormy16-* | xtensa*-* \ | ymp-* \ | z8k-*) ;; + # Recognize the basic CPU types without company name, with glob match. + xtensa*) + basic_machine=$basic_machine-unknown + ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. 386bsd) diff --git a/package/gnuconfig/patches/config.xtensa.glob.patch b/package/gnuconfig/patches/config.xtensa.glob.patch new file mode 100644 index 000000000..4b37aa77f --- /dev/null +++ b/package/gnuconfig/patches/config.xtensa.glob.patch @@ -0,0 +1,44 @@ +diff -rNdup config-orig/config.guess config/config.guess +--- config-orig/config.guess 2007-11-13 16:31:20.000000000 -0800 ++++ config/config.guess 2007-11-14 00:26:39.000000000 -0800 +@@ -954,8 +954,8 @@ EOF + x86_64:Linux:*:*) + echo x86_64-unknown-linux-gnu + exit ;; +- xtensa:Linux:*:*) +- echo xtensa-unknown-linux-gnu ++ xtensa*:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + i*86:Linux:*:*) + # The BFD linker knows what the default object file format is, so +diff -rNdup config-orig/config.sub config/config.sub +--- config-orig/config.sub 2007-11-13 16:31:20.000000000 -0800 ++++ config/config.sub 2007-11-14 00:48:37.000000000 -0800 +@@ -369,10 +369,14 @@ case $basic_machine in + | v850-* | v850e-* | vax-* \ + | we32k-* \ + | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ +- | xstormy16-* | xtensa-* \ ++ | xstormy16-* | xtensa*-* \ + | ymp-* \ + | z8k-*) + ;; ++ # Recognize the basic CPU types without company name, with glob match. ++ xtensa*) ++ basic_machine=$basic_machine-unknown ++ ;; + # Recognize the various machine names and aliases which stand + # for a CPU type and a company and sometimes even an OS. + 386bsd) +diff -rNdup config-orig/testsuite/config-sub.data config/testsuite/config-sub.data +--- config-orig/testsuite/config-sub.data 2007-11-13 15:56:17.000000000 -0800 ++++ config/testsuite/config-sub.data 2007-11-14 00:31:22.000000000 -0800 +@@ -109,6 +109,7 @@ fido-elf fido-unknown-elf + fido fido-unknown-none + xtensa-elf xtensa-unknown-elf + xtensa-linux xtensa-unknown-linux-gnu ++xtensa_dc232b-linux xtensa_dc232b-unknown-linux-gnu + i386-drops1.0 i386-pc-drops1.0 + mep mep-unknown-elf + mep-elf mep-unknown-elf diff --git a/package/gnuconfig/testsuite/config-sub.data b/package/gnuconfig/testsuite/config-sub.data index 0f2272a14..2a5e1f1eb 100644 --- a/package/gnuconfig/testsuite/config-sub.data +++ b/package/gnuconfig/testsuite/config-sub.data @@ -109,6 +109,7 @@ fido-elf fido-unknown-elf fido fido-unknown-none xtensa-elf xtensa-unknown-elf xtensa-linux xtensa-unknown-linux-gnu +xtensa_dc232b-linux xtensa_dc232b-unknown-linux-gnu i386-drops1.0 i386-pc-drops1.0 mep mep-unknown-elf mep-elf mep-unknown-elf diff --git a/package/java/classpath/classpath.mk b/package/java/classpath/classpath.mk index 71c18a045..d037adfe6 100644 --- a/package/java/classpath/classpath.mk +++ b/package/java/classpath/classpath.mk @@ -77,8 +77,8 @@ else CLASSPATH_CONF_OPT+= --disable-gtk-peer endif -ifneq ($(BR2_PACKAGE_XSERVER_none),y) - CLASSPATH_DEPENDENCIES+= $(XSERVER) +ifeq ($(BR2_PACKAGE_XORG7),y) + CLASSPATH_DEPENDENCIES+= xserver_xorg-server CLASSPATH_CONF_OPT+= --with-x \ --x-includes=$(STAGING_DIR)/usr/include/X11 \ --x-libraries=$(STAGING_DIR)/usr/lib diff --git a/package/java/jamvm/jamvm.mk b/package/java/jamvm/jamvm.mk index dff089af4..750bfae23 100644 --- a/package/java/jamvm/jamvm.mk +++ b/package/java/jamvm/jamvm.mk @@ -52,8 +52,8 @@ JAMVM_CONF_OPT = \ JAMVM_DEPENDENCIES = uclibc host-pkgconfig classpath #Include X libraries when we have an X server -ifneq ($(BR2_PACKAGE_XSERVER_none),y) - JAMVM_DEPENDENCIES+= $(XSERVER) +ifeq ($(BR2_PACKAGE_XORG7),y) + JAMVM_DEPENDENCIES+= xserver_xorg-server JAMVM_CONF_OPT+= --with-x \ --x-includes=$(STAGING_DIR)/usr/include/X11 \ --x-libraries=$(STAGING_DIR)/usr/lib diff --git a/package/libgtk12/Config.in b/package/libgtk12/Config.in index e0f643ff2..01393f96f 100644 --- a/package/libgtk12/Config.in +++ b/package/libgtk12/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_LIBGTK12 bool "libgtk12" select BR2_PACKAGE_LIBGLIB12 - depends on BR2_PACKAGE_XORG||BR2_PACKAGE_XORG7||BR2_PACKAGE_TINYX + depends on BR2_PACKAGE_XORG7 help The GTK+ graphical user interface library diff --git a/package/libgtk12/libgtk12.mk b/package/libgtk12/libgtk12.mk index a578ae8ae..bb121f01d 100644 --- a/package/libgtk12/libgtk12.mk +++ b/package/libgtk12/libgtk12.mk @@ -86,7 +86,7 @@ $(TARGET_DIR)/lib/libgtk-1.2.so.0.9.1: $(STAGING_DIR)/lib/$(LIBGTK12_BINARY) $(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/lib/libgdk-1.2.so.0.9.1 touch -c $(TARGET_DIR)/lib/libgtk-1.2.so.0.9.1 -libgtk12: uclibc libglib12 $(XSERVER) $(TARGET_DIR)/lib/libgtk-1.2.so.0.9.1 +libgtk12: uclibc libglib12 xserver_xorg-server $(TARGET_DIR)/lib/libgtk-1.2.so.0.9.1 libgtk12-clean: rm -f $(TARGET_DIR)/lib/libgtk* $(TARGET_DIR)/lib/libgdk* diff --git a/package/libgtk2/Config.in b/package/libgtk2/Config.in index 19809f26e..5c0482d61 100644 --- a/package/libgtk2/Config.in +++ b/package/libgtk2/Config.in @@ -6,7 +6,7 @@ config BR2_PACKAGE_LIBGTK2 select BR2_PACKAGE_CAIRO_PDF select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_PANGO - depends on BR2_PACKAGE_XORG||BR2_PACKAGE_XORG7||BR2_PACKAGE_TINYX||BR2_PACKAGE_DIRECTFB + depends on BR2_PACKAGE_XORG7||BR2_PACKAGE_DIRECTFB help The GTK+ version 2 graphical user interface library diff --git a/package/libgtk2/libgtk2.mk b/package/libgtk2/libgtk2.mk index 7db0067bb..3b85f6346 100644 --- a/package/libgtk2/libgtk2.mk +++ b/package/libgtk2/libgtk2.mk @@ -85,13 +85,13 @@ ifeq ($(BR2_PACKAGE_DIRECTFB),y) LIBGTK2_DEPENDENCIES += directfb endif -ifneq ($(BR2_PACKAGE_XSERVER_none),y) +ifeq ($(BR2_PACKAGE_XORG7),y) LIBGTK2_CONF_OPT += \ --with-x \ --x-includes=$(STAGING_DIR)/usr/include/X11 \ --x-libraries=$(STAGING_DIR)/usr/lib \ --with-gdktarget=x11 - LIBGTK2_DEPENDENCIES += xlib_libXcomposite $(XSERVER) + LIBGTK2_DEPENDENCIES += xlib_libXcomposite xserver_xorg-server else LIBGTK2_CONF_OPT += --without-x endif diff --git a/package/libnl/Config.in b/package/libnl/Config.in new file mode 100644 index 000000000..24e481361 --- /dev/null +++ b/package/libnl/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_LIBNL + bool "libnl" + help + A library for applications dealing with netlink socket. + + http://people.suug.ch/~tgr/libnl/ diff --git a/package/libnl/libnl.mk b/package/libnl/libnl.mk new file mode 100644 index 000000000..1a667468d --- /dev/null +++ b/package/libnl/libnl.mk @@ -0,0 +1,22 @@ +############################################################# +# +# libnl +# +############################################################# + +LIBNL_VERSION = 1.1 +LIBNL_SOURCE = libnl-$(LIBNL_VERSION).tar.gz +LIBNL_SITE = http://distfiles.gentoo.org/distfiles +LIBNL_INSTALL_STAGING = YES +LIBNL_INSTALL_TARGET_OPT = DESTDIR=$(TARGET_DIR) install + +$(eval $(call AUTOTARGETS,package,libnl)) + +$(LIBNL_HOOK_POST_INSTALL): $(LIBNL_TARGET_INSTALL_TARGET) + $(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/lib/libnl.so* + touch $@ + +$(LIBNL_TARGET_UNINSTALL): + $(call MESSAGE,"Uninstalling") + rm -f $(TARGET_DIR)/usr/lib/libnl.so* + rm -f $(LIBNL_TARGET_INSTALL_TARGET) $(LIBNL_HOOK_POST_INSTALL) diff --git a/package/matchbox/Config.in b/package/matchbox/Config.in index b57a4a29f..afa568412 100644 --- a/package/matchbox/Config.in +++ b/package/matchbox/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_MATCHBOX bool "MatchBox Window Manager" - select BR2_PACKAGE_XSERVER_XORG_SERVER select BR2_PACKAGE_XORG7 select BR2_PACKAGE_FONTCONFIG select BR2_PACKAGE_XLIB_LIBXDAMAGE diff --git a/package/metacity/Config.in b/package/metacity/Config.in index b552f67ac..12c54d117 100644 --- a/package/metacity/Config.in +++ b/package/metacity/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_METACITY bool "metacity" select BR2_PACKAGE_LIBGTK2 - depends on BR2_PACKAGE_XORG||BR2_PACKAGE_XORG7 + depends on BR2_PACKAGE_XORG7 help Metacity is a window manager for the X Window System. diff --git a/package/metacity/metacity.mk b/package/metacity/metacity.mk index d5d5bb7b0..6861165e4 100644 --- a/package/metacity/metacity.mk +++ b/package/metacity/metacity.mk @@ -16,7 +16,7 @@ METACITY_CONF_OPT = --x-includes=$(STAGING_DIR)/usr/include/X11 \ --disable-dependency-tracking \ --disable-sm --disable-startup-notification -METACITY_DEPENDENCIES = uclibc libgtk2 $(XSERVER) +METACITY_DEPENDENCIES = uclibc libgtk2 xserver_xorg-server $(eval $(call AUTOTARGETS,package,metacity)) diff --git a/package/midori/Config.in b/package/midori/Config.in index eb960d4eb..80b7f772d 100644 --- a/package/midori/Config.in +++ b/package/midori/Config.in @@ -2,11 +2,8 @@ config BR2_PACKAGE_MIDORI bool "midori" select BR2_PACKAGE_WEBKIT select BR2_PACKAGE_LIBSEXY - depends on BR2_PACKAGE_XORG||BR2_PACKAGE_XORG7 + depends on BR2_PACKAGE_XORG7 help Midori is a lightweight web browser based on WebKit http://software.twotoasts.de/?page=midori - -comment "midori - disabled (requires Xorg(7))" - depends on !(BR2_PACKAGE_XORG || BR2_PACKAGE_XORG7) diff --git a/package/midori/midori.mk b/package/midori/midori.mk index 805b0287a..6861d4c29 100644 --- a/package/midori/midori.mk +++ b/package/midori/midori.mk @@ -11,6 +11,6 @@ MIDORI_AUTORECONF = YES MIDORI_INSTALL_STAGING = NO MIDORI_INSTALL_TARGET = YES -MIDORI_DEPENDENCIES = uclibc host-pkgconfig webkit libsexy $(XSERVER) +MIDORI_DEPENDENCIES = uclibc host-pkgconfig webkit libsexy xserver_xorg-server $(eval $(call AUTOTARGETS,package,midori)) diff --git a/package/multimedia/Config.in b/package/multimedia/Config.in index 02a35b827..c7160a663 100644 --- a/package/multimedia/Config.in +++ b/package/multimedia/Config.in @@ -11,6 +11,7 @@ source "package/multimedia/gst-plugins-bad/Config.in" source "package/multimedia/gst-plugins-ugly/Config.in" source "package/multimedia/libid3tag/Config.in" source "package/multimedia/libmad/Config.in" +source "package/multimedia/libmms/Config.in" source "package/multimedia/libmpd/Config.in" source "package/multimedia/libogg/Config.in" source "package/multimedia/libsndfile/Config.in" diff --git a/package/multimedia/libmms/Config.in b/package/multimedia/libmms/Config.in new file mode 100644 index 000000000..02055c4c2 --- /dev/null +++ b/package/multimedia/libmms/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_LIBMMS + bool "libmms" + select BR2_PACKAGE_LIBGLIB2 + help + LibMMS is a common library for parsing mms:// and mmsh:// + type network streams. These are commonly used to stream + Windows Media Video content over the web. LibMMS itself is + only for receiving MMS stream, it doesn't handle sending at + all. + + http://launchpad.net/libmms diff --git a/package/multimedia/libmms/libmms.mk b/package/multimedia/libmms/libmms.mk new file mode 100644 index 000000000..a866fadd6 --- /dev/null +++ b/package/multimedia/libmms/libmms.mk @@ -0,0 +1,17 @@ +############################################################# +# +# libmms +# +############################################################# +LIBMMS_VERSION = 0.4 +LIBMMS_SOURCE = libmms-$(LIBMMS_VERSION).tar.gz +LIBMMS_SITE = http://launchpad.net/libmms/trunk/$(LIBMMS_VERSION)/+download + +LIBMMS_AUTORECONF = NO +LIBMMS_LIBTOOL_PATCH = NO +LIBMMS_INSTALL_STAGING = YES +LIBMMS_INSTALL_TARGET = YES + +LIBMMS_DEPENDENCIES = uclibc host-pkgconfig libglib2 + +$(eval $(call AUTOTARGETS,package/multimedia,libmms)) diff --git a/package/netstat-nat/Config.in b/package/netstat-nat/Config.in new file mode 100644 index 000000000..6afcf89e3 --- /dev/null +++ b/package/netstat-nat/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_NETSTAT_NAT + bool "netstat-nat" + help + Displays NAT connections + + http://tweegy.nl/projects/netstat-nat/ diff --git a/package/netstat-nat/netstat-nat.mk b/package/netstat-nat/netstat-nat.mk new file mode 100644 index 000000000..4847283f7 --- /dev/null +++ b/package/netstat-nat/netstat-nat.mk @@ -0,0 +1,12 @@ +############################################################# +# +# netstat-nat +# +############################################################# + +NETSTAT_NAT_VERSION = 1.4.9 +NETSTAT_NAT_SOURCE = netstat-nat-$(NETSTAT_NAT_VERSION).tar.gz +NETSTAT_NAT_SITE = http://tweegy.nl/download +NETSTAT_NAT_DEPENDENCIES = uclibc + +$(eval $(call AUTOTARGETS,package,netstat-nat)) diff --git a/package/pango/pango.mk b/package/pango/pango.mk index c1aac86bd..2bcebf3b7 100644 --- a/package/pango/pango.mk +++ b/package/pango/pango.mk @@ -40,20 +40,20 @@ PANGO_CONF_ENV = ac_cv_func_posix_getpwuid_r=yes glib_cv_stack_grows=no \ ac_use_included_regex=no gl_cv_c_restrict=no \ ac_cv_path_FREETYPE_CONFIG=$(STAGING_DIR)/usr/bin/freetype-config -ifneq ($(BR2_PACKAGE_XSERVER_none),y) - PANGO_CONF_OPT_X = --with-x \ +PANGO_CONF_OPT = --enable-shared --enable-static \ + --enable-explicit-deps=no --disable-debug + +PANGO_DEPENDENCIES = uclibc gettext libintl host-pkgconfig libglib2 cairo + +ifeq ($(BR2_PACKAGE_XORG7),y) + PANGO_CONF_OPT += --with-x \ --x-includes=$(STAGING_DIR)/usr/include/X11 \ --x-libraries=$(STAGING_DIR)/usr/lib --disable-glibtest + PANGO_DEPENDENCIES += xserver_xorg-server else - PANGO_CONF_OPT_X = --without-x + PANGO_CONF_OPT += --without-x endif -PANGO_CONF_OPT = --enable-shared --enable-static \ - $(PANGO_CONF_OPT_X) \ - --enable-explicit-deps=no --disable-debug - -PANGO_DEPENDENCIES = uclibc gettext libintl host-pkgconfig libglib2 $(XSERVER) cairo - $(eval $(call AUTOTARGETS,package,pango)) $(PANGO_HOOK_POST_INSTALL): @@ -85,7 +85,7 @@ $(STAMP_DIR)/host_pango_configured: $(STAMP_DIR)/host_pango_unpacked $(STAMP_DIR --prefix="$(HOST_DIR)/usr" \ --sysconfdir="$(HOST_DIR)/etc" \ --disable-static \ - $(if $(BR2_PACKAGE_XSERVER_none),--without-x,--with-x) \ + $(if $(BR2_PACKAGE_XORG7),--with-x,--without-x) \ --disable-debug \ ) touch $@ diff --git a/package/rdesktop/Config.in b/package/rdesktop/Config.in index 9e0be5c87..9ec6f8a73 100644 --- a/package/rdesktop/Config.in +++ b/package/rdesktop/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_RDESKTOP bool "rdesktop" select BR2_PACKAGE_OPENSSL - depends on BR2_PACKAGE_XORG||BR2_PACKAGE_XORG7 + depends on BR2_PACKAGE_XORG7 help rdesktop is an open source client for Windows NT Terminal Server and Windows 2000/2003 Terminal Services, capable of diff --git a/package/rdesktop/rdesktop.mk b/package/rdesktop/rdesktop.mk index 63be0b8b5..e94fd77ed 100644 --- a/package/rdesktop/rdesktop.mk +++ b/package/rdesktop/rdesktop.mk @@ -38,7 +38,7 @@ $(RDESKTOP_DIR)/rdesktop: $(RDESKTOP_DIR)/.configured $(TARGET_DIR)/usr/bin/rdesktop: $(RDESKTOP_DIR)/rdesktop cp $^ $@ -rdesktop: uclibc openssl $(XSERVER) $(TARGET_DIR)/usr/bin/rdesktop +rdesktop: uclibc openssl xserver_xorg-server $(TARGET_DIR)/usr/bin/rdesktop rdesktop-source: $(DL_DIR)/$(RDESKTOP_SOURCE) diff --git a/package/rxvt/Config.in b/package/rxvt/Config.in index 80aa717e0..f7196e747 100644 --- a/package/rxvt/Config.in +++ b/package/rxvt/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_RXVT bool "rxvt" - depends on BR2_PACKAGE_XSERVER_xorg || BR2_PACKAGE_XSERVER_tinyx || BR2_PACKAGE_XSERVER_x11r7 + depends on BR2_PACKAGE_XORG7 help A nice small colour vt102 X terminal emulator. diff --git a/package/rxvt/rxvt.mk b/package/rxvt/rxvt.mk index 1a0a82636..14d08d213 100644 --- a/package/rxvt/rxvt.mk +++ b/package/rxvt/rxvt.mk @@ -65,7 +65,7 @@ $(TARGET_DIR)$(X11_PREFIX)/bin/rxvt: $(RXVT_BINARY) $(INSTALL) -m 0755 -D $^ $@ (cd $(@D); ln -fs rxvt xterm) -rxvt: $(XSERVER) $(TARGET_DIR)$(X11_PREFIX)/bin/rxvt +rxvt: xserver_xorg-server $(TARGET_DIR)$(X11_PREFIX)/bin/rxvt rxvt-clean: rm -f $(TARGET_DIR)$(X11_PREFIX)/bin/rxvt diff --git a/package/synergy/synergy.mk b/package/synergy/synergy.mk index b89f3cd40..763e57b0c 100644 --- a/package/synergy/synergy.mk +++ b/package/synergy/synergy.mk @@ -14,6 +14,6 @@ SYNERGY_INSTALL_TARGET = YES SYNERGY_CONF_OPT = --target=$(GNU_TARGET_NAME) --host=$(GNU_TARGET_NAME) \ --build=$(GNU_HOST_NAME) --prefix=/usr --sysconfdir=/etc -SYNERGY_DEPENDENCIES = uclibc $(XSERVER) +SYNERGY_DEPENDENCIES = uclibc xserver_xorg-server $(eval $(call AUTOTARGETS,package,synergy)) diff --git a/package/x11r7/Config.in b/package/x11r7/Config.in index 0720e3fac..ace438a21 100644 --- a/package/x11r7/Config.in +++ b/package/x11r7/Config.in @@ -1,18 +1,42 @@ menuconfig BR2_PACKAGE_XORG7 -bool "X.org X Window System, X11R7, release 7.4" -default y if BR2_PACKAGE_XSERVER_x11r7 -select BR2_PACKAGE_ZLIB -select BR2_PACKAGE_LIBPNG -select BR2_PACKAGE_EXPAT -select BR2_PACKAGE_FONTCONFIG -help - Support for X11R7 libraries, servers, drivers, and/or - applications in the target. + bool "X.org X Window System, X11R7, release 7.4" + select BR2_PACKAGE_ZLIB + select BR2_PACKAGE_LIBPNG + select BR2_PACKAGE_EXPAT + select BR2_PACKAGE_FONTCONFIG + help + Support for X11R7 libraries, servers, drivers, and/or + applications in the target. if BR2_PACKAGE_XORG7 - menu "X11R7 Servers" - source package/x11r7/xserver_xorg-server/Config.in - endmenu + +choice + prompt "X Window System server type" + default BR2_PACKAGE_XSERVER_tinyx + help + Select the X Window System server to use + +config BR2_PACKAGE_XSERVER_xorg + bool "Modular X.org" + # depending on BR2_ENABLE_LOCALE gives a recursion error with dbus + depends on BR2_USE_WCHAR && BR2_LARGEFILE && BR2_INSTALL_LIBSTDCPP # && BR2_ENABLE_LOCALE + +config BR2_PACKAGE_XSERVER_tinyx + bool "TinyX" + depends on BR2_USE_WCHAR + +endchoice + +config BR2_X11_PREFIX + string + default "/usr/X11R6" if BR2_PACKAGE_XSERVER_xorg + default "/usr" if BR2_PACKAGE_XSERVER_tinyx + help + X11 apps root location + +menu "X11R7 Servers" + source package/x11r7/xserver_xorg-server/Config.in +endmenu menu "X11R7 Libraries" source package/x11r7/libxcb/Config.in source package/x11r7/mesa3d/Config.in @@ -303,7 +327,3 @@ if BR2_PACKAGE_XORG7 source package/x11r7/xkeyboard-config/Config.in endmenu endif - -comment "X11R7 X Window System disabled" - depends on BR2_PACKAGE_TINYX||BR2_PACKAGE_XORG - diff --git a/package/x11r7/xserver_xorg-server/Config.in b/package/x11r7/xserver_xorg-server/Config.in index 58bd8d2b4..105c79069 100644 --- a/package/x11r7/xserver_xorg-server/Config.in +++ b/package/x11r7/xserver_xorg-server/Config.in @@ -2,7 +2,6 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER bool "xorg-server" select BR2_PACKAGE_XLIB_LIBXFONT select BR2_PACKAGE_LIBDRM - select BR2_PACKAGE_XLIB_LIBXKBUI select BR2_PACKAGE_OPENSSL select BR2_PACKAGE_XPROTO_COMPOSITEPROTO select BR2_PACKAGE_XPROTO_DAMAGEPROTO @@ -15,13 +14,10 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER select BR2_PACKAGE_XFONT_FONT_CURSOR_MISC if !BR2_PACKAGE_XSERVER_XORG_SERVER_BUILTIN_FONTS select BR2_PACKAGE_XLIB_LIBX11 select BR2_PACKAGE_XLIB_LIBXAU - select BR2_PACKAGE_XLIB_LIBXAW select BR2_PACKAGE_XLIB_LIBXDMCP select BR2_PACKAGE_XLIB_LIBXEXT select BR2_PACKAGE_XLIB_LIBXFIXES select BR2_PACKAGE_XLIB_LIBXI - select BR2_PACKAGE_XLIB_LIBXMU - select BR2_PACKAGE_XLIB_LIBXPM select BR2_PACKAGE_XLIB_LIBXRENDER select BR2_PACKAGE_XLIB_LIBXRES select BR2_PACKAGE_XLIB_LIBXXF86MISC diff --git a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk index 77c8208da..e2af32459 100644 --- a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk +++ b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk @@ -12,19 +12,55 @@ XSERVER_XORG_SERVER_INSTALL_STAGING = YES XSERVER_XORG_SERVER_USE_CONFIG_CACHE = NO # overrides CFLAGS XSERVER_XORG_SERVER_INSTALL_STAGING_OPT = DESTDIR=$(STAGING_DIR) install install-data -XSERVER_XORG_SERVER_DEPENDENCIES = xutil_util-macros xlib_libXfont libdrm xlib_libxkbui openssl \ - xproto_compositeproto xproto_damageproto xproto_fixesproto \ - xproto_glproto xproto_kbproto xproto_randrproto \ - xlib_libX11 xlib_libXau xlib_libXaw xlib_libXdmcp xlib_libXScrnSaver \ - xlib_libXext xlib_libXfixes xlib_libXi xlib_libXmu xlib_libXpm \ - xlib_libXrender xlib_libXres xlib_libXft xlib_libXcursor \ - xlib_libXinerama xlib_libXrandr xlib_libXdamage xlib_libXxf86misc xlib_libXxf86vm \ - xlib_liblbxutil xlib_libxkbfile xlib_xtrans xdata_xbitmaps xproto_bigreqsproto \ - xproto_evieext xproto_fontsproto xproto_inputproto xproto_renderproto \ - xproto_resourceproto xproto_videoproto xproto_xcmiscproto \ - xproto_xextproto xproto_xf86bigfontproto xproto_xf86dgaproto xproto_xf86driproto \ - xproto_xf86miscproto xproto_xf86rushproto xproto_xf86vidmodeproto xproto_xproto \ - pixman mcookie +XSERVER_XORG_SERVER_DEPENDENCIES = \ + xutil_util-macros \ + xlib_libXfont \ + xlib_libX11 \ + xlib_libXau \ + xlib_libXdmcp \ + xlib_libXScrnSaver \ + xlib_libXext \ + xlib_libXfixes \ + xlib_libXi \ + xlib_libXrender \ + xlib_libXres \ + xlib_libXft \ + xlib_libXcursor \ + xlib_libXinerama \ + xlib_libXrandr \ + xlib_libXdamage \ + xlib_libXxf86misc \ + xlib_libXxf86vm \ + xlib_liblbxutil \ + xlib_libxkbfile \ + xlib_xtrans \ + xdata_xbitmaps \ + xproto_bigreqsproto \ + xproto_compositeproto \ + xproto_damageproto \ + xproto_evieext \ + xproto_fixesproto \ + xproto_fontsproto \ + xproto_glproto \ + xproto_inputproto \ + xproto_kbproto \ + xproto_randrproto \ + xproto_renderproto \ + xproto_resourceproto \ + xproto_videoproto \ + xproto_xcmiscproto \ + xproto_xextproto \ + xproto_xf86bigfontproto \ + xproto_xf86dgaproto \ + xproto_xf86driproto \ + xproto_xf86miscproto \ + xproto_xf86rushproto \ + xproto_xf86vidmodeproto \ + xproto_xproto \ + libdrm \ + pixman \ + openssl \ + mcookie XSERVER_XORG_SERVER_CONF_OPT = --disable-config-hal \ --disable-xnest --disable-xephyr --disable-xvfb \ diff --git a/package/xpdf/xpdf.mk b/package/xpdf/xpdf.mk index 1fbe7110e..ab60b2be5 100644 --- a/package/xpdf/xpdf.mk +++ b/package/xpdf/xpdf.mk @@ -17,8 +17,8 @@ ifeq ($(BR2_SOFT_FLOAT),y) XPDF_CONF_OPT += --enable-fixedpoint endif -ifneq ($(BR2_PACKAGE_XSERVER_none),y) - XPDF_DEPENDENCIES += $(XSERVER) openmotif +ifeq ($(BR2_PACKAGE_XORG7),y) + XPDF_DEPENDENCIES += xserver_xorg-server openmotif XPDF_CONF_OPT += --with-Xm-library=$(STAGING_DIR)/usr/lib --with-Xm-includes=$(STAGING_DIR)/usr/include/Xm \ --with-x --with-freetype2-includes=$(STAGING_DIR)/usr/include \ --with-freetype2-library=$(STAGING_DIR)/usr/lib CFLAGS="-I$(STAGING_DIR)/usr/include/freetype2" \ diff --git a/package/xvkbd/Config.in b/package/xvkbd/Config.in index eeef152cb..888367a2d 100644 --- a/package/xvkbd/Config.in +++ b/package/xvkbd/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_XVKBD bool "xvkbd" + depends on BR2_PACKAGE_XORG7 help on-screen keyboard for X diff --git a/package/xvkbd/xvkbd.mk b/package/xvkbd/xvkbd.mk index 510e3c402..d28780969 100644 --- a/package/xvkbd/xvkbd.mk +++ b/package/xvkbd/xvkbd.mk @@ -15,7 +15,7 @@ XVKBD_MAKE_OPT = CC=$(TARGET_CC) CXX=$(TARGET_CXX) LD=$(TARGET_CC) \ XVKBD_INSTALL_TARGET_OPT = DESTDIR=$(TARGET_DIR) install -XVKBD_DEPENDENCIES = uclibc $(XSERVER) +XVKBD_DEPENDENCIES = uclibc xserver_xorg-server $(eval $(call AUTOTARGETS,package,xvkbd)) diff --git a/project/Makefile.in b/project/Makefile.in index 49aec141a..85c0eaeed 100644 --- a/project/Makefile.in +++ b/project/Makefile.in @@ -10,6 +10,9 @@ QUIET:=$(if $(findstring s,$(MAKEFLAGS)),-q,) # Strip off the annoying quoting ARCH:=$(strip $(subst ",, $(BR2_ARCH))) +ifeq ($(ARCH),xtensa) +ARCH:=$(ARCH)_$(strip $(subst ",,$(BR2_xtensa_core_name))) +endif #")) WGET:=$(strip $(subst ",, $(BR2_WGET))) $(SPIDER) $(QUIET) #")) diff --git a/target/Config.in b/target/Config.in index 87abbe666..ab46dcb16 100644 --- a/target/Config.in +++ b/target/Config.in @@ -12,6 +12,21 @@ config BR2_ROOTFS_SUFFIX help Add a custom string to the end of the root file system name. +config BR2_ROOTFS_POST_BUILD_SCRIPT + string "Custom script to run before packing files" + default "" + help + Specify a script to be run after the build has finished and before + the BR2 starts packing the files into selected packages. + + This gives users the oportunity to do board-specific cleanups, + add-ons and the like, so the generated files can be used directly + without further processing. + + The script is called with the target directory name as first and + only argument. Make sure the exit code of that script is 0, + otherwise make will stop after calling it. + comment "filesystem for target device" source "target/cramfs/Config.in" @@ -74,10 +89,6 @@ config BR2_KERNEL_LINUX endif -config BR2_KERNEL_HURD - bool "hurd" - help - GNU/Hurd kernel endchoice config BR2_PACKAGE_LINUX @@ -85,11 +96,7 @@ config BR2_PACKAGE_LINUX if BR2_PACKAGE_LINUX source "target/linux/Config.in" -#source "target/linux/Config.in.experimental" source "target/linux/Config.in.advanced" endif -if BR2_KERNEL_HURD -source "target/hurd/Config.in" -endif endmenu diff --git a/target/Config.in.arch b/target/Config.in.arch index 611210e87..e63fc027a 100644 --- a/target/Config.in.arch +++ b/target/Config.in.arch @@ -43,6 +43,8 @@ config BR2_sparc64 bool "sparc64" config BR2_x86_64 bool "x86_64" +config BR2_xtensa + bool "xtensa" endchoice # @@ -396,6 +398,38 @@ endchoice choice prompt "Target Architecture Variant" + depends on BR2_xtensa + default BR2_xtensa_dc232b + help + Specific CPU variant to use + +config BR2_xtensa_custom + bool "Custom Xtensa processor configuration" +config BR2_xtensa_dc232a + bool "dc232a - Diamond 232L Standard Core Rev.A (LE)" +config BR2_xtensa_dc232b + bool "dc232b - Diamond 232L Standard Core Rev.B (LE)" +#config BR2_xtensa_s5000 +# bool "s5000 - Stretch S5000" +endchoice + +config BR2_xtensa_custom_name + string "Custom Xtensa processor configuration name" + depends on BR2_xtensa_custom + default "" + help + Name given to a custom Xtensa processor configuration. + This is used to select the correct overlay. + +config BR2_xtensa_core_name + string + default BR2_xtensa_custom_name if BR2_xtensa_custom + default "dc232a" if BR2_xtensa_dc232a + default "dc232b" if BR2_xtensa_dc232b +# default "s5000" if BR2_xtensa_s5000 + +choice + prompt "Target Architecture Variant" depends on BR2_powerpc default BR2_generic_powerpc help @@ -496,6 +530,7 @@ config BR2_ARCH default "x86_64" if BR2_x86_64_opteron default "x86_64" if BR2_x86_64_opteron_sse3 default "x86_64" if BR2_x86_64_barcelona + default "xtensa" if BR2_xtensa config BR2_ENDIAN diff --git a/target/Makefile.in b/target/Makefile.in index b1450413e..a835353e4 100644 --- a/target/Makefile.in +++ b/target/Makefile.in @@ -62,6 +62,7 @@ include target/generic/Makefile.in include target/device/Makefile.in include target/x86/Makefile.in include target/powerpc/Makefile.in +include target/xtensa/Makefile.in ifeq ($(BR2_TARGET_UBOOT),y) include target/u-boot/Makefile.in @@ -83,5 +84,3 @@ include target/linux/Makefile.in.advanced endif include target/device/Makefile.in.linux - -include target/hurd/Makefile.in diff --git a/target/device/Config.in b/target/device/Config.in index 50d011fe8..ca569709b 100644 --- a/target/device/Config.in +++ b/target/device/Config.in @@ -10,6 +10,7 @@ source "target/device/Atmel/Config.in" source "target/device/KwikByte/Config.in" source "target/device/valka/Config.in" source "target/device/x86/Config.in" +source "target/device/xtensa/Config.in" # This must be last source "target/generic/Config.in" diff --git a/target/device/KwikByte/kb9202/kb9202-linux-2.6.20.config b/target/device/KwikByte/kb9202/kb9202-linux-2.6.20.config deleted file mode 100644 index fbe77fd64..000000000 --- a/target/device/KwikByte/kb9202/kb9202-linux-2.6.20.config +++ /dev/null @@ -1,1218 +0,0 @@ -#
-# Automatically generated make config: don't edit
-# Linux kernel version: 2.6.20
-# Fri Feb 23 16:21:01 2007
-#
-CONFIG_ARM=y
-# CONFIG_GENERIC_TIME is not set
-CONFIG_MMU=y
-CONFIG_GENERIC_HARDIRQS=y
-CONFIG_TRACE_IRQFLAGS_SUPPORT=y
-CONFIG_HARDIRQS_SW_RESEND=y
-CONFIG_GENERIC_IRQ_PROBE=y
-CONFIG_RWSEM_GENERIC_SPINLOCK=y
-# CONFIG_ARCH_HAS_ILOG2_U32 is not set
-# CONFIG_ARCH_HAS_ILOG2_U64 is not set
-CONFIG_GENERIC_HWEIGHT=y
-CONFIG_GENERIC_CALIBRATE_DELAY=y
-CONFIG_VECTORS_BASE=0xffff0000
-CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
-
-#
-# Code maturity level options
-#
-CONFIG_EXPERIMENTAL=y
-CONFIG_BROKEN_ON_SMP=y
-CONFIG_INIT_ENV_ARG_LIMIT=32
-
-#
-# General setup
-#
-CONFIG_LOCALVERSION=""
-CONFIG_LOCALVERSION_AUTO=y
-CONFIG_SWAP=y
-CONFIG_SYSVIPC=y
-# CONFIG_IPC_NS is not set
-CONFIG_POSIX_MQUEUE=y
-CONFIG_BSD_PROCESS_ACCT=y
-# CONFIG_BSD_PROCESS_ACCT_V3 is not set
-# CONFIG_TASKSTATS is not set
-# CONFIG_UTS_NS is not set
-CONFIG_AUDIT=y
-CONFIG_IKCONFIG=y
-CONFIG_IKCONFIG_PROC=y
-CONFIG_SYSFS_DEPRECATED=y
-# CONFIG_RELAY is not set
-CONFIG_INITRAMFS_SOURCE=""
-# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
-CONFIG_SYSCTL=y
-# CONFIG_EMBEDDED is not set
-CONFIG_UID16=y
-CONFIG_SYSCTL_SYSCALL=y
-CONFIG_KALLSYMS=y
-# CONFIG_KALLSYMS_ALL is not set
-CONFIG_KALLSYMS_EXTRA_PASS=y
-CONFIG_HOTPLUG=y
-CONFIG_PRINTK=y
-CONFIG_BUG=y
-CONFIG_ELF_CORE=y
-CONFIG_BASE_FULL=y
-CONFIG_FUTEX=y
-CONFIG_EPOLL=y
-CONFIG_SHMEM=y
-CONFIG_SLAB=y
-CONFIG_VM_EVENT_COUNTERS=y
-CONFIG_RT_MUTEXES=y
-# CONFIG_TINY_SHMEM is not set
-CONFIG_BASE_SMALL=0
-# CONFIG_SLOB is not set
-
-#
-# Loadable module support
-#
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_MODULE_FORCE_UNLOAD is not set
-CONFIG_MODVERSIONS=y
-CONFIG_MODULE_SRCVERSION_ALL=y
-CONFIG_KMOD=y
-
-#
-# Block layer
-#
-CONFIG_BLOCK=y
-CONFIG_LBD=y
-# CONFIG_BLK_DEV_IO_TRACE is not set
-# CONFIG_LSF is not set
-
-#
-# IO Schedulers
-#
-CONFIG_IOSCHED_NOOP=y
-CONFIG_IOSCHED_AS=y
-CONFIG_IOSCHED_DEADLINE=y
-CONFIG_IOSCHED_CFQ=y
-# CONFIG_DEFAULT_AS is not set
-# CONFIG_DEFAULT_DEADLINE is not set
-CONFIG_DEFAULT_CFQ=y
-# CONFIG_DEFAULT_NOOP is not set
-CONFIG_DEFAULT_IOSCHED="cfq"
-
-#
-# System Type
-#
-# CONFIG_ARCH_AAEC2000 is not set
-# CONFIG_ARCH_INTEGRATOR is not set
-# CONFIG_ARCH_REALVIEW is not set
-# CONFIG_ARCH_VERSATILE is not set
-CONFIG_ARCH_AT91=y
-# CONFIG_ARCH_CLPS7500 is not set
-# CONFIG_ARCH_CLPS711X is not set
-# CONFIG_ARCH_CO285 is not set
-# CONFIG_ARCH_EBSA110 is not set
-# CONFIG_ARCH_EP93XX is not set
-# CONFIG_ARCH_FOOTBRIDGE is not set
-# CONFIG_ARCH_NETX is not set
-# CONFIG_ARCH_H720X is not set
-# CONFIG_ARCH_IMX is not set
-# CONFIG_ARCH_IOP32X is not set
-# CONFIG_ARCH_IOP33X is not set
-# CONFIG_ARCH_IOP13XX is not set
-# CONFIG_ARCH_IXP4XX is not set
-# CONFIG_ARCH_IXP2000 is not set
-# CONFIG_ARCH_IXP23XX is not set
-# CONFIG_ARCH_L7200 is not set
-# CONFIG_ARCH_PNX4008 is not set
-# CONFIG_ARCH_PXA is not set
-# CONFIG_ARCH_RPC is not set
-# CONFIG_ARCH_SA1100 is not set
-# CONFIG_ARCH_S3C2410 is not set
-# CONFIG_ARCH_SHARK is not set
-# CONFIG_ARCH_LH7A40X is not set
-# CONFIG_ARCH_OMAP is not set
-
-#
-# Atmel AT91 System-on-Chip
-#
-CONFIG_ARCH_AT91RM9200=y
-# CONFIG_ARCH_AT91SAM9260 is not set
-# CONFIG_ARCH_AT91SAM9261 is not set
-# CONFIG_ARCH_AT91SAM9263 is not set
-
-#
-# AT91RM9200 Board Type
-#
-# CONFIG_MACH_ONEARM is not set
-# CONFIG_ARCH_AT91RM9200DK is not set
-# CONFIG_MACH_AT91RM9200EK is not set
-# CONFIG_MACH_CSB337 is not set
-# CONFIG_MACH_CSB637 is not set
-# CONFIG_MACH_CARMEVA is not set
-# CONFIG_MACH_ATEB9200 is not set
-CONFIG_MACH_KB9200=y
-# CONFIG_MACH_KAFA is not set
-
-#
-# AT91 Board Options
-#
-
-#
-# AT91 Feature Selections
-#
-# CONFIG_AT91_PROGRAMMABLE_CLOCKS is not set
-
-#
-# Processor Type
-#
-CONFIG_CPU_32=y
-CONFIG_CPU_ARM920T=y
-CONFIG_CPU_32v4T=y
-CONFIG_CPU_ABRT_EV4T=y
-CONFIG_CPU_CACHE_V4WT=y
-CONFIG_CPU_CACHE_VIVT=y
-CONFIG_CPU_COPY_V4WB=y
-CONFIG_CPU_TLB_V4WBI=y
-CONFIG_CPU_CP15=y
-CONFIG_CPU_CP15_MMU=y
-
-#
-# Processor Features
-#
-CONFIG_ARM_THUMB=y
-# CONFIG_CPU_ICACHE_DISABLE is not set
-# CONFIG_CPU_DCACHE_DISABLE is not set
-# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
-
-#
-# Bus support
-#
-
-#
-# PCCARD (PCMCIA/CardBus) support
-#
-CONFIG_PCCARD=m
-# CONFIG_PCMCIA_DEBUG is not set
-CONFIG_PCMCIA=m
-CONFIG_PCMCIA_LOAD_CIS=y
-CONFIG_PCMCIA_IOCTL=y
-
-#
-# PC-card bridges
-#
-# CONFIG_AT91_CF is not set
-
-#
-# Kernel Features
-#
-# CONFIG_PREEMPT is not set
-# CONFIG_NO_IDLE_HZ is not set
-CONFIG_HZ=100
-# CONFIG_AEABI is not set
-# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
-CONFIG_SELECT_MEMORY_MODEL=y
-CONFIG_FLATMEM_MANUAL=y
-# CONFIG_DISCONTIGMEM_MANUAL is not set
-# CONFIG_SPARSEMEM_MANUAL is not set
-CONFIG_FLATMEM=y
-CONFIG_FLAT_NODE_MEM_MAP=y
-# CONFIG_SPARSEMEM_STATIC is not set
-CONFIG_SPLIT_PTLOCK_CPUS=4096
-# CONFIG_RESOURCES_64BIT is not set
-# CONFIG_LEDS is not set
-CONFIG_ALIGNMENT_TRAP=y
-
-#
-# Boot options
-#
-CONFIG_ZBOOT_ROM_TEXT=0x10000000
-CONFIG_ZBOOT_ROM_BSS=0x20040000
-# CONFIG_ZBOOT_ROM is not set
-CONFIG_CMDLINE="noinitrd root=/dev/mtdblock0 rootfstype=jffs2 mem=64M"
-# CONFIG_XIP_KERNEL is not set
-
-#
-# Floating point emulation
-#
-
-#
-# At least one emulation must be selected
-#
-CONFIG_FPE_NWFPE=y
-# CONFIG_FPE_NWFPE_XP is not set
-# CONFIG_FPE_FASTFPE is not set
-
-#
-# Userspace binary formats
-#
-CONFIG_BINFMT_ELF=y
-CONFIG_BINFMT_AOUT=y
-CONFIG_BINFMT_MISC=y
-# CONFIG_ARTHUR is not set
-
-#
-# Power management options
-#
-# CONFIG_PM is not set
-# CONFIG_APM is not set
-
-#
-# Networking
-#
-CONFIG_NET=y
-
-#
-# Networking options
-#
-# CONFIG_NETDEBUG is not set
-CONFIG_PACKET=y
-# CONFIG_PACKET_MMAP is not set
-CONFIG_UNIX=y
-# CONFIG_NET_KEY is not set
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-# CONFIG_IP_ADVANCED_ROUTER is not set
-CONFIG_IP_FIB_HASH=y
-CONFIG_IP_PNP=y
-# CONFIG_IP_PNP_DHCP is not set
-# CONFIG_IP_PNP_BOOTP is not set
-# CONFIG_IP_PNP_RARP is not set
-# CONFIG_NET_IPIP is not set
-# CONFIG_NET_IPGRE is not set
-# CONFIG_IP_MROUTE is not set
-# CONFIG_ARPD is not set
-# CONFIG_SYN_COOKIES is not set
-# CONFIG_INET_AH is not set
-# CONFIG_INET_ESP is not set
-# CONFIG_INET_IPCOMP is not set
-# CONFIG_INET_XFRM_TUNNEL is not set
-# CONFIG_INET_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_BEET is not set
-# CONFIG_INET_DIAG is not set
-# CONFIG_TCP_CONG_ADVANCED is not set
-CONFIG_TCP_CONG_CUBIC=y
-CONFIG_DEFAULT_TCP_CONG="cubic"
-# CONFIG_TCP_MD5SIG is not set
-# CONFIG_IPV6 is not set
-# CONFIG_INET6_XFRM_TUNNEL is not set
-# CONFIG_INET6_TUNNEL is not set
-# CONFIG_NETWORK_SECMARK is not set
-# CONFIG_NETFILTER is not set
-
-#
-# DCCP Configuration (EXPERIMENTAL)
-#
-# CONFIG_IP_DCCP is not set
-
-#
-# SCTP Configuration (EXPERIMENTAL)
-#
-CONFIG_IP_SCTP=m
-# CONFIG_SCTP_DBG_MSG is not set
-# CONFIG_SCTP_DBG_OBJCNT is not set
-# CONFIG_SCTP_HMAC_NONE is not set
-# CONFIG_SCTP_HMAC_SHA1 is not set
-CONFIG_SCTP_HMAC_MD5=y
-
-#
-# TIPC Configuration (EXPERIMENTAL)
-#
-# CONFIG_TIPC is not set
-# CONFIG_ATM is not set
-# CONFIG_BRIDGE is not set
-# CONFIG_VLAN_8021Q is not set
-# CONFIG_DECNET is not set
-# CONFIG_LLC2 is not set
-# CONFIG_IPX is not set
-# CONFIG_ATALK is not set
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
-# CONFIG_ECONET is not set
-# CONFIG_WAN_ROUTER is not set
-
-#
-# QoS and/or fair queueing
-#
-# CONFIG_NET_SCHED is not set
-
-#
-# Network testing
-#
-# CONFIG_NET_PKTGEN is not set
-# CONFIG_HAMRADIO is not set
-# CONFIG_IRDA is not set
-# CONFIG_BT is not set
-# CONFIG_IEEE80211 is not set
-
-#
-# Device Drivers
-#
-
-#
-# Generic Driver Options
-#
-CONFIG_STANDALONE=y
-CONFIG_PREVENT_FIRMWARE_BUILD=y
-CONFIG_FW_LOADER=y
-# CONFIG_DEBUG_DRIVER is not set
-# CONFIG_SYS_HYPERVISOR is not set
-
-#
-# Connector - unified userspace <-> kernelspace linker
-#
-# CONFIG_CONNECTOR is not set
-
-#
-# Memory Technology Devices (MTD)
-#
-CONFIG_MTD=y
-# CONFIG_MTD_DEBUG is not set
-CONFIG_MTD_CONCAT=y
-CONFIG_MTD_PARTITIONS=y
-# CONFIG_MTD_REDBOOT_PARTS is not set
-CONFIG_MTD_CMDLINE_PARTS=y
-# CONFIG_MTD_AFS_PARTS is not set
-
-#
-# User Modules And Translation Layers
-#
-CONFIG_MTD_CHAR=y
-CONFIG_MTD_BLKDEVS=y
-CONFIG_MTD_BLOCK=y
-# CONFIG_FTL is not set
-# CONFIG_NFTL is not set
-# CONFIG_INFTL is not set
-# CONFIG_RFD_FTL is not set
-# CONFIG_SSFDC is not set
-
-#
-# RAM/ROM/Flash chip drivers
-#
-# CONFIG_MTD_CFI is not set
-# CONFIG_MTD_JEDECPROBE is not set
-CONFIG_MTD_MAP_BANK_WIDTH_1=y
-CONFIG_MTD_MAP_BANK_WIDTH_2=y
-CONFIG_MTD_MAP_BANK_WIDTH_4=y
-# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
-# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
-# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
-CONFIG_MTD_CFI_I1=y
-CONFIG_MTD_CFI_I2=y
-# CONFIG_MTD_CFI_I4 is not set
-# CONFIG_MTD_CFI_I8 is not set
-# CONFIG_MTD_RAM is not set
-# CONFIG_MTD_ROM is not set
-# CONFIG_MTD_ABSENT is not set
-# CONFIG_MTD_OBSOLETE_CHIPS is not set
-
-#
-# Mapping drivers for chip access
-#
-CONFIG_MTD_COMPLEX_MAPPINGS=y
-# CONFIG_MTD_PLATRAM is not set
-
-#
-# Self-contained MTD device drivers
-#
-# CONFIG_MTD_SLRAM is not set
-# CONFIG_MTD_PHRAM is not set
-# CONFIG_MTD_MTDRAM is not set
-# CONFIG_MTD_BLOCK2MTD is not set
-
-#
-# Disk-On-Chip Device Drivers
-#
-# CONFIG_MTD_DOC2000 is not set
-# CONFIG_MTD_DOC2001 is not set
-# CONFIG_MTD_DOC2001PLUS is not set
-
-#
-# NAND Flash Device Drivers
-#
-CONFIG_MTD_NAND=y
-# CONFIG_MTD_NAND_VERIFY_WRITE is not set
-# CONFIG_MTD_NAND_ECC_SMC is not set
-CONFIG_MTD_NAND_IDS=y
-# CONFIG_MTD_NAND_DISKONCHIP is not set
-CONFIG_MTD_NAND_AT91=y
-# CONFIG_MTD_NAND_NANDSIM is not set
-
-#
-# OneNAND Flash Device Drivers
-#
-# CONFIG_MTD_ONENAND is not set
-
-#
-# Parallel port support
-#
-# CONFIG_PARPORT is not set
-
-#
-# Plug and Play support
-#
-
-#
-# Block devices
-#
-# CONFIG_BLK_DEV_COW_COMMON is not set
-CONFIG_BLK_DEV_LOOP=y
-# CONFIG_BLK_DEV_CRYPTOLOOP is not set
-# CONFIG_BLK_DEV_NBD is not set
-# CONFIG_BLK_DEV_UB is not set
-CONFIG_BLK_DEV_RAM=y
-CONFIG_BLK_DEV_RAM_COUNT=16
-CONFIG_BLK_DEV_RAM_SIZE=16384
-CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
-CONFIG_BLK_DEV_INITRD=y
-# CONFIG_CDROM_PKTCDVD is not set
-# CONFIG_ATA_OVER_ETH is not set
-
-#
-# ATA/ATAPI/MFM/RLL support
-#
-# CONFIG_IDE is not set
-
-#
-# SCSI device support
-#
-# CONFIG_RAID_ATTRS is not set
-CONFIG_SCSI=y
-# CONFIG_SCSI_TGT is not set
-# CONFIG_SCSI_NETLINK is not set
-CONFIG_SCSI_PROC_FS=y
-
-#
-# SCSI support type (disk, tape, CD-ROM)
-#
-CONFIG_BLK_DEV_SD=y
-# CONFIG_CHR_DEV_ST is not set
-# CONFIG_CHR_DEV_OSST is not set
-# CONFIG_BLK_DEV_SR is not set
-CONFIG_CHR_DEV_SG=y
-# CONFIG_CHR_DEV_SCH is not set
-
-#
-# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
-#
-CONFIG_SCSI_MULTI_LUN=y
-CONFIG_SCSI_CONSTANTS=y
-CONFIG_SCSI_LOGGING=y
-# CONFIG_SCSI_SCAN_ASYNC is not set
-
-#
-# SCSI Transports
-#
-CONFIG_SCSI_SPI_ATTRS=m
-# CONFIG_SCSI_FC_ATTRS is not set
-# CONFIG_SCSI_ISCSI_ATTRS is not set
-# CONFIG_SCSI_SAS_ATTRS is not set
-# CONFIG_SCSI_SAS_LIBSAS is not set
-
-#
-# SCSI low-level drivers
-#
-# CONFIG_ISCSI_TCP is not set
-# CONFIG_SCSI_DEBUG is not set
-
-#
-# PCMCIA SCSI adapter support
-#
-# CONFIG_PCMCIA_AHA152X is not set
-# CONFIG_PCMCIA_FDOMAIN is not set
-# CONFIG_PCMCIA_NINJA_SCSI is not set
-# CONFIG_PCMCIA_QLOGIC is not set
-# CONFIG_PCMCIA_SYM53C500 is not set
-
-#
-# Serial ATA (prod) and Parallel ATA (experimental) drivers
-#
-# CONFIG_ATA is not set
-
-#
-# Multi-device support (RAID and LVM)
-#
-# CONFIG_MD is not set
-
-#
-# Fusion MPT device support
-#
-# CONFIG_FUSION is not set
-
-#
-# IEEE 1394 (FireWire) support
-#
-
-#
-# I2O device support
-#
-
-#
-# Network device support
-#
-CONFIG_NETDEVICES=y
-# CONFIG_DUMMY is not set
-# CONFIG_BONDING is not set
-# CONFIG_EQUALIZER is not set
-# CONFIG_TUN is not set
-
-#
-# PHY device support
-#
-# CONFIG_PHYLIB is not set
-
-#
-# Ethernet (10 or 100Mbit)
-#
-CONFIG_NET_ETHERNET=y
-CONFIG_MII=y
-CONFIG_ARM_AT91_ETHER=y
-# CONFIG_SMC91X is not set
-# CONFIG_DM9000 is not set
-
-#
-# Ethernet (1000 Mbit)
-#
-
-#
-# Ethernet (10000 Mbit)
-#
-
-#
-# Token Ring devices
-#
-
-#
-# Wireless LAN (non-hamradio)
-#
-# CONFIG_NET_RADIO is not set
-
-#
-# PCMCIA network device support
-#
-# CONFIG_NET_PCMCIA is not set
-
-#
-# Wan interfaces
-#
-# CONFIG_WAN is not set
-# CONFIG_PPP is not set
-# CONFIG_SLIP is not set
-# CONFIG_SHAPER is not set
-# CONFIG_NETCONSOLE is not set
-# CONFIG_NETPOLL is not set
-# CONFIG_NET_POLL_CONTROLLER is not set
-
-#
-# ISDN subsystem
-#
-# CONFIG_ISDN is not set
-
-#
-# Input device support
-#
-CONFIG_INPUT=y
-# CONFIG_INPUT_FF_MEMLESS is not set
-
-#
-# Userland interfaces
-#
-CONFIG_INPUT_MOUSEDEV=y
-# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
-CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
-CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
-# CONFIG_INPUT_JOYDEV is not set
-# CONFIG_INPUT_TSDEV is not set
-# CONFIG_INPUT_EVDEV is not set
-# CONFIG_INPUT_EVBUG is not set
-
-#
-# Input Device Drivers
-#
-# CONFIG_INPUT_KEYBOARD is not set
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_INPUT_JOYSTICK is not set
-# CONFIG_INPUT_TOUCHSCREEN is not set
-# CONFIG_INPUT_MISC is not set
-
-#
-# Hardware I/O ports
-#
-# CONFIG_SERIO is not set
-# CONFIG_GAMEPORT is not set
-
-#
-# Character devices
-#
-CONFIG_VT=y
-CONFIG_VT_CONSOLE=y
-CONFIG_HW_CONSOLE=y
-# CONFIG_VT_HW_CONSOLE_BINDING is not set
-# CONFIG_SERIAL_NONSTANDARD is not set
-
-#
-# Serial drivers
-#
-# CONFIG_SERIAL_8250 is not set
-
-#
-# Non-8250 serial port support
-#
-CONFIG_SERIAL_ATMEL=y
-CONFIG_SERIAL_ATMEL_CONSOLE=y
-# CONFIG_SERIAL_ATMEL_TTYAT is not set
-CONFIG_SERIAL_CORE=y
-CONFIG_SERIAL_CORE_CONSOLE=y
-CONFIG_UNIX98_PTYS=y
-# CONFIG_LEGACY_PTYS is not set
-
-#
-# IPMI
-#
-# CONFIG_IPMI_HANDLER is not set
-
-#
-# Watchdog Cards
-#
-# CONFIG_WATCHDOG is not set
-# CONFIG_HW_RANDOM is not set
-# CONFIG_NVRAM is not set
-# CONFIG_DTLK is not set
-# CONFIG_R3964 is not set
-
-#
-# PCMCIA character devices
-#
-# CONFIG_SYNCLINK_CS is not set
-# CONFIG_CARDMAN_4000 is not set
-# CONFIG_CARDMAN_4040 is not set
-# CONFIG_RAW_DRIVER is not set
-
-#
-# TPM devices
-#
-# CONFIG_TCG_TPM is not set
-# CONFIG_AT91_SPI is not set
-
-#
-# I2C support
-#
-# CONFIG_I2C is not set
-
-#
-# SPI support
-#
-# CONFIG_SPI is not set
-# CONFIG_SPI_MASTER is not set
-
-#
-# Dallas's 1-wire bus
-#
-# CONFIG_W1 is not set
-
-#
-# Hardware Monitoring support
-#
-CONFIG_HWMON=y
-# CONFIG_HWMON_VID is not set
-# CONFIG_SENSORS_ABITUGURU is not set
-# CONFIG_SENSORS_F71805F is not set
-# CONFIG_SENSORS_PC87427 is not set
-# CONFIG_SENSORS_VT1211 is not set
-CONFIG_HWMON_DEBUG_CHIP=y
-
-#
-# Misc devices
-#
-# CONFIG_TIFM_CORE is not set
-
-#
-# LED devices
-#
-# CONFIG_NEW_LEDS is not set
-
-#
-# LED drivers
-#
-
-#
-# LED Triggers
-#
-
-#
-# Multimedia devices
-#
-# CONFIG_VIDEO_DEV is not set
-
-#
-# Digital Video Broadcasting Devices
-#
-# CONFIG_DVB is not set
-# CONFIG_USB_DABUSB is not set
-
-#
-# Graphics support
-#
-# CONFIG_FIRMWARE_EDID is not set
-CONFIG_FB=y
-CONFIG_FB_CFB_FILLRECT=y
-CONFIG_FB_CFB_COPYAREA=y
-CONFIG_FB_CFB_IMAGEBLIT=y
-# CONFIG_FB_MACMODES is not set
-# CONFIG_FB_BACKLIGHT is not set
-CONFIG_FB_MODE_HELPERS=y
-CONFIG_FB_TILEBLITTING=y
-CONFIG_FB_S1D15605=y
-# CONFIG_FB_S1D13XXX is not set
-# CONFIG_FB_VIRTUAL is not set
-
-#
-# Console display driver support
-#
-# CONFIG_VGA_CONSOLE is not set
-CONFIG_DUMMY_CONSOLE=y
-CONFIG_FRAMEBUFFER_CONSOLE=y
-# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
-CONFIG_FONTS=y
-# CONFIG_FONT_8x8 is not set
-# CONFIG_FONT_8x16 is not set
-# CONFIG_FONT_6x11 is not set
-# CONFIG_FONT_7x14 is not set
-# CONFIG_FONT_PEARL_8x8 is not set
-# CONFIG_FONT_ACORN_8x8 is not set
-CONFIG_FONT_MINI_4x6=y
-# CONFIG_FONT_SUN8x16 is not set
-# CONFIG_FONT_SUN12x22 is not set
-# CONFIG_FONT_10x18 is not set
-
-#
-# Logo configuration
-#
-# CONFIG_LOGO is not set
-CONFIG_BACKLIGHT_LCD_SUPPORT=y
-CONFIG_BACKLIGHT_CLASS_DEVICE=y
-CONFIG_BACKLIGHT_DEVICE=y
-# CONFIG_LCD_CLASS_DEVICE is not set
-CONFIG_BACKLIGHT_KB920x=y
-
-#
-# Sound
-#
-# CONFIG_SOUND is not set
-
-#
-# HID Devices
-#
-CONFIG_HID=y
-
-#
-# USB support
-#
-CONFIG_USB_ARCH_HAS_HCD=y
-CONFIG_USB_ARCH_HAS_OHCI=y
-# CONFIG_USB_ARCH_HAS_EHCI is not set
-CONFIG_USB=y
-# CONFIG_USB_DEBUG is not set
-
-#
-# Miscellaneous USB options
-#
-CONFIG_USB_DEVICEFS=y
-# CONFIG_USB_BANDWIDTH is not set
-# CONFIG_USB_DYNAMIC_MINORS is not set
-# CONFIG_USB_OTG is not set
-
-#
-# USB Host Controller Drivers
-#
-# CONFIG_USB_ISP116X_HCD is not set
-CONFIG_USB_OHCI_HCD=y
-# CONFIG_USB_OHCI_BIG_ENDIAN is not set
-CONFIG_USB_OHCI_LITTLE_ENDIAN=y
-# CONFIG_USB_SL811_HCD is not set
-
-#
-# USB Device Class drivers
-#
-# CONFIG_USB_ACM is not set
-# CONFIG_USB_PRINTER is not set
-
-#
-# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
-#
-
-#
-# may also be needed; see USB_STORAGE Help for more information
-#
-CONFIG_USB_STORAGE=y
-# CONFIG_USB_STORAGE_DEBUG is not set
-# CONFIG_USB_STORAGE_DATAFAB is not set
-# CONFIG_USB_STORAGE_FREECOM is not set
-# CONFIG_USB_STORAGE_DPCM is not set
-# CONFIG_USB_STORAGE_USBAT is not set
-# CONFIG_USB_STORAGE_SDDR09 is not set
-# CONFIG_USB_STORAGE_SDDR55 is not set
-# CONFIG_USB_STORAGE_JUMPSHOT is not set
-# CONFIG_USB_STORAGE_ALAUDA is not set
-# CONFIG_USB_STORAGE_KARMA is not set
-CONFIG_USB_LIBUSUAL=y
-
-#
-# USB Input Devices
-#
-CONFIG_USB_HID=y
-# CONFIG_USB_HIDINPUT_POWERBOOK is not set
-# CONFIG_HID_FF is not set
-# CONFIG_USB_HIDDEV is not set
-# CONFIG_USB_AIPTEK is not set
-# CONFIG_USB_WACOM is not set
-# CONFIG_USB_ACECAD is not set
-# CONFIG_USB_KBTAB is not set
-# CONFIG_USB_POWERMATE is not set
-# CONFIG_USB_TOUCHSCREEN is not set
-# CONFIG_USB_YEALINK is not set
-# CONFIG_USB_XPAD is not set
-# CONFIG_USB_ATI_REMOTE is not set
-# CONFIG_USB_ATI_REMOTE2 is not set
-# CONFIG_USB_KEYSPAN_REMOTE is not set
-# CONFIG_USB_APPLETOUCH is not set
-
-#
-# USB Imaging devices
-#
-# CONFIG_USB_MDC800 is not set
-# CONFIG_USB_MICROTEK is not set
-
-#
-# USB Network Adapters
-#
-# CONFIG_USB_CATC is not set
-# CONFIG_USB_KAWETH is not set
-# CONFIG_USB_PEGASUS is not set
-# CONFIG_USB_RTL8150 is not set
-# CONFIG_USB_USBNET_MII is not set
-# CONFIG_USB_USBNET is not set
-# CONFIG_USB_MON is not set
-
-#
-# USB port drivers
-#
-
-#
-# USB Serial Converter support
-#
-# CONFIG_USB_SERIAL is not set
-
-#
-# USB Miscellaneous drivers
-#
-# CONFIG_USB_EMI62 is not set
-# CONFIG_USB_EMI26 is not set
-# CONFIG_USB_ADUTUX is not set
-# CONFIG_USB_AUERSWALD is not set
-# CONFIG_USB_RIO500 is not set
-# CONFIG_USB_LEGOTOWER is not set
-# CONFIG_USB_LCD is not set
-# CONFIG_USB_LED is not set
-# CONFIG_USB_CYPRESS_CY7C63 is not set
-# CONFIG_USB_CYTHERM is not set
-# CONFIG_USB_PHIDGET is not set
-# CONFIG_USB_IDMOUSE is not set
-# CONFIG_USB_FTDI_ELAN is not set
-# CONFIG_USB_APPLEDISPLAY is not set
-# CONFIG_USB_LD is not set
-# CONFIG_USB_TRANCEVIBRATOR is not set
-# CONFIG_USB_TEST is not set
-
-#
-# USB DSL modem support
-#
-
-#
-# USB Gadget Support
-#
-# CONFIG_USB_GADGET is not set
-
-#
-# MMC/SD Card support
-#
-CONFIG_MMC=y
-# CONFIG_MMC_DEBUG is not set
-CONFIG_MMC_BLOCK=y
-CONFIG_MMC_AT91=y
-# CONFIG_MMC_TIFM_SD is not set
-
-#
-# Real Time Clock
-#
-CONFIG_RTC_LIB=y
-# CONFIG_RTC_CLASS is not set
-
-#
-# File systems
-#
-CONFIG_EXT2_FS=y
-CONFIG_EXT2_FS_XATTR=y
-CONFIG_EXT2_FS_POSIX_ACL=y
-CONFIG_EXT2_FS_SECURITY=y
-# CONFIG_EXT2_FS_XIP is not set
-CONFIG_EXT3_FS=y
-CONFIG_EXT3_FS_XATTR=y
-CONFIG_EXT3_FS_POSIX_ACL=y
-CONFIG_EXT3_FS_SECURITY=y
-# CONFIG_EXT4DEV_FS is not set
-CONFIG_JBD=y
-# CONFIG_JBD_DEBUG is not set
-CONFIG_FS_MBCACHE=y
-# CONFIG_REISERFS_FS is not set
-# CONFIG_JFS_FS is not set
-CONFIG_FS_POSIX_ACL=y
-# CONFIG_XFS_FS is not set
-# CONFIG_GFS2_FS is not set
-# CONFIG_OCFS2_FS is not set
-# CONFIG_MINIX_FS is not set
-# CONFIG_ROMFS_FS is not set
-CONFIG_INOTIFY=y
-CONFIG_INOTIFY_USER=y
-CONFIG_QUOTA=y
-# CONFIG_QFMT_V1 is not set
-CONFIG_QFMT_V2=y
-CONFIG_QUOTACTL=y
-CONFIG_DNOTIFY=y
-# CONFIG_AUTOFS_FS is not set
-CONFIG_AUTOFS4_FS=y
-# CONFIG_FUSE_FS is not set
-
-#
-# CD-ROM/DVD Filesystems
-#
-# CONFIG_ISO9660_FS is not set
-# CONFIG_UDF_FS is not set
-
-#
-# DOS/FAT/NT Filesystems
-#
-CONFIG_FAT_FS=y
-CONFIG_MSDOS_FS=y
-CONFIG_VFAT_FS=y
-CONFIG_FAT_DEFAULT_CODEPAGE=437
-CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
-# CONFIG_NTFS_FS is not set
-
-#
-# Pseudo filesystems
-#
-CONFIG_PROC_FS=y
-CONFIG_PROC_SYSCTL=y
-CONFIG_SYSFS=y
-CONFIG_TMPFS=y
-# CONFIG_TMPFS_POSIX_ACL is not set
-# CONFIG_HUGETLB_PAGE is not set
-CONFIG_RAMFS=y
-CONFIG_CONFIGFS_FS=y
-
-#
-# Miscellaneous filesystems
-#
-# CONFIG_ADFS_FS is not set
-# CONFIG_AFFS_FS is not set
-# CONFIG_HFS_FS is not set
-# CONFIG_HFSPLUS_FS is not set
-# CONFIG_BEFS_FS is not set
-# CONFIG_BFS_FS is not set
-# CONFIG_EFS_FS is not set
-CONFIG_JFFS2_FS=y
-CONFIG_JFFS2_FS_DEBUG=0
-CONFIG_JFFS2_FS_WRITEBUFFER=y
-# CONFIG_JFFS2_SUMMARY is not set
-# CONFIG_JFFS2_FS_XATTR is not set
-# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
-CONFIG_JFFS2_ZLIB=y
-CONFIG_JFFS2_RTIME=y
-# CONFIG_JFFS2_RUBIN is not set
-# CONFIG_CRAMFS is not set
-# CONFIG_VXFS_FS is not set
-# CONFIG_HPFS_FS is not set
-# CONFIG_QNX4FS_FS is not set
-# CONFIG_SYSV_FS is not set
-# CONFIG_UFS_FS is not set
-
-#
-# Network File Systems
-#
-CONFIG_NFS_FS=y
-CONFIG_NFS_V3=y
-# CONFIG_NFS_V3_ACL is not set
-CONFIG_NFS_V4=y
-# CONFIG_NFS_DIRECTIO is not set
-# CONFIG_NFSD is not set
-CONFIG_ROOT_NFS=y
-CONFIG_LOCKD=y
-CONFIG_LOCKD_V4=y
-CONFIG_NFS_COMMON=y
-CONFIG_SUNRPC=y
-CONFIG_SUNRPC_GSS=y
-CONFIG_RPCSEC_GSS_KRB5=y
-# CONFIG_RPCSEC_GSS_SPKM3 is not set
-# CONFIG_SMB_FS is not set
-# CONFIG_CIFS is not set
-# CONFIG_NCP_FS is not set
-# CONFIG_CODA_FS is not set
-# CONFIG_AFS_FS is not set
-# CONFIG_9P_FS is not set
-
-#
-# Partition Types
-#
-# CONFIG_PARTITION_ADVANCED is not set
-CONFIG_MSDOS_PARTITION=y
-
-#
-# Native Language Support
-#
-CONFIG_NLS=y
-CONFIG_NLS_DEFAULT="utf8"
-CONFIG_NLS_CODEPAGE_437=y
-# CONFIG_NLS_CODEPAGE_737 is not set
-# CONFIG_NLS_CODEPAGE_775 is not set
-# CONFIG_NLS_CODEPAGE_850 is not set
-# CONFIG_NLS_CODEPAGE_852 is not set
-# CONFIG_NLS_CODEPAGE_855 is not set
-# CONFIG_NLS_CODEPAGE_857 is not set
-# CONFIG_NLS_CODEPAGE_860 is not set
-# CONFIG_NLS_CODEPAGE_861 is not set
-# CONFIG_NLS_CODEPAGE_862 is not set
-# CONFIG_NLS_CODEPAGE_863 is not set
-# CONFIG_NLS_CODEPAGE_864 is not set
-# CONFIG_NLS_CODEPAGE_865 is not set
-# CONFIG_NLS_CODEPAGE_866 is not set
-# CONFIG_NLS_CODEPAGE_869 is not set
-# CONFIG_NLS_CODEPAGE_936 is not set
-# CONFIG_NLS_CODEPAGE_950 is not set
-# CONFIG_NLS_CODEPAGE_932 is not set
-# CONFIG_NLS_CODEPAGE_949 is not set
-# CONFIG_NLS_CODEPAGE_874 is not set
-# CONFIG_NLS_ISO8859_8 is not set
-# CONFIG_NLS_CODEPAGE_1250 is not set
-# CONFIG_NLS_CODEPAGE_1251 is not set
-CONFIG_NLS_ASCII=y
-# CONFIG_NLS_ISO8859_1 is not set
-# CONFIG_NLS_ISO8859_2 is not set
-# CONFIG_NLS_ISO8859_3 is not set
-# CONFIG_NLS_ISO8859_4 is not set
-# CONFIG_NLS_ISO8859_5 is not set
-# CONFIG_NLS_ISO8859_6 is not set
-# CONFIG_NLS_ISO8859_7 is not set
-# CONFIG_NLS_ISO8859_9 is not set
-# CONFIG_NLS_ISO8859_13 is not set
-# CONFIG_NLS_ISO8859_14 is not set
-# CONFIG_NLS_ISO8859_15 is not set
-# CONFIG_NLS_KOI8_R is not set
-# CONFIG_NLS_KOI8_U is not set
-CONFIG_NLS_UTF8=y
-
-#
-# Distributed Lock Manager
-#
-# CONFIG_DLM is not set
-
-#
-# Profiling support
-#
-# CONFIG_PROFILING is not set
-
-#
-# Kernel hacking
-#
-# CONFIG_PRINTK_TIME is not set
-CONFIG_ENABLE_MUST_CHECK=y
-CONFIG_MAGIC_SYSRQ=y
-# CONFIG_UNUSED_SYMBOLS is not set
-# CONFIG_DEBUG_FS is not set
-# CONFIG_HEADERS_CHECK is not set
-CONFIG_DEBUG_KERNEL=y
-CONFIG_LOG_BUF_SHIFT=17
-CONFIG_DETECT_SOFTLOCKUP=y
-# CONFIG_SCHEDSTATS is not set
-# CONFIG_DEBUG_SLAB is not set
-# CONFIG_DEBUG_RT_MUTEXES is not set
-# CONFIG_RT_MUTEX_TESTER is not set
-CONFIG_DEBUG_SPINLOCK=y
-# CONFIG_DEBUG_MUTEXES is not set
-# CONFIG_DEBUG_RWSEMS is not set
-CONFIG_DEBUG_SPINLOCK_SLEEP=y
-# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
-# CONFIG_DEBUG_KOBJECT is not set
-CONFIG_DEBUG_BUGVERBOSE=y
-# CONFIG_DEBUG_INFO is not set
-# CONFIG_DEBUG_VM is not set
-# CONFIG_DEBUG_LIST is not set
-CONFIG_FRAME_POINTER=y
-CONFIG_FORCED_INLINING=y
-# CONFIG_RCU_TORTURE_TEST is not set
-# CONFIG_DEBUG_USER is not set
-# CONFIG_DEBUG_ERRORS is not set
-CONFIG_DEBUG_LL=y
-# CONFIG_DEBUG_ICEDCC is not set
-
-#
-# Security options
-#
-# CONFIG_KEYS is not set
-# CONFIG_SECURITY is not set
-
-#
-# Cryptographic options
-#
-CONFIG_CRYPTO=y
-CONFIG_CRYPTO_ALGAPI=y
-CONFIG_CRYPTO_BLKCIPHER=y
-CONFIG_CRYPTO_HASH=m
-CONFIG_CRYPTO_MANAGER=y
-CONFIG_CRYPTO_HMAC=m
-# CONFIG_CRYPTO_XCBC is not set
-# CONFIG_CRYPTO_NULL is not set
-# CONFIG_CRYPTO_MD4 is not set
-CONFIG_CRYPTO_MD5=y
-# CONFIG_CRYPTO_SHA1 is not set
-# CONFIG_CRYPTO_SHA256 is not set
-# CONFIG_CRYPTO_SHA512 is not set
-# CONFIG_CRYPTO_WP512 is not set
-# CONFIG_CRYPTO_TGR192 is not set
-# CONFIG_CRYPTO_GF128MUL is not set
-# CONFIG_CRYPTO_ECB is not set
-CONFIG_CRYPTO_CBC=y
-# CONFIG_CRYPTO_LRW is not set
-CONFIG_CRYPTO_DES=y
-# CONFIG_CRYPTO_BLOWFISH is not set
-# CONFIG_CRYPTO_TWOFISH is not set
-# CONFIG_CRYPTO_SERPENT is not set
-# CONFIG_CRYPTO_AES is not set
-# CONFIG_CRYPTO_CAST5 is not set
-# CONFIG_CRYPTO_CAST6 is not set
-# CONFIG_CRYPTO_TEA is not set
-# CONFIG_CRYPTO_ARC4 is not set
-# CONFIG_CRYPTO_KHAZAD is not set
-# CONFIG_CRYPTO_ANUBIS is not set
-# CONFIG_CRYPTO_DEFLATE is not set
-# CONFIG_CRYPTO_MICHAEL_MIC is not set
-# CONFIG_CRYPTO_CRC32C is not set
-# CONFIG_CRYPTO_TEST is not set
-
-#
-# Hardware crypto devices
-#
-
-#
-# Library routines
-#
-CONFIG_BITREVERSE=y
-# CONFIG_CRC_CCITT is not set
-# CONFIG_CRC16 is not set
-CONFIG_CRC32=y
-# CONFIG_LIBCRC32C is not set
-CONFIG_AUDIT_GENERIC=y
-CONFIG_ZLIB_INFLATE=y
-CONFIG_ZLIB_DEFLATE=y
-CONFIG_PLIST=y
-CONFIG_IOMAP_COPY=y
diff --git a/target/device/xtensa/Config.in b/target/device/xtensa/Config.in new file mode 100644 index 000000000..0d4408c23 --- /dev/null +++ b/target/device/xtensa/Config.in @@ -0,0 +1,21 @@ +menuconfig BR2_TARGET_XTENSA + bool "Device and Board Support for Xtensa and Diamond cores" + depends on BR2_xtensa + default y + help + Lists development boards with support for the Xtensa architecture. + +if BR2_TARGET_XTENSA +comment "Tensilica Xtensa/Diamond based Device Support" + depends on BR2_xtensa + +config BR2_TARGET_XTENSA_XTAV60 + bool "XTAV60/200 board (Avnet LX60 or LX200 plus Tensilica IP)" + depends on BR2_xtensa + default y + help + The XTAV60 or XTAV200 board, which is an Avnet LX60 or LX200 + emulation board programmed with an FPGA bitstream obtained + from Tensilica. + +endif diff --git a/target/device/xtensa/Makefile.in b/target/device/xtensa/Makefile.in new file mode 100644 index 000000000..7c95c239b --- /dev/null +++ b/target/device/xtensa/Makefile.in @@ -0,0 +1,17 @@ +ifeq ($(BR2_xtensa),y) + +ifeq ($(strip $(BR2_TARGET_XTENSA_XTAV60)),y) +# UCLIBC_CONFIG_FILE:=target/device/xtensa/xtav60/uClibc.config +# BR2_PACKAGE_BUSYBOX_CONFIG:=target/device/xtensa/xtav60/busybox.config +TARGET_SKELETON_PATCH:=target/device/xtensa +endif + +# Custom device table patch used when targeting ISS: +OLD_TARGET_DEVICE_TABLE := $(TARGET_DEVICE_TABLE) +TARGET_DEVICE_TABLE := target/device/xtensa/device_table.txt +makedevs: + @echo "Applying patch to $(TARGET_DEVICE_TABLE)" + cp -f $(OLD_TARGET_DEVICE_TABLE) $(TARGET_DEVICE_TABLE) + patch -p1 -g 0 < target/device/xtensa/device_table.diff + +endif diff --git a/target/device/xtensa/device_table.diff b/target/device/xtensa/device_table.diff new file mode 100644 index 000000000..12f682546 --- /dev/null +++ b/target/device/xtensa/device_table.diff @@ -0,0 +1,10 @@ +diff --git a/target/generic/device_table.txt b/target/generic/device_table.txt +index f4b16ba..b87bf69 100644 +--- a/target/device/xtensa/device_table.txt ++++ b/target/device/xtensa/device_table.txt +@@ -169,3 +169,5 @@ + #/dev/mcd b 640 0 0 23 0 0 0 + #/dev/optcd b 640 0 0 17 0 0 0 + ++/dev/simdisk0 b 640 0 0 240 0 0 0 ++/dev/simdisk1 b 640 0 0 240 1 0 0 diff --git a/target/device/xtensa/skeleton-patch/etc/inittab b/target/device/xtensa/skeleton-patch/etc/inittab new file mode 100644 index 000000000..b336ff69c --- /dev/null +++ b/target/device/xtensa/skeleton-patch/etc/inittab @@ -0,0 +1,47 @@ +# /etc/inittab +# +# Copyright (C) 2001 Erik Andersen <andersen@codepoet.org> +# +# Note: BusyBox init doesn't support runlevels. The runlevels field is +# completely ignored by BusyBox init. If you want runlevels, use +# sysvinit. +# +# Format for each entry: <id>:<runlevels>:<action>:<process> +# +# id == tty to run on, or empty for /dev/console +# runlevels == ignored +# action == one of sysinit, respawn, askfirst, wait, and once +# process == program to run + +# Startup the system +null::sysinit:/bin/mount -t proc proc /proc +null::sysinit:/bin/mount -o remount,rw / +null::sysinit:/bin/mount -a +null::sysinit:/bin/hostname -F /etc/hostname +null::sysinit:/sbin/ifconfig lo 127.0.0.1 up +null::sysinit:/sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo +# now run any rc scripts +::sysinit:/etc/init.d/rcS + +# Set up a couple of getty's +#tty1::respawn:/sbin/getty 38400 tty1 +#tty2::respawn:/sbin/getty 38400 tty2 + +# Put a getty on the serial port +ttyS0::respawn:/sbin/getty -L ttyS0 38400 vt100 + +# Logging junk +null::sysinit:/bin/touch /var/log/messages +null::respawn:/sbin/syslogd -n -m 0 +null::respawn:/sbin/klogd -n +#tty3::respawn:/usr/bin/tail -f /var/log/messages + +# Stuff to do for the 3-finger salute +::ctrlaltdel:/sbin/reboot + +# Stuff to do before rebooting +null::shutdown:/usr/bin/killall klogd +null::shutdown:/usr/bin/killall syslogd +null::shutdown:/bin/umount -a -r +null::shutdown:/sbin/swapoff -a + diff --git a/target/hurd/Config.in b/target/hurd/Config.in deleted file mode 100644 index 08b9ff7e7..000000000 --- a/target/hurd/Config.in +++ /dev/null @@ -1,11 +0,0 @@ -config BR2_PACKAGE_HURD - bool "Hurd kernel (see helptext)" - depends on BR2_KERNEL_HURD - default y - help - The GNU/Hurd kernel. - http://www.gnu.org/software/hurd/ - - FIXME: Currently not implemented. - - diff --git a/target/hurd/Makefile.in b/target/hurd/Makefile.in deleted file mode 100644 index 9bd7d9b1c..000000000 --- a/target/hurd/Makefile.in +++ /dev/null @@ -1,38 +0,0 @@ -# GNU Hurd kernel -# -ifeq ($(BR2_KERNEL_HURD),y) - -HURD_MODULE_SITE:= -d:pserver:anonymous@cvs.savannah.gnu.org:/sources/hurd -MIG_MODULE_NAME:=mig -MIG_MODULE_VERSION:=cvs -HURD_MODULE_NAME:=hurd -HURD_MODULE_VERSION:=cvs -HURD_CMD_CO=cvs -z3 $(HURD_MODULE_SITE) co -HURD_CMD_UP:=cvs up -PA -d -HURD_SRC_DIR:=hurd-$(HURD_MODULE_VERSION) -MIG_SRC_DIR:=mig-$(MIG_MODULE_VERSION) - -$(TOOL_BUILD_DIR)/$(HURD_SRC_DIR)/.unpacked: - mkdir -p $(@D) - (cd $(TOOL_BUILD_DIR) && \ - $(HURD_CMD_CO) -d $(HURD_SRC_DIR) $(HURD_MODULE_NAME); \ - ) - touch $@ - -$(TOOL_BUILD_DIR)/$(MIG_SRC_DIR)/.unpacked: - mkdir -p $(@D) - (cd $(TOOL_BUILD_DIR) && \ - $(HURD_CMD_CO) -d $(MIG_SRC_DIR) $(MIG_MODULE_NAME); \ - ) - touch $@ - -$(TOOL_BUILD_DIR)/$(HURD_SRC_DIR)/.updated: $(TOOL_BUILD_DIR)/$(HURD_SRC_DIR)/.unpacked - (cd $(@D) && $(HURD_CMD_UP)) - -$(TOOL_BUILD_DIR)/$(MIG_SRC_DIR)/.updated: $(TOOL_BUILD_DIR)/$(MIG_SRC_DIR)/.unpacked - (cd $(@D) && $(HURD_CMD_UP)) - -hurd-source: $(TOOL_BUILD_DIR)/$(HURD_SRC_DIR)/.updated \ - $(TOOL_BUILD_DIR)/$(MIG_SRC_DIR)/.updated - -endif diff --git a/target/iso9660/Config.in b/target/iso9660/Config.in index 6c580d80d..0b820630a 100644 --- a/target/iso9660/Config.in +++ b/target/iso9660/Config.in @@ -1,6 +1,7 @@ config BR2_TARGET_ROOTFS_ISO9660 bool "iso image" depends on BR2_i386 + depends on !BR2_KERNEL_none select BR2_TARGET_ROOTFS_EXT2 select BR2_TARGET_GRUB select BR2_HOST_FAKEROOT @@ -16,3 +17,6 @@ config BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU string "Boot menu.lst file" depends on BR2_TARGET_ROOTFS_ISO9660 default "target/iso9660/menu.lst" + +comment "iso image requires a Linux kernel to be built" + depends on BR2_i386 && BR2_KERNEL_none diff --git a/target/iso9660/iso9660.mk b/target/iso9660/iso9660.mk index 151970ffd..2525286f6 100644 --- a/target/iso9660/iso9660.mk +++ b/target/iso9660/iso9660.mk @@ -7,7 +7,7 @@ MKISOFS_SOURCE:=cdrtools-2.01.tar.bz2 MKISOFS_CAT:=$(BZCAT) MKISOFS_SITE:=ftp://ftp.berlios.de/pub/cdrecord/ MKISOFS_DIR:=$(BUILD_DIR)/cdrtools-2.01 -MKISOFS_TARGET:=$(MKISOFS_DIR)/mkisofs/OBJ/i686-linux-cc/mkisofs +MKISOFS_TARGET=$(MKISOFS_DIR)/mkisofs/OBJ/$(HOST_ARCH)-linux-cc/mkisofs $(DL_DIR)/$(MKISOFS_SOURCE): $(call DOWNLOAD,$(MKISOFS_SITE),$(MKISOFS_SOURCE)) diff --git a/target/linux/Config.in.advanced b/target/linux/Config.in.advanced index 3a171b560..a17e41aec 100644 --- a/target/linux/Config.in.advanced +++ b/target/linux/Config.in.advanced @@ -33,42 +33,35 @@ source "target/linux/Config.in.versions" config BR2_KERNEL_PATCH_LEVEL string + default $(BR2_KERNEL_LATEST_2_6_30) if BR2_LINUX_2_6_30 && BR2_KERNEL_ADD_LATEST_MINORPATCH default $(BR2_KERNEL_LATEST_2_6_29) if BR2_LINUX_2_6_29 && BR2_KERNEL_ADD_LATEST_MINORPATCH default $(BR2_KERNEL_LATEST_2_6_28) if BR2_LINUX_2_6_28 && BR2_KERNEL_ADD_LATEST_MINORPATCH default $(BR2_KERNEL_LATEST_2_6_27) if BR2_LINUX_2_6_27 && BR2_KERNEL_ADD_LATEST_MINORPATCH default $(BR2_KERNEL_LATEST_2_6_26) if BR2_LINUX_2_6_26 && BR2_KERNEL_ADD_LATEST_MINORPATCH default $(BR2_KERNEL_LATEST_2_6_25) if BR2_LINUX_2_6_25 && BR2_KERNEL_ADD_LATEST_MINORPATCH default $(BR2_KERNEL_LATEST_2_6_24) if BR2_LINUX_2_6_24 && BR2_KERNEL_ADD_LATEST_MINORPATCH - default $(BR2_KERNEL_LATEST_2_6_23) if BR2_LINUX_2_6_23 && BR2_KERNEL_ADD_LATEST_MINORPATCH - default $(BR2_KERNEL_LATEST_2_6_22) if BR2_LINUX_2_6_22 && BR2_KERNEL_ADD_LATEST_MINORPATCH - default $(BR2_KERNEL_LATEST_2_6_21) if BR2_LINUX_2_6_21 && BR2_KERNEL_ADD_LATEST_MINORPATCH - default $(BR2_KERNEL_LATEST_2_6_20) if BR2_LINUX_2_6_20 && BR2_KERNEL_ADD_LATEST_MINORPATCH default "$(BR2_KERNEL_MINORLEVEL)" if BR2_KERNEL_ADD_MINORPATCH config BR2_KERNEL_NEXT_VERSION string + default "2.6.31" if BR2_LINUX_2_6_30 + default "2.6.30" if BR2_LINUX_2_6_29 default "2.6.29" if BR2_LINUX_2_6_28 default "2.6.28" if BR2_LINUX_2_6_27 default "2.6.27" if BR2_LINUX_2_6_26 default "2.6.26" if BR2_LINUX_2_6_25 default "2.6.25" if BR2_LINUX_2_6_24 - default "2.6.24" if BR2_LINUX_2_6_23 - default "2.6.23" if BR2_LINUX_2_6_22 - default "2.6.22" if BR2_LINUX_2_6_21 - default "2.6.21" if BR2_LINUX_2_6_20 config BR2_KERNEL_THIS_VERSION string + default "2.6.31" if BR2_LINUX_2_6_31 + default "2.6.30" if BR2_LINUX_2_6_30 default "2.6.29" if BR2_LINUX_2_6_29 default "2.6.28" if BR2_LINUX_2_6_28 default "2.6.27" if BR2_LINUX_2_6_27 default "2.6.26" if BR2_LINUX_2_6_26 default "2.6.25" if BR2_LINUX_2_6_25 default "2.6.24" if BR2_LINUX_2_6_24 - default "2.6.23" if BR2_LINUX_2_6_23 - default "2.6.22" if BR2_LINUX_2_6_22 - default "2.6.21" if BR2_LINUX_2_6_21 - default "2.6.20" if BR2_LINUX_2_6_20 config BR2_KERNEL_SITE string @@ -128,7 +121,11 @@ choice Select the specific Linux version you want to use config BR2_LINUX_2_6_STABLE - bool "The latest stable Linux kernel (2.6.29.4)" + bool "The latest stable Linux kernel (2.6.30.2)" + +config BR2_LINUX_2_6_30 + bool "Linux 2.6.30" + select BR2_KERNEL_BASE config BR2_LINUX_2_6_29 bool "Linux 2.6.29" @@ -154,20 +151,8 @@ config BR2_LINUX_2_6_24 bool "Linux 2.6.24" select BR2_KERNEL_BASE -config BR2_LINUX_2_6_23 - bool "Linux 2.6.23" - select BR2_KERNEL_BASE - -config BR2_LINUX_2_6_22 - bool "Linux 2.6.22" - select BR2_KERNEL_BASE - -config BR2_LINUX_2_6_21 - bool "Linux 2.6.21" - select BR2_KERNEL_BASE - -config BR2_LINUX_2_6_20 - bool "Linux 2.6.20" +config BR2_LINUX_2_6_31 + bool "Linux 2.6.31" select BR2_KERNEL_BASE config BR2_LINUX26_CUSTOM @@ -178,19 +163,19 @@ endchoice if BR2_LINUX26_CUSTOM config BR2_CUSTOM_DOWNLOAD_LINUX26_VERSION string "Linux Tarball version" - default "2.6.30" + default "2.6.31" help Specify any .tar.bz2 file config BR2_CUSTOM_LINUX26_VERSION string "Linux Version" - default "2.6.30" + default "2.6.31" help Specify what the linux version will be called config BR2_CUSTOM_LINUX26_PATCH string "patch name" - default "patch-2.6.30-rc4.bz2" + default "patch-2.6.31-rc4.bz2" help Specify a patch to be downloaded diff --git a/target/linux/Config.in.experimental b/target/linux/Config.in.experimental deleted file mode 100644 index c75c69b0f..000000000 --- a/target/linux/Config.in.experimental +++ /dev/null @@ -1,345 +0,0 @@ -if BR2_KERNEL_LINUX_EXPERIMENTAL - -choice - prompt "Linux Kernel Version" - depends on BR2_PACKAGE_LINUX - default BR2_LINUX_2_6_22_1 if !BR2_avr32 - default BR2_LINUX_2_6_22_10 if BR2_avr32 - help - Select the specific Linux version you want to use - -config BR2_LINUX_2_6_SNAP - bool "The latest snapshot for the stable Linux kernel" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.x-git# - -config BR2_LINUX_2_6_MM - bool "With latest -mm patch for the stable Linux kernel" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.x-rc#-mm# - -config BR2_LINUX_2_6_STABLE - bool "The latest stable Linux kernel (2.6.22.1)" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.22.1 - -config BR2_LINUX_2_6_22_10 - bool "Linux 2.6.22.10" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.22.10 - -config BR2_LINUX_2_6_22_1 - bool "Linux 2.6.22.1" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.22.1 - -config BR2_LINUX_2_6_22 - bool "Linux 2.6.22" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.22 - -config BR2_LINUX_2_6_21_6 - bool "Linux 2.6.21.6" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.21.6 - -config BR2_LINUX_2_6_21_1 - bool "Linux 2.6.21.1" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.21.1 - -config BR2_LINUX_2_6_21 - bool "Linux 2.6.21" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.21 - -config BR2_LINUX_2_6_20_4 - bool "Linux 2.6.20.4" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.20.4 - -config BR2_LINUX_2_6_20 - bool "Linux 2.6.20" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.20 - -config BR2_LINUX_2_6_19_2 - bool "Linux 2.6.19.2" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.19.2 - -config BR2_LINUX_2_6_19 - bool "Linux 2.6.19" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.19 - -config BR2_LINUX_2_6_18 - bool "Linux 2.6.18" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.18 - -config BR2_LINUX_2_6_17 - bool "Linux 2.6.17" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.17 - -config BR2_LINUX_2_6_16 - bool "Linux 2.6.16" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.16 - -config BR2_LINUX_2_6_15 - bool "Linux 2.6.15" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.15 - -config BR2_LINUX_2_6_23 - bool "Linux 2.6.23" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.23 - -config BR2_LINUX_CUSTOM - bool "Linux <custom> version" - depends on BR2_PACKAGE_LINUX - help - Linux <your selection> - -endchoice - -config BR2_CUSTOM_DOWNLOAD_LINUX26_VERSION - string "Linux Tarball version" - depends on BR2_LINUX_CUSTOM - default "linux-2.6.22" - -config BR2_CUSTOM_LINUX26_VERSION - string "Linux Version" - depends on BR2_LINUX_CUSTOM - default "linux-2.6.22-version" - -config BR2_CUSTOM_LINUX26_RC_PATCH - string "RC patch (if needed)" - depends on BR2_LINUX_CUSTOM - default "patch-2.6.22-rc6-mm1.bz2" - -menu "Patches" - depends on BR2_PACKAGE_LINUX - -config BR2_LINUX_BSP_PATCH - string "Additional patch to apply (supply full path)" - default "" - -endmenu - -config BR2_DOWNLOAD_LINUX26_VERSION - string #"Selected Tarball:" - default "2.6.15" if BR2_LINUX_2_6_15 - default "2.6.16" if BR2_LINUX_2_6_16 - default "2.6.17" if BR2_LINUX_2_6_17 - default "2.6.18" if BR2_LINUX_2_6_18 - default "2.6.19" if BR2_LINUX_2_6_19 - default "2.6.19.2" if BR2_LINUX_2_6_19_2 - default "2.6.20" if BR2_LINUX_2_6_20 - default "2.6.20.4" if BR2_LINUX_2_6_20_4 - default "2.6.21" if BR2_LINUX_2_6_21 - default "2.6.21.1" if BR2_LINUX_2_6_21_1 - default "2.6.21.6" if BR2_LINUX_2_6_21_6 - default "2.6.22" if BR2_LINUX_2_6_22 - default "2.6.22.1" if BR2_LINUX_2_6_22_1 - default "2.6.22.10" if BR2_LINUX_2_6_22_10 - default "2.6.22" if BR2_LINUX_2_6_23_RC1 - default "2.6.22" if BR2_LINUX_2_6_SNAP - default "2.6.22" if BR2_LINUX_2_6_MM - default $(BR2_CUSTOM_DOWNLOAD_LINUX26_VERSION) if BR2_LINUX_CUSTOM - -config BR2_LINUX26_VERSION - string #"Selected Version:" - default "2.6.15" if BR2_LINUX_2_6_15 - default "2.6.16" if BR2_LINUX_2_6_16 - default "2.6.17" if BR2_LINUX_2_6_17 - default "2.6.18" if BR2_LINUX_2_6_18 - default "2.6.19" if BR2_LINUX_2_6_19 - default "2.6.19.2" if BR2_LINUX_2_6_19_2 - default "2.6.20" if BR2_LINUX_2_6_20 - default "2.6.20.4" if BR2_LINUX_2_6_20_4 - default "2.6.21" if BR2_LINUX_2_6_21 - default "2.6.21.1" if BR2_LINUX_2_6_21_1 - default "2.6.21.6" if BR2_LINUX_2_6_21_6 - default "2.6.22" if BR2_LINUX_2_6_22 - default "2.6.22.1" if BR2_LINUX_2_6_22_1 - default "2.6.22.10" if BR2_LINUX_2_6_22_10 - default "2.6.22" if BR2_LINUX_2_6_23_RC1 - default "2.6.22" if BR2_LINUX_2_6_SNAP - default "2.6.22" if BR2_LINUX_2_6_MM - default $(BR2_CUSTOM_LINUX26_VERSION) if BR2_LINUX_CUSTOM - -config BR2_LINUX26_RC_PATCH - string #"Selected Patch:" - default "" if BR2_LINUX_2_6_15 - default "" if BR2_LINUX_2_6_16 - default "" if BR2_LINUX_2_6_17 - default "" if BR2_LINUX_2_6_18 - default "" if BR2_LINUX_2_6_19 - default "" if BR2_LINUX_2_6_19_2 - default "" if BR2_LINUX_2_6_20 - default "" if BR2_LINUX_2_6_20_4 - default "" if BR2_LINUX_2_6_21 - default "" if BR2_LINUX_2_6_21_1 - default "" if BR2_LINUX_2_6_21_6 - default "" if BR2_LINUX_2_6_22 - default "" if BR2_LINUX_2_6_22_1 - default "" if BR2_LINUX_2_6_22_10 - default "patch-2.6.23-rc1.bz2" if BR2_LINUX_2_6_23_RC1 - default $(BR2_CUSTOM_LINUX26_RC_PATCH) if BR2_LINUX_CUSTOM - -choice - prompt "Linux Kernel Configuration" - depends on BR2_PACKAGE_LINUX - default BR2_PACKAGE_LINUX_USE_KCONFIG - help - Select the way to configure the Linux - -config BR2_PACKAGE_LINUX_USE_KCONFIG - bool ".config file" - depends on BR2_PACKAGE_LINUX - help - kernel's .config to use to build a kernel for the target. - - If the above setting is empty, you can change the default - board-imposed value by passing LINUX26_KCONFIG=<path> to - make. - -config BR2_LINUX26_DEFCONFIG - bool "Run make <board>_defconfig " - depends on BR2_PACKAGE_LINUX - help - Configure Linux by make <board>_defconfig - -config BR2_LINUX_CUSTOMIZE - bool "Run make ARCH=$(ARCH) xconfig before build" - depends on BR2_PACKAGE_LINUX - help - Configure Linux by make xconfig -endchoice - -config BR2_PACKAGE_LINUX_KCONFIG - string ".config file" - depends on BR2_PACKAGE_LINUX_USE_KCONFIG - default "$(BR2_BOARD_PATH)/$(BR2_BOARD_NAME)-linux-$(LINUX26_VERSION).config" - help - kernel's .config to use to build a kernel for the target. - - If the above setting is empty, you can change the default - board-imposed value by passing LINUX26_KCONFIG=<path> to - make. - -choice - prompt "kernel binary format" - depends on BR2_PACKAGE_LINUX - default BR2_LINUX_BIN_UIMAGE - help - Select the specific Linux binary type you want to use - -config BR2_LINUX_BIN_BZIMAGE - bool "bzImage" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.19.2 - -config BR2_LINUX_BIN_UIMAGE - bool "uImage" - depends on BR2_PACKAGE_LINUX - help - Build uImage binary - -config BR2_LINUX_BIN_VMLINUX - bool "vmlinux" - depends on BR2_PACKAGE_LINUX - help - Build vmlinux binary - -config BR2_LINUX_BIN_ZIMAGE - bool "zImage" - depends on BR2_PACKAGE_LINUX - help - Linux 2.6.19.2 - -config BR2_LINUX_BIN_CUSTOM - bool "<custom> Linux binary" - depends on BR2_PACKAGE_LINUX - help - Build custom Linux binary format -endchoice - -config BR2_LINUX_BIN_CUSTOM_BIN - string "custom kernel binary format" - depends on BR2_LINUX_BIN_CUSTOM - default "" - help - Which Linux binary format? - -config BR2_PACKAGE_LINUX_FORMAT - string #"kernel binary format" - depends on BR2_PACKAGE_LINUX - default "bzImage" if BR2_LINUX_BIN_BZIMAGE - default "uImage" if BR2_LINUX_BIN_UIMAGE - default "vmlinux" if BR2_LINUX_BIN_VMLINUX - default "zImage" if BR2_LINUX_BIN_ZIMAGE - default $(BR2_LINUX_BIN_CUSTOM_BIN) if BR2_LINUX_BIN_CUSTOM - help - kernel binary format. - Popular values include: - - bzImage - - zImage - - vmlinux - - zImage - - xipImage - and other, architecture dependant formats. - - Note that the default format is supposed to be set by your - board-description, if any. - i386 and compatible default to bzImage if nothing was given - above. - If the above setting is empty, you can change the default - board-imposed value by passing LINUX26_FORMAT=<string> to - make. - -comment "Destinations for linux kernel binaries" - depends on BR2_PACKAGE_LINUX - -config BR2_LINUX_IN_ROOTFS - bool "Copy kernel to root file system" - depends on BR2_PACKAGE_LINUX - help - Copy kernel to <root>/boot directory - -menuconfig BR2_LINUX_COPY - bool "Secondary Copy" - depends on BR2_PACKAGE_LINUX - default y - -config BR2_LINUX_COPYTO - string "also copy the image to..." - depends on BR2_LINUX_COPY - default "/tftpboot" - help - Copy kernel to secondary location - -endif diff --git a/target/linux/Config.in.versions b/target/linux/Config.in.versions index a37a5ad93..d71504d46 100644 --- a/target/linux/Config.in.versions +++ b/target/linux/Config.in.versions @@ -1,11 +1,11 @@ # This file defines the latest version of # You also have to edit BR2_LINUX_2_6_STABLE # in target/linux/Config.in.advanced -# which is approximately at line 132 +# which is approximately at line 136 config LINUX26_LATEST_RC_VERSION string - default "2.6.30-rc4" if BR2_KERNEL_ADD_LATEST_RC_PATCH + default "2.6.31-rc4" if BR2_KERNEL_ADD_LATEST_RC_PATCH help Not really available as of 20090103 @@ -19,21 +19,25 @@ config LINUX26_LATEST_MM_VERSION config BR2_KERNEL_CURRENT_VERSION string - default "2.6.29.4" + default "2.6.30.2" help This is the latest stable kernel (including minor version) +config BR2_KERNEL_LATEST_2_6_30 + string + default "2" + config BR2_KERNEL_LATEST_2_6_29 string - default "4" + default "6" config BR2_KERNEL_LATEST_2_6_28 string - default "7" + default "10" config BR2_KERNEL_LATEST_2_6_27 string - default "13" + default "27" config BR2_KERNEL_LATEST_2_6_26 string @@ -46,19 +50,3 @@ config BR2_KERNEL_LATEST_2_6_25 config BR2_KERNEL_LATEST_2_6_24 string default "7" - -config BR2_KERNEL_LATEST_2_6_23 - string - default "17" - -config BR2_KERNEL_LATEST_2_6_22 - string - default "19" - -config BR2_KERNEL_LATEST_2_6_21 - string - default "7" - -config BR2_KERNEL_LATEST_2_6_20 - string - default "21" diff --git a/target/xtensa/.gitignore b/target/xtensa/.gitignore new file mode 100644 index 000000000..cff61bf9e --- /dev/null +++ b/target/xtensa/.gitignore @@ -0,0 +1 @@ +/busybox-config diff --git a/target/xtensa/Makefile.in b/target/xtensa/Makefile.in new file mode 100644 index 000000000..8a654b998 --- /dev/null +++ b/target/xtensa/Makefile.in @@ -0,0 +1 @@ +-include target/xtensa/*/*.mk diff --git a/target/xtensa/defconfig b/target/xtensa/defconfig new file mode 100644 index 000000000..4127f5308 --- /dev/null +++ b/target/xtensa/defconfig @@ -0,0 +1,133 @@ +# Default buildroot configuration for running Linux on an Xtensa processor +# on an LX60 board. + +# +# Project Options +# +BR2_BANNER="Welcome to your custom Xtensa processor based uClibc environment." +BR2_HAVE_DOT_CONFIG=y +BR2_xtensa=y +BR2_xtensa_dc232b=y +BR2_xtensa_core_name="dc232b" +BR2_ARCH="xtensa" + +# +# Build options +# +BR2_WGET="wget --passive-ftp" +# BR2_STRIP_strip is not set +# BR2_STRIP_none=y + +## Added by Maxim +BR2_UPDATE_CONFIG=y + +# +# Kernel Header Options +# +BR2_KERNEL_none=y +BR2_KERNEL_HEADERS_2_6_22_1=y +BR2_DEFAULT_KERNEL_HEADERS="2.6.22.1" + +# +# uClibc Options +# +BR2_UCLIBC_VERSION_0_9_30=y +# BR2_UCLIBC_VERSION_SNAPSHOT is not set +BR2_UCLIBC_CONFIG="target/xtensa/uClibc-0.9.30.config" +BR2_PTHREADS_OLD=y +# BR2_PTHREADS_NATIVE is not set +BR2_PTHREAD_DEBUG=y + +# +# Binutils Options +# +BR2_BINUTILS_VERSION_2_19=y +BR2_BINUTILS_VERSION="2.19" +BR2_EXTRA_BINUTILS_CONFIG_OPTIONS="" + +# +# Gcc Options +# +BR2_GCC_VERSION_4_3_2=y +# BR2_GCC_IS_SNAP is not set +BR2_GCC_VERSION="4.3.2" +BR2_TOOLCHAIN_SYSROOT=y +BR2_EXTRA_GCC_CONFIG_OPTIONS="" +BR2_GCC_CROSS_CXX=y +BR2_INSTALL_LIBSTDCPP=y +BR2_GCC_SHARED_LIBGCC=y + +# +# Gdb Options +# +BR2_PACKAGE_GDB=y +BR2_PACKAGE_GDB_SERVER=y +BR2_PACKAGE_GDB_HOST=y +# BR2_GDB_VERSION_6_2_1 is not set +# BR2_GDB_VERSION_6_3 is not set +# BR2_GDB_VERSION_6_4 is not set +# BR2_GDB_VERSION_6_5 is not set +# BR2_GDB_VERSION_6_6 is not set +# BR2_GDB_VERSION_6_7_1 is not set +BR2_GDB_VERSION_6_8=y +# BR2_GDB_VERSION_SNAPSHOT is not set +BR2_GDB_VERSION="6.8" + +# +# Common Toolchain Options +# +# BR2_PACKAGE_SSTRIP_TARGET is not set +# BR2_PACKAGE_SSTRIP_HOST is not set +# BR2_ENABLE_MULTILIB is not set +BR2_LARGEFILE=y +BR2_INET_RPC=y +BR2_TARGET_OPTIMIZATION="-Os -pipe" +BR2_CROSS_TOOLCHAIN_TARGET_UTILS=y + + +## These two added by Maxim +BR2_TOOLCHAIN_BUILDROOT=y +BR2_TOOLCHAIN_SOURCE=y + + +BR2_PACKAGE_BUSYBOX_HIDE_OTHERS=y + +# +# Other development stuff +# +BR2_HOST_FAKEROOT=y +# BR2_PACKAGE_LIBINTL is not set +# For NFS mount: +BR2_PACKAGE_PORTMAP=y + +# +# Other stuff +# + +# +# filesystem for target device +# +BR2_TARGET_ROOTFS_CPIO=y +BR2_TARGET_ROOTFS_CPIO_GZIP=y +BR2_TARGET_ROOTFS_INITRAMFS=y + +# +# Linux Options +# +# BR2_PACKAGE_LINUX is not set + +# +# Board Support Options +# +BR2_TARGET_XTENSA=y + +# +# Tensilica Xtensa/Diamond based Device Support +# +BR2_TARGET_XTENSA_XTAV60=y + +# +# Compressors / decompressors +# + +BR2_PACKAGE_ZLIB=y diff --git a/target/xtensa/patch.in b/target/xtensa/patch.in new file mode 100644 index 000000000..5b723a8b4 --- /dev/null +++ b/target/xtensa/patch.in @@ -0,0 +1,33 @@ +ifneq ($(filter xtensa%,$(ARCH)),) +############################################################# +# +# Xtensa processor architecture (including Diamond Standard cores) +# +############################################################# + +# The following defines a function to be used like this: +# $(call XTENSA_PATCH, <module>, <patchdir>, <relative dir list...>) +# which returns the first overlay patch file for <module> found +# in the list of directories <relative dir list...> which are +# relative to <patchdir> (itself either absolute or relative to the +# current directory). The returned filename is relative to <patchdir>. +# For example: +# $(call XTENSA_PATCH, binutils, some/dir/path, . ..) +# (no commas between directory paths in the list). +# +# A selected overlay patch must exist ("fsf" means no specific +# overlay is selected). So the function emits a Makefile error +# if a selected patch file is not found. + +XTENSA_CORENAME:=$(strip $(subst ",,$(BR2_xtensa_core_name))) +ifeq ($(XTENSA_CORENAME),fsf) +XTENSA_PATCH = +else +XTENSA_PATCH_SUFFIX = $(1)-xtensa_$(XTENSA_CORENAME).tgz +XTENSA_PATCH_FILE = $(firstword $(wildcard $(patsubst %,$(2)/%/*$(XTENSA_PATCH_SUFFIX),$(3)))) +# FULLPATH = $(if $(filter /%,$(1)),$(1),$(PWD)/$(1)) +XTENSA_PATCH = $(if $(XTENSA_PATCH_FILE),$(patsubst $(2)/%,%,$(XTENSA_PATCH_FILE)),\ + $(error Missing $(1) patch for Xtensa $(XTENSA_CORENAME) processor (*$(XTENSA_PATCH_SUFFIX) in $(addprefix $(2)/,$(3))))) +endif + +endif diff --git a/target/xtensa/setup-config b/target/xtensa/setup-config new file mode 100644 index 000000000..7ef8fe86e --- /dev/null +++ b/target/xtensa/setup-config @@ -0,0 +1,57 @@ +#!/bin/sh + +# Convenience script for setting up a default buildroot config +# for Xtensa processor targets.. + +usage() { + echo "Usage (invoke from top of buildroot tree):" + echo " ./target/xtensa/setup-config <corename>" + #echo " ./target/xtensa/setup-config <corename> [<overlaypath>]" + echo "where:" + echo " <corename> is the Xtensa core overlay name, as specified in the -c option" + echo " of the ./target/xtensa/xt-buildroot-overlay-install script." + echo "" + echo "For example:" + echo " ./target/xtensa/setup-config dc232b" + echo "" + echo "Currently installed (available) core overlay names are:" + echo " " `ls toolchain/binutils/binutils-xtensa_*.tgz | sed -e 's,toolchain\/binutils\/binutils-xtensa_\(.*\)\.tgz,\1,g'` + exit 1 +} + +if [ $# -ne 1 ]; then + usage +fi + +core=$1 ; shift + +if [ ! -f toolchain/binutils/binutils-xtensa_${core}.tgz \ + -o ! -f toolchain/gcc/gcc-xtensa_${core}.tgz \ + -o ! -f toolchain/gdb/gdb-xtensa_${core}.tgz ]; then + echo "ERROR: Did not find an installed Xtensa core overlay named '${core}'." + echo "ERROR: Please install it first with ./target/xtensa/xt-buildroot-overlay-install" + echo "" + usage +fi + +# Use preset buildroot config: +cp target/xtensa/defconfig .defconfig-xtensa +# Set core name: +sed -i -e 's,^BR2_xtensa_\(.*\)=y,BR2_xtensa_custom=y\nBR2_xtensa_custom_name="'${core}'",' .defconfig-xtensa +## sed -i -e 's,^.*BR2_xtensa_core_name.*,BR_xtensa_core_name="'${core}'",' .defconfig-xtensa +# Create full .config with defaults: +make clean defconfig CONFIG_DEFCONFIG=.defconfig-xtensa || exit 1 + +# Busybox adjustments: turn off 'ar' (can't create archives yet overrides real one) +# and turn on NFS mounting (Xtensa defconfig turns on RPC so this can work): +# +bborig=`grep '^BR2_PACKAGE_BUSYBOX_CONFIG=' .config | sed -e 's,.*"\(.*\)".*,\1,'` +bbconf=target/xtensa/busybox-config +cp $bborig $bbconf +sed -i -e 's,^CONFIG_AR=y,# CONFIG_AR is not set,' $bbconf +sed -i -e 's,^.*CONFIG_FEATURE_MOUNT_NFS.*,CONFIG_FEATURE_MOUNT_NFS=y,' $bbconf +# Make use of above busybox adjustments: +sed -i -e 's,.*\(BR2_PACKAGE_BUSYBOX_CONFIG\).*,\1="'$bbconf'",' .config + +echo "Done." + diff --git a/target/xtensa/uClibc-0.9.30.config b/target/xtensa/uClibc-0.9.30.config new file mode 100644 index 000000000..cc6815d07 --- /dev/null +++ b/target/xtensa/uClibc-0.9.30.config @@ -0,0 +1,245 @@ +# +# Automatically generated make config: don't edit +# Thu Jan 23 14:50:00 2009 +# +# TARGET_alpha is not set +# TARGET_arm is not set +# TARGET_avr32 is not set +# TARGET_bfin is not set +# TARGET_cris is not set +# TARGET_e1 is not set +# TARGET_frv is not set +# TARGET_h8300 is not set +# TARGET_hppa is not set +# TARGET_i386 is not set +# TARGET_i960 is not set +# TARGET_ia64 is not set +# TARGET_m68k is not set +# TARGET_microblaze is not set +# TARGET_mips is not set +# TARGET_nios is not set +# TARGET_nios2 is not set +# TARGET_powerpc is not set +# TARGET_sh is not set +# TARGET_sh64 is not set +# TARGET_sparc is not set +# TARGET_v850 is not set +# TARGET_vax is not set +# TARGET_x86_64 is not set +TARGET_xtensa=y + +# +# Target Architecture Features and Options +# +TARGET_ARCH="xtensa" +FORCE_OPTIONS_FOR_ARCH=y +# ARCH_LITTLE_ENDIAN is not set +# ARCH_BIG_ENDIAN is not set +# ARCH_WANTS_LITTLE_ENDIAN is not set +# ARCH_WANTS_BIG_ENDIAN is not set + +# +# Using ELF file format +# +ARCH_HAS_MMU=y +ARCH_USE_MMU=y +UCLIBC_HAS_FLOATS=y +UCLIBC_HAS_FPU=y +DO_C99_MATH=y +# UCLIBC_HAS_FENV is not set +UCLIBC_HAS_LONG_DOUBLE_MATH=y +KERNEL_HEADERS="/usr/src/linux/include" +HAVE_DOT_CONFIG=y + +# +# General Library Settings +# +# HAVE_NO_PIC is not set +DOPIC=y +# ARCH_HAS_NO_SHARED is not set +# ARCH_HAS_NO_LDSO is not set +HAVE_SHARED=y +# FORCE_SHAREABLE_TEXT_SEGMENTS is not set +LDSO_LDD_SUPPORT=y +LDSO_CACHE_SUPPORT=y +# LDSO_PRELOAD_FILE_SUPPORT is not set +LDSO_BASE_FILENAME="ld.so" +# UCLIBC_STATIC_LDCONFIG is not set +# LDSO_RUNPATH is not set +UCLIBC_CTOR_DTOR=y +# LDSO_GNU_HASH_SUPPORT is not set +# HAS_NO_THREADS is not set +UCLIBC_HAS_THREADS=y +PTHREADS_DEBUG_SUPPORT=y +LINUXTHREADS_OLD=y +UCLIBC_HAS_SYSLOG=y +UCLIBC_HAS_LFS=y +# MALLOC is not set +# MALLOC_SIMPLE is not set +MALLOC_STANDARD=y +MALLOC_GLIBC_COMPAT=y +UCLIBC_DYNAMIC_ATEXIT=y +# COMPAT_ATEXIT is not set +UCLIBC_SUSV3_LEGACY=y +UCLIBC_SUSV3_LEGACY_MACROS=y +# UCLIBC_HAS_STUBS is not set +UCLIBC_HAS_SHADOW=y +# UCLIBC_HAS_PROGRAM_INVOCATION_NAME is not set +UCLIBC_HAS___PROGNAME=y +UCLIBC_HAS_PTY=y +UNIX98PTY_ONLY=y +# UCLIBC_HAS_GETPT is not set +ASSUME_DEVPTS=y +UCLIBC_HAS_TM_EXTENSIONS=y +UCLIBC_HAS_TZ_CACHING=y +UCLIBC_HAS_TZ_FILE=y +UCLIBC_HAS_TZ_FILE_READ_MANY=y +UCLIBC_TZ_FILE_PATH="/etc/TZ" + +# +# Advanced Library Settings +# +UCLIBC_PWD_BUFFER_SIZE=256 +UCLIBC_GRP_BUFFER_SIZE=256 +UCLIBC_HAS_NONREENTRANT=y + +# +# Networking Support +# + +UCLIBC_LINUX_MODULE_24=y +UCLIBC_LINUX_SPECIFIC=y +UCLIBC_HAS_GNU_ERROR=y +UCLIBC_BSD_SPECIFIC=y +UCLIBC_HAS_BSD_ERR=y +UCLIBC_HAS_OBSOLETE_BSD_SIGNAL=y +UCLIBC_HAS_OBSOLETE_SYSV_SIGNAL=y +# UCLIBC_NTP_LEGACY is not set +# UCLIBC_SV4_DEPRECATED is not set +UCLIBC_HAS_REALTIME=y +UCLIBC_HAS_ADVANCED_REALTIME=y +UCLIBC_HAS_EPOLL=y +UCLIBC_HAS_XATTR=y +UCLIBC_HAS_PROFILING=y +UCLIBC_HAS_CRYPT_IMPL=y +UCLIBC_HAS_CRYPT=y +UCLIBC_HAS_NETWORK_SUPPORT=y +UCLIBC_HAS_SOCKET=y +UCLIBC_HAS_IPV4=y +UCLIBC_HAS_IPV6=y +UCLIBC_HAS_RPC=y +UCLIBC_HAS_FULL_RPC=y +UCLIBC_HAS_REENTRANT_RPC=y +UCLIBC_USE_NETLINK=y +# UCLIBC_SUPPORT_AI_ADDRCONFIG is not set +# UCLIBC_HAS_BSD_RES_CLOSE is not set + + +# +# String and Stdio Support +# +# UCLIBC_HAS_STRING_GENERIC_OPT is not set +# UCLIBC_HAS_STRING_ARCH_OPT is not set +UCLIBC_HAS_CTYPE_TABLES=y +UCLIBC_HAS_CTYPE_SIGNED=y +# UCLIBC_HAS_CTYPE_UNSAFE is not set +# UCLIBC_HAS_CTYPE_CHECKED is not set +# UCLIBC_HAS_CTYPE_ENFORCED is not set +# UCLIBC_HAS_WCHAR is not set +# UCLIBC_HAS_LOCALE is not set +UCLIBC_HAS_HEXADECIMAL_FLOATS=y +UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y +# USE_OLD_VFPRINTF is not set +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 +UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y +# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set +# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set +UCLIBC_HAS_STDIO_BUFSIZ_4096=y +# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set +UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set +# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set +# UCLIBC_HAS_STDIO_GETC_MACRO is not set +# UCLIBC_HAS_STDIO_PUTC_MACRO is not set +UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y +# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set +UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y +UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y +UCLIBC_HAS_PRINTF_M_SPEC=y +UCLIBC_HAS_ERRNO_MESSAGES=y +# UCLIBC_HAS_SYS_ERRLIST is not set +UCLIBC_HAS_SIGNUM_MESSAGES=y +# UCLIBC_HAS_SYS_SIGLIST is not set +UCLIBC_HAS_GNU_GETOPT=y +# UCLIBC_HAS_GNU_GETSUBOPT is not set + +# +# Big and Tall +# +UCLIBC_HAS_REGEX=y +# UCLIBC_HAS_REGEX_OLD is not set +UCLIBC_HAS_FNMATCH=y +# UCLIBC_HAS_FNMATCH_OLD is not set +# UCLIBC_HAS_WORDEXP is not set +UCLIBC_HAS_FTW=y +UCLIBC_HAS_GLOB=y +UCLIBC_HAS_GNU_GLOB=y + +# +# Library Installation Options +# +SHARED_LIB_LOADER_PREFIX="/lib" +RUNTIME_PREFIX="/" +DEVEL_PREFIX="/usr/" + +# +# Security options +# +# UCLIBC_BUILD_PIE is not set +UCLIBC_HAS_ARC4RANDOM=y +# HAVE_NO_SSP is not set +# UCLIBC_HAS_SSP is not set +UCLIBC_BUILD_RELRO=y +UCLIBC_BUILD_NOW=y +# UCLIBC_BUILD_NOEXECSTACK is not set + +# +# uClibc development/debugging options +# +CROSS_COMPILER_PREFIX="" +UCLIBC_EXTRA_CFLAGS="" +# DODEBUG is not set +# DODEBUG_PT is not set +DOSTRIP=y +# DOASSERTS is not set +# SUPPORT_LD_DEBUG is not set +# SUPPORT_LD_DEBUG_EARLY is not set +# UCLIBC_MALLOC_DEBUGGING is not set +WARNINGS="-Wall" +# EXTRA_WARNINGS is not set +# DOMULTI is not set +# UCLIBC_MJN3_ONLY is not set + +# USE_BX is not set +# CONFIG_GENERIC_ARM is not set +# CONFIG_ARM610 is not set +# CONFIG_ARM710 is not set +# CONFIG_ARM7TDMI is not set +# CONFIG_ARM720T is not set +# CONFIG_ARM920T is not set +# CONFIG_ARM922T is not set +# CONFIG_ARM926T is not set +# CONFIG_ARM10T is not set +# CONFIG_ARM1136JF_S is not set +# CONFIG_ARM1176JZ_S is not set +# CONFIG_ARM1176JZF_S is not set +# CONFIG_ARM_CORTEX_M3 is not set +# CONFIG_ARM_CORTEX_M1 is not set +# CONFIG_ARM_SA110 is not set +# CONFIG_ARM_SA1100 is not set +# CONFIG_ARM_XSCALE is not set +# CONFIG_ARM_IWMMXT is not set diff --git a/target/xtensa/uClibc.config b/target/xtensa/uClibc.config new file mode 100644 index 000000000..546a04534 --- /dev/null +++ b/target/xtensa/uClibc.config @@ -0,0 +1,190 @@ +# +# Automatically generated make config: don't edit +# Thu Jan 10 00:46:51 2008 +# +# TARGET_alpha is not set +# TARGET_arm is not set +# TARGET_avr32 is not set +# TARGET_bfin is not set +# TARGET_cris is not set +# TARGET_e1 is not set +# TARGET_frv is not set +# TARGET_h8300 is not set +# TARGET_hppa is not set +# TARGET_i386 is not set +# TARGET_i960 is not set +# TARGET_ia64 is not set +# TARGET_m68k is not set +# TARGET_microblaze is not set +# TARGET_mips is not set +# TARGET_nios is not set +# TARGET_nios2 is not set +# TARGET_powerpc is not set +# TARGET_sh is not set +# TARGET_sh64 is not set +# TARGET_sparc is not set +# TARGET_v850 is not set +# TARGET_vax is not set +# TARGET_x86_64 is not set +TARGET_xtensa=y + +# +# Target Architecture Features and Options +# +TARGET_ARCH="xtensa" +TARGET_SUBARCH="" + +# +# Using ELF file format +# +ARCH_HAS_MMU=y +ARCH_USE_MMU=y +UCLIBC_HAS_FLOATS=y +UCLIBC_HAS_FPU=y +DO_C99_MATH=y +KERNEL_HEADERS="/usr/src/linux/include" +HAVE_DOT_CONFIG=y + +# +# General Library Settings +# +# HAVE_NO_PIC is not set +DOPIC=y +# HAVE_NO_SHARED is not set +# ARCH_HAS_NO_LDSO is not set +HAVE_SHARED=y +# FORCE_SHAREABLE_TEXT_SEGMENTS is not set +LDSO_LDD_SUPPORT=y +LDSO_CACHE_SUPPORT=y +# LDSO_PRELOAD_FILE_SUPPORT is not set +LDSO_BASE_FILENAME="ld.so" +# UCLIBC_STATIC_LDCONFIG is not set +# LDSO_RUNPATH is not set +UCLIBC_CTOR_DTOR=y +# HAS_NO_THREADS is not set +UCLIBC_HAS_THREADS=y +PTHREADS_DEBUG_SUPPORT=y +LINUXTHREADS_OLD=y +UCLIBC_HAS_LFS=y +# MALLOC is not set +# MALLOC_SIMPLE is not set +MALLOC_STANDARD=y +MALLOC_GLIBC_COMPAT=y +UCLIBC_DYNAMIC_ATEXIT=y +# COMPAT_ATEXIT is not set +# UCLIBC_SUSV3_LEGACY is not set +UCLIBC_SUSV3_LEGACY_MACROS=y +UCLIBC_HAS_SHADOW=y +# UCLIBC_HAS_PROGRAM_INVOCATION_NAME is not set +UCLIBC_HAS___PROGNAME=y +# UNIX98PTY_ONLY is not set +ASSUME_DEVPTS=y +UCLIBC_HAS_TM_EXTENSIONS=y +UCLIBC_HAS_TZ_CACHING=y +UCLIBC_HAS_TZ_FILE=y +UCLIBC_HAS_TZ_FILE_READ_MANY=y +UCLIBC_TZ_FILE_PATH="/etc/TZ" + +# +# Advanced Library Settings +# +UCLIBC_PWD_BUFFER_SIZE=256 +UCLIBC_GRP_BUFFER_SIZE=256 + +# +# Networking Support +# +UCLIBC_HAS_IPV6=y +UCLIBC_HAS_RPC=y +UCLIBC_HAS_FULL_RPC=y +UCLIBC_HAS_REENTRANT_RPC=y +# UCLIBC_USE_NETLINK is not set +# UCLIBC_HAS_BSD_RES_CLOSE is not set + +# +# String and Stdio Support +# +UCLIBC_HAS_STRING_GENERIC_OPT=y +UCLIBC_HAS_STRING_ARCH_OPT=y +UCLIBC_HAS_CTYPE_TABLES=y +UCLIBC_HAS_CTYPE_SIGNED=y +# UCLIBC_HAS_CTYPE_UNSAFE is not set +UCLIBC_HAS_CTYPE_CHECKED=y +# UCLIBC_HAS_CTYPE_ENFORCED is not set +# UCLIBC_HAS_WCHAR is not set +# UCLIBC_HAS_LOCALE is not set +UCLIBC_HAS_HEXADECIMAL_FLOATS=y +UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y +# USE_OLD_VFPRINTF is not set +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 +UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y +# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set +# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set +UCLIBC_HAS_STDIO_BUFSIZ_4096=y +# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set +UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set +# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set +UCLIBC_HAS_STDIO_GETC_MACRO=y +UCLIBC_HAS_STDIO_PUTC_MACRO=y +UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y +# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set +UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y +UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y +UCLIBC_HAS_PRINTF_M_SPEC=y +UCLIBC_HAS_ERRNO_MESSAGES=y +# UCLIBC_HAS_SYS_ERRLIST is not set +UCLIBC_HAS_SIGNUM_MESSAGES=y +# UCLIBC_HAS_SYS_SIGLIST is not set +UCLIBC_HAS_GNU_GETOPT=y +UCLIBC_HAS_GNU_GETSUBOPT=y + +# +# Big and Tall +# +UCLIBC_HAS_REGEX=y +UCLIBC_HAS_REGEX_OLD=y +UCLIBC_HAS_FNMATCH=y +UCLIBC_HAS_FNMATCH_OLD=y +# UCLIBC_HAS_WORDEXP is not set +UCLIBC_HAS_FTW=y +UCLIBC_HAS_GLOB=y +UCLIBC_HAS_GNU_GLOB=y + +# +# Library Installation Options +# +SHARED_LIB_LOADER_PREFIX="/lib" +RUNTIME_PREFIX="/" +DEVEL_PREFIX="/usr/" + +# +# Security options +# +# UCLIBC_HAS_ARC4RANDOM is not set +# HAVE_NO_SSP is not set +# UCLIBC_HAS_SSP is not set +UCLIBC_BUILD_RELRO=y +UCLIBC_BUILD_NOW=y +# UCLIBC_BUILD_NOEXECSTACK is not set + +# +# uClibc development/debugging options +# +CROSS_COMPILER_PREFIX="" +UCLIBC_EXTRA_CFLAGS="" +# DODEBUG is not set +# DOSTRIP is not set +# DODEBUG_PT is not set +# DOASSERTS is not set +SUPPORT_LD_DEBUG=y +# SUPPORT_LD_DEBUG_EARLY is not set +# UCLIBC_MALLOC_DEBUGGING is not set +WARNINGS="-Wall" +EXTRA_WARNINGS=y +# DOMULTI is not set +# UCLIBC_MJN3_ONLY is not set diff --git a/target/xtensa/xt-buildroot-overlay-install b/target/xtensa/xt-buildroot-overlay-install new file mode 100644 index 000000000..d2afce124 --- /dev/null +++ b/target/xtensa/xt-buildroot-overlay-install @@ -0,0 +1,488 @@ +#!/bin/sh +# Not every host installs perl at the same location, handle many locations: +PATH=/usr/bin:/usr/local/bin:$PATH +exec perl -x -S $0 ${1+"$@"} +exit $? +#!perl -w +#line 8 + +# xt-buildroot-overlay-install [-t overlay_tarball] [-b buildroot_dir] \ +# [-k kernel_dir] \ +# [-c config_name] [-l long_name] [-f] [--help] +# +# Creates individual overlay tarballs for gcc, binutils, gdb, and +# the Linux kernel, out of the Xtensa Configuration Overlay tarball from +# a Tensilica Core Package. And installs these individual tarballs +# at the appropriate locations within a buildroot source tree. +# +# The Xtensa configuration overlay tarball is located in: +# <xtensa_root>/src/xtensa-config-overlay.tar.gz +# where <xtensa_root> is the path to the Tensilica Core Package. +# +# Copyright (c) 2003-2009 by Tensilica Inc. +# History: +# 2007-NOV-08 1.0 meg Initial version +# 2007-NOV-21 1.1 meg Add -k parameter +# 2007-DEC-06 1.2 meg Make -k and -b optional, check overlay sw vers. +# 2008-FEB-27 1.3 meg Accept Xtensa Tools RB-2008.3 overlays + +$progvers = "1.3"; +$progname = $0; +$progname =~ s|.*[/\\:]||; + + +###################################################################### +# +# Parse cmdline +# + +my $overlay_tarball = undef; +my $buildroot_dir = undef; +my $kernel_dir = undef; +my $config_name = undef; +my $config_long_name = undef; +my $force_clobber = 0; +my $prompt = 1; # undocumented option + +sub usage { + print "$progname version $progvers\n" + ."Usage: $progname <parameters> [<options>]\n" + ."Where <parameters> are:\n" + ." -t file.tgz Specify path to the Xtensa Linux overlay tarball, typically\n" + ." <xtensa_root>/src/xtensa-config-overlay.tar.gz\n" + ." -b dir Path to the base of the buildroot source tree, in which\n" + ." package specific overlay tarballs get installed.\n" + ." -k dir Path to the base of the Linux kernel source tree, in which\n" + ." the Linux kernel specific overlay gets installed.\n" + ." -c config_name Name for the Xtensa processor configuration as it will be\n" + ." known to the open source community. Must be a lowercase\n" + ." identifier, starting with a letter, consisting of letters\n" + ." and numbers and underscores, not ending with underscore\n" + ." and not containing consecutive underscores. For examples:\n" + ." dc232b , dc232b_be , mmubasele , fsf , s5000 .\n" + ." -l long_name Long name for the Xtensa processor configuration, human-\n" + ." readable with spaces etc allowed (must be quoted).\n" + ." For example: 'Diamond 232L Standard Core Rev.B (LE)'\n" + ." Try to keep it within approximately 40 characters.\n" + ."And <options> are:\n" + ." -f If package specific overlay tarballs already exist in\n" + ." the destination source tree, overwrite them without asking.\n" + ." --help Show this usage message.\n"; +} + +# Get arguments: +if (!@ARGV) { + usage(); + exit 0; +} +while( defined($_ = shift) ) { + if( /^-[tbclk]$/ ) { # option taking an argument + my $arg = shift; + if( !defined($arg) ) { + print STDERR "$progname: ERROR: missing parameter after '$_' option\n\n"; + usage(); + exit 1; + } + $overlay_tarball = $arg if $_ eq "-t"; + $buildroot_dir = $arg if $_ eq "-b"; + $kernel_dir = $arg if $_ eq "-k"; + $config_name = $arg if $_ eq "-c"; + $config_long_name = $arg if $_ eq "-l"; + next; + } + if( /^-f$/ ) { + $force_clobber = 1; + next; + } + if( /^--[m-t]{8}$/ && /[new]([wow])([pup])[fur]\1[maze]\2[tuff]/ ) { + $prompt = 0; + next; + } + if( /^-(h|help|\-h|\-help|\?)$/i ) { + usage(); + exit 0; + } + print STDERR "$progname: ERROR: unrecognized option or argument '$_'\n\n"; + usage(); + exit 1; +} + + +###################################################################### +# +# Validate cmdline arguments +# + +ErrorU("missing -c argument (core name)") + unless defined($config_name); +# Try to enforce reasonable names: +ErrorU("-c: malformed core name '$config_name' (must be lowercase, letter followed by letters/digits, may contain underscore separators)") + unless $config_name =~ /^[a-z][a-z0-9]*(_[a-z0-9]+)*$/; +ErrorU("-c: core name too short '$config_name'") + unless length($config_name) >= 2; +ErrorU("-c: core name too long '$config_name'") + unless length($config_name) <= 16; + + +ErrorU("missing -l argument (core long name)") + unless defined($config_long_name); +$config_long_name =~ s/^\s+//; # trim extra whitespace... +$config_long_name =~ s/\s+$//; +$config_long_name =~ s/\s+/ /g; +# Try to enforce reasonable names: +ErrorU("-l: invalid (non-ASCII-printable) characters in core long name '$config_long_name'") + unless $config_long_name =~ /^[\x20-\x7E]+$/; +ErrorU("-l: disallowed characters (\"\'\\) in core long name '$config_long_name'") + if $config_long_name =~ /[\'\"\\]/; +ErrorU("-l: core long name too short '$config_long_name'") + unless length($config_long_name) >= 5; +ErrorU("-l: core long name too long '$config_long_name'") + unless length($config_long_name) <= 60; + + +#ErrorU("missing -b argument (buildroot source tree directory)") +# unless defined($buildroot_dir); +if (defined($buildroot_dir)) { + ErrorU("-b: not a directory: $buildroot_dir") + unless -d $buildroot_dir; + foreach my $p ("toolchain/gcc", "toolchain/binutils", "toolchain/gdb", "target/xtensa") { + ErrorU("-b: not a buildroot directory: missing $buildroot_dir/$p") + unless -d $buildroot_dir . "/" . $p; + } +} + + +#ErrorU("missing -k argument (Linux kernel source tree directory)") +# unless defined($kernel_dir); +if (defined($kernel_dir)) { + ErrorU("-k: not a directory: $kernel_dir") + unless -d $kernel_dir; + foreach my $p ("kernel", "arch/xtensa/kernel", "include/asm-xtensa") { + ErrorU("-k: not a Linux kernel directory: missing $kernel_dir/$p") + unless -d $kernel_dir . "/" . $p; + } +} + + +if (!defined($buildroot_dir) and !defined($kernel_dir)) { + print STDERR "$progname: WARNING:\n"; + print STDERR "$progname: WARNING: Test run only, NOTHING WILL BE INSTALLED\n"; + print STDERR "$progname: WARNING: (use -b and -k to specify install destination)\n"; + print STDERR "$progname: WARNING:\n"; +} + + +my @ovpaths = ( "/src/xtensa-config-overlay.tar.gz", + "/xtensa-elf/src/linux/misc/linux-overlay.tar.gz" ); +if (!defined($overlay_tarball)) { + # Try to locate the overlay tarball based on XTENSA_SYSTEM and XTENSA_CORE + # settings: + my $xtensa_root = `xt-xcc --show-config=config 2>/dev/null`; + $xtensa_root = "" unless defined($xtensa_root); + chomp($xtensa_root); + if ($xtensa_root ne "") { + ($overlay_tarball) = grep(-f $xtensa_root.$_, @ovpaths); + if (!defined($overlay_tarball)) { + ErrorU("Xtensa configuration overlay tarball not found: ".$xtensa_root.$ovpaths[0]) + } + } else { + ErrorU("missing -t argument (Xtensa configuration overlay tarball filename)\n" + ."and no default Xtensa Core Package defined in the environment"); + } +} else { + foreach my $p ("", @ovpaths) { + if (-f $overlay_tarball.$p) { + $overlay_tarball .= $p; + last; + } + } + ErrorU("-t: file not found: $overlay_tarball") unless -f $overlay_tarball; +} + + +###################################################################### +# +# Misc +# + +my $overlay_unpacked = 0; +my $ovdir; + +sub cleanup { + if ($overlay_unpacked) { + system("rm -rf '$ovdir' 2>/dev/null"); + } +} + +sub ErrorEmit { + my ($msg,$usage) = @_; + $msg =~ s|\n|"\n${progname}: ERROR: "|ge; + print STDERR "$progname: ERROR: $msg\n"; + if ($usage) { + print "\n"; + usage(); + } + cleanup(); + exit 1; +} +sub ErrorU { ErrorEmit(shift,1); } +sub Error { ErrorEmit(shift); } + + +# Read specified file (as binary), returning contents. +# +sub readfile { + my ($filename) = @_; + # Read the file: + open(INFILE,"<$filename") or Error("error reading from '$filename': $!"); + my $savesep = $/; + undef $/; + my $file = <INFILE>; + $/ = $savesep; + close(INFILE); + $file; +} + +# Write specified file (as binary) with first argument (string). +# +sub writefile { + my ($filename, $file) = @_; + # Read the file: + open(INFILE,">$filename") or Error("error writing to '$filename': $!"); + print INFILE $file; + close(INFILE) or Error("error closing file '$filename': $!"); +} + + +###################################################################### +# +# Determine a temporary directory. +# + +my $tmpdir = "/tmp"; +if (defined($ENV{"TMP"}) and -d $ENV{"TMP"}) { + $tmpdir = $ENV{"TMP"}; +} elsif (defined($ENV{"TEMP"}) and -d $ENV{"TEMP"}) { + $tmpdir = $ENV{"TEMP"}; +} + + +###################################################################### +# +# Unpack the general overlay tarball +# + +my $user = defined($ENV{"USER"}) ? $ENV{"USER"} : "xtensa"; +$ovdir = $tmpdir."/tmp-overlay-${user}-$$"; +mkdir $ovdir or Error("cannot create directory $ovdir"); +$overlay_unpacked = 1; +system("tar xfz '$overlay_tarball' -C '$ovdir'") + and Error("tar failed..."); + + +###################################################################### +# +# Define and sanity check contents of overlay +# + +my $oldpack = -f $ovdir."/xtensa-elf/src/linux/misc/core.h"; +my $pf1 = ($oldpack ? "src/" : ""); +my $pf2 = ($oldpack ? "xtensa-elf/src/linux/misc/" : "config/"); + +my @packages = ( + ["binutils", "toolchain/binutils", + ["${pf1}/binutils/xtensa-modules.c", "bfd/"], + ["${pf1}/binutils/xtensa-config.h", "include/"], + #["${pf1}/binutils/xtensa-config.sh", "ld/emulparams/"], + ], + ["gcc", "toolchain/gcc", + ["${pf1}/gcc/xtensa-config.h", "include/"], + ], + ["gdb", "toolchain/gdb", + ["${pf1}/gdb/xtensa-modules.c", "bfd/"], + ["${pf1}/gdb/xtensa-config.h", "include/"], + ["${pf1}/gdb/xtensa-config.c", "gdb/"], + ["${pf1}/gdb/xtensa-regmap.c", "gdb/gdbserver/"], + ["${pf1}/gdb/xtensa-regmap.c", "gdb/gdbserver/xtensa-xtregs.c"], # for GDB 6.8 + ["${pf1}/gdb/xtensa-regmap.c", "gdb/xtensa-xtregs.c"], # for GDB 6.8 + ["${pf1}/gdb/reg-xtensa.dat", "gdb/regformats/"], + ], + ["kernel", "target/xtensa", # ??? + ["${pf2}core.h", "include/asm-xtensa/variant-${config_name}/"], + ["${pf2}tie.h", "include/asm-xtensa/variant-${config_name}/"], + ["${pf2}tie-asm.h", "include/asm-xtensa/variant-${config_name}/"], + ], +); + +# Check that all files are present ... +foreach my $pack (@packages) { + my ($pname, $buildroot_subdir, @files) = @$pack; + print "Checking files for $pname ...\n"; + foreach my $f (@files) { + my ($src, $dst) = @$f; + -f $ovdir."/".$src or Error("missing '$src' in overlay tarball"); + } +} + + +###################################################################### +# +# Extract some useful information +# + +# Extract core name as specified in the build. +my $coreh = readfile($ovdir."/".$pf2."core.h"); + +$coreh =~ /^\s*\#\s*define\s+XCHAL_SW_VERSION\s+(\w+)/m; +my $swversion = $1; +defined($swversion) or Error("missing XCHAL_SW_VERSION in overlay core.h file;\n" + ."overlay is too old, need RB-2008.3 (SW version 7.1.1) or later"); + +$coreh =~ /^\s*\#\s*define\s+XCHAL_CORE_ID\s+"([^"]+)"/m; +my $coreid = $1; +defined($coreid) or Error("missing XCHAL_CORE_ID in overlay core.h file"); + +$coreh =~ /^\s*\#\s*define\s+XCHAL_HW_VERSION_NAME\s+"([^"]+)"/m; +my $hwversion = $1; +defined($hwversion) or Error("missing XCHAL_HW_VERSION_NAME in overlay core.h file"); + + +$swvers_human = sprintf("%u.%u.%u", + $swversion/100000, (($swversion/1000) % 100), ($swversion % 1000)); +my $release = "software version $swvers_human"; +if (-f $ovdir."/release") { + $release = readfile($ovdir."/release"); + chomp($release); +} + + +###################################################################### +# +# Prompt user to be sure this is what he wants to do +# + +# Catch Ctrl-C so we can do a proper cleanup: +sub catch_term { + my $signame = shift; + #print STDERR "whoa!\n"; + cleanup(); + print STDERR "\n$progname: Cleaned up.\n"; + exit 3; +} +$SIG{TERM} = \&catch_term; +$SIG{HUP} = \&catch_term; +$SIG{INT} = \&catch_term; + +$| = 1; +print "\n", + "About to generate package-specific overlay tarballs for the following:\n", + "\n", + " Xtensa processor short name: $config_name\n"; +print " This short name overrides the name specified in the XPG: $coreid\n" if $coreid ne $config_name; +#print " Please ensure that's the name you want. If submitted to the open source\n", +# " community, it can be a hassle to change later on.\n"; +print " Xtensa processor description: $config_long_name\n", + " Targeting Xtensa HW version: $hwversion\n", + " Xtensa configuration overlay: $overlay_tarball\n", + " (release of overlay): $release\n", + " Destination buildroot dir: ".(defined($buildroot_dir)?$buildroot_dir:"(none, not installed)")."\n", + " Destination Linux kernel dir: ".(defined($kernel_dir)?$kernel_dir:"(none, not installed)")."\n", + "\n", + "Are you sure? (y/n) "; +if ($prompt) { + my $line = <STDIN>; + chomp($line); + if ($line !~ /^y(es)?$/i) { + print "\nInstallation aborted.\n"; + cleanup(); + exit 2; + } +} else { + print "YES [no prompt]\n"; +} +print "\n"; + + +###################################################################### +# +# Now generate the tarballs +# + +# Now generate each tarball ... +foreach my $pack (@packages) { + my ($pname, $buildroot_subdir, @files) = @$pack; + my $tarname = "${pname}-xtensa_${config_name}.tgz"; + my $fulltarname; + if (defined($buildroot_dir)) { + my $tarsubname = $buildroot_subdir . "/" . $tarname; + print "Generating and installing $tarsubname ...\n"; + $fulltarname = $buildroot_dir . "/" . $tarsubname; + } else { + print "Generating $tarname ...\n"; + $fulltarname = $ovdir . "/" . $tarname; + } + if (-e $fulltarname) { + if ($force_clobber or !defined($buildroot_dir)) { + unlink($fulltarname) or Error("could not delete '$fulltarname': $!"); + } else { + Error("destination tarball already exists: '$fulltarname'"); + } + } + my $pdir = $ovdir."/tmp-".$pname; + system("rm -fr '${pdir}' 2>/dev/null"); + mkdir $pdir or Error("cannot create directory $pdir"); + foreach my $f (@files) { + my ($src, $dst) = @$f; + # If $dst ends in / , take filename from $src : + if ($dst =~ m|/$|) { + my $fname = $src; + $fname =~ s|^.*/||; + $dst .= $fname; + } + # Ensure destination directory exists: + my $dstdir = $pdir; + while ($dst =~ s|^([^/]+)/+||) { + $dstdir .= "/" . $1; + mkdir($dstdir); + } + # Read file: + my $content = readfile($ovdir."/".$src); + + # Adjust contents of file. + # Fix-up typo: + $content =~ s/XCHAL_SA_(NCP|CP\d+)_/XCHAL_$1_SA_/g; + # Update core name info: + my $iscore = ($content =~ s/^(\s*\#\s*define\s+XCHAL_CORE_ID\s+)"[^"]+"/$1"$config_name"/mg); + $iscore or $content =~ s{^(\s*\#\s*define\s+XCHAL_INST_FETCH_WIDTH\s+\S+\s*(/\*[^\*]*\*/)?\s*$)} + {$1\n\#undef XCHAL_CORE_ID\n\#define XCHAL_CORE_ID\t\t\t"$config_name"\n}smg; + # Update core description info: + $content =~ s/^(\s*\#\s*define\s+XCHAL_CORE_DESCRIPTION\s+)"[^"]+"/$1"$config_long_name"/mg + or $content =~ s{^(\s*\#\s*define\s+XCHAL_CORE_ID\s+\S+\s*(/\*[^\*]*\*/)?\s*$)} + {"$1\n" . ($iscore ? "" : "\n\#undef XCHAL_CORE_DESCRIPTION\n") + . "\#define XCHAL_CORE_DESCRIPTION\t\t\"${config_long_name}\""}smge; + + # Write (possibly modified) file: + writefile($dstdir."/".$dst, $content); + } + my $tarcmd = "tar cfz '${fulltarname}' -C '${pdir}' ."; + system($tarcmd) and Error("failed executing: $tarcmd"); + + # Install Linux kernel overlay: + if ($pname eq "kernel" and defined($kernel_dir)) { + print "Installing Linux kernel overlay from $tarname ...\n"; + my $untarcmd = "tar xfz '${fulltarname}' -C '${kernel_dir}' ."; + system($untarcmd) and Error("failed executing: $tarcmd"); + } + # Possible TODO: update arch/xtensa/{Kconfig,Makefile} to add this config? +} + + +###################################################################### +# +# The End +# + +cleanup(); +print "Done.\n"; +exit 0; + diff --git a/toolchain/Config.in.2 b/toolchain/Config.in.2 index e9fe8521c..5df04e01b 100644 --- a/toolchain/Config.in.2 +++ b/toolchain/Config.in.2 @@ -27,12 +27,13 @@ config BR2_INET_RPC built with RPC support then enable this option. config BR2_ENABLE_LOCALE - bool "Enable locale/gettext/i18n support?" + bool "Enable toolchain locale/i18n support?" + select BR2_USE_WCHAR help If you are building your own toolchain and you want to - enable locale/gettext/i18n support then enable this option. + enable locale/i18n support then enable this option. If you have an external binary toolchain that has been - built with locale/gettext/i18n support then enable this option. + built with locale/i18n support then enable this option. config BR2_ENABLE_LOCALE_PREGENERATED bool "Use pregenerated locale data?" @@ -46,7 +47,6 @@ config BR2_ENABLE_LOCALE_PREGENERATED config BR2_ENABLE_LOCALE_PURGE bool "Purge unwanted locales" - depends on BR2_ENABLE_LOCALE help Explicitly specify what locales to install on target. If N then all locales supported by packages are installed. diff --git a/toolchain/binutils/binutils.mk b/toolchain/binutils/binutils.mk index 66f393efd..bcfbe7451 100644 --- a/toolchain/binutils/binutils.mk +++ b/toolchain/binutils/binutils.mk @@ -55,6 +55,11 @@ BINUTILS_SITE:=$(VENDOR_SITE) BINUTILS_PATCH_DIR:=toolchain/binutils/ext_source/$(VENDOR_PATCH_DIR)/$(BINUTILS_OFFICIAL_VERSION) endif +ifneq ($(filter xtensa%,$(ARCH)),) +include target/xtensa/patch.in +BINUTILS_PATCH_EXTRA:=$(call XTENSA_PATCH,binutils,$(BINUTILS_PATCH_DIR),. ..) +endif + BINUTILS_SOURCE:=binutils-$(BINUTILS_OFFICIAL_VERSION).tar.bz2 BINUTILS_DIR:=$(TOOL_BUILD_DIR)/binutils-$(BINUTILS_OFFICIAL_VERSION) BINUTILS_CAT:=$(BZCAT) @@ -76,7 +81,7 @@ $(BINUTILS_DIR)/.unpacked: $(DL_DIR)/$(BINUTILS_SOURCE) binutils-patched: $(BINUTILS_DIR)/.patched $(BINUTILS_DIR)/.patched: $(BINUTILS_DIR)/.unpacked # Apply appropriate binutils patches. - toolchain/patch-kernel.sh $(BINUTILS_DIR) $(BINUTILS_PATCH_DIR) \*.patch + toolchain/patch-kernel.sh $(BINUTILS_DIR) $(BINUTILS_PATCH_DIR) \*.patch $(BINUTILS_PATCH_EXTRA) touch $@ $(BINUTILS_DIR1)/.configured: $(BINUTILS_DIR)/.patched diff --git a/toolchain/gcc/gcc-uclibc-4.x.mk b/toolchain/gcc/gcc-uclibc-4.x.mk index 5770081b3..e9249c1c5 100644 --- a/toolchain/gcc/gcc-uclibc-4.x.mk +++ b/toolchain/gcc/gcc-uclibc-4.x.mk @@ -50,6 +50,11 @@ endif # Snapshot patch endif # Not a snapshot endif # BR2_TOOLCHAIN_BUILDROOT +ifneq ($(filter xtensa%,$(ARCH)),) +include target/xtensa/patch.in +GCC_PATCH_EXTRA:=$(call XTENSA_PATCH,gcc,$(GCC_PATCH_DIR),. ..) +endif + GCC_SOURCE:=gcc-$(GCC_OFFICIAL_VERSION).tar.bz2 GCC_DIR:=$(TOOL_BUILD_DIR)/gcc-$(GCC_OFFICIAL_VERSION) GCC_CAT:=$(BZCAT) @@ -164,7 +169,7 @@ $(GCC_DIR)/.unpacked: $(DL_DIR)/$(GCC_SOURCE) gcc-patched: $(GCC_DIR)/.patched $(GCC_DIR)/.patched: $(GCC_DIR)/.unpacked # Apply any files named gcc-*.patch from the source directory to gcc - toolchain/patch-kernel.sh $(GCC_DIR) $(GCC_PATCH_DIR) \*.patch + toolchain/patch-kernel.sh $(GCC_DIR) $(GCC_PATCH_DIR) \*.patch $(GCC_PATCH_EXTRA) # Note: The soft float situation has improved considerably with gcc 3.4.x. # We can dispense with the custom spec files, as well as libfloat for the arm case. diff --git a/toolchain/gdb/gdb.mk b/toolchain/gdb/gdb.mk index ba8a1f273..29c4c9c0b 100644 --- a/toolchain/gdb/gdb.mk +++ b/toolchain/gdb/gdb.mk @@ -19,6 +19,11 @@ GDB_SITE:=$(BR2_GNU_MIRROR)/gdb GDB_PATCH_DIR:=toolchain/gdb/$(GDB_OFFICIAL_VERSION) endif +ifneq ($(filter xtensa%,$(ARCH)),) +include target/xtensa/patch.in +GDB_PATCH_EXTRA:=$(call XTENSA_PATCH,gdb,$(GDB_PATCH_DIR),. ..) +endif + GDB_DIR:=$(TOOL_BUILD_DIR)/gdb-$(GDB_OFFICIAL_VERSION) $(DL_DIR)/$(GDB_SOURCE): @@ -33,7 +38,7 @@ ifeq ($(GDB_VERSION),snapshot) tar jtf $(DL_DIR)/$(GDB_SOURCE) | head -1 | cut -d"/" -f1) ln -sf $(TOOL_BUILD_DIR)/$(shell tar jtf $(DL_DIR)/$(GDB_SOURCE) | head -1 | cut -d"/" -f1) $(GDB_DIR) endif - toolchain/patch-kernel.sh $(GDB_DIR) $(GDB_PATCH_DIR) \*.patch + toolchain/patch-kernel.sh $(GDB_DIR) $(GDB_PATCH_DIR) \*.patch $(GDB_PATCH_EXTRA) $(CONFIG_UPDATE) $(@D) touch $@ diff --git a/toolchain/kernel-headers/Config.in b/toolchain/kernel-headers/Config.in index f1103f259..689c85dd5 100644 --- a/toolchain/kernel-headers/Config.in +++ b/toolchain/kernel-headers/Config.in @@ -49,9 +49,9 @@ config BR2_KERNEL_HEADERS_RT config BR2_DEFAULT_KERNEL_HEADERS string default "2.6.26.8" if BR2_KERNEL_HEADERS_2_6_26 - default "2.6.27.27" if BR2_KERNEL_HEADERS_2_6_27 + default "2.6.27.28" if BR2_KERNEL_HEADERS_2_6_27 default "2.6.28.10" if BR2_KERNEL_HEADERS_2_6_28 default "2.6.29.6" if BR2_KERNEL_HEADERS_2_6_29 - default "2.6.30.2" if BR2_KERNEL_HEADERS_2_6_30 + default "2.6.30.3" if BR2_KERNEL_HEADERS_2_6_30 default "2.6" if BR2_KERNEL_HEADERS_SNAP diff --git a/toolchain/patch-kernel.sh b/toolchain/patch-kernel.sh index e2e89486d..76cb9f753 100755 --- a/toolchain/patch-kernel.sh +++ b/toolchain/patch-kernel.sh @@ -21,7 +21,14 @@ if [ ! -d "${patchdir}" ] ; then fi for i in `cd ${patchdir}; ls -d ${patchpattern} 2> /dev/null` ; do - case "$i" in + apply="patch -p1 -E -d" + uncomp_parm="" + if [ -d "${patchdir}/$i" ] ; then + type="directory overlay" + uncomp="tar cf - --exclude=.svn --no-anchored -C" + uncomp_parm="." + apply="tar xvf - -C" + else case "$i" in *.gz) type="gzip"; uncomp="gunzip -dc"; ;; *.bz) @@ -32,13 +39,17 @@ for i in `cd ${patchdir}; ls -d ${patchpattern} 2> /dev/null` ; do type="zip"; uncomp="unzip -d"; ;; *.Z) type="compress"; uncomp="uncompress -c"; ;; + *.tgz) + type="tar gzip"; uncomp="gunzip -dc"; apply="tar xvf - -C"; ;; + *.tar) + type="tar"; uncomp="cat"; apply="tar xvf - -C"; ;; *) type="plaintext"; uncomp="cat"; ;; - esac + esac fi echo "" echo "Applying ${i} using ${type}: " echo ${i} | cat >> ${targetdir}/.applied_patches_list - ${uncomp} ${patchdir}/${i} | patch -p1 -E -d ${targetdir} + ${uncomp} ${patchdir}/${i} ${uncomp_parm} | ${apply} ${targetdir} if [ $? != 0 ] ; then echo "Patch failed! Please fix $i!" exit 1 diff --git a/toolchain/uClibc/uClibc-0.9.30-unifdef-getline.patch b/toolchain/uClibc/uClibc-0.9.30-unifdef-getline.patch new file mode 100644 index 000000000..eb8888470 --- /dev/null +++ b/toolchain/uClibc/uClibc-0.9.30-unifdef-getline.patch @@ -0,0 +1,29 @@ +--- uClibc-0.9.30.1.orig/extra/scripts/unifdef.c ++++ uClibc-0.9.30.1/extra/scripts/unifdef.c +@@ -206,7 +206,7 @@ static void done(void); + static void error(const char *); + static int findsym(const char *); + static void flushline(bool); +-static Linetype getline(void); ++static Linetype get_line(void); + static Linetype ifeval(const char **); + static void ignoreoff(void); + static void ignoreon(void); +@@ -512,7 +512,7 @@ process(void) + + for (;;) { + linenum++; +- lineval = getline(); ++ lineval = get_line(); + trans_table[ifstate[depth]][lineval](); + debug("process %s -> %s depth %d", + linetype_name[lineval], +@@ -526,7 +526,7 @@ process(void) + * help from skipcomment(). + */ + static Linetype +-getline(void) ++get_line(void) + { + const char *cp; + int cursym; diff --git a/toolchain/uClibc/uClibc-0.9.30-xtensa-000p-fix-procfs.patch b/toolchain/uClibc/uClibc-0.9.30-xtensa-000p-fix-procfs.patch new file mode 100644 index 000000000..8e62d205f --- /dev/null +++ b/toolchain/uClibc/uClibc-0.9.30-xtensa-000p-fix-procfs.patch @@ -0,0 +1,24 @@ +--- uClibc-0.9.29-orig/libc/sysdeps/linux/xtensa/sys/procfs.h 2007-11-16 23:21:00.000000000 -0800 ++++ uClibc-0.9.29/libc/sysdeps/linux/xtensa/sys/procfs.h 2007-11-16 23:26:59.000000000 -0800 +@@ -32,19 +32,11 @@ + #include <sys/time.h> + #include <sys/types.h> + #include <sys/user.h> ++#include <asm/elf.h> + + __BEGIN_DECLS + +-/* Type for a general-purpose register. */ +-typedef unsigned long elf_greg_t; +- +-#define ELF_NGREG 128 +-typedef elf_greg_t elf_gregset_t[ELF_NGREG]; +- +-/* Register set for the floating-point registers. */ +-#define ELF_NFPREG 18 +-typedef unsigned long elf_fpreg_t; +-typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; ++/* Note: we get elf_gregset_t and elf_fpregset_t from <asm/elf.h>. */ + + /* Signal info. */ + struct elf_siginfo diff --git a/toolchain/uClibc/uClibc-0.9.30-xtensa-005-sigcontext.patch b/toolchain/uClibc/uClibc-0.9.30-xtensa-005-sigcontext.patch new file mode 100644 index 000000000..7d7d684b1 --- /dev/null +++ b/toolchain/uClibc/uClibc-0.9.30-xtensa-005-sigcontext.patch @@ -0,0 +1,45 @@ +diff -u /dev/null uClibc-0.9.30/libc/sysdeps/linux/xtensa/bits/sigcontext.h +--- /dev/null ++++ uClibc-0.9.30/libc/sysdeps/linux/xtensa/bits/sigcontext.h +@@ -0,0 +1,41 @@ ++/* Copyright (C) 2006, 2007, 2008, 2009 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, write to the Free ++ Software Foundation, Inc., 51 Franklin Street - Fifth Floor, ++ Boston, MA 02110-1301, USA. */ ++ ++#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H ++# error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." ++#endif ++ ++#ifndef _BITS_SIGCONTEXT_H ++#define _BITS_SIGCONTEXT_H 1 ++ ++struct sigcontext ++{ ++ unsigned long sc_pc; ++ unsigned long sc_ps; ++ unsigned long sc_lbeg; ++ unsigned long sc_lend; ++ unsigned long sc_lcount; ++ unsigned long sc_sar; ++ unsigned long sc_acclo; ++ unsigned long sc_acchi; ++ void *sc_xtregs; ++ unsigned long sc_a[16]; ++}; ++ ++#endif /* _BITS_SIGCONTEXT_H */ ++ diff --git a/toolchain/uClibc/uClibc-0.9.30-xtensa-009-testandset.patch b/toolchain/uClibc/uClibc-0.9.30-xtensa-009-testandset.patch new file mode 100644 index 000000000..f0e4eb272 --- /dev/null +++ b/toolchain/uClibc/uClibc-0.9.30-xtensa-009-testandset.patch @@ -0,0 +1,59 @@ +--- uClibc-0.9.29/libpthread/linuxthreads.old/sysdeps/xtensa/pt-machine.h.orig 2008-09-12 09:51:50.000000000 -0700 ++++ uClibc-0.9.29/libpthread/linuxthreads.old/sysdeps/xtensa/pt-machine.h 2008-10-04 12:14:57.000000000 -0700 +@@ -26,19 +26,51 @@ + #include <asm/unistd.h> + + #ifndef PT_EI +-# define PT_EI __extern_always_inline ++# define PT_EI extern inline __attribute__ ((gnu_inline)) + #endif + +-/* Memory barrier. */ + #define MEMORY_BARRIER() __asm__ ("memw" : : : "memory") ++#define HAS_COMPARE_AND_SWAP ++ ++extern long int testandset (int *spinlock); ++extern int __compare_and_swap (long int *p, long int oldval, long int newval); + + /* Spinlock implementation; required. */ + PT_EI long int + testandset (int *spinlock) + { +- int unused = 0; +- return INTERNAL_SYSCALL (xtensa, , 4, SYS_XTENSA_ATOMIC_SET, +- spinlock, 1, unused); ++ unsigned long tmp; ++ __asm__ volatile ( ++" movi %0, 0 \n" ++" wsr %0, SCOMPARE1 \n" ++" movi %0, 1 \n" ++" s32c1i %0, %1, 0 \n" ++ : "=&a" (tmp) ++ : "a" (spinlock) ++ : "memory" ++ ); ++ return tmp; ++} ++ ++PT_EI int ++__compare_and_swap (long int *p, long int oldval, long int newval) ++{ ++ unsigned long tmp; ++ unsigned long value; ++ __asm__ volatile ( ++"1: l32i %0, %2, 0 \n" ++" bne %0, %4, 2f \n" ++" wsr %0, SCOMPARE1 \n" ++" mov %1, %0 \n" ++" mov %0, %3 \n" ++" s32c1i %0, %2, 0 \n" ++" bne %1, %0, 1b \n" ++"2: \n" ++ : "=&a" (tmp), "=&a" (value) ++ : "a" (p), "a" (newval), "a" (oldval) ++ : "memory" ); ++ ++ return tmp == oldval; + } + + /* Get some notion of the current stack. Need not be exactly the top diff --git a/toolchain/uClibc/uClibc-0.9.30-xtensa-010-sigaction.c.patch b/toolchain/uClibc/uClibc-0.9.30-xtensa-010-sigaction.c.patch new file mode 100644 index 000000000..5717c2582 --- /dev/null +++ b/toolchain/uClibc/uClibc-0.9.30-xtensa-010-sigaction.c.patch @@ -0,0 +1,11 @@ +--- a/libc/sysdeps/linux/xtensa/sigaction.c 2008-09-23 21:11:02.000000000 -0700 ++++ b/libc/sysdeps/linux/xtensa/sigaction.c 2008-09-23 21:12:31.000000000 -0700 +@@ -17,6 +17,8 @@ + + #define SA_RESTORER 0x04000000 + ++extern __typeof(sigaction) __libc_sigaction; ++ + extern void __default_sa_restorer (void); + + libc_hidden_proto(memcpy) diff --git a/toolchain/uClibc/uClibc-0.9.30-xtensa-011-sysdep.h.patch b/toolchain/uClibc/uClibc-0.9.30-xtensa-011-sysdep.h.patch new file mode 100644 index 000000000..692b0a722 --- /dev/null +++ b/toolchain/uClibc/uClibc-0.9.30-xtensa-011-sysdep.h.patch @@ -0,0 +1,19 @@ +--- a/libc/sysdeps/linux/xtensa/sysdep.h 2008-09-23 21:17:42.000000000 -0700 ++++ b/libc/sysdeps/linux/xtensa/sysdep.h 2008-09-23 21:17:59.000000000 -0700 +@@ -114,15 +114,7 @@ + + #define ret_ERRVAL retw + +-#if RTLD_PRIVATE_ERRNO +-# define SYSCALL_ERROR_HANDLER \ +-0: movi a4, rtld_errno; \ +- neg a2, a2; \ +- s32i a2, a4, 0; \ +- movi a2, -1; \ +- j .Lpseudo_end; +- +-#elif defined _LIBC_REENTRANT ++#if defined _LIBC_REENTRANT + + # if USE___THREAD + # ifndef NOT_IN_libc diff --git a/toolchain/uClibc/uClibc-0.9.30-xtensa-012-fnmatch_old.c.patch b/toolchain/uClibc/uClibc-0.9.30-xtensa-012-fnmatch_old.c.patch new file mode 100644 index 000000000..66cb1f609 --- /dev/null +++ b/toolchain/uClibc/uClibc-0.9.30-xtensa-012-fnmatch_old.c.patch @@ -0,0 +1,11 @@ +--- a/libc/misc/fnmatch/fnmatch_old.c 2008-09-23 21:23:13.000000000 -0700 ++++ b/libc/misc/fnmatch/fnmatch_old.c 2008-09-23 21:23:33.000000000 -0700 +@@ -15,7 +15,7 @@ + not, write to the Free Software Foundation, Inc., 675 Mass Ave, + Cambridge, MA 02139, USA. */ + +-#if HAVE_CONFIG_H ++#ifdef HAVE_CONFIG_H + # include <config.h> + #endif + diff --git a/toolchain/uClibc/uClibc-0.9.30-xtensa-013-atomic.h.patch b/toolchain/uClibc/uClibc-0.9.30-xtensa-013-atomic.h.patch new file mode 100644 index 000000000..fd2037111 --- /dev/null +++ b/toolchain/uClibc/uClibc-0.9.30-xtensa-013-atomic.h.patch @@ -0,0 +1,165 @@ +--- /dev/null 2008-09-18 06:50:54.356228028 -0700 ++++ uClibc-0.9.29/libc/sysdeps/linux/xtensa/bits/atomic.h 2008-10-04 11:40:21.000000000 -0700 +@@ -0,0 +1,162 @@ ++/* ++ * Copyright (C) 2008 Tensilica, Inc. ++ * Contributed by Joe Taylor <joe@tensilica.com> 2008 ++ * ++ * This file is subject to the terms and conditions of the GNU Lesser General ++ * Public License. See the file "COPYING.LIB" in the main directory of this ++ * archive for more details. ++ */ ++ ++#ifndef _XTENSA_BITS_ATOMIC_H ++#define _XTENSA_BITS_ATOMIC_H 1 ++ ++/* Xtensa has only a 32-bit form of a store-conditional instruction, ++ so just stub out the rest. */ ++ ++/* Atomically store NEWVAL in *MEM if *MEM is equal to OLDVAL. ++ Return the old *MEM value. */ ++ ++#define __arch_compare_and_exchange_val_32_acq(mem, newval, oldval) \ ++ ({__typeof__(*(mem)) __tmp, __value; \ ++ __asm__ __volatile__( \ ++ "1: l32i %1, %2, 0 \n" \ ++ " bne %1, %4, 2f \n" \ ++ " wsr %1, SCOMPARE1 \n" \ ++ " mov %0, %1 \n" \ ++ " mov %1, %3 \n" \ ++ " s32c1i %1, %2, 0 \n" \ ++ " bne %0, %1, 1b \n" \ ++ "2: \n" \ ++ : "=&a" (__value), "=&a" (__tmp) \ ++ : "a" (mem), "a" (newval), "a" (oldval) \ ++ : "memory" ); \ ++ __tmp; \ ++ }) ++ ++/* Atomically store NEWVAL in *MEM if *MEM is equal to OLDVAL. ++ Return zero if *MEM was changed or non-zero if no exchange happened. */ ++ ++#define __arch_compare_and_exchange_bool_32_acq(mem, newval, oldval) \ ++ ({__typeof__(*(mem)) __tmp, __value; \ ++ __asm__ __volatile__( \ ++ "1: l32i %0, %2, 0 \n" \ ++ " sub %1, %4, %0 \n" \ ++ " bnez %1, 2f \n" \ ++ " wsr %0, SCOMPARE1 \n" \ ++ " mov %1, %3 \n" \ ++ " s32c1i %1, %2, 0 \n" \ ++ " bne %0, %1, 1b \n" \ ++ " movi %1, 0 \n" \ ++ "2: \n" \ ++ : "=&a" (__value), "=&a" (__tmp) \ ++ : "a" (mem), "a" (newval), "a" (oldval) \ ++ : "memory" ); \ ++ __tmp != 0; \ ++ }) ++ ++/* Store NEWVALUE in *MEM and return the old value. */ ++ ++#define __arch_exchange_32_acq(mem, newval) \ ++ ({__typeof__(*(mem)) __tmp, __value; \ ++ __asm__ __volatile__( \ ++ "1: l32i %0, %2, 0 \n" \ ++ " wsr %0, SCOMPARE1 \n" \ ++ " mov %1, %3 \n" \ ++ " s32c1i %1, %2, 0 \n" \ ++ " bne %0, %1, 1b \n" \ ++ : "=&a" (__value), "=&a" (__tmp) \ ++ : "a" (mem), "a" (newval) \ ++ : "memory" ); \ ++ __tmp; \ ++ }) ++ ++/* Add VALUE to *MEM and return the old value of *MEM. */ ++ ++#define __arch_atomic_exchange_and_add_32(mem, value) \ ++ ({__typeof__(*(mem)) __tmp, __value; \ ++ __asm__ __volatile__( \ ++ "1: l32i %0, %2, 0 \n" \ ++ " wsr %0, SCOMPARE1 \n" \ ++ " add %1, %0, %3 \n" \ ++ " s32c1i %1, %2, 0 \n" \ ++ " bne %0, %1, 1b \n" \ ++ : "=&a" (__value), "=&a" (__tmp) \ ++ : "a" (mem), "a" (value) \ ++ : "memory" ); \ ++ __tmp; \ ++ }) ++ ++/* Subtract VALUE from *MEM and return the old value of *MEM. */ ++ ++#define __arch_atomic_exchange_and_sub_32(mem, value) \ ++ ({__typeof__(*(mem)) __tmp, __value; \ ++ __asm__ __volatile__( \ ++ "1: l32i %0, %2, 0 \n" \ ++ " wsr %0, SCOMPARE1 \n" \ ++ " sub %1, %0, %3 \n" \ ++ " s32c1i %1, %2, 0 \n" \ ++ " bne %0, %1, 1b \n" \ ++ : "=&a" (__value), "=&a" (__tmp) \ ++ : "a" (mem), "a" (value) \ ++ : "memory" ); \ ++ __tmp; \ ++ }) ++ ++/* Decrement *MEM if it is > 0, and return the old value. */ ++ ++#define __arch_atomic_decrement_if_positive_32(mem) \ ++ ({__typeof__(*(mem)) __tmp, __value; \ ++ __asm__ __volatile__( \ ++ "1: l32i %0, %2, 0 \n" \ ++ " blti %0, 1, 2f \n" \ ++ " wsr %0, SCOMPARE1 \n" \ ++ " addi %1, %0, -1 \n" \ ++ " s32c1i %1, %2, 0 \n" \ ++ " bne %0, %1, 1b \n" \ ++ "2: \n" \ ++ : "=&a" (__value), "=&a" (__tmp) \ ++ : "a" (mem) \ ++ : "memory" ); \ ++ __tmp; \ ++ }) ++ ++ ++/* These are the preferred public interfaces: */ ++ ++#define atomic_compare_and_exchange_val_acq(mem, newval, oldval) \ ++ ({ \ ++ if (sizeof (*mem) != 4) \ ++ abort(); \ ++ __arch_compare_and_exchange_val_32_acq(mem, newval, oldval); \ ++ }) ++ ++#define atomic_exchange_acq(mem, newval) \ ++ ({ \ ++ if (sizeof(*(mem)) != 4) \ ++ abort(); \ ++ __arch_exchange_32_acq(mem, newval); \ ++ }) ++ ++#define atomic_exchange_and_add(mem, newval) \ ++ ({ \ ++ if (sizeof(*(mem)) != 4) \ ++ abort(); \ ++ __arch_atomic_exchange_and_add_32(mem, newval); \ ++ }) ++ ++#define atomic_exchange_and_sub(mem, newval) \ ++ ({ \ ++ if (sizeof(*(mem)) != 4) \ ++ abort(); \ ++ __arch_atomic_exchange_and_sub_32(mem, newval); \ ++ }) ++ ++#define atomic_decrement_if_positive(mem) \ ++ ({ \ ++ if (sizeof(*(mem)) != 4) \ ++ abort(); \ ++ __arch_atomic_decrement_if_positive_32(mem); \ ++ }) ++ ++#endif /* _XTENSA_BITS_ATOMIC_H */ ++ diff --git a/toolchain/uClibc/uClibc-0.9.30-xtensa-014-setjump.S.patch b/toolchain/uClibc/uClibc-0.9.30-xtensa-014-setjump.S.patch new file mode 100644 index 000000000..720b44b58 --- /dev/null +++ b/toolchain/uClibc/uClibc-0.9.30-xtensa-014-setjump.S.patch @@ -0,0 +1,11 @@ +--- uClibc-0.9.30/libc/sysdeps/linux/xtensa/setjmp.S.orig 2009-05-01 16:57:16.195893000 -0700 ++++ uClibc-0.9.30/libc/sysdeps/linux/xtensa/setjmp.S 2009-05-01 16:58:03.885160000 -0700 +@@ -86,7 +86,7 @@ ENTRY (__sigsetjmp) + /* Copy 0-8 words from the register overflow area. */ + extui a3, a0, 30, 2 + blti a3, 2, .Lendsj +- l32i a7, a1, 4 ++ l32i a7, a5, 4 + slli a4, a3, 4 + sub a5, a7, a4 + addi a6, a2, 16 diff --git a/toolchain/uClibc/uClibc-0.9.30.1-unifdef-getline.patch b/toolchain/uClibc/uClibc-0.9.30.1-unifdef-getline.patch new file mode 100644 index 000000000..eb8888470 --- /dev/null +++ b/toolchain/uClibc/uClibc-0.9.30.1-unifdef-getline.patch @@ -0,0 +1,29 @@ +--- uClibc-0.9.30.1.orig/extra/scripts/unifdef.c ++++ uClibc-0.9.30.1/extra/scripts/unifdef.c +@@ -206,7 +206,7 @@ static void done(void); + static void error(const char *); + static int findsym(const char *); + static void flushline(bool); +-static Linetype getline(void); ++static Linetype get_line(void); + static Linetype ifeval(const char **); + static void ignoreoff(void); + static void ignoreon(void); +@@ -512,7 +512,7 @@ process(void) + + for (;;) { + linenum++; +- lineval = getline(); ++ lineval = get_line(); + trans_table[ifstate[depth]][lineval](); + debug("process %s -> %s depth %d", + linetype_name[lineval], +@@ -526,7 +526,7 @@ process(void) + * help from skipcomment(). + */ + static Linetype +-getline(void) ++get_line(void) + { + const char *cp; + int cursym; diff --git a/toolchain/uClibc/uclibc.mk b/toolchain/uClibc/uclibc.mk index b39b9399b..80d7d9861 100644 --- a/toolchain/uClibc/uclibc.mk +++ b/toolchain/uClibc/uclibc.mk @@ -52,6 +52,7 @@ UCLIBC_TARGET_ARCH:=$(shell $(SHELL) -c "echo $(ARCH) | sed \ -e 's/mipsel.*/mips/' \ -e 's/cris.*/cris/' \ -e 's/nios2.*/nios2/' \ + -e 's/xtensa.*/xtensa/' \ ") # just handle the ones that can be big or little UCLIBC_TARGET_ENDIAN:=$(shell $(SHELL) -c "echo $(ARCH) | sed \ |