diff options
34 files changed, 368 insertions, 115 deletions
diff --git a/classes/base.bbclass b/classes/base.bbclass index e413afb2b3..670b97a72d 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -40,6 +40,20 @@ def base_conditional(variable, checkvalue, truevalue, falsevalue, d): else: return falsevalue +def base_contains(variable, checkvalue, truevalue, falsevalue, d): + import bb + if bb.data.getVar(variable,d,1).find(checkvalue) != -1: + return truevalue + else: + return falsevalue + +def base_both_contain(variable1, variable2, checkvalue, d): + import bb + if bb.data.getVar(variable1,d,1).find(checkvalue) != -1 and bb.data.getVar(variable2,d,1).find(checkvalue) != -1: + return checkvalue + else: + return "" + DEPENDS_prepend="${@base_dep_prepend(d)} " def base_set_filespath(path, d): diff --git a/classes/gconf.bbclass b/classes/gconf.bbclass index b0c5723873..686f8e6596 100644 --- a/classes/gconf.bbclass +++ b/classes/gconf.bbclass @@ -1,3 +1,5 @@ +DEPENDS += "gconf" + gconf_postinst() { if [ "$1" = configure ]; then if [ "x$D" != "x" ]; then diff --git a/classes/gtk-icon-cache.bbclass b/classes/gtk-icon-cache.bbclass new file mode 100644 index 0000000000..0f68e6812b --- /dev/null +++ b/classes/gtk-icon-cache.bbclass @@ -0,0 +1,38 @@ +FILES_${PN} += "${datadir}/icons/hicolor" + +gtk-icon-cache_postinst() { +if [ "x$D" != "x" ]; then + exit 1 +fi +gtk-update-icon-cache -q /usr/share/icons/hicolor +} + +gtk-icon-cache_postrm() { +gtk-update-icon-cache -q /usr/share/icons/hicolor +} + +python populate_packages_append () { + import os.path + packages = bb.data.getVar('PACKAGES', d, 1).split() + workdir = bb.data.getVar('WORKDIR', d, 1) + + for pkg in packages: + icon_dir = '%s/install/%s/%s/icons/hicolor' % (workdir, pkg, bb.data.getVar('datadir', d, 1)) + if not os.path.exists(icon_dir): + continue + + bb.note("adding gtk-icon-cache postinst and postrm scripts to %s" % pkg) + + postinst = bb.data.getVar('pkg_postinst_%s' % pkg, d, 1) or bb.data.getVar('pkg_postinst', d, 1) + if not postinst: + postinst = '#!/bin/sh\n' + postinst += bb.data.getVar('gtk-icon-cache_postinst', d, 1) + bb.data.setVar('pkg_postinst_%s' % pkg, postinst, d) + + postrm = bb.data.getVar('pkg_postrm_%s' % pkg, d, 1) or bb.data.getVar('pkg_postrm', d, 1) + if not postrm: + postrm = '#!/bin/sh\n' + postrm += bb.data.getVar('gtk-icon-cache_postrm', d, 1) + bb.data.setVar('pkg_postrm_%s' % pkg, postrm, d) +} + diff --git a/conf/bitbake.conf b/conf/bitbake.conf index 0a141f883e..9f94bae3f5 100644 --- a/conf/bitbake.conf +++ b/conf/bitbake.conf @@ -188,8 +188,6 @@ IMAGE_CMD_tar.bz2 = "cd ${IMAGE_ROOTFS} && tar -jcvf ${DEPLOY_DIR_IMAGE}/${IMAGE EXTRA_IMAGECMD = "" EXTRA_IMAGECMD_jffs2 = "--pad --little-endian --eraseblock=0x40000" EXTRA_IMAGECMD_squashfs = "-le -b 16384" -IMAGE_FSTYPE = "jffs2" -IMAGE_FSTYPES = "${IMAGE_FSTYPE}" IMAGE_ROOTFS_SIZE_ext2 = "65536" IMAGE_ROOTFS_SIZE_ext2.gz = "65536" @@ -389,7 +387,7 @@ AUTO_LIBNAME_PKGS = "${PACKAGES}" # This works for functions as well, they are really just environment variables. #OVERRIDES = "local:${MACHINE}:${DISTRO}:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}" # Alternative OVERRIDES to make compilation fail fast, we will enable it by default soon -OVERRIDES = "local:${MACHINE}:${DISTRO}:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:fail-fast" +OVERRIDES = "local:${MACHINE}:${DISTRO}:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:fail-fast:pn-${PN}" ################################################################## # Include the rest of the config files. @@ -409,7 +407,9 @@ require conf/sanity.conf # Weak variables (usually to retain backwards compatibility) ################################################################## +IMAGE_FSTYPES ?= "jffs2" PCMCIA_MANAGER ?= "pcmcia-cs" +MACHINE_TASK_PROVIDER ?= "task-bootstrap" ################################################################## diff --git a/conf/distro/openmn.conf b/conf/distro/openmn.conf index 0e3d36ed2d..8118acb1da 100644 --- a/conf/distro/openmn.conf +++ b/conf/distro/openmn.conf @@ -16,6 +16,6 @@ IPKG_EXTRA_ARCHS = "armv5te openmn" FEED_URIS = "mnci54##http://www.mn-solutions.de/feed/mnci54/base" -IMAGE_FSTYPE = "jffs2" +IMAGE_FSTYPES = "jffs2" EXTRA_IMAGECMD_jffs2 = "--pad=0x1ec0000 --eraseblock=0x40000" IMAGE_CMD_jffs2 = "mkfs.jffs2 --root=${IMAGE_ROOTFS} --faketime --output=${DEPLOY_DIR_IMAGE}/rootfs.${MACHINE} ${EXTRA_IMAGECMD}" diff --git a/conf/distro/unslung.conf b/conf/distro/unslung.conf index 0c757edc45..da1efa9cc4 100644 --- a/conf/distro/unslung.conf +++ b/conf/distro/unslung.conf @@ -34,7 +34,7 @@ FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-reg INHERIT += " package_ipk nslu2-jffs2-image" -IMAGE_FSTYPE = "jffs2" +IMAGE_FSTYPES = "jffs2" UNSLUNG_DEVICE_TABLE = "${@bb.which(bb.data.getVar('BBPATH', d, 1), 'files/device_table-unslung.txt')}" EXTRA_IMAGECMD_jffs2 = "--no-eraseblock-headers --pad --big-endian --eraseblock=0x20000 -D ${UNSLUNG_DEVICE_TABLE}" diff --git a/conf/machine/akita.conf b/conf/machine/akita.conf index 005a70e664..0358864c70 100644 --- a/conf/machine/akita.conf +++ b/conf/machine/akita.conf @@ -4,6 +4,8 @@ include conf/machine/include/zaurus-clamshell.conf include conf/machine/include/zaurus-clamshell-2.6.conf -IPKG_EXTRA_ARCHS += "armv4 armv4t iwmmxt" + +IPKG_EXTRA_ARCHS += "iwmmxt" +IMAGE_FSTYPES ?= "jffs2" ROOT_FLASH_SIZE = "58" diff --git a/conf/machine/c7x0.conf b/conf/machine/c7x0.conf index 0bd9623526..4b1d8edb80 100644 --- a/conf/machine/c7x0.conf +++ b/conf/machine/c7x0.conf @@ -5,5 +5,7 @@ include conf/machine/include/zaurus-clamshell.conf include conf/machine/include/zaurus-clamshell-2.6.conf +IMAGE_FSTYPES ?= "jffs2" + ROOT_FLASH_SIZE = "25" # yes, we are aware that the husky (c760,c860) has 54MB rootfs, but we don't make a special image for it. diff --git a/conf/machine/epia.conf b/conf/machine/epia.conf index dd6b0f0b93..e82da27574 100644 --- a/conf/machine/epia.conf +++ b/conf/machine/epia.conf @@ -1,7 +1,7 @@ TARGET_ARCH = "i586" TARGET_VENDOR = "-oe" PREFERRED_PROVIDER_virtual/kernel = "linux-epia" -IMAGE_FSTYPE = "ext2.gz" +IMAGE_FSTYPES = "ext2.gz" BOOTSTRAP_EXTRA_RDEPENDS = "pciutils udev kernel-modules" udevdir = "/dev" OLDEST_KERNEL = "2.6.5" diff --git a/conf/machine/include/poodle-2.6.conf b/conf/machine/include/poodle-2.6.conf index 1b128ea6cb..eff0ad4c7c 100644 --- a/conf/machine/include/poodle-2.6.conf +++ b/conf/machine/include/poodle-2.6.conf @@ -1,39 +1 @@ -PREFERRED_PROVIDER_virtual/kernel = "linux-openzaurus" - -PCMCIA_MANAGER ?= "pcmciautils" - -BOOTSTRAP_EXTRA_RDEPENDS += "kernel udev sysfsutils spectrum-fw \ -${PCMCIA_MANAGER} apm wireless-tools irda-utils udev-utils keymaps hostap-utils prism3-firmware prism3-support \ -ppp ppp-dialin alsa-utils-alsactl alsa-utils-alsamixer module-init-tools alsa-conf zaurusd" - -# Ethernet modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-pcnet-cs" -# NFS Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-nfs kernel-module-lockd kernel-module-sunrpc" -# Crypto Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-des kernel-module-md5" -# SMB and CRAMFS -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-smbfs kernel-module-cramfs" -# Serial Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-8250 kernel-module-serial-cs" -# Bluetooth Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-bluetooth kernel-module-l2cap kernel-module-rfcomm kernel-module-hci-vhci \ - kernel-module-bnep kernel-module-hidp kernel-module-hci-uart kernel-module-sco \ - kernel-module-bt3c-cs kernel-module-bluecard-cs kernel-module-btuart-cs kernel-module-dtl1-cs" -# Infrared Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-pxaficp-ir kernel-module-irda kernel-module-ircomm \ - kernel-module-ircomm-tty kernel-module-irlan kernel-module-irnet kernel-module-ir-usb" - -# USB Gadget Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-gadgetfs kernel-module-g-file-storage \ - kernel-module-g-serial kernel-module-g-ether" - -# Wireless Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-hostap kernel-module-hostap-cs \ - kernel-module-hermes kernel-module-orinoco \ - kernel-module-orinoco-cs kernel-module-spectrum-cs \ - hostap-conf orinoco-conf" - -# Sound Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-snd-mixer-oss kernel-module-snd-pcm-oss" -BOOTSTRAP_EXTRA_RDEPENDS_append_poodle += " kernel-module-snd-soc-poodle " +require conf/machine/include/zaurus-clamshell-2.6.conf diff --git a/conf/machine/include/tosa-2.6.conf b/conf/machine/include/tosa-2.6.conf index c7805c36fe..6831b0ea91 100644 --- a/conf/machine/include/tosa-2.6.conf +++ b/conf/machine/include/tosa-2.6.conf @@ -1,6 +1,6 @@ include conf/machine/include/zaurus-clamshell-2.6.conf # wlan-ng Modules -BOOTSTRAP_EXTRA_RDEPENDS += "wlan-ng-modules-usb" +MACHINE_EXTRA_RDEPENDS += "wlan-ng-modules-usb" # WM97xx Modules -#BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-wm97xx-core kernel-module-wm9705 kernel-module-pxa-wm97xx" +#MACHINE_EXTRA_RRECOMMENDS += "kernel-module-wm97xx-core kernel-module-wm9705 kernel-module-pxa-wm97xx" diff --git a/conf/machine/include/tune-arm926ejs.conf b/conf/machine/include/tune-arm926ejs.conf index 5e2f6b7c62..ce1d4f7203 100644 --- a/conf/machine/include/tune-arm926ejs.conf +++ b/conf/machine/include/tune-arm926ejs.conf @@ -1,3 +1,5 @@ -#if gcc breaks change arm926ejs to arm926ej-s +# For gcc 3.x you need: TARGET_CC_ARCH = "-march=armv5te -mtune=arm926ejs" +# For gcc 4.x you need: +#TARGET_CC_ARCH = "-march=armv5te -mtune=arm926ej-s" PACKAGE_ARCH = "armv5te" diff --git a/conf/machine/include/zaurus-clamshell-2.6.conf b/conf/machine/include/zaurus-clamshell-2.6.conf index 2433c5a748..e0a9e38e91 100644 --- a/conf/machine/include/zaurus-clamshell-2.6.conf +++ b/conf/machine/include/zaurus-clamshell-2.6.conf @@ -6,42 +6,15 @@ PREFERRED_VERSION_wpa_supplicant = "0.4.7" PCMCIA_MANAGER ?= "pcmciautils" -BOOTSTRAP_EXTRA_RDEPENDS += "kernel udev sysfsutils spectrum-fw \ -${PCMCIA_MANAGER} apm wireless-tools irda-utils udev-utils keymaps hostap-utils prism3-firmware prism3-support \ -ppp ppp-dialin wpa-supplicant-nossl alsa-utils-alsactl alsa-utils-alsamixer module-init-tools alsa-conf zaurusd" +MACHINE_FEATURES = "kernel26 apm alsa pcmcia bluetooth irda usbgadget" +MACHINE_FEATURES_akita = "kernel26 apm alsa pcmcia bluetooth irda usbgadget usbhost" +MACHINE_FEATURES_spitz = "kernel26 apm alsa pcmcia bluetooth irda usbgadget usbhost ext2" -# Ethernet modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-pcnet-cs" -# NFS Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-nfs kernel-module-lockd kernel-module-sunrpc" -# Crypto Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-des kernel-module-md5" -# SMB and CRAMFS -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-smbfs kernel-module-cramfs" -# Serial Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-8250 kernel-module-serial-cs" -# Bluetooth Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-bluetooth kernel-module-l2cap kernel-module-rfcomm kernel-module-hci-vhci \ - kernel-module-bnep kernel-module-hidp kernel-module-hci-uart kernel-module-sco \ - kernel-module-bt3c-cs kernel-module-bluecard-cs kernel-module-btuart-cs kernel-module-dtl1-cs" -# Infrared Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-pxaficp-ir kernel-module-irda kernel-module-ircomm \ - kernel-module-ircomm-tty kernel-module-irlan kernel-module-irnet kernel-module-ir-usb" -# USB Gadget Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-gadgetfs kernel-module-g-file-storage \ - kernel-module-g-serial kernel-module-g-ether" +MACHINE_EXTRA_RDEPENDS = "zaurusd" +MACHINE_EXTRA_RRECOMMENDS_c7x0 = "kernel-module-snd-soc-corgi" +MACHINE_EXTRA_RRECOMMENDS_akita = "kernel-module-snd-soc-spitz" +MACHINE_EXTRA_RRECOMMENDS_spitz = "kernel-module-snd-soc-spitz" +MACHINE_EXTRA_RRECOMMENDS_poodle = "kernel-module-snd-soc-poodle" -# Wireless Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-hostap kernel-module-hostap-cs \ - kernel-module-hermes kernel-module-orinoco \ - kernel-module-orinoco-cs kernel-module-spectrum-cs \ - hostap-conf orinoco-conf" - -# Sound Modules -BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-snd-mixer-oss kernel-module-snd-pcm-oss" - -BOOTSTRAP_EXTRA_RDEPENDS_append_c7x0 += " kernel-module-snd-soc-corgi " -BOOTSTRAP_EXTRA_RDEPENDS_append_akita += " kernel-module-snd-soc-spitz " -BOOTSTRAP_EXTRA_RDEPENDS_append_spitz += " kernel-module-snd-soc-spitz " -BOOTSTRAP_EXTRA_RDEPENDS_append_poodle += " kernel-module-snd-soc-poodle " +MACHINE_TASK_PROVIDER = "task-base"
\ No newline at end of file diff --git a/conf/machine/include/zaurus-clamshell.conf b/conf/machine/include/zaurus-clamshell.conf index f85c2a1221..97728fa5b6 100644 --- a/conf/machine/include/zaurus-clamshell.conf +++ b/conf/machine/include/zaurus-clamshell.conf @@ -14,7 +14,7 @@ IMAGE_CMD_jffs2 = "mkfs.jffs2 --root=${IMAGE_ROOTFS} --faketime \ # add a summary to the jffs2 file to make it mount a lot faster EXTRA_IMAGECMD_jffs2 += "&& sumtool -i ${T}/${IMAGE_NAME}.rootfs.jffs2 \ -o ${T}/${IMAGE_NAME}.rootfs.jffs2.summary \ - --eraseblock=0x4000 -l -p" + --eraseblock=0x4000 -l -p" IMAGE_CMD_jffs2 += "; cat ${STAGING_LIBDIR}/sharp-flash-header/header-c700.bin \ ${T}/${IMAGE_NAME}.rootfs.jffs2.summary > ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.summary.img" diff --git a/conf/machine/ipaq-pxa270.conf b/conf/machine/ipaq-pxa270.conf index fa3675fb59..d6281e3016 100644 --- a/conf/machine/ipaq-pxa270.conf +++ b/conf/machine/ipaq-pxa270.conf @@ -18,6 +18,8 @@ EXTRA_IMAGECMD_jffs2 = "; sumtool -i ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jf -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs-summary.jffs2 \ -e 256KiB -p" +IMAGE_FSTYPES ?= "jffs2" + MODUTILS = "26" PCMCIA_MANAGER = "pcmciautils" BOOTSTRAP_EXTRA_RDEPENDS = "kernel ipaq-boot-params " diff --git a/conf/machine/netvista.conf b/conf/machine/netvista.conf index 9d483d4c55..2b9b572024 100644 --- a/conf/machine/netvista.conf +++ b/conf/machine/netvista.conf @@ -7,13 +7,13 @@ PREFERRED_PROVIDER_xserver = "xserver-xorg" PREFERRED_PROVIDER_virtual/kernel = "linux-netvista" BOOTSTRAP_EXTRA_RDEPENDS = "kernel pciutils" #BOOTSTRAP_EXTRA_RRECOMMENDS = "hostap-modules" -#IMAGE_FSTYPE = "cramfs" +#IMAGE_FSTYPES = "cramfs" EXTRA_IMAGEDEPENDS = "" SERIAL_CONSOLE = "ttyS0 115200 vt100" TARGET_VENDOR = "-oe" PREFERRED_PROVIDERS_append = " virtual/kernel:linux-netvista" -IMAGE_FSTYPE = "ext2" +IMAGE_FSTYPES = "ext2" GUI_MACHINE_CLASS = "bigscreen" GPE_EXTRA_INSTALL += "gaim sylpheed gpe-mini-browser abiword" diff --git a/conf/machine/nokia770.conf b/conf/machine/nokia770.conf index edd7213346..eee389faf1 100644 --- a/conf/machine/nokia770.conf +++ b/conf/machine/nokia770.conf @@ -21,6 +21,8 @@ include conf/machine/include/tune-arm926ejs.conf ROOT_FLASH_SIZE = "123" EXTRA_IMAGECMD_jffs2_nokia770 = "--pad --little-endian --eraseblock=0x20000" +IMAGE_FSTYPES ?= "jffs2" + # serial console port on devboard rev. B3 SERIAL_CONSOLE = "115200 ttyS0" diff --git a/conf/machine/spitz.conf b/conf/machine/spitz.conf index 3d80a41486..b8851f6170 100644 --- a/conf/machine/spitz.conf +++ b/conf/machine/spitz.conf @@ -5,15 +5,14 @@ include conf/machine/include/zaurus-clamshell.conf include conf/machine/include/zaurus-clamshell-2.6.conf -IPKG_EXTRA_ARCHS += "armv4 armv4t iwmmxt" - PIVOTBOOT_EXTRA_RDEPENDS += "pivotinit ${PCMCIA_MANAGER}" PIVOTBOOT_EXTRA_RRECOMMENDS += "" # Useful things for the built-in Harddisk BOOTSTRAP_EXTRA_RDEPENDS += "hdparm e2fsprogs e2fsprogs-e2fsck e2fsprogs-mke2fs" -IMAGE_FSTYPES = "jffs2 tar.gz" +IPKG_EXTRA_ARCHS += "iwmmxt" +IMAGE_FSTYPES ?= "tar.gz" ROOT_FLASH_SIZE = "100" # actually that should really read ROOTFS_SIZE = "100", because with modern kernels, diff --git a/conf/machine/sun4cdm.conf b/conf/machine/sun4cdm.conf index 5376be0dda..36974d1336 100644 --- a/conf/machine/sun4cdm.conf +++ b/conf/machine/sun4cdm.conf @@ -1,6 +1,6 @@ TARGET_ARCH = "sparc" -IMAGE_FSTYPE = "cramfs" +IMAGE_FSTYPES = "cramfs" BOOTSTRAP_EXTRA_RDEPENDS = "kernel module-init-tools udev" diff --git a/packages/images/bootstrap-image-bootchart.bb b/packages/images/bootstrap-image-bootchart.bb index 68cfac7490..04b1aa299d 100644 --- a/packages/images/bootstrap-image-bootchart.bb +++ b/packages/images/bootstrap-image-bootchart.bb @@ -1,8 +1,8 @@ export IMAGE_BASENAME = "bootstrap-image-bootchart" export IMAGE_LINGUAS = "" -export IPKG_INSTALL = "task-bootstrap bootchart acct" +export IPKG_INSTALL = "${MACHINE_TASK_PROVIDER} bootchart acct" -DEPENDS = "task-bootstrap bootchart" +DEPENDS = "${MACHINE_TASK_PROVIDER} bootchart" RDEPENDS = "acct" inherit image_ipk diff --git a/packages/images/bootstrap-image.bb b/packages/images/bootstrap-image.bb index 1791dd8f56..50c1a8f354 100644 --- a/packages/images/bootstrap-image.bb +++ b/packages/images/bootstrap-image.bb @@ -1,8 +1,8 @@ export IMAGE_BASENAME = "bootstrap-image" export IMAGE_LINGUAS = "" -export IPKG_INSTALL = "task-bootstrap" +export IPKG_INSTALL = "${MACHINE_TASK_PROVIDER}" -DEPENDS = "task-bootstrap" +DEPENDS = "${MACHINE_TASK_PROVIDER}" inherit image_ipk diff --git a/packages/images/dvb-image.bb b/packages/images/dvb-image.bb index fa964b4490..b1c714c79e 100644 --- a/packages/images/dvb-image.bb +++ b/packages/images/dvb-image.bb @@ -2,7 +2,7 @@ export IMAGE_BASENAME = "dvb-image" IMAGE_LINGUAS = "" -DVB_PACKAGES = "task-bootstrap task-dvb" +DVB_PACKAGES = "${MACHINE_TASK_PROVIDER} task-dvb" export IPKG_INSTALL = "${DVB_PACKAGES}" DEPENDS = "${DVB_PACKAGES}" diff --git a/packages/images/e-image-core.bb b/packages/images/e-image-core.bb index 9a1ed51a1a..f41f04ee23 100644 --- a/packages/images/e-image-core.bb +++ b/packages/images/e-image-core.bb @@ -5,7 +5,7 @@ PR = "r1" export IMAGE_BASENAME = "e-image-core" export IMAGE_LINGUAS = "" -DEPENDS = "task-bootstrap \ +DEPENDS = "${MACHINE_TASK_PROVIDER} \ xserver-kdrive \ task-e-x11-core" @@ -16,6 +16,6 @@ PREFERRED_PROVIDER_virtual/imlib2 = "imlib2-x11" PREFERRED_PROVIDER_virtual/libxine = "libxine-x11" PREFERRED_PROVIDER_libx11 = "libx11" -export IPKG_INSTALL = "task-bootstrap task-e-x11-core xserver-kdrive-fbdev glibc-charmap-utf-8 glibc-localedata-i18n" +export IPKG_INSTALL = "${MACHINE_TASK_PROVIDER} task-e-x11-core xserver-kdrive-fbdev glibc-charmap-utf-8 glibc-localedata-i18n" inherit image_ipk diff --git a/packages/images/gpe-image.bb b/packages/images/gpe-image.bb index 92bed0dd5c..75aa14a0f4 100644 --- a/packages/images/gpe-image.bb +++ b/packages/images/gpe-image.bb @@ -24,11 +24,11 @@ GPE_EXTRA_INSTALL += ${GPE_BIGFLASH_INSTALL} XSERVER ?= "xserver-kdrive-fbdev" -DEPENDS = "task-bootstrap task-gpe" +DEPENDS = "${MACHINE_TASK_PROVIDER} task-gpe" RDEPENDS = "${IPKG_INSTALL}" export IPKG_INSTALL = "\ - task-bootstrap \ + ${MACHINE_TASK_PROVIDER} \ gpe-task-base \ gpe-task-pim \ gpe-task-settings \ diff --git a/packages/images/maemo-image.bb b/packages/images/maemo-image.bb index 2adc88b958..19157b6a5f 100644 --- a/packages/images/maemo-image.bb +++ b/packages/images/maemo-image.bb @@ -15,11 +15,11 @@ MAEMO_EXTRA_INSTALL = "osso-af-services osso-af-base-apps scap dosfstools" XSERVER ?= "xserver-kdrive-omap" -DEPENDS = "task-bootstrap \ +DEPENDS = "${MACHINE_TASK_PROVIDER} \ meta-maemo \ ${MAEMO_EXTRA_DEPENDS}" -export IPKG_INSTALL = "task-bootstrap maemo-task-base maemo-task-theme \ +export IPKG_INSTALL = "${MACHINE_TASK_PROVIDER} maemo-task-base maemo-task-theme \ maemo-task-apps ${MAEMO_EXTRA_INSTALL} \ ${XSERVER}" diff --git a/packages/images/mythfront-image.bb b/packages/images/mythfront-image.bb index 7836258940..31992e4bc8 100644 --- a/packages/images/mythfront-image.bb +++ b/packages/images/mythfront-image.bb @@ -4,7 +4,7 @@ IMAGE_ROOTFS_SIZE_ext2 = "85000" IMAGE_ROOTFS_SIZE_ext2.gz = "85000" IMAGE_LINGUAS = "" -MYTHFRONT_PACKAGES = "task-bootstrap task-mythfront" +MYTHFRONT_PACKAGES = "${MACHINE_TASK_PROVIDER} task-mythfront" export IPKG_INSTALL = "${MYTHFRONT_PACKAGES}" DEPENDS = "${MYTHFRONT_PACKAGES}" diff --git a/packages/images/opie-image.bb b/packages/images/opie-image.bb index c786f67e0b..b7c68ec505 100644 --- a/packages/images/opie-image.bb +++ b/packages/images/opie-image.bb @@ -6,12 +6,12 @@ FEED_URIS_append_familiar = " opie##http://familiar.handhelds.org/releases/${D LICENSE = "MIT" PR = "r21" -DEPENDS = "task-bootstrap task-opie" +DEPENDS = "${MACHINE_TASK_PROVIDER} task-opie" RDEPENDS = "${INSTALL_PACKAGES}" extra_stuff := '${@base_conditional("ROOT_FLASH_SIZE", "24", "", "task-opie-extra-games task-opie-extra-apps task-opie-extra-styles",d)}' -INSTALL_PACKAGES = "task-bootstrap task-opie-base task-opie-base-applets \ +INSTALL_PACKAGES = "${MACHINE_TASK_PROVIDER} task-opie-base task-opie-base-applets \ task-opie-base-inputmethods task-opie-base-apps \ task-opie-base-settings task-opie-base-decorations \ task-opie-base-styles task-opie-base-pim \ diff --git a/packages/images/sdl-image.bb b/packages/images/sdl-image.bb index 0f3254b56e..79c8094f34 100644 --- a/packages/images/sdl-image.bb +++ b/packages/images/sdl-image.bb @@ -2,8 +2,8 @@ LICENSE = MIT export IMAGE_BASENAME = "sdl-image" -DEPENDS = "task-bootstrap task-sdl" +DEPENDS = "${MACHINE_TASK_PROVIDER} task-sdl" -export IPKG_INSTALL = "task-bootstrap sdl-base" +export IPKG_INSTALL = "${MACHINE_TASK_PROVIDER} sdl-base" inherit image_ipk diff --git a/packages/images/sectest-gpe-image.bb b/packages/images/sectest-gpe-image.bb index be7f28fb91..1ddd022d08 100644 --- a/packages/images/sectest-gpe-image.bb +++ b/packages/images/sectest-gpe-image.bb @@ -21,11 +21,11 @@ GPE_EXTRA_INSTALL += "${GPE_EXTRA_INSTALL_${GUI_MACHINE_CLASS}}" XSERVER ?= "xserver-kdrive-fbdev" -DEPENDS = "task-bootstrap task-gpe" +DEPENDS = "${MACHINE_TASK_PROVIDER} task-gpe" RDEPENDS = "${IPKG_INSTALL}" export IPKG_INSTALL = "\ - task-bootstrap \ + ${MACHINE_TASK_PROVIDER} \ gpe-task-base \ gpe-task-pim \ gpe-task-settings \ diff --git a/packages/images/twin-image.bb b/packages/images/twin-image.bb index 7015f7020c..f609dfd07e 100644 --- a/packages/images/twin-image.bb +++ b/packages/images/twin-image.bb @@ -1,13 +1,13 @@ export IMAGE_BASENAME="twin-image" -DEPENDS = 'task-bootstrap \ +DEPENDS = '${MACHINE_TASK_PROVIDER} \ twin \ orpheus \ nano \ vim \ mutt' -export IPKG_INSTALL = 'task-bootstrap \ +export IPKG_INSTALL = '${MACHINE_TASK_PROVIDER} \ twin \ orpheus \ nano \ diff --git a/packages/images/uml-image.bb b/packages/images/uml-image.bb index 6ebbf04537..5b6981488e 100644 --- a/packages/images/uml-image.bb +++ b/packages/images/uml-image.bb @@ -6,7 +6,7 @@ export IMAGE_BASENAME = "uml-image" OPIE_LIBS = "qte qpf-bitstream-vera libqpe-opie libopie2" OPIE_BASE = "opie-qcop opie-quicklauncher opie-taskbar" -DEPENDS = "task-bootstrap" +DEPENDS = "${MACHINE_TASK_PROVIDER}" export IPKG_INSTALL = "${DEPENDS}" inherit image_ipk diff --git a/packages/images/xfce-image.bb b/packages/images/xfce-image.bb index 5605a6b2ee..f861b9e6dd 100644 --- a/packages/images/xfce-image.bb +++ b/packages/images/xfce-image.bb @@ -5,7 +5,7 @@ IMAGE_LINGUAS = "" X_DEPENDS = "virtual/xserver" X_RDEPENDS = "xserver-kdrive-fbdev" -XFCE_DEPENDS = "task-bootstrap task-xfce-base" +XFCE_DEPENDS = "${MACHINE_TASK_PROVIDER} task-xfce-base" XFCE_RDEPENDS = "${XFCE_DEPENDS}" export IPKG_INSTALL = "${X_RDEPENDS} ${XFCE_RDEPENDS}" diff --git a/packages/images/xterminal-image.bb b/packages/images/xterminal-image.bb index 2b98ec98fc..d6cc7b1640 100644 --- a/packages/images/xterminal-image.bb +++ b/packages/images/xterminal-image.bb @@ -2,7 +2,7 @@ export IMAGE_BASENAME = "xterminal-image" IMAGE_LINGUAS = "" -XTERMINAL_PACKAGES = "task-bootstrap task-xterminal" +XTERMINAL_PACKAGES = "${MACHINE_TASK_PROVIDER} task-xterminal" export IPKG_INSTALL = "${XTERMINAL_PACKAGES}" DEPENDS = "${XTERMINAL_PACKAGES}" diff --git a/packages/tasks/task-base.bb b/packages/tasks/task-base.bb new file mode 100644 index 0000000000..61b8744105 --- /dev/null +++ b/packages/tasks/task-base.bb @@ -0,0 +1,255 @@ +DESCRIPTION = "Merge machine and distro options to create a basic machine task/package" +MAINTAINER = "Richard Purdie <richard@openedhand.com>" +PR = "r0" + +PACKAGES = "task-base \ + task-base-oh-minimal" + +ALLOW_EMPTY = "1" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +# Valid only in MACHINE_FEATURES: +# +# kernel24 +# kernel26 +# apm + +# Valid only in DISTO_FEATURES: +# +# nfs +# smbfs +# ipsec +# wifi +# ppp + +# Valid COMBINED_FEATURES: +# (These features need to be supported by both the machine and the distro) +# +# alsa +# bluetooth +# ext2 +# irda +# pcmcia +# usbgadget +# usbhost + + +MACHINE_FEATURES ?= "kernel26" +DISTRO_FEATURES ?= "" + +DISTRO_EXTRA_RDEPENDS ?= "" +DISTRO_EXTRA_RRECOMMENDS ?= "" +MACHINE_EXTRA_RDEPENDS ?= "" +MACHINE_EXTRA_RRECOMMENDS ?= "" +MACHINE_ESSENTIAL_EXTRA_RDEPENDS ?= "" +MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS ?= "" + + +COMBINED_FEATURES = "\ + ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "alsa", d)} \ + ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "bluetooth", d)} \ + ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "ext2", d)} \ + ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "irda", d)} \ + ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "pcmcia", d)} \ + ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "usbgadget", d)} \ + ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "usbhost", d)}" + + +# +# task-base +# +RDEPENDS_task-base = "\ + kernel \ + ${@base_contains("MACHINE_FEATURES", "kernel26", "${task-base-kernel26-rdepends}", "",d)} \ + ${@base_contains("MACHINE_FEATURES", "apm", "${task-base-apm-rdepends}", "",d)} \ + ${@base_contains("COMBINED_FEATURES", "alsa", "${task-base-alsa-rdepends}", "",d)} \ + ${@base_contains("COMBINED_FEATURES", "ext2", "${task-base-ext2-rdepends}", "",d)} \ + ${@base_contains("COMBINED_FEATURES", "irda", "${task-base-irda-rdepends}", "",d)} \ + ${@base_contains("COMBINED_FEATURES", "pcmcia", "${task-base-pcmcia-rdepends}", "",d)} \ + ${@base_contains("DISTRO_FEATURES", "ipsec", "${task-distro-ipsec-rdepends}", "",d)} \ + ${@base_contains("DISTRO_FEATURES", "ppp", "${task-distro-ppp-rdepends}", "",d)} \ + ${@base_contains("DISTRO_FEATURES", "wifi", "${task-distro-wifi-rdepends}", "",d)} \ + ${MACHINE_ESSENTIAL_EXTRA_RDEPENDS} \ + ${MACHINE_EXTRA_RDEPENDS} \ + ${DISTRO_EXTRA_RDEPENDS}" + +RRECOMMENDS_task-base = "\ + ${@base_contains("MACHINE_FEATURES", "kernel26", "${task-base-kernel26-extras-rrecommends}", "",d)} \ + ${@base_contains("COMBINED_FEATURES", "alsa", "${task-base-alsa-rrecommends}", "",d)} \ + ${@base_contains("COMBINED_FEATURES", "pcmcia", "${task-base-pcmcia-rrecommends}", "",d)} \ + ${@base_contains("COMBINED_FEATURES", "bluetooth", "${task-base-bluetooth-rrecommends}", "",d)} \ + ${@base_contains("COMBINED_FEATURES", "irda", "${task-base-irda-rrecommends}", "",d)} \ + ${@base_contains("COMBINED_FEATURES", "usbgadget", "${task-base-usbgadget-rrecommends}", "",d)} \ + ${@base_contains("COMBINED_FEATURES", "usbhost", "${task-base-usbhost-rrecommends}", "",d)} \ + ${@base_contains("DISTRO_FEATURES", "ppp", "${task-distro-ppp-rrecommends}", "",d)} \ + ${@base_contains("DISTRO_FEATURES", "nfs", "${task-distro-nfs-rrecommends}", "",d)} \ + ${@base_contains("DISTRO_FEATURES", "ipsec", "${task-distro-ipsec-rrecommends}", "",d)} \ + ${@base_contains("DISTRO_FEATURES", "cramfs", "${task-distro-cramfs-rrecommends}", "",d)} \ + ${MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS} \ + ${MACHINE_EXTRA_RRECOMMENDS} \ + ${DISTRO_EXTRA_RRECOMMENDS}" + + +# +# task-base-oh-minimal +# An example of a small cut down machine configuration +# +RDEPENDS_task-base-oh-minimal = "\ + kernel \ + ${@base_contains("MACHINE_FEATURES", "kernel26", "${task-base-kernel26-rdepends}", "",d)} \ + ${@base_contains("MACHINE_FEATURES", "apm", "${task-base-apm-rdepends}", "",d)} \ + ${@base_contains("COMBINED_FEATURES", "pcmcia", "${PCMCIA_MANAGER}", "",d)} \ + ${MACHINE_ESSENTIAL_EXTRA_RDEPENDS}" + +RRECOMMENDS_task-base-minimal = "\ + ${MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS}" + +task-base-kernel26-rdepends = "\ + udev \ + keymaps \ + sysfsutils \ + module-init-tools" + +task-base-kernel26-extras-rrecommends = "\ + kernel-module-input \ + kernel-module-uinput" + +task-base-apm-rdepends = "\ + apm \ + apmd \ + ${@base_contains("MACHINE_FEATURES", "kernel24", "network-suspend-scripts", "",d)}" + +task-base-ext2-rdepends = "\ + hdparm \ + e2fsprogs \ + e2fsprogs-e2fsck \ + e2fsprogs-mke2fs" + +task-base-alsa-rdepends = "\ + alsa-utils-alsactl \ + alsa-utils-alsamixer \ + alsa-conf" + +task-base-alsa-rrecommends = "\ + kernel-module-snd-mixer-oss \ + kernel-module-snd-pcm-oss" + +task-base-pcmcia-rdepends = "\ + ${PCMCIA_MANAGER} \ + ${@base_contains("DISTRO_FEATURES", "wifi", "prism3-firmware", "",d)} \ + ${@base_contains("DISTRO_FEATURES", "wifi", "prism3-support", "",d)} \ + ${@base_contains("DISTRO_FEATURES", "wifi", "spectrum-fw", "",d)} \ + ${@base_contains("DISTRO_FEATURES", "wifi", "hostap-conf", "",d)} \ + ${@base_contains("DISTRO_FEATURES", "wifi", "orinoco-conf", "",d)}" + +task-base-pcmcia-rrecommends = "\ + kernel-module-airo-cs \ + kernel-module-pcnet-cs \ + kernel-module-serial-cs \ + kernel-module-hostap-cs \ + kernel-module-ide-cs \ + ${@base_contains("DISTRO_FEATURES", "wifi", "kernel-module-orinoco-cs", "",d)} \ + ${@base_contains("DISTRO_FEATURES", "wifi", "kernel-module-spectrum-cs", "",d)}" + +task-base-bluetooth-rrecommends = "\ + kernel-module-bluetooth \ + kernel-module-l2cap \ + kernel-module-rfcomm \ + kernel-module-hci-vhci \ + kernel-module-bnep \ + kernel-module-hidp \ + kernel-module-hci-uart \ + kernel-module-sco \ + ${@base_contains("COMBINED_FEATURES", "pcmcia", "kernel-module-bluetooth3c-cs", "",d)} \ + ${@base_contains("COMBINED_FEATURES", "pcmcia", "kernel-module-bluecard-cs", "",d)} \ + ${@base_contains("COMBINED_FEATURES", "pcmcia", "kernel-module-bluetoothuart-cs", "",d)} \ + ${@base_contains("COMBINED_FEATURES", "pcmcia", "kernel-module-dtl1-cs", "",d)}" + +task-base-irda-rdepends = "\ + irda-utils" + +task-base-irda-rrecommends = "\ + kernel-module-pxaficp-ir \ + kernel-module-irda \ + kernel-module-ircomm \ + kernel-module-ircomm-tty \ + kernel-module-irlan \ + kernel-module-irnet \ + kernel-module-irport \ + kernel-module-irtty \ + kernel-module-ir-usb" + +task-base-usbgadget-rrecommends = "\ + kernel-module-gadgetfs \ + kernel-module-g-file-storage \ + kernel-module-g-serial \ + kernel-module-g-ether" + +task-base-usbhost-rrecommends = "\ + kernel-module-ohci-hcd \ + kernel-module-usbcore \ + kernel-module-usbhid \ + kernel-module-usbnet \ + kernel-module-sd-mod \ + kernel-module-scsi-mod \ + kernel-module-usbmouse \ + kernel-module-mousedev \ + kernel-module-hci-usb \ + kernel-module-usbserial \ + kernel-module-usb-storage \ + kernel-module-ir-usb" + +task-distro-ppp-rdepends = "\ + ppp \ + ppp-dialin" + +task-distro-ppp-rrecommends = "\ + kernel-module-ppp-async \ + kernel-module-ppp-deflate \ + kernel-module-ppp-mppe" + +task-distro-ipsec-rdepends = "\ + openswan" + +task-distro-ipsec-rrecommends = "\ + kernel-module-ipsec" + +task-distro-wifi-rdepends = "\ + wireless-tools \ + hostap-utils \ + wpa-supplicant-nossl" + +task-distro-smbfs-rrecommends = "\ + kernel-module-smbfs" + +task-distro-cramfs-rrecommends = "\ + kernel-module-cramfs" + +task-distro-nfs-rrecommends = "\ + kernel-module-nfs \ + kernel-module-lockd \ + kernel-module-sunrpc" + + +# Tosort +# kernel-module-ipv6 +# kernel-module-ipsec +# kernel-module-nvrd +# kernel-module-mip6-mn +# kernel-module-tun +# kernel-module-ide-disk +# kernel-module-ide-probe-mo +# kernel-module-loop +# kernel-module-vfat +# kernel-module-ext2 +# kernel-module-nfs +# kernel-module-sco +# kernel-module-af_packet +# kernel-module-ip-gre +# kernel-module-ip-tables +# kernel-module-ipip +# kernel-module-des +# kernel-module-md5 +# kernel-module-8250 +# Should be DISTRO_EXTRA_RRECOMMENDS: lrzsz |