summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Bowler <jbowler@nslu2-linux.org>2005-10-24 07:46:01 +0000
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>2005-10-24 07:46:01 +0000
commit5be73c9adf139f70a664e8374a5a85f6a7bf0937 (patch)
tree44eb5107415ec76abbd035e446ee56a39575dd1f
parentedcd457d33b9f474b196efa0faadf45a2eeccb75 (diff)
ucslugc, nslu2: formalise different build configs, move to IAL 2.0 and nslu2-kernel
- ucslugc is substantially as before, however the configuration is now - expressed as a specific instance of nslu2-btu.conf (big-endian, thumb, - uclibc). The other six buildable variants of ucslugc have been added - as separate configuration files, all with names of the form 'nslu2-???' - for big vs little, arm vs thumb and glibc vs uclibc. - IAL 2.0 is now in a testable state (reboot works) and so is the default - for all nslu2-??? configurations. - Overridable variables of the form UCSLUGC_* have been replaced with - variables named NSLU2_*
-rw-r--r--conf/distro/nslu2-bag.conf12
-rw-r--r--conf/distro/nslu2-bau.conf12
-rw-r--r--conf/distro/nslu2-btu.conf12
-rw-r--r--conf/distro/nslu2-dist.conf191
-rw-r--r--conf/distro/nslu2-lag.conf12
-rw-r--r--conf/distro/nslu2-lau.conf12
-rw-r--r--conf/distro/nslu2-ltu.conf12
-rw-r--r--conf/distro/ucslugc.conf161
-rw-r--r--conf/machine/nslu2.conf2
9 files changed, 266 insertions, 160 deletions
diff --git a/conf/distro/nslu2-bag.conf b/conf/distro/nslu2-bag.conf
new file mode 100644
index 0000000000..0a9c4eb88d
--- /dev/null
+++ b/conf/distro/nslu2-bag.conf
@@ -0,0 +1,12 @@
+#@TYPE: Distribution
+#@NAME: NSLU2-BAG
+#@DESCRIPTION: Linux Distribution for the NSLU2
+
+# This is not the official DISTRO, so leave the DISTRO parameters unchanged
+# from the defaults in nslu2-dist.conf. Set the build configuration options
+# to b,t,u
+NSLU2_ARCH_TYPE = "b"
+NSLU2_INSTRUCTION_SET = "a"
+NSLU2_OS = "g"
+
+include conf/distro/nslu2-dist.conf
diff --git a/conf/distro/nslu2-bau.conf b/conf/distro/nslu2-bau.conf
new file mode 100644
index 0000000000..f27f7db709
--- /dev/null
+++ b/conf/distro/nslu2-bau.conf
@@ -0,0 +1,12 @@
+#@TYPE: Distribution
+#@NAME: NSLU2-BAU
+#@DESCRIPTION: Linux Distribution for the NSLU2
+
+# This is not the official DISTRO, so leave the DISTRO parameters unchanged
+# from the defaults in nslu2-dist.conf. Set the build configuration options
+# to b,t,u
+NSLU2_ARCH_TYPE = "b"
+NSLU2_INSTRUCTION_SET = "a"
+NSLU2_OS = "u"
+
+include conf/distro/nslu2-dist.conf
diff --git a/conf/distro/nslu2-btu.conf b/conf/distro/nslu2-btu.conf
new file mode 100644
index 0000000000..2e37ebdf91
--- /dev/null
+++ b/conf/distro/nslu2-btu.conf
@@ -0,0 +1,12 @@
+#@TYPE: Distribution
+#@NAME: NSLU2-BTU
+#@DESCRIPTION: Linux Distribution for the NSLU2
+
+# This is not the official DISTRO, so leave the DISTRO parameters unchanged
+# from the defaults in nslu2-dist.conf. Set the build configuration options
+# to b,t,u
+NSLU2_ARCH_TYPE = "b"
+NSLU2_INSTRUCTION_SET = "t"
+NSLU2_OS = "u"
+
+include conf/distro/nslu2-dist.conf
diff --git a/conf/distro/nslu2-dist.conf b/conf/distro/nslu2-dist.conf
new file mode 100644
index 0000000000..0482b8f8ff
--- /dev/null
+++ b/conf/distro/nslu2-dist.conf
@@ -0,0 +1,191 @@
+#@TYPE: Distribution
+#@NAME: NSLU2
+#@DESCRIPTION: UcSlugC Linux Distribution for the NSLU2
+
+# Explanation of the naming
+#
+# nslu2-dist - the base distro configuration for an NSLU2
+# nslu2-[bl][at][gu] - a specific configuration encoded as follows:
+# b or l - big or little endian
+# a or t - ARM or Thumb instructions in the low level libraries
+# g or u - glibc or uclibc libc implementation
+#
+# openslug - the historical name of a canonical nslu2-bag distro,
+# used generically for NSLU2 specific distro features and
+# the default OVERRIDE for all these NSLU2 builds
+# ucslugc - the historical (and obsolte) name of nslu2-btu
+# also the name of a standard nslu2-btu distro with a package feed
+#
+
+#----------------------------------------------------------------------------------
+# STANDARD NSLU2 DEFINITIONS
+#----------------------------------------------------------------------------------
+# The following must be set in the top level distro file:
+#DISTRO_NAME
+#DISTRO_VERSION
+#DISTRO_FEED
+#DISTRO_TYPE
+
+# The following must also be set, they define the basic format of the build
+# The definitions, where present, are the standard defaults.
+#NSLU2_ARCH_TYPE = "b" (big-endian) or "l" (little-endian)
+#NSLU2_INSTRUCTION_SET = "a" (ARM, 32 bit instructions) or "t" (Thumb, 16 bit instructions)
+#NSLU2_OS = "g" (glibc - linx) or "u" (uclibc - linux-uclibc)
+#NSLU2_INTERWORK = ":thumb-interwork" or ""
+NSLU2_INTERWORK ?= ":thumb-interwork"
+#USE_NLS = "no" or "yes"
+USE_NLS ?= "no"
+
+# These are default values, changed in the top level.
+DISTRO_NAME ?= "nslu2-${NSLU2_ARCH_TYPE}${NSLU2_INSTRUCTION_SET}${NSLU2_OS}"
+DISTRO_VERSION ?= "private"
+DISTRO_FEED ?= "unstable"
+DISTRO_TYPE ?= "alpha"
+
+# The following must not be changed.
+TARGET_FPU = "soft"
+TARGET_OS = "${@['linux-uclibc', 'linux'][bb.data.getVar('NSLU2_OS', d, 1) == 'g']}"
+TARGET_ARCH = "${@['arm', 'armeb'][bb.data.getVar('NSLU2_ARCH_TYPE', d, 1) == 'b']}"
+
+# Select thumb-interwork and thumb
+ARM_INSTRUCTION_SET = "${@[':thumb', ''][bb.data.getVar('NSLU2_INSTRUCTION_SET', d, 1) == 'a']}"
+ARM_INTERWORK = "${NSLU2_INTERWORK}"
+
+# glib-2.0 builds require USE_NLS to be overridden
+USE_NLS_glib-2.0 = "yes"
+
+INHERIT += " package_ipk debian"
+
+# The value of NSLU2_BASE_DISTRO is added to the OVERRIDES after the DISTRO, this
+# is set to 'openslug' to pick up the original openslug overrides. See
+# conf/machine/nslu2.conf to find out how this works.
+NSLU2_BASE_DISTRO = ":openslug"
+
+# We are building packages which are armvteb (big endian) for arm or thumbv5tb for
+# thumb instructions. The PACKAGE_ARCH should reflect this because generated code
+# requires that instruction set support.
+PACKAGE_ARCH = "${NSLU2_PACKAGE_ARCH}"
+
+# NOTE: to build new packages set NSLU2_EXTRA_BBFILES to the full path name to
+# the .bb files for the packages to build - see ucslugc-packages.conf in this
+# directory
+NSLU2_EXTRA_BBFILES ?= ""
+
+# pull in the frozen list of bbfiles - this sets BBFILES and this will override any
+# setting in local.conf Since this depends on ${DISTRO} it doesn't actually do
+# anything by default unless conf/distro/${DISTRO}-packages.conf exists.
+include conf/distro/freeze.conf
+
+#----------------------------------------------------------------------------------
+# FEEDS
+# The following lines define where on the internet UcSlugC looks for packages
+# when downloading new packages or updating existing packages. Additional feeds
+# (such as a local feed) can be defined in local.conf
+#----------------------------------------------------------------------------------
+# Add to the user's feeds from local.conf (there may be none)
+#
+# This must be specified in the top level distro file, because a feed for one
+# distro will not work for another.
+#FEED_URIS_append += "cross##http://ipkg.nslu2-linux.org/feeds/${DISTRO}/cross/${DISTRO_FEED}"
+#FEED_URIS_append += "native##http://ipkg.nslu2-linux.org/feeds/${DISTRO}/native/${DISTRO_FEED}"
+#
+#FEED_URIS_append += "unstable_cross##http://ipkg.nslu2-linux.org/feeds/${DISTRO}/cross/unstable"
+#FEED_URIS_append += "unstable_native##http://ipkg.nslu2-linux.org/feeds/${DISTRO}/native/unstable"
+
+#----------------------------------------------------------------------------------
+# FIRMWARE CONFIGURATION
+#----------------------------------------------------------------------------------
+# IMAGE BUILD OPTIONS
+# -------------------
+IMAGE_FSTYPES = "jffs2"
+IMAGE_SEX = "${@['little-endian', 'big-endian'][bb.data.getVar('NSLU2_ARCH_TYPE', d, 1) == 'b']}"
+
+OPENSLUG_DEVICE_TABLE = "${@bb.which(bb.data.getVar('BBPATH', d, 1), 'files/device_table-openslug.txt')}"
+EXTRA_IMAGECMD_jffs2 = "--pad --${IMAGE_SEX} --eraseblock=0x20000 -D ${OPENSLUG_DEVICE_TABLE}"
+
+# CMDLINE* macros define the kernel command line. CMDLINE_DEBUG is provided
+# to enable/disable debugging in the distro. Here noirqdebug is used to
+# remove the messages about unhandled interrupts - people debugging interrupt
+# issues in the kernel need to cancel this (set CMDLINE_DEBUG empty in local.conf)
+CMDLINE_DEBUG = "noirqdebug"
+
+# IMAGE_PREPROCESS_COMMAND is run before making the image. In UcSlugC the
+# kernel image is removed from the root file system to recover the space used -
+# UcSlugC is assumed to boot from a separate kernel image in flash (not in the
+# root file system), if this is not the case the following must not be done!
+IMAGE_PREPROCESS_COMMAND = "rm ${IMAGE_ROOTFS}/boot/zImage*;"
+
+# Building a full image. If you add the following extra commands will be
+# appended to the openslug-image build by classes/nslu2-jffs2-image.bbclass
+# (note that you can, instead, simply add 'inherit nslu2-jffs2-image' to
+# openslug-image.bb). If you do this you will need to find a source for the
+# LinkSys software to be placed in the full image - 'RedBoot' (the boot loader),
+# 'Trailer' (just a bunch of bytes to flag the image as valid) and 'SysConf'
+# (actually just a block of unset data - you could modify this to pre-configure
+# the SysConf partition of the image). If you own an NSLU2 then this data is
+# already in the flash of the NSLU2 and you can download it (including new
+# versions) from the LinkSys web site - the bbclass will output information
+# about where to put the downloaded data.
+#
+#NOTE: you do not actually need the boot loader in normal use because it is
+# *not* overwritten by a standard upslug upgrade, so you can make an image with
+# just non-LinkSys software which can be flashed into the NSLU2.
+
+#INHERIT += " nslu2-jffs2-image"
+
+# EXTRA PACKAGES
+# --------------
+# UcSlugC builds an openslug-image with no extra packages - to add packages to the
+# firmware copy this file (to make a new 'distro' configuration file) and change
+# the definition below to include the requirements.
+# NOTE: as built this system will *not* be able to boot off anything other than
+# the flash file system ('turnup' will not work). You need to add the filesystem
+# modules for your chosen root file system (and any others which will be used).
+# See openslug.conf for a more full-featured system!
+NSLU2_EXTRA_RDEPENDS ?= ""
+NSLU2_EXTRA_DEPENDS ?= ""
+#USLUGC_EXTRA_BBFILES above may also need to be set
+
+# These depends define native utilities - they do not get put in the flash.
+# upslug2 (in tmp/work/upslug2-native-*) is the program to write the NSLU2 flash
+# Override this as desired - it makes no difference to the final image.
+NSLU2_NATIVE_DEPENDS ?= "upslug2-native"
+
+OPENSLUG_EXTRA_INSTALL = "${NSLU2_EXTRA_RDEPENDS}"
+OPENSLUG_EXTRA_DEPENDS = "${NSLU2_EXTRA_DEPENDS} ${NSLU2_NATIVE_DEPENDS}"
+
+#----------------------------------------------------------------------------------
+# PACKAGE VERSION CONTROL
+#----------------------------------------------------------------------------------
+# Select the correct versions of the compiler tools (note that there
+# is also some selection in machine/nslu2.conf)
+PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial"
+PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}gcc:gcc-cross"
+PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}g++:gcc-cross"
+PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}depmod:module-init-tools-cross"
+
+# compiler/binary/library versions (unslung uses different ones so these
+# cannot be in nslu2.conf)
+PREFERRED_VERSION_binutils ?= "2.16"
+PREFERRED_VERSION_binutils-cross ?= "2.16"
+PREFERRED_VERSION_gcc-cross-initial ?= "3.4.4"
+PREFERRED_VERSION_gcc-cross ?= "3.4.4"
+PREFERRED_VERSION_gcc ?= "3.4.4"
+PREFERRED_VERSION_glibc ?= "2.3.5+cvs20050627"
+
+# Select the correct versions of the kernel and modules (these are the
+# defaults, override in the conf/distro top-level distro file).
+PREFERRED_PROVIDER_virtual/kernel ?= "nslu2-kernel"
+PREFERRED_VERSION_nslu2-kernel ?= "2.6.14-rc5"
+
+# Built-in ethernet modules
+PREFERRED_PROVIDER_virtual/ixp-eth ?= "ixp400-eth"
+PREFERRED_VERSION_ixp4xx-csr ?= "2.0"
+PREFERRED_VERSION_ixp-osal ?= "2.0"
+PREFERRED_VERSION_ixp400-eth ?= "1.4"
+
+# Select the smallest provider of x11 libraries
+PREFERRED_PROVIDER_x11 ?= "diet-x11"
+CVSDATE_diet-x11 ?= "20051005"
+
+PREFERRED_VERSION_samba ?= "3.0.14a"
diff --git a/conf/distro/nslu2-lag.conf b/conf/distro/nslu2-lag.conf
new file mode 100644
index 0000000000..9e9a4bbf8e
--- /dev/null
+++ b/conf/distro/nslu2-lag.conf
@@ -0,0 +1,12 @@
+#@TYPE: Distribution
+#@NAME: NSLU2-LAG
+#@DESCRIPTION: Linux Distribution for the NSLU2
+
+# This is not the official DISTRO, so leave the DISTRO parameters unchanged
+# from the defaults in nslu2-dist.conf. Set the build configuration options
+# to b,t,u
+NSLU2_ARCH_TYPE = "l"
+NSLU2_INSTRUCTION_SET = "a"
+NSLU2_OS = "g"
+
+include conf/distro/nslu2-dist.conf
diff --git a/conf/distro/nslu2-lau.conf b/conf/distro/nslu2-lau.conf
new file mode 100644
index 0000000000..9f54c0ecc2
--- /dev/null
+++ b/conf/distro/nslu2-lau.conf
@@ -0,0 +1,12 @@
+#@TYPE: Distribution
+#@NAME: NSLU2-LAU
+#@DESCRIPTION: Linux Distribution for the NSLU2
+
+# This is not the official DISTRO, so leave the DISTRO parameters unchanged
+# from the defaults in nslu2-dist.conf. Set the build configuration options
+# to b,t,u
+NSLU2_ARCH_TYPE = "l"
+NSLU2_INSTRUCTION_SET = "a"
+NSLU2_OS = "u"
+
+include conf/distro/nslu2-dist.conf
diff --git a/conf/distro/nslu2-ltu.conf b/conf/distro/nslu2-ltu.conf
new file mode 100644
index 0000000000..f48671d0c4
--- /dev/null
+++ b/conf/distro/nslu2-ltu.conf
@@ -0,0 +1,12 @@
+#@TYPE: Distribution
+#@NAME: NSLU2-LTU
+#@DESCRIPTION: Linux Distribution for the NSLU2
+
+# This is not the official DISTRO, so leave the DISTRO parameters unchanged
+# from the defaults in nslu2-dist.conf. Set the build configuration options
+# to b,t,u
+NSLU2_ARCH_TYPE = "l"
+NSLU2_INSTRUCTION_SET = "t"
+NSLU2_OS = "u"
+
+include conf/distro/nslu2-dist.conf
diff --git a/conf/distro/ucslugc.conf b/conf/distro/ucslugc.conf
index a8534aa05f..ae4b850f62 100644
--- a/conf/distro/ucslugc.conf
+++ b/conf/distro/ucslugc.conf
@@ -2,170 +2,13 @@
#@NAME: UcSlugC
#@DESCRIPTION: UcSlugC Linux Distribution for the NSLU2
-#----------------------------------------------------------------------------------
-# STANDARD UcSlugC DEFINITIONS
-#----------------------------------------------------------------------------------
+# This is NSLU2-BTU with a feed and a name...
DISTRO_NAME = "UcSlugC"
DISTRO_VERSION = "3-beta"
DISTRO_FEED = "unstable"
DISTRO_TYPE ?= "beta"
-# Overridable settings
-#DANGER: overriding any of these builds something very different from the base
-# usclugc!
-UCSLUGC_OS ?= "linux-uclibc"
-UCSLUGC_INTERWORK ?= ":thumb-interwork"
-UCSLUGC_INSTRUCTION_SET ?= ":thumb"
-UCSLUGC_ARCH_TYPE ?= "b"
-
-# Target OS - uclibc or glibc(linux)
-TARGET_FPU = "soft"
-TARGET_OS = "${UCSLUGC_OS}"
-
-# Select thumb-interwork and thumb
-ARM_INTERWORK = "${UCSLUGC_INTERWORK}"
-ARM_INSTRUCTION_SET = "${UCSLUGC_INSTRUCTION_SET}"
-
-USE_NLS ?= "no"
-USE_NLS_glib-2.0 = "yes"
-
-INHERIT += " package_ipk debian"
-
-# The OVERRIDES are modified here so that 'openslug' overrides are picked up if
-# present (ucslugc overrides take precedence).
-NSLU2_BASE_DISTRO = ":openslug"
-
-# The standard arch is big-endian - "b", set to "l" for a little-endian
-# build
-NSLU2_ARCH_TYPE = "${UCSLUGC_ARCH_TYPE}"
-TARGET_ARCH = "${@['arm', 'armeb'][bb.data.getVar('UCSLUGC_ARCH_TYPE', d, 1) == 'b']}"
-
-# We are building packages which are armvteb (big endian) for arm or thumbv5tb for
-# thumb instructions. The PACKAGE_ARCH should reflect this because generated code
-# requires that instruction set support.
-PACKAGE_ARCH = "${NSLU2_PACKAGE_ARCH}"
-
-# NOTE: to build new packages set UCSLUGC_EXTRA_BBFILES to the full path name to
-# the .bb files for the packages to build - see ucslugc-packages.conf in this
-# directory
-UCSLUGC_EXTRA_BBFILES ?= ""
-
-# pull in the frozen list of bbfiles - this sets BBFILES and this will override any
-# setting in local.conf
-include conf/distro/freeze.conf
-
-#----------------------------------------------------------------------------------
-# FEEDS
-# The following lines define where on the internet UcSlugC looks for packages
-# when downloading new packages or updating existing packages. Additional feeds
-# (such as a local feed) can be defined in local.conf
-#----------------------------------------------------------------------------------
-# Add to the user's feeds from local.conf (there may be none)
-#
-#NOTE: at present there is no released feed for ucslugc, therefore this feed
-# is set to the 'unstable' version. In released images DISTRO_FEED will typically
-# be DISTRO_VERSION.
FEED_URIS_append += "cross##http://ipkg.nslu2-linux.org/feeds/ucslugc/cross/${DISTRO_FEED}"
FEED_URIS_append += "native##http://ipkg.nslu2-linux.org/feeds/ucslugc/native/${DISTRO_FEED}"
-#
-# Uncomment the following to get the unstable feeds in a released version.
-#FEED_URIS_append += "unstable_cross##http://ipkg.nslu2-linux.org/feeds/ucslugc/cross/unstable"
-#FEED_URIS_append += "unstable_native##http://ipkg.nslu2-linux.org/feeds/ucslugc/native/unstable"
-
-#----------------------------------------------------------------------------------
-# FIRMWARE CONFIGURATION
-#----------------------------------------------------------------------------------
-# IMAGE BUILD OPTIONS
-# -------------------
-IMAGE_FSTYPES = "jffs2"
-IMAGE_SEX = "${@['little-endian', 'big-endian'][bb.data.getVar('UCSLUGC_ARCH_TYPE', d, 1) == 'b']}"
-
-OPENSLUG_DEVICE_TABLE = "${@bb.which(bb.data.getVar('BBPATH', d, 1), 'files/device_table-openslug.txt')}"
-EXTRA_IMAGECMD_jffs2 = "--pad --${IMAGE_SEX} --eraseblock=0x20000 -D ${OPENSLUG_DEVICE_TABLE}"
-
-# CMDLINE* macros define the kernel command line. CMDLINE_DEBUG is provided
-# to enable/disable debugging in the distro. Here noirqdebug is used to
-# remove the messages about unhandled interrupts - people debugging interrupt
-# issues in the kernel need to cancel this (set CMDLINE_DEBUG empty in local.conf)
-CMDLINE_DEBUG = "noirqdebug"
-
-# IMAGE_PREPROCESS_COMMAND is run before making the image. In UcSlugC the
-# kernel image is removed from the root file system to recover the space used -
-# UcSlugC is assumed to boot from a separate kernel image in flash (not in the
-# root file system), if this is not the case the following must not be done!
-IMAGE_PREPROCESS_COMMAND = "rm ${IMAGE_ROOTFS}/boot/zImage*;"
-
-# Building a full image. If you add the following extra commands will be
-# appended to the openslug-image build by classes/nslu2-jffs2-image.bbclass
-# (note that you can, instead, simply add 'inherit nslu2-jffs2-image' to
-# openslug-image.bb). If you do this you will need to find a source for the
-# LinkSys software to be placed in the full image - 'RedBoot' (the boot loader),
-# 'Trailer' (just a bunch of bytes to flag the image as valid) and 'SysConf'
-# (actually just a block of unset data - you could modify this to pre-configure
-# the SysConf partition of the image). If you own an NSLU2 then this data is
-# already in the flash of the NSLU2 and you can download it (including new
-# versions) from the LinkSys web site - the bbclass will output information
-# about where to put the downloaded data.
-#
-#NOTE: you do not actually need the boot loader in normal use because it is
-# *not* overwritten by a standard upslug upgrade, so you can make an image with
-# just non-LinkSys software which can be flashed into the NSLU2.
-
-#INHERIT += " nslu2-jffs2-image"
-
-# EXTRA PACKAGES
-# --------------
-# UcSlugC builds an openslug-image with no extra packages - to add packages to the
-# firmware copy this file (to make a new 'distro' configuration file) and change
-# the definition below to include the requirements.
-# NOTE: as built this system will *not* be able to boot off anything other than
-# the flash file system ('turnup' will not work). You need to add the filesystem
-# modules for your chosen root file system (and any others which will be used).
-# See openslug.conf for a more full-featured system!
-UCSLUGC_EXTRA_RDEPENDS ?= ""
-UCSLUGC_EXTRA_DEPENDS ?= ""
-#USLUGC_EXTRA_BBFILES above may also need to be set
-
-# These depends define native utilities - they do not get put in the flash.
-# upslug2 (in tmp/work/upslug2-native-*) is the program to write the NSLU2 flash
-# Override this as desired - it makes no difference to the final image.
-UCSLUGC_NATIVE_DEPENDS ?= "upslug2-native"
-
-OPENSLUG_EXTRA_INSTALL = "${UCSLUGC_EXTRA_RDEPENDS}"
-OPENSLUG_EXTRA_DEPENDS = "${UCSLUGC_EXTRA_DEPENDS} ${UCSLUGC_NATIVE_DEPENDS}"
-
-#----------------------------------------------------------------------------------
-# PACKAGE VERSION CONTROL
-#----------------------------------------------------------------------------------
-# Select the correct versions of the compiler tools (note that there
-# is also some selection in machine/nslu2.conf)
-PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial"
-PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross"
-PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross"
-
-# compiler/binary/library versions (unslung uses different ones so these
-# cannot be in nslu2.conf)
-PREFERRED_VERSION_binutils ?= "2.16"
-PREFERRED_VERSION_binutils-cross ?= "2.16"
-PREFERRED_VERSION_gcc-cross-initial ?= "3.4.4"
-PREFERRED_VERSION_gcc-cross ?= "3.4.4"
-PREFERRED_VERSION_gcc ?= "3.4.4"
-PREFERRED_VERSION_glibc ?= "2.3.5+cvs20050627"
-
-# Select the correct versions of the kernel and modules
-PREFERRED_PROVIDER_virtual/kernel ?= "openslug-kernel"
-PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}depmod:module-init-tools-cross"
-PREFERRED_VERSION_openslug-kernel ?= "2.6.14-rc5"
-
-PREFERRED_PROVIDER_virtual/ixp-eth ?= "ixp425-eth"
-PREFERRED_VERSION_ixp4xx-csr ?= "1.4"
-PREFERRED_VERSION_ixp425-eth ?= "1.1"
-PREFERRED_VERSION_ixp-osal ?= "2.0"
-PREFERRED_VERSION_ixp400-eth ?= "1.4"
-
-# Select the smallest provider of x11 libraries
-PREFERRED_PROVIDER_x11 ?= "diet-x11"
-CVSDATE_diet-x11 ?= "20051005"
-
-PREFERRED_VERSION_samba ?= "3.0.14a"
+include conf/distro/nslu2-btu.conf
diff --git a/conf/machine/nslu2.conf b/conf/machine/nslu2.conf
index d22c3b5568..737d4e7c17 100644
--- a/conf/machine/nslu2.conf
+++ b/conf/machine/nslu2.conf
@@ -86,7 +86,7 @@ FULL_OPTIMIZATION = "-Os -fomit-frame-pointer -frename-registers \
# to get this fixed.
NSLU2_ARCH_TYPE = "b"
TARGET_ARCH = "arme${NSLU2_ARCH_TYPE}"
-# To change to little endian see distro/ucslugc.conf
+# To change to little endian see distro/nslu2-dist.conf
# The list of valid architectures for thumb or arm on NSLU2. The arm list is
# derived from the architecture settings known to gcc, the thumb list is then