aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-bsp/barebox
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-bsp/barebox')
-rw-r--r--recipes-bsp/barebox/barebox.inc63
-rw-r--r--recipes-bsp/barebox/barebox_2013.08.0.bb9
2 files changed, 72 insertions, 0 deletions
diff --git a/recipes-bsp/barebox/barebox.inc b/recipes-bsp/barebox/barebox.inc
new file mode 100644
index 00000000..0d5c127b
--- /dev/null
+++ b/recipes-bsp/barebox/barebox.inc
@@ -0,0 +1,63 @@
+DESCRIPTION = "Barebox - a bootloader that inherits the best of U-Boot and the Linux kernel"
+HOMEPAGE = "http://www.barebox.org/"
+SECTION = "bootloader"
+PROVIDES = "virtual/bootloader"
+PRIORITY = "optional"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=057bf9e50e1ca857d0eb97bfe4ba8e5d"
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+inherit kernel-arch
+
+EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX}"
+
+BAREBOX_BINARY ?= "barebox.bin"
+BAREBOX_IMAGE ?= "barebox-${MACHINE}-${PV}-${PR}.bin"
+BAREBOXENV_BIN ?= "bareboxenv-${MACHINE}-${PV}-${PR}.bin"
+BAREBOX_SYMLINK ?= "barebox-${MACHINE}.bin"
+BAREBOXENV_SYMLINK ?= "bareboxenv-${MACHINE}.bin"
+
+INSANE_SKIP_${PN} = "True"
+
+do_pre_configure() {
+ cp ${WORKDIR}/defconfig ${S}/.config
+ oe_runmake oldconfig
+}
+addtask pre_configure before do_configure after do_patch
+
+do_compile () {
+ if [ "${@base_contains('DISTRO_FEATURES', 'ld-is-gold', 'ld-is-gold', '', d)}" = "ld-is-gold" ] ; then
+ sed -i 's/$(CROSS_COMPILE)ld/$(CROSS_COMPILE)ld.bfd/g' Makefile
+ fi
+ unset LDFLAGS
+ unset CFLAGS
+ unset CPPFLAGS
+ oe_runmake all
+}
+
+do_deploy () {
+ install -d ${DEPLOY_DIR_IMAGE}
+ install ${S}/${BAREBOX_BINARY} ${DEPLOY_DIR_IMAGE}/${BAREBOX_IMAGE}
+
+ cd ${DEPLOY_DIR_IMAGE}
+ rm -f ${BAREBOX_SYMLINK}
+ ln -sf ${BAREBOX_IMAGE} ${BAREBOX_SYMLINK}
+
+ install -d ${STAGING_BINDIR_NATIVE}
+ cd ${S}
+ install -m 755 scripts/mkimage ${STAGING_BINDIR_NATIVE}/
+ install -m 755 scripts/bareboxenv ${STAGING_BINDIR_NATIVE}/
+}
+
+do_deploy[dirs] = "${S}"
+addtask deploy before do_build after do_compile
+
+do_env_deploy() {
+ install ${S}/common/barebox_default_env ${DEPLOY_DIR_IMAGE}/${BAREBOXENV_BIN}
+
+ cd ${DEPLOY_DIR_IMAGE}
+ rm -f ${BAREBOXENV_SYMLINK}
+ ln -sf ${BAREBOXENV_BIN} ${BAREBOXENV_SYMLINK}
+}
+addtask env_deploy before do_build after do_deploy
diff --git a/recipes-bsp/barebox/barebox_2013.08.0.bb b/recipes-bsp/barebox/barebox_2013.08.0.bb
new file mode 100644
index 00000000..e4e37179
--- /dev/null
+++ b/recipes-bsp/barebox/barebox_2013.08.0.bb
@@ -0,0 +1,9 @@
+require recipes-bsp/barebox/barebox.inc
+
+SRC_URI = "http://barebox.org/download/${PN}-${PV}.tar.bz2 \
+ file://defconfig"
+
+SRC_URI[md5sum] = "a61b97a2fedebc808d4b182c2ca18a0c"
+SRC_URI[sha256sum] = "d9e46dd3c68b04ab4cbc37135dc34907dbebef393da4b3e54abb203c295c1620"
+
+COMPATIBLE_MACHINE = "Invalid!"