Merge branch 'master' of git://dev.doredevelopment.dk/oe-micro into org.openembedded.dev
authorLeon Woestenberg <leon@sidebranch.com>
Sun, 3 May 2009 12:18:37 +0000 (14:18 +0200)
committerLeon Woestenberg <leon@sidebranch.com>
Sun, 3 May 2009 12:18:37 +0000 (14:18 +0200)
conf/distro/micro-uclibc.conf [new file with mode: 0644]
conf/distro/micro.conf [new file with mode: 0644]
recipes/images/micro-image.bb [new file with mode: 0644]

diff --git a/conf/distro/micro-uclibc.conf b/conf/distro/micro-uclibc.conf
new file mode 100644 (file)
index 0000000..82b78cb
--- /dev/null
@@ -0,0 +1,43 @@
+#############################################################################
+#@TYPE: Distribution
+#@NAME: Micro uclibc
+#@DESCRIPTION: Micro Linux Distribution (uclibc based)
+#@MAINTAINER: Martin Lund <mgl@doredevelopment.dk>
+#@COMMENT: This distribution configuration defines a Micro Linux distribution
+#@COMMENT: based on uclibc.
+#############################################################################
+
+# Based on the Micro Linux distribution
+require conf/distro/micro.conf
+
+#############################################################################
+# DISTRO CONFIGURATION
+#############################################################################
+DISTRO_NAME = "micro-uclibc"
+
+#############################################################################
+# TARGET OS 
+#############################################################################
+# Use linux uclibc
+TARGET_OS = "linux-uclibc"
+
+#############################################################################
+# TOOLCHAIN
+#############################################################################
+PREFERRED_LIBC = "uclibc"
+
+#############################################################################
+# PREFERRED PROVIDERS 
+#############################################################################
+PREFERRED_PROVIDER_virtual/libc                = "uclibc"
+PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc        = "uclibc"
+PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils    = "binutils-cross"
+PREFERRED_PROVIDER_linux-libc-headers  = "linux-libc-headers"
+PREFERRED_PROVIDER_virtual/libintl     = "proxy-libintl"
+
+#############################################################################
+# PREFERRED VERSIONS 
+#############################################################################
+PREFERRED_VERSION_uclibc = "0.9.30.1"
+PREFERRED_VERSION_uclibc-initial = "0.9.30.1"
+
diff --git a/conf/distro/micro.conf b/conf/distro/micro.conf
new file mode 100644 (file)
index 0000000..bf4e5e1
--- /dev/null
@@ -0,0 +1,100 @@
+#############################################################################
+#@TYPE: Distribution
+#@NAME: Micro
+#@DESCRIPTION: Micro Linux Distribution (glibc based)
+#@MAINTAINER: Martin Lund <mgl@doredevelopment.dk>
+#@COMMENT: This distribution configuration defines a truely tiny OE Linux  
+#@COMMENT: distribution. The matching buildable image target (micro-image)
+#@COMMENT: basically consists of: libc, busybox, udev, sysv init, and a few
+#@COMMENT: init scripts for running up the system.
+#############################################################################
+
+#############################################################################
+# DISTRO CONFIGURATION
+#############################################################################
+DISTRO_NAME = "micro"
+DISTRO_VERSION = "${SRCDATE}"
+
+#############################################################################
+# TARGET OS
+#############################################################################
+# Linux
+TARGET_OS = "linux"
+
+#############################################################################
+# DISTRO FEATURE SELECTION
+#############################################################################
+# No features selected
+DISTRO_FEATURES = ""
+
+#############################################################################
+# LIBRARY NAMES
+#############################################################################
+# Use Debian naming scheme for library (.so) files
+INHERIT += "debian"
+
+#############################################################################
+# PACKAGING & FEEDS
+#############################################################################
+# Select packaging system
+PREFERRED_PKG_FORMAT = "ipk"
+IPKG_VARIANT = "opkg-nogpg"
+
+require conf/distro/include/sane-feed.inc
+require conf/distro/include/sane-feed-${PREFERRED_PKG_FORMAT}.inc
+
+#############################################################################
+# IMAGES
+#############################################################################
+# Name generated images
+IMAGE_NAME = "${DISTRO_NAME}-${IMAGE_BASENAME}-${PREFERRED_LIBC}-\
+${PREFERRED_PKG_FORMAT}-${DISTRO_VERSION}-${MACHINE}"
+
+CACHE ?= "${TMPDIR}/cache/${PREFERRED_LIBC}/${MACHINE}"
+DEPLOY_DIR ?= "${TMPDIR}/deploy/${PREFERRED_LIBC}"
+DEPLOY_DIR_IMAGE = "${DEPLOY_DIR}/images/${MACHINE}"
+
+# Image output types
+IMAGE_FSTYPES ?= "tar.gz jffs2"
+
+#############################################################################
+# LINUX KERNEL SELECTION
+#############################################################################
+KERNEL = "kernel26"
+MACHINE_KERNEL_VERSION = "2.6"
+
+#############################################################################
+# TOOLCHAIN
+#############################################################################
+PREFERRED_LIBC = "glibc"
+require conf/distro/include/sane-toolchain.inc
+
+#############################################################################
+# OVERRIDES adjusted from bitbake.conf to feature the MACHINE_CLASS
+#############################################################################
+OVERRIDES = "local:${MACHINE}:${MACHINE_CLASS}:${DISTRO}:${TARGET_OS}:\
+${TARGET_ARCH}:build-${BUILD_OS}:fail-fast:pn-${PN}"
+
+#############################################################################
+# PREFERRED PROVIDERS
+#############################################################################
+PREFERRED_PROVIDER_task-bootstrap      = "task-bootstrap"
+PREFERRED_PROVIDER_virtual/libintl     = "glibc"
+
+#############################################################################
+# PREFERRED VERSIONS
+#############################################################################
+require conf/distro/include/sane-srcdates.inc
+require conf/distro/include/sane-srcrevs.inc
+
+#############################################################################
+# NLS
+#############################################################################
+USE_NLS = "no"
+USE_NLS_glib-2.0 = "yes"
+USE_NLS_glib-2.0-native = "yes"
+USE_NLS_gcc-cross = "no"
+
+# Disable binary locale generation
+ENABLE_BINARY_LOCALE_GENERATION = "0"
+
diff --git a/recipes/images/micro-image.bb b/recipes/images/micro-image.bb
new file mode 100644 (file)
index 0000000..b31365d
--- /dev/null
@@ -0,0 +1,34 @@
+# micro-image
+#
+# Image configuration for the OE Micro Linux Distribuion (micro, micro-uclibc)
+#
+# This image basically consists of: libc, busybox, udev, sysv init, and a few
+# init scripts for running up the system.
+#
+# It is truely tiny and should build with most architectures/machines.
+#
+# The image is tested to build and run succesfully with the following machines:
+#
+#      * at91sam9263ek (jffs2 image size ~ 1 MB, uclibc)
+#      * x86
+#
+# Maintainer: Martin Lund <mgl@doredevelopment.dk>
+#
+
+# Install basic files only
+IMAGE_INSTALL = "base-files base-passwd"
+IMAGE_LINGUAS = ""
+
+# Use busybox as login manager
+IMAGE_LOGIN_MANAGER = "busybox"
+
+# Include minimum init and init scripts
+IMAGE_DEV_MANAGER = "udev"
+IMAGE_INIT_MANAGER = "sysvinit sysvinit-pidof"
+IMAGE_INITSCRIPTS = ""
+
+# Do not install target package management system
+ONLINE_PACKAGE_MANAGEMENT = "none"
+
+inherit image
+