1 DESCRIPTION
= "Merge machine and distro options to create a basic machine task/package"
7 PROVIDES
= "${PACKAGES}"
14 $
{@base_contains
("MACHINE_FEATURES", "acpi", "task-base-acpi", "",d
)} \
15 $
{@base_contains
("MACHINE_FEATURES", "alsa", "task-base-alsa", "", d
)} \
16 $
{@base_contains
("MACHINE_FEATURES", "apm", "task-base-apm", "", d
)} \
17 $
{@base_contains
("MACHINE_FEATURES", "ext2", "task-base-ext2", "", d
)} \
18 $
{@base_contains
("MACHINE_FEATURES", "vfat", "task-base-vfat", "", d
)} \
19 $
{@base_contains
("MACHINE_FEATURES", "irda", "task-base-irda", "",d
)} \
20 $
{@base_contains
("MACHINE_FEATURES", "keyboard", "task-base-keyboard", "", d
)} \
21 $
{@base_contains
("MACHINE_FEATURES", "pci", "task-base-pci", "",d
)} \
22 $
{@base_contains
("MACHINE_FEATURES", "pcmcia", "task-base-pcmcia", "", d
)} \
23 $
{@base_contains
("MACHINE_FEATURES", "phone", "task-base-phone", "", d
)} \
24 $
{@base_contains
("MACHINE_FEATURES", "screen", "task-base-screen", "", d
)} \
25 $
{@base_contains
("MACHINE_FEATURES", "serial", "task-base-serial", "", d
)} \
26 $
{@base_contains
("MACHINE_FEATURES", "touchscreen", "task-base-touchscreen", "", d
)} \
27 $
{@base_contains
("MACHINE_FEATURES", "usbgadget", "task-base-usbgadget", "", d
)} \
28 $
{@base_contains
("MACHINE_FEATURES", "usbhost", "task-base-usbhost", "", d
)} \
30 $
{@base_contains
("MACHINE_FEATURES", "uboot", "task-base-uboot", "",d
)} \
31 $
{@base_contains
("MACHINE_FEATURES", "redboot", "task-base-redboot", "",d
)} \
32 $
{@base_contains
("MACHINE_FEATURES", "apex", "task-base-apex", "",d
)} \
37 $
{@base_contains
("DISTRO_FEATURES", "cramfs", "task-base-cramfs", "", d
)} \
38 $
{@base_contains
("DISTRO_FEATURES", "ipsec", "task-base-ipsec", "", d
)} \
39 $
{@base_contains
("DISTRO_FEATURES", "ipv6", "task-base-ipv6", "", d
)} \
40 $
{@base_contains
("DISTRO_FEATURES", "nfs", "task-base-nfs", "", d
)} \
41 $
{@base_contains
("DISTRO_FEATURES", "ppp", "task-base-ppp", "", d
)} \
42 $
{@base_contains
("DISTRO_FEATURES", "smbfs", "task-base-smbfs", "", d
)} \
43 $
{@base_contains
("DISTRO_FEATURES", "raid", "task-base-raid", "",d
)} \
45 $
{@base_contains
("MACHINE_FEATURES","kernel26","task-base-kernel26","task-base-kernel24",d
)} \
49 # packages which content depend on MACHINE_FEATURES need
to be MACHINE_ARCH
51 PACKAGE_ARCH
= "${MACHINE_ARCH}"
54 # linux
-hotplug
or none
56 HOTPLUG ?
= "${@base_contains("MACHINE_FEATURES
", "kernel24
", "linux
-hotplug
","",d)} "
59 # dropbear
, openssh
or none
61 DISTRO_SSH_DAEMON ?
= "dropbear"
63 # Distro can override apm provider
66 # Distro can override alsa
-state provider
67 DISTRO_ALSA_STATE ?
= "alsa-state"
72 DISTRO_BLUETOOTH_MANAGER ?
= "\
79 # pcmciautils
for >= 2.6.13-rc1
, pcmcia
-cs
for others
81 PCMCIA_MANAGER ?
= "${@base_contains('MACHINE_FEATURES', 'kernel26','pcmciautils','pcmcia-cs',d)} "
84 # those ones can be set in machine config
to supply packages needed
to get machine booting
86 MACHINE_ESSENTIAL_EXTRA_RDEPENDS ?
= ""
87 MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS ?
= ""
90 # task
-base contain stuff needed
for base system
(machine related
)
92 RDEPENDS_task
-base
= "\
96 ${DISTRO_SSH_DAEMON} \
99 ${@base_contains('MACHINE_FEATURES', 'kernel26','task-base-kernel26','task-base-kernel24',d)} \
100 ${@base_contains('MACHINE_FEATURES', 'apm', 'task-base-apm', '',d)} \
101 ${@base_contains('MACHINE_FEATURES', 'acpi', 'task-base-acpi', '',d)} \
102 ${@base_contains('MACHINE_FEATURES', 'keyboard', 'task-base-keyboard', '',d)} \
104 ${@base_contains('COMBINED_FEATURES', 'alsa', 'task-base-alsa', '',d)} \
105 ${@base_contains('COMBINED_FEATURES', 'ext2', 'task-base-ext2', '',d)} \
106 ${@base_contains('COMBINED_FEATURES', 'vfat', 'task-base-vfat', '',d)} \
107 ${@base_contains('COMBINED_FEATURES', 'irda', 'task-base-irda', '',d)} \
108 ${@base_contains('COMBINED_FEATURES', 'pci', 'task-base-pci', '',d)} \
109 ${@base_contains('COMBINED_FEATURES', 'pcmcia', 'task-base-pcmcia', '',d)} \
110 ${@base_contains('COMBINED_FEATURES', 'usbgadget', 'task-base-usbgadget', '',d)} \
111 ${@base_contains('COMBINED_FEATURES', 'usbhost', 'task-base-usbhost', '',d)} \
112 ${@base_contains('COMBINED_FEATURES', 'bluetooth', 'task-base-bluetooth', '',d)} \
113 ${@base_contains('COMBINED_FEATURES', 'wifi', 'task-base-wifi', '',d)} \
114 ${@base_contains('COMBINED_FEATURES', 'uboot', 'task-base-uboot', '',d)} \
115 ${@base_contains('COMBINED_FEATURES', 'redboot', 'task-base-redboot', '',d)} \
116 ${@base_contains('COMBINED_FEATURES', 'apex', 'task-base-apex', '',d)} \
118 ${@base_contains('DISTRO_FEATURES', 'nfs', 'task-base-nfs', '',d)} \
119 ${@base_contains('DISTRO_FEATURES', 'cramfs', 'task-base-cramfs', '',d)} \
120 ${@base_contains('DISTRO_FEATURES', 'smbfs', 'task-base-smbfs', '',d)} \
121 ${@base_contains('DISTRO_FEATURES', 'ipv6', 'task-base-ipv6', '',d)} \
122 ${@base_contains('DISTRO_FEATURES', 'ipsec', 'task-base-ipsec', '',d)} \
123 ${@base_contains('DISTRO_FEATURES', 'ppp', 'task-base-ppp', '',d)} \
124 ${@base_contains('DISTRO_FEATURES', 'raid', 'task-base-raid', '',d)} \
127 RDEPENDS_task
-base
-extended
= "\
136 python __anonymous
() {
137 #
If Distro want wifi
and machine feature wifi
/pci
/pcmcia
/usbhost
(one of them
)
138 #
then include task
-base
-wifi in task
-base
143 set
= __builtins__
["set"]
145 from sets import Set as set
147 distro_features
= set
(bb.
data.getVar
("DISTRO_FEATURES", d
, 1).split
())
148 machine_features
= set
(bb.
data.getVar
("MACHINE_FEATURES", d
, 1).split
())
150 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
):
151 bb.
data.setVar
("ADD_BT", "task-base-bluetooth", d
)
153 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
):
154 bb.
data.setVar
("ADD_WIFI", "task-base-wifi", d
)
158 # packages added by distribution
160 DEPENDS_task
-distro
-base
= "${DISTRO_EXTRA_DEPENDS}"
161 RDEPENDS_task
-distro
-base
= "${DISTRO_EXTRA_RDEPENDS}"
162 RRECOMMENDS_task
-distro
-base
= "${DISTRO_EXTRA_RRECOMMENDS}"
165 # packages added by machine config
167 RDEPENDS_task
-machine
-base
= "${MACHINE_EXTRA_RDEPENDS}"
168 RRECOMMENDS_task
-machine
-base
= "${MACHINE_EXTRA_RRECOMMENDS}"
170 RDEPENDS_task
-base
-kernel24
= "\
173 RDEPENDS_task
-base
-kernel26
= "\
177 RRECOMMENDS_task
-base
-kernel24
= "\
178 kernel-module-input \
179 kernel-module-uinput"
181 RRECOMMENDS_task
-base
-kernel26
= "\
182 kernel-module-nls-utf8 \
183 kernel-module-input \
184 kernel-module-uinput \
185 kernel-module-rtc-dev \
186 kernel-module-rtc-proc \
187 kernel-module-rtc-sysfs \
188 kernel-module-rtc-sa1100 \
191 RDEPENDS_task
-base
-keyboard
= "\
194 RDEPENDS_task
-base
-pci
= "\
197 RDEPENDS_task
-base
-acpi
= "\
200 RDEPENDS_task
-base
-apm
= "\
203 ${@base_contains('MACHINE_FEATURES', 'kernel24', 'network-suspend-scripts', '',d)}"
205 RDEPENDS_task
-base
-ext2
= "\
211 RRECOMMENDS_task
-base
-vfat
= "\
212 kernel-module-msdos \
214 kernel-module-nls-iso8859-1 \
215 kernel-module-nls-cp437"
217 RDEPENDS_task
-base
-alsa
= "\
219 alsa-utils-alsamixer"
222 # alsa
-states are machine related so can be missing in feed
, OSS support is optional
224 RRECOMMENDS_task
-base
-alsa
= "\
225 ${DISTRO_ALSA_STATE} \
226 kernel-module-snd-mixer-oss \
227 kernel-module-snd-pcm-oss"
229 RDEPENDS_task
-base
-pcmcia
= "\
231 ${@base_contains('DISTRO_FEATURES', 'wifi', 'prism-firmware', '',d)} \
232 ${@base_contains('DISTRO_FEATURES', 'wifi', 'spectrum-fw', '',d)} \
235 RRECOMMENDS_task
-base
-pcmcia
= "\
236 ${@base_contains('MACHINE_FEATURES', 'kernel26', '${task-base-pcmcia26}', '${task-base-pcmcia24}',d)} \
237 kernel-module-pcmcia \
238 kernel-module-airo-cs \
239 kernel-module-pcnet-cs \
240 kernel-module-serial-cs \
241 kernel-module-ide-cs \
242 kernel-module-ide-disk \
245 task
-base
-pcmcia24
= "\
248 task
-base
-pcmcia26
= "\
249 ${@base_contains('DISTRO_FEATURES', 'wifi', 'kernel-module-hostap-cs', '',d)} \
250 ${@base_contains('DISTRO_FEATURES', 'wifi', 'kernel-module-spectrum-cs', '',d)}"
252 # Provide bluez
-utils
-compat utils
for the time being
, the binaries in that package will vanish soon from upstream releases
, so beware
!
254 RDEPENDS_task
-base
-bluetooth
= "\
255 ${DISTRO_BLUETOOTH_MANAGER} \
258 RRECOMMENDS_task
-base
-bluetooth
= "\
259 kernel-module-bluetooth \
260 kernel-module-l2cap \
261 kernel-module-rfcomm \
262 kernel-module-hci-vhci \
265 kernel-module-hci-uart \
267 ${@base_contains('COMBINED_FEATURES', 'usbhost', 'kernel-module-btusb kernel-module-hci-usb', '',d)} \
268 ${@base_contains('COMBINED_FEATURES', 'pcmcia', 'kernel-module-bluetooth3c-cs', '',d)} \
269 ${@base_contains('COMBINED_FEATURES', 'pcmcia', 'kernel-module-bluecard-cs', '',d)} \
270 ${@base_contains('COMBINED_FEATURES', 'pcmcia', 'kernel-module-bluetoothuart-cs', '',d)} \
271 ${@base_contains('COMBINED_FEATURES', 'pcmcia', 'kernel-module-dtl1-cs', '',d)} \
273 RDEPENDS_task
-base
-irda
= "\
276 RRECOMMENDS_task
-base
-irda
= "\
277 kernel-module-pxaficp-ir \
279 kernel-module-ircomm \
280 kernel-module-ircomm-tty \
281 kernel-module-irlan \
282 ${@base_contains('DISTRO_FEATURES', 'ppp', 'kernel-module-irnet', '',d)} \
283 kernel-module-irport \
284 kernel-module-irtty \
285 kernel-module-irtty-sir \
286 kernel-module-sir-dev \
287 ${@base_contains('COMBINED_FEATURES', 'usbhost', 'kernel-module-ir-usb', '',d)} "
289 RRECOMMENDS_task
-base
-usbgadget
= "\
290 kernel-module-pxa27x_udc \
291 kernel-module-gadgetfs \
292 kernel-module-g-file-storage \
293 kernel-module-g-serial \
294 kernel-module-g-ether \
297 RDEPENDS_task
-base
-usbhost
= "\
300 RRECOMMENDS_task
-base
-usbhost
= "\
301 kernel-module-uhci-hcd \
302 kernel-module-ohci-hcd \
303 kernel-module-ehci-hcd \
304 kernel-module-usbcore \
305 kernel-module-usbhid \
306 kernel-module-usbnet \
307 kernel-module-sd-mod \
308 kernel-module-scsi-mod \
309 kernel-module-usbmouse \
310 kernel-module-mousedev \
311 kernel-module-usbserial \
312 kernel-module-usb-storage \
314 kernel-module-pegasus \
317 RDEPENDS_task
-base
-uboot
= "\
320 RDEPENDS_task
-base
-redboot
= "\
323 RDEPENDS_task
-base
-apex
= "\
326 RDEPENDS_task
-base
-ppp
= "\
330 RRECOMMENDS_task
-base
-ppp
= "\
331 kernel-module-ppp-async \
332 kernel-module-ppp-deflate \
333 kernel-module-ppp-mppe"
335 RDEPENDS_task
-base
-ipsec
= "\
338 RRECOMMENDS_task
-base
-ipsec
= "\
342 # task
-base
-wifi contain everything needed
to get WiFi working
343 # WEP
/WPA connection needs
to be supported out
-of
-box
345 RDEPENDS_task
-base
-wifi
= "\
347 ${@base_contains('COMBINED_FEATURES', 'hostap', 'hostap-utils', '',d)} \
348 ${@base_contains('COMBINED_FEATURES', 'madwifi', 'madwifi-ng-tools', '',d)} \
351 RRECOMMENDS_task
-base
-wifi
= "\
352 ${@base_contains('COMBINED_FEATURES', 'madwifi', 'madwifi-ng-modules', '',d)} \
353 ${@base_contains('COMBINED_FEATURES', 'usbhost', 'kernel-module-zd1211rw', '',d)} \
354 kernel-module-ieee80211-crypt \
355 kernel-module-ieee80211-crypt-ccmp \
356 kernel-module-ieee80211-crypt-tkip \
357 kernel-module-ieee80211-crypt-wep \
360 kernel-module-crypto_algapi \
361 kernel-module-cryptomgr \
362 kernel-module-michael-mic \
365 RRECOMMENDS_task
-base
-smbfs
= "\
369 RRECOMMENDS_task
-base
-cramfs
= "\
370 kernel-module-cramfs"
373 # task
-base
-nfs provides ONLY client support
- server is in nfs
-utils package
375 RDEPENDS_task
-base
-nfs
= "\
378 RRECOMMENDS_task
-base
-nfs
= "\
381 RDEPENDS_task
-base
-raid
= "\
384 RDEPENDS_task
-base
-screen
= "\
388 # GPE
/OPIE
/Openmoko provide own touchscreen calibration utils
390 RDEPENDS_task
-base
-touchscreen
= "\
394 RDEPENDS_task
-base
-ipv6
= "\
397 RRECOMMENDS_task
-base
-ipv6
= "\
400 RDEPENDS_task
-base
-serial
= "\
406 # kernel
-module
-mip6
-mn
408 # kernel
-module
-ide
-probe
-mo
413 # kernel
-module
-af_packet
414 # kernel
-module
-ip
-gre
415 # kernel
-module
-ip
-tables
420 # Should be DISTRO_EXTRA_RRECOMMENDS
: lrzsz