Files
poky/meta/recipes-core/packagegroups/packagegroup-base.bb
Olivier Guiter d5cfb00f08 Near Field communication recipe for neard 0.9
The Linux NFC project aims to provide a full NFC support for Linux.
It is based on the neard NFC user space stack running on top of the
Linux kernel NFC subsystem.
The code generated using this recipe was tested on a ARM11 device, with
a kernel 3.6, using, for the NFC hardware, a USB dongle with the PN533
chipset (SCL3711)

(From OE-Core rev: b2a74ae70725be7efc0226901fd560d3b3b48607)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-03-07 11:14:38 +00:00

372 lines
14 KiB
BlitzBasic

DESCRIPTION = "Merge machine and distro options to create a basic machine task/package"
LICENSE = "MIT"
PR = "r76"
inherit packagegroup
PROVIDES = "${PACKAGES}"
PACKAGES = ' \
packagegroup-base \
packagegroup-base-extended \
packagegroup-distro-base \
packagegroup-machine-base \
\
${@base_contains("MACHINE_FEATURES", "acpi", "packagegroup-base-acpi", "",d)} \
${@base_contains("MACHINE_FEATURES", "alsa", "packagegroup-base-alsa", "", d)} \
${@base_contains("MACHINE_FEATURES", "apm", "packagegroup-base-apm", "", d)} \
${@base_contains("MACHINE_FEATURES", "ext2", "packagegroup-base-ext2", "", d)} \
${@base_contains("MACHINE_FEATURES", "vfat", "packagegroup-base-vfat", "", d)} \
${@base_contains("MACHINE_FEATURES", "irda", "packagegroup-base-irda", "",d)} \
${@base_contains("MACHINE_FEATURES", "keyboard", "packagegroup-base-keyboard", "", d)} \
${@base_contains("MACHINE_FEATURES", "pci", "packagegroup-base-pci", "",d)} \
${@base_contains("MACHINE_FEATURES", "pcmcia", "packagegroup-base-pcmcia", "", d)} \
${@base_contains("MACHINE_FEATURES", "phone", "packagegroup-base-phone", "", d)} \
${@base_contains("MACHINE_FEATURES", "serial", "packagegroup-base-serial", "", d)} \
${@base_contains("MACHINE_FEATURES", "usbgadget", "packagegroup-base-usbgadget", "", d)} \
${@base_contains("MACHINE_FEATURES", "usbhost", "packagegroup-base-usbhost", "", d)} \
\
${@base_contains("DISTRO_FEATURES", "bluetooth", "packagegroup-base-bluetooth", "", d)} \
${@base_contains("DISTRO_FEATURES", "wifi", "packagegroup-base-wifi", "", d)} \
${@base_contains("DISTRO_FEATURES", "3g", "packagegroup-base-3g", "", d)} \
${@base_contains("DISTRO_FEATURES", "nfc", "packagegroup-base-nfc", "", d)} \
${@base_contains("DISTRO_FEATURES", "cramfs", "packagegroup-base-cramfs", "", d)} \
${@base_contains("DISTRO_FEATURES", "ipsec", "packagegroup-base-ipsec", "", d)} \
${@base_contains("DISTRO_FEATURES", "ipv6", "packagegroup-base-ipv6", "", d)} \
${@base_contains("DISTRO_FEATURES", "nfs", "packagegroup-base-nfs", "", d)} \
${@base_contains("DISTRO_FEATURES", "ppp", "packagegroup-base-ppp", "", d)} \
${@base_contains("DISTRO_FEATURES", "smbfs", "packagegroup-base-smbfs", "", d)} \
${@base_contains("DISTRO_FEATURES", "zeroconf", "packagegroup-base-zeroconf", "", d)} \
\
'
#
# packages which content depend on MACHINE_FEATURES need to be MACHINE_ARCH
#
PACKAGE_ARCH = "${MACHINE_ARCH}"
# Override by distro if needed
VIRTUAL-RUNTIME_keymaps ?= "keymaps"
#
# packagegroup-base contain stuff needed for base system (machine related)
#
RDEPENDS_packagegroup-base = "\
packagegroup-distro-base \
packagegroup-machine-base \
\
sysfsutils \
module-init-tools \
${@base_contains('MACHINE_FEATURES', 'apm', 'packagegroup-base-apm', '',d)} \
${@base_contains('MACHINE_FEATURES', 'acpi', 'packagegroup-base-acpi', '',d)} \
${@base_contains('MACHINE_FEATURES', 'keyboard', 'packagegroup-base-keyboard', '',d)} \
${@base_contains('MACHINE_FEATURES', 'phone', 'packagegroup-base-phone', '',d)} \
\
${@base_contains('COMBINED_FEATURES', 'alsa', 'packagegroup-base-alsa', '',d)} \
${@base_contains('COMBINED_FEATURES', 'ext2', 'packagegroup-base-ext2', '',d)} \
${@base_contains('COMBINED_FEATURES', 'vfat', 'packagegroup-base-vfat', '',d)} \
${@base_contains('COMBINED_FEATURES', 'irda', 'packagegroup-base-irda', '',d)} \
${@base_contains('COMBINED_FEATURES', 'pci', 'packagegroup-base-pci', '',d)} \
${@base_contains('COMBINED_FEATURES', 'pcmcia', 'packagegroup-base-pcmcia', '',d)} \
${@base_contains('COMBINED_FEATURES', 'usbgadget', 'packagegroup-base-usbgadget', '',d)} \
${@base_contains('COMBINED_FEATURES', 'usbhost', 'packagegroup-base-usbhost', '',d)} \
${@base_contains('COMBINED_FEATURES', 'bluetooth', 'packagegroup-base-bluetooth', '',d)} \
${@base_contains('COMBINED_FEATURES', 'wifi', 'packagegroup-base-wifi', '',d)} \
${@base_contains('COMBINED_FEATURES', '3g', 'packagegroup-base-3g', '',d)} \
${@base_contains('COMBINED_FEATURES', 'nfc', 'packagegroup-base-nfc', '',d)} \
\
${@base_contains('DISTRO_FEATURES', 'nfs', 'packagegroup-base-nfs', '',d)} \
${@base_contains('DISTRO_FEATURES', 'cramfs', 'packagegroup-base-cramfs', '',d)} \
${@base_contains('DISTRO_FEATURES', 'smbfs', 'packagegroup-base-smbfs', '',d)} \
${@base_contains('DISTRO_FEATURES', 'ipv6', 'packagegroup-base-ipv6', '',d)} \
${@base_contains('DISTRO_FEATURES', 'ipsec', 'packagegroup-base-ipsec', '',d)} \
${@base_contains('DISTRO_FEATURES', 'ppp', 'packagegroup-base-ppp', '',d)} \
${@base_contains('DISTRO_FEATURES', 'zeroconf', 'packagegroup-base-zeroconf', '',d)} \
"
RRECOMMENDS_packagegroup-base = "\
kernel-module-nls-utf8 \
kernel-module-input \
kernel-module-uinput \
kernel-module-rtc-dev \
kernel-module-rtc-proc \
kernel-module-rtc-sysfs \
kernel-module-unix"
RDEPENDS_packagegroup-base-extended = "\
packagegroup-base \
${ADD_WIFI} \
${ADD_BT} \
${ADD_3G} \
${ADD_NFC} \
"
ADD_WIFI = ""
ADD_BT = ""
ADD_3G = ""
ADD_NFC = ""
python __anonymous () {
# If Distro want wifi and machine feature wifi/pci/pcmcia/usbhost (one of them)
# then include packagegroup-base-wifi in packagegroup-base
distro_features = set(d.getVar("DISTRO_FEATURES", True).split())
machine_features= set(d.getVar("MACHINE_FEATURES", True).split())
if "bluetooth" in distro_features and not "bluetooth" in machine_features and ("pcmcia" in machine_features or "pci" in machine_features or "usbhost" in machine_features):
d.setVar("ADD_BT", "packagegroup-base-bluetooth")
if "wifi" in distro_features and not "wifi" in machine_features and ("pcmcia" in machine_features or "pci" in machine_features or "usbhost" in machine_features):
d.setVar("ADD_WIFI", "packagegroup-base-wifi")
if "3g" in distro_features and not "3g" in machine_features and ("pcmcia" in machine_features or "pci" in machine_features or "usbhost" in machine_features):
d.setVar("ADD_3G", "packagegroup-base-3g")
if "nfc" in distro_features and not "nfc" in machine_features and ("usbhost" in machine_features):
d.setVar("ADD_NFC", "packagegroup-base-nfc")
# For backwards compatibility after rename
packages = d.getVar("PACKAGES", True).split()
for pkg in packages:
d.appendVar("RPROVIDES_%s" % pkg, pkg.replace("packagegroup-", "task-"))
d.appendVar("RREPLACES_%s" % pkg, pkg.replace("packagegroup-", "task-"))
d.appendVar("RCONFLICTS_%s" % pkg, pkg.replace("packagegroup-", "task-"))
}
#
# packages added by distribution
#
SUMMARY_packagegroup-distro-base = "${DISTRO} extras"
DEPENDS_packagegroup-distro-base = "${DISTRO_EXTRA_DEPENDS}"
RDEPENDS_packagegroup-distro-base = "${DISTRO_EXTRA_RDEPENDS}"
RRECOMMENDS_packagegroup-distro-base = "${DISTRO_EXTRA_RRECOMMENDS}"
#
# packages added by machine config
#
SUMMARY_packagegroup-machine-base = "${MACHINE} extras"
DESCRIPTION_packagegroup-machine-base = "Extra packages required to fully support ${MACHINE} hardware"
RDEPENDS_packagegroup-machine-base = "${MACHINE_EXTRA_RDEPENDS}"
RRECOMMENDS_packagegroup-machine-base = "${MACHINE_EXTRA_RRECOMMENDS}"
SUMMARY_packagegroup-base-keyboard = "Keyboard support"
RDEPENDS_packagegroup-base-keyboard = "\
${VIRTUAL-RUNTIME_keymaps}"
SUMMARY_packagegroup-base-pci = "PCI bus support"
RDEPENDS_packagegroup-base-pci = "\
pciutils"
SUMMARY_packagegroup-base-acpi = "ACPI support"
RDEPENDS_packagegroup-base-acpi = "\
acpid \
libacpi "
SUMMARY_packagegroup-base-apm = "APM support"
RDEPENDS_packagegroup-base-apm = "\
${VIRTUAL-RUNTIME_apm} \
apmd"
SUMMARY_packagegroup-base-ext2 = "ext2 filesystem support"
RDEPENDS_packagegroup-base-ext2 = "\
hdparm \
e2fsprogs \
e2fsprogs-e2fsck \
e2fsprogs-mke2fs"
SUMMARY_packagegroup-base-vfat = "FAT filesystem support"
RRECOMMENDS_packagegroup-base-vfat = "\
kernel-module-msdos \
kernel-module-vfat \
kernel-module-nls-iso8859-1 \
kernel-module-nls-cp437"
SUMMARY_packagegroup-base-alsa = "ALSA sound support"
RDEPENDS_packagegroup-base-alsa = "\
alsa-utils-alsactl \
alsa-utils-alsamixer \
${VIRTUAL-RUNTIME_alsa-state}"
RRECOMMENDS_packagegroup-base-alsa = "\
kernel-module-snd-mixer-oss \
kernel-module-snd-pcm-oss"
SUMMARY_packagegroup-base-pcmcia = "PC card slot support"
RDEPENDS_packagegroup-base-pcmcia = "\
pcmciautils \
"
RRECOMMENDS_packagegroup-base-pcmcia = "\
kernel-module-pcmcia \
kernel-module-airo-cs \
kernel-module-pcnet-cs \
kernel-module-serial-cs \
kernel-module-ide-cs \
kernel-module-ide-disk \
${@base_contains('DISTRO_FEATURES', 'wifi', 'kernel-module-hostap-cs', '',d)} \
${@base_contains('DISTRO_FEATURES', 'wifi', 'kernel-module-orinoco-cs', '',d)} \
${@base_contains('DISTRO_FEATURES', 'wifi', 'kernel-module-spectrum-cs', '',d)}"
SUMMARY_packagegroup-base-bluetooth = "Bluetooth support"
RDEPENDS_packagegroup-base-bluetooth = "\
bluez4 \
${@base_contains('COMBINED_FEATURES', 'alsa', 'libasound-module-bluez', '',d)} \
"
RRECOMMENDS_packagegroup-base-bluetooth = "\
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', 'usbhost', 'kernel-module-hci-usb', '',d)} \
${@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)} \
"
SUMMARY_packagegroup-base-irda = "IrDA support"
RDEPENDS_packagegroup-base-irda = "\
irda-utils"
RRECOMMENDS_packagegroup-base-irda = "\
kernel-module-pxaficp-ir \
kernel-module-irda \
kernel-module-ircomm \
kernel-module-ircomm-tty \
kernel-module-irlan \
${@base_contains('DISTRO_FEATURES', 'ppp', 'kernel-module-irnet', '',d)} \
kernel-module-irport \
kernel-module-irtty \
kernel-module-irtty-sir \
kernel-module-sir-dev \
${@base_contains('COMBINED_FEATURES', 'usbhost', 'kernel-module-ir-usb', '',d)} "
SUMMARY_packagegroup-base-usbgadget = "USB gadget support"
RRECOMMENDS_packagegroup-base-usbgadget = "\
kernel-module-pxa27x_udc \
kernel-module-gadgetfs \
kernel-module-g-file-storage \
kernel-module-g-serial \
kernel-module-g-ether"
SUMMARY_packagegroup-base-usbhost = "USB host support"
RDEPENDS_packagegroup-base-usbhost = "\
usbutils "
RRECOMMENDS_packagegroup-base-usbhost = "\
kernel-module-uhci-hcd \
kernel-module-ohci-hcd \
kernel-module-ehci-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-usbserial \
kernel-module-usb-storage "
SUMMARY_packagegroup-base-ppp = "PPP dial-up protocol support"
RDEPENDS_packagegroup-base-ppp = "\
ppp \
ppp-dialin"
RRECOMMENDS_packagegroup-base-ppp = "\
kernel-module-ppp-async \
kernel-module-ppp-deflate \
kernel-module-ppp-generic \
kernel-module-ppp-mppe \
kernel-module-slhc"
SUMMARY_packagegroup-base-ipsec = "IPSEC support"
RDEPENDS_packagegroup-base-ipsec = "\
"
RRECOMMENDS_packagegroup-base-ipsec = "\
kernel-module-ipsec"
#
# packagegroup-base-wifi contain everything needed to get WiFi working
# WEP/WPA connection needs to be supported out-of-box
#
SUMMARY_packagegroup-base-wifi = "WiFi support"
RDEPENDS_packagegroup-base-wifi = "\
wireless-tools \
${@base_contains('COMBINED_FEATURES', 'pcmcia', 'hostap-utils', '',d)} \
${@base_contains('COMBINED_FEATURES', 'pci', 'hostap-utils', '',d)} \
wpa-supplicant"
RRECOMMENDS_packagegroup-base-wifi = "\
${@base_contains('COMBINED_FEATURES', 'usbhost', 'kernel-module-zd1211rw', '',d)} \
kernel-module-ieee80211-crypt \
kernel-module-ieee80211-crypt-ccmp \
kernel-module-ieee80211-crypt-tkip \
kernel-module-ieee80211-crypt-wep \
kernel-module-ecb \
kernel-module-arc4 \
kernel-module-crypto_algapi \
kernel-module-cryptomgr \
kernel-module-michael-mic \
kernel-module-aes-generic \
kernel-module-aes"
SUMMARY_packagegroup-base-nfc = "Near Field Communication support"
RDEPENDS_packagegroup-base-nfc = "\
neard"
RRECOMMENDS_packagegroup-base-nfc = "\
kernel-module-nfc"
SUMMARY_packagegroup-base-3g = "Cellular data support"
RDEPENDS_packagegroup-base-3g = "\
ofono"
RRECOMMENDS_packagegroup-base-3g = "\
kernel-module-cdc-acm \
kernel-module-cdc-wdm"
SUMMARY_packagegroup-base-smbfs = "SMB network filesystem support"
RRECOMMENDS_packagegroup-base-smbfs = "\
kernel-module-cifs \
kernel-module-smbfs"
SUMMARY_packagegroup-base-cramfs = "cramfs filesystem support"
RRECOMMENDS_packagegroup-base-cramfs = "\
kernel-module-cramfs"
#
# packagegroup-base-nfs provides ONLY client support - server is in nfs-utils package
#
SUMMARY_packagegroup-base-nfs = "NFS network filesystem support"
RDEPENDS_packagegroup-base-nfs = "\
rpcbind"
RRECOMMENDS_packagegroup-base-nfs = "\
kernel-module-nfs "
SUMMARY_packagegroup-base-zeroconf = "Zeroconf support"
RDEPENDS_packagegroup-base-zeroconf = "\
avahi-daemon"
SUMMARY_packagegroup-base-ipv6 = "IPv6 support"
RDEPENDS_packagegroup-base-ipv6 = "\
"
RRECOMMENDS_packagegroup-base-ipv6 = "\
kernel-module-ipv6 "
SUMMARY_packagegroup-base-serial = "Serial port support"
RDEPENDS_packagegroup-base-serial = "\
setserial \
lrzsz "
SUMMARY_packagegroup-base-phone = "Cellular telephony (voice) support"
RDEPENDS_packagegroup-base-phone = "\
ofono"