summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/tasks/task-base.bb
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2010-08-27 15:14:24 +0100
committerRichard Purdie <rpurdie@linux.intel.com>2010-08-27 15:29:45 +0100
commit29d6678fd546377459ef75cf54abeef5b969b5cf (patch)
tree8edd65790e37a00d01c3f203f773fe4b5012db18 /meta/recipes-core/tasks/task-base.bb
parentda49de6885ee1bc424e70bc02f21f6ab920efb55 (diff)
downloadpoky-29d6678fd546377459ef75cf54abeef5b969b5cf.tar.gz
Major layout change to the packages directory
Having one monolithic packages directory makes it hard to find things and is generally overwhelming. This commit splits it into several logical sections roughly based on function, recipes.txt gives more information about the classifications used. The opportunity is also used to switch from "packages" to "recipes" as used in OpenEmbedded as the term "packages" can be confusing to people and has many different meanings. Not all recipes have been classified yet, this is just a first pass at separating things out. Some packages are moved to meta-extras as they're no longer actively used or maintained. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'meta/recipes-core/tasks/task-base.bb')
-rw-r--r--meta/recipes-core/tasks/task-base.bb385
1 files changed, 385 insertions, 0 deletions
diff --git a/meta/recipes-core/tasks/task-base.bb b/meta/recipes-core/tasks/task-base.bb
new file mode 100644
index 0000000000..9873c060cc
--- /dev/null
+++ b/meta/recipes-core/tasks/task-base.bb
@@ -0,0 +1,385 @@
1DESCRIPTION = "Merge machine and distro options to create a basic machine task/package"
2LICENSE = "MIT"
3PR = "r69"
4
5inherit task
6
7PROVIDES = "${PACKAGES}"
8PACKAGES = ' \
9 task-base \
10 task-base-extended \
11 task-distro-base \
12 task-machine-base \
13 \
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)} \
29 \
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)} \
33 \
34 ${@base_contains("DISTRO_FEATURES", "bluetooth", "task-base-bluetooth", "", d)} \
35 ${@base_contains("DISTRO_FEATURES", "wifi", "task-base-wifi", "", d)} \
36 ${@base_contains("DISTRO_FEATURES", "cramfs", "task-base-cramfs", "", d)} \
37 ${@base_contains("DISTRO_FEATURES", "ipsec", "task-base-ipsec", "", d)} \
38 ${@base_contains("DISTRO_FEATURES", "ipv6", "task-base-ipv6", "", d)} \
39 ${@base_contains("DISTRO_FEATURES", "nfs", "task-base-nfs", "", d)} \
40 ${@base_contains("DISTRO_FEATURES", "ppp", "task-base-ppp", "", d)} \
41 ${@base_contains("DISTRO_FEATURES", "smbfs", "task-base-smbfs", "", d)} \
42 ${@base_contains("DISTRO_FEATURES", "raid", "task-base-raid", "",d)} \
43 ${@base_contains("DISTRO_FEATURES", "zeroconf", "task-base-zeroconf", "", d)} \
44 \
45 ${@base_contains("MACHINE_FEATURES","kernel26","task-base-kernel26","task-base-kernel24",d)} \
46 '
47
48ALLOW_EMPTY = "1"
49
50#
51# packages which content depend on MACHINE_FEATURES need to be MACHINE_ARCH
52#
53PACKAGE_ARCH = "${MACHINE_ARCH}"
54
55#
56# linux-hotplug or none
57#
58HOTPLUG ?= "${@base_contains("MACHINE_FEATURES", "kernel24", "linux-hotplug","",d)} "
59
60#
61# dropbear, openssh or none
62#
63DISTRO_SSH_DAEMON ?= "dropbear"
64
65#
66# pcmciautils for >= 2.6.13-rc1, pcmcia-cs for others
67#
68PCMCIA_MANAGER ?= "${@base_contains('MACHINE_FEATURES', 'kernel26','pcmciautils','pcmcia-cs',d)} "
69
70#
71# those ones can be set in machine config to supply packages needed to get machine booting
72#
73MACHINE_ESSENTIAL_EXTRA_RDEPENDS ?= ""
74MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS ?= ""
75
76#
77# task-base contain stuff needed for base system (machine related)
78#
79RDEPENDS_task-base = "\
80 task-distro-base \
81 task-machine-base \
82 ${DISTRO_SSH_DAEMON} \
83 ${HOTPLUG} \
84 \
85 ${@base_contains('MACHINE_FEATURES', 'kernel26','task-base-kernel26','task-base-kernel24',d)} \
86 ${@base_contains('MACHINE_FEATURES', 'apm', 'task-base-apm', '',d)} \
87 ${@base_contains('MACHINE_FEATURES', 'acpi', 'task-base-acpi', '',d)} \
88 ${@base_contains('MACHINE_FEATURES', 'keyboard', 'task-base-keyboard', '',d)} \
89 ${@base_contains('MACHINE_FEATURES', 'phone', 'task-base-phone', '',d)} \
90 \
91 ${@base_contains('COMBINED_FEATURES', 'alsa', 'task-base-alsa', '',d)} \
92 ${@base_contains('COMBINED_FEATURES', 'ext2', 'task-base-ext2', '',d)} \
93 ${@base_contains('COMBINED_FEATURES', 'vfat', 'task-base-vfat', '',d)} \
94 ${@base_contains('COMBINED_FEATURES', 'irda', 'task-base-irda', '',d)} \
95 ${@base_contains('COMBINED_FEATURES', 'pci', 'task-base-pci', '',d)} \
96 ${@base_contains('COMBINED_FEATURES', 'pcmcia', 'task-base-pcmcia', '',d)} \
97 ${@base_contains('COMBINED_FEATURES', 'pcmcia', 'bluez-dtl1-workaround', '',d)} \
98 ${@base_contains('COMBINED_FEATURES', 'usbgadget', 'task-base-usbgadget', '',d)} \
99 ${@base_contains('COMBINED_FEATURES', 'usbhost', 'task-base-usbhost', '',d)} \
100 ${@base_contains('COMBINED_FEATURES', 'bluetooth', 'task-base-bluetooth', '',d)} \
101 ${@base_contains('COMBINED_FEATURES', 'wifi', 'task-base-wifi', '',d)} \
102 ${@base_contains('COMBINED_FEATURES', 'uboot', 'task-base-uboot', '',d)} \
103 ${@base_contains('COMBINED_FEATURES', 'redboot', 'task-base-redboot', '',d)} \
104 ${@base_contains('COMBINED_FEATURES', 'apex', 'task-base-apex', '',d)} \
105 \
106 ${@base_contains('DISTRO_FEATURES', 'nfs', 'task-base-nfs', '',d)} \
107 ${@base_contains('DISTRO_FEATURES', 'cramfs', 'task-base-cramfs', '',d)} \
108 ${@base_contains('DISTRO_FEATURES', 'smbfs', 'task-base-smbfs', '',d)} \
109 ${@base_contains('DISTRO_FEATURES', 'ipv6', 'task-base-ipv6', '',d)} \
110 ${@base_contains('DISTRO_FEATURES', 'ipsec', 'task-base-ipsec', '',d)} \
111 ${@base_contains('DISTRO_FEATURES', 'ppp', 'task-base-ppp', '',d)} \
112 ${@base_contains('DISTRO_FEATURES', 'raid', 'task-base-raid', '',d)} \
113 ${@base_contains('DISTRO_FEATURES', 'zeroconf', 'task-base-zeroconf', '',d)} \
114 "
115# bluez-dtl1-workaround above is workaround for bitbake not handling DEPENDS on it in
116
117RDEPENDS_task-base-extended = "\
118 task-base \
119 ${ADD_WIFI} \
120 ${ADD_BT} \
121 "
122
123ADD_WIFI = ""
124ADD_BT = ""
125
126python __anonymous () {
127 # If Distro want wifi and machine feature wifi/pci/pcmcia/usbhost (one of them)
128 # then include task-base-wifi in task-base
129
130 import bb
131
132 distro_features = set(bb.data.getVar("DISTRO_FEATURES", d, 1).split())
133 machine_features= set(bb.data.getVar("MACHINE_FEATURES", d, 1).split())
134
135 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):
136 bb.data.setVar("ADD_BT", "task-base-bluetooth", d)
137
138 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):
139 bb.data.setVar("ADD_WIFI", "task-base-wifi", d)
140}
141
142#
143# packages added by distribution
144#
145DEPENDS_task-distro-base = "${DISTRO_EXTRA_DEPENDS}"
146RDEPENDS_task-distro-base = "${DISTRO_EXTRA_RDEPENDS}"
147RRECOMMENDS_task-distro-base = "${DISTRO_EXTRA_RRECOMMENDS}"
148
149#
150# packages added by machine config
151#
152RDEPENDS_task-machine-base = "${MACHINE_EXTRA_RDEPENDS}"
153RRECOMMENDS_task-machine-base = "${MACHINE_EXTRA_RRECOMMENDS}"
154
155RDEPENDS_task-base-kernel24 = "\
156 modutils-depmod"
157
158RDEPENDS_task-base-kernel26 = "\
159 sysfsutils \
160 module-init-tools"
161
162RRECOMMENDS_task-base-kernel24 = "\
163 kernel-module-input \
164 kernel-module-uinput"
165
166RRECOMMENDS_task-base-kernel26 = "\
167 kernel-module-nls-utf8 \
168 kernel-module-input \
169 kernel-module-uinput \
170 kernel-module-rtc-dev \
171 kernel-module-rtc-proc \
172 kernel-module-rtc-sysfs \
173 kernel-module-rtc-sa1100 \
174 kernel-module-unix"
175
176RDEPENDS_task-base-keyboard = "\
177 keymaps"
178
179RDEPENDS_task-base-pci = "\
180 pciutils"
181
182RDEPENDS_task-base-acpi = "\
183 acpid \
184 libacpi "
185
186RDEPENDS_task-base-apm = "\
187 apm \
188 apmd"
189
190RDEPENDS_task-base-ext2 = "\
191 hdparm \
192 e2fsprogs \
193 e2fsprogs-e2fsck \
194 e2fsprogs-mke2fs"
195
196RRECOMMENDS_task-base-vfat = "\
197 kernel-module-msdos \
198 kernel-module-vfat \
199 kernel-module-nls-iso8859-1 \
200 kernel-module-nls-cp437"
201
202RDEPENDS_task-base-alsa = "\
203 alsa-utils-alsactl \
204 alsa-utils-alsamixer"
205
206RRECOMMENDS_task-base-alsa = "\
207 kernel-module-snd-mixer-oss \
208 kernel-module-snd-pcm-oss"
209
210RDEPENDS_task-base-pcmcia = "\
211 ${PCMCIA_MANAGER} \
212 ${@base_contains('DISTRO_FEATURES', 'wifi', 'prism-firmware', '',d)} \
213 ${@base_contains('DISTRO_FEATURES', 'wifi', 'spectrum-fw', '',d)} \
214 "
215
216RRECOMMENDS_task-base-pcmcia = "\
217 ${@base_contains('MACHINE_FEATURES', 'kernel26', '${task-base-pcmcia26}', '${task-base-pcmcia24}',d)} \
218 kernel-module-pcmcia \
219 kernel-module-airo-cs \
220 kernel-module-pcnet-cs \
221 kernel-module-serial-cs \
222 kernel-module-ide-cs \
223 kernel-module-ide-disk \
224 "
225
226task-base-pcmcia24 = "\
227 ${@base_contains('DISTRO_FEATURES', 'wifi', 'hostap-modules-cs', '',d)} \
228 ${@base_contains('DISTRO_FEATURES', 'wifi', 'orinoco-modules-cs', '',d)} \
229 "
230
231task-base-pcmcia26 = "\
232 ${@base_contains('DISTRO_FEATURES', 'wifi', 'kernel-module-hostap-cs', '',d)} \
233 ${@base_contains('DISTRO_FEATURES', 'wifi', 'kernel-module-orinoco-cs', '',d)} \
234 ${@base_contains('DISTRO_FEATURES', 'wifi', 'kernel-module-spectrum-cs', '',d)}"
235
236# Provide bluez-utils-compat utils for the time being, the binaries in that package will vanish soon from upstream releases, so beware!
237
238RDEPENDS_task-base-bluetooth = "\
239 bluez4 \
240 "
241
242RRECOMMENDS_task-base-bluetooth = "\
243 kernel-module-bluetooth \
244 kernel-module-l2cap \
245 kernel-module-rfcomm \
246 kernel-module-hci-vhci \
247 kernel-module-bnep \
248 kernel-module-hidp \
249 kernel-module-hci-uart \
250 kernel-module-sco \
251 ${@base_contains('COMBINED_FEATURES', 'usbhost', 'kernel-module-hci-usb', '',d)} \
252 ${@base_contains('COMBINED_FEATURES', 'pcmcia', 'kernel-module-bluetooth3c-cs', '',d)} \
253 ${@base_contains('COMBINED_FEATURES', 'pcmcia', 'kernel-module-bluecard-cs', '',d)} \
254 ${@base_contains('COMBINED_FEATURES', 'pcmcia', 'kernel-module-bluetoothuart-cs', '',d)} \
255 ${@base_contains('COMBINED_FEATURES', 'pcmcia', 'kernel-module-dtl1-cs', '',d)} \
256 ${@base_contains('COMBINED_FEATURES', 'pcmcia', 'bluez-dtl1-workaround', '',d)} \
257 "
258# bluez-dtl1-workaround above is workaround for bitbake not handling DEPENDS on it in
259# kernel.bbclass. It should be there as long as kernel-module-dtl1-cs is, but not longer.
260
261RDEPENDS_task-base-irda = "\
262 irda-utils"
263
264RRECOMMENDS_task-base-irda = "\
265 kernel-module-pxaficp-ir \
266 kernel-module-irda \
267 kernel-module-ircomm \
268 kernel-module-ircomm-tty \
269 kernel-module-irlan \
270 ${@base_contains('DISTRO_FEATURES', 'ppp', 'kernel-module-irnet', '',d)} \
271 kernel-module-irport \
272 kernel-module-irtty \
273 kernel-module-irtty-sir \
274 kernel-module-sir-dev \
275 ${@base_contains('COMBINED_FEATURES', 'usbhost', 'kernel-module-ir-usb', '',d)} "
276
277RRECOMMENDS_task-base-usbgadget = "\
278 kernel-module-pxa27x_udc \
279 kernel-module-gadgetfs \
280 kernel-module-g-file-storage \
281 kernel-module-g-serial \
282 kernel-module-g-ether"
283
284RDEPENDS_task-base-usbhost = "\
285 usbutils "
286
287RRECOMMENDS_task-base-usbhost = "\
288 kernel-module-uhci-hcd \
289 kernel-module-ohci-hcd \
290 kernel-module-ehci-hcd \
291 kernel-module-usbcore \
292 kernel-module-usbhid \
293 kernel-module-usbnet \
294 kernel-module-sd-mod \
295 kernel-module-scsi-mod \
296 kernel-module-usbmouse \
297 kernel-module-mousedev \
298 kernel-module-usbserial \
299 kernel-module-usb-storage "
300
301RDEPENDS_task-base-ppp = "\
302 ppp \
303 ppp-dialin"
304
305RRECOMMENDS_task-base-ppp = "\
306 kernel-module-ppp-async \
307 kernel-module-ppp-deflate \
308 kernel-module-ppp-generic \
309 kernel-module-ppp-mppe \
310 kernel-module-slhc"
311
312RDEPENDS_task-base-ipsec = "\
313 openswan"
314
315RRECOMMENDS_task-base-ipsec = "\
316 kernel-module-ipsec"
317
318#
319# task-base-wifi contain everything needed to get WiFi working
320# WEP/WPA connection needs to be supported out-of-box
321#
322RDEPENDS_task-base-wifi = "\
323 wireless-tools \
324 ${@base_contains('COMBINED_FEATURES', 'pcmcia', 'hostap-utils', '',d)} \
325 ${@base_contains('COMBINED_FEATURES', 'pci', 'hostap-utils', '',d)} \
326 wpa-supplicant"
327
328RRECOMMENDS_task-base-wifi = "\
329 ${@base_contains('COMBINED_FEATURES', 'usbhost', 'kernel-module-zd1211rw', '',d)} \
330 kernel-module-ieee80211-crypt \
331 kernel-module-ieee80211-crypt-ccmp \
332 kernel-module-ieee80211-crypt-tkip \
333 kernel-module-ieee80211-crypt-wep \
334 kernel-module-ecb \
335 kernel-module-arc4 \
336 kernel-module-crypto_algapi \
337 kernel-module-cryptomgr \
338 kernel-module-michael-mic \
339 kernel-module-aes-generic \
340 kernel-module-aes"
341
342RRECOMMENDS_task-base-smbfs = "\
343 kernel-module-cifs \
344 kernel-module-smbfs"
345
346RRECOMMENDS_task-base-cramfs = "\
347 kernel-module-cramfs"
348
349#
350# task-base-nfs provides ONLY client support - server is in nfs-utils package
351#
352RDEPENDS_task-base-nfs = "\
353 portmap"
354
355RRECOMMENDS_task-base-nfs = "\
356 kernel-module-nfs "
357
358RDEPENDS_task-base-zeroconf = "\
359 avahi-daemon"
360
361RDEPENDS_task-base-raid = "\
362 "
363
364RDEPENDS_task-base-screen = "\
365 "
366
367#
368# GPE/OPIE/OpenMoko provide own touchscreen calibration utils
369#
370RDEPENDS_task-base-touchscreen = "\
371 "
372
373RDEPENDS_task-base-ipv6 = "\
374 "
375
376RRECOMMENDS_task-base-ipv6 = "\
377 kernel-module-ipv6 "
378
379RDEPENDS_task-base-serial = "\
380 setserial \
381 lrzsz "
382
383RDEPENDS_task-base-phone = "\
384 gsmd \
385 libgsmd-tools"