diff options
Diffstat (limited to 'meta-openembedded/meta-initramfs/recipes-bsp/kexecboot')
3 files changed, 167 insertions, 0 deletions
diff --git a/meta-openembedded/meta-initramfs/recipes-bsp/kexecboot/kexecboot-cfg/icon.xpm b/meta-openembedded/meta-initramfs/recipes-bsp/kexecboot/kexecboot-cfg/icon.xpm new file mode 100644 index 0000000000..6e6fd776d8 --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-bsp/kexecboot/kexecboot-cfg/icon.xpm @@ -0,0 +1,43 @@ +/* XPM */ +static char * icon_xpm[] = { +"32 32 8 1", +" c None", +". c #D6DBDE", +"+ c #9BA6AE", +"@ c #60727D", +"# c #B8BFC5", +"$ c #A9E8F6", +"% c #12BCE4", +"& c #57D2EC", +" ", +" ", +" ", +" .++@@@@++. ", +" +@@@@@@@@@@@@+ ", +" #@@@@@@@@@@@@@@@@# ", +" +@@@@@@@@@@@@@@@@@@+ ", +" .@@@@@@@@++##+@@@@@@@@@. ", +" @@@@@@@. .@@@@@@@ ", +" +@@@@@+ $$$$ #@@@@@+ ", +" #@@@@@. $%%%%%%%%$ .@@@@@# ", +" @@@@@. &%%%%%%%%%%& .@@@@@ ", +" #@@@@+ %%%%%%%%%%%%%% +@@@@# ", +" @@@@@ &%%%%%%%%%%%%%%& @@@@@ ", +".@@@@. $%%%%%& $%%%%%& .@@@@.", +"+@@@@ %%%%% $%%%%%& @@@@+", +"+@@@+ %%%%$ $%%%%%& $$ +@@@+", +"@@@@+ $%%%% $%%%%%& $%$ +@@@@", +"@@@@# &%%%& &%%%%& $%%& #@@@@", +"@@@@. &%%%& %%%%& $%%%& .@@@@", +"@@@@# $%%%& &%%& &%%%$ #@@@@", +"+@@@+ $%%%% %%%%$ +@@@+", +"+@@@@ %%%%& &%%%% @@@@+", +"#@@@@ &%%%%& &%%%%& @@@@#", +" @@@@+ %%%%%%&$$&%%%%%% +@@@@ ", +" +@@@@. $%%%%%%%%%%%%%%$ .@@@@+ ", +" .@@@@@ $%%%%%%%%%%%%$ @@@@@. ", +" #++++. &%%%%%%%%& .++++# ", +" $&&%%&&$ ", +" ", +" ", +" "}; diff --git a/meta-openembedded/meta-initramfs/recipes-bsp/kexecboot/kexecboot-cfg_0.2.bb b/meta-openembedded/meta-initramfs/recipes-bsp/kexecboot/kexecboot-cfg_0.2.bb new file mode 100644 index 0000000000..804ec32350 --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-bsp/kexecboot/kexecboot-cfg_0.2.bb @@ -0,0 +1,60 @@ +SUMMARY = "Configuration files for kexecboot" +DESCRIPTION = "Default icon and boot.cfg for kexecboot linux-as-bootloader." +SECTION = "base" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +SRC_URI = "file://icon.xpm" + +S = "${WORKDIR}" + +do_install_prepend () { +echo '# /boot/boot.cfg - KEXECBOOT configuration file. +# +# First kernel stanza. +# Show this label in kexecboot menu. +# +LABEL=${KEXECBOOT_LABEL} +# +# Specify full kernel path on target. +KERNEL=/boot/${KERNEL_IMAGETYPE} +# +# Append this tags to the kernel cmdline. +APPEND=${CMDLINE} ${CMDLINE_DEBUG} +# +# Specify optional initrd/initramfs. +# INITRD=/boot/initramfs.cpio.gz +# +# Specify full path for a custom icon for the menu-item. +# If not set, use device-icons as default (NAND, SD, CF, ...). +# ICON=/boot/icon.xpm +# +# Priority of item in kexecboot menu. +# Items with highest priority will be shown at top of menu. +# Default: 0 (lowest, ordered by device ordering) +# PRIORITY=10 +# +# +# Second kernel stanza. +# LABEL=${KEXECBOOT_LABEL}-test +# KERNEL=/boot/${KERNEL_IMAGETYPE}-test +# APPEND=${CMDLINE} +#' > ${S}/boot.cfg +} +do_install () { + install -d ${D}/boot + install -m 0644 boot.cfg ${D}/boot/boot.cfg + install -m 0644 icon.xpm ${D}/boot/icon.xpm +} + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +FILES_${PN} += "/boot/*" + +CMDLINE ?= "" +CMDLINE_DEBUG ?= "quiet" + +INHIBIT_DEFAULT_DEPS = "1" + +# Note: for qvga the label is currently limited to about 24 chars +KEXECBOOT_LABEL ?= "${@d.getVar('DISTRO') or d.getVar('DISTRO_VERSION')}-${MACHINE}" diff --git a/meta-openembedded/meta-initramfs/recipes-bsp/kexecboot/kexecboot_git.bb b/meta-openembedded/meta-initramfs/recipes-bsp/kexecboot/kexecboot_git.bb new file mode 100644 index 0000000000..9f5dad7c64 --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-bsp/kexecboot/kexecboot_git.bb @@ -0,0 +1,64 @@ +########################### +# Configure options: +# +# --enable-static-linking compile kexecboot as static executable [default=no] +# --enable-fbui support framebuffer menu [default=yes] +# --enable-fbui-width limit FB UI width to specified value [default=no] +# --enable-fbui-height limit FB UI height to specified value [default=no] +# --enable-textui support console text user interface [default=no] +# --enable-cfgfiles support config files [default=yes] +# --enable-icons support custom icons (depends on fbui) [default=yes] +# --enable-zaurus compile Sharp Zaurus specific code [default=no] +# --enable-zimage compile with zImage support [default=yes] +# --enable-uimage compile with uImage support [default=no] +# --enable-machine-kernel look for machine-specific zImage kernel [default=no] +# --enable-devices-recreating +# enable devices re-creating [default=yes] +# --enable-debug enable debug output [default=no] +# --enable-host-debug allow for non-destructive executing of kexecboot on +# host system [default=no] +# --enable-numkeys enable menu item selection by keys [0-9] [default=yes] +# --enable-bg-buffer enable buffer for pre-drawed FB GUI background +# +# --enable-timeout allow to boot 1st kernel after timeout in seconds +# [default=no] +# --enable-delay specify delay before device scanning, allowing +# initialization of old CF/SD cards [default=1] +# --enable-bpp enable support of specified bpp modes +# (all,32,24,18,16,4,2,1) [default=all] +# --enable-evdev-rate change evdev (keyboard/mouse) repeat rate +# in milliseconds e.g. "1000,250" [default=no] +# --with-kexec-binary look for kexec binary at path +# [default="/usr/sbin/kexec"] +########################## +SUMMARY = "kexecboot linux-as-bootloader" +DESCRIPTION = "kexecboot is a graphical linux-as-bootloader implementation based on kexec." +HOMEPAGE = "http://kexecboot.org" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" +PV = "0.6+git${SRCPV}" +S = "${WORKDIR}/git" +SRC_URI = "git://github.com/kexecboot/kexecboot.git" +SRCREV = "4c4f127e79ac5b8d6b6e2fbb938ccbf12b04c531" +inherit autotools + +EXTRA_OECONF = "--enable-textui --enable-delay=2 --enable-evdev-rate=1000,250" + +do_install () { + install -d ${D}${bindir} + install -m 0755 kexecboot ${D}${bindir} + install -d ${D}/proc + install -d ${D}/mnt + install -d ${D}/dev + install -d ${D}/sys +} + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +FILES_${PN} += " ${bindir}/kexecboot /init /proc /mnt /dev /sys" + +pkg_postinst_${PN} () { + ln -sf ${bindir}/kexecboot $D/init +} + +BBCLASSEXTEND = "klibc" |