enigma2-hbbtv-plugin: add checksums for cortexa15hf-neon-vfpv4
[opendreambox.git] / meta-opendreambox / recipes-dreambox / enigma2 / enigma2-skins_4.3.0.bb
1 SUMMARY = "Skins for Enigma2"
2 LICENSE = "CLOSED"
3 SRCREV = "${@opendreambox_srcrev('98ac2c332f082c15faf15c14510bfe25f82a9fbc', d)}"
4
5 inherit allarch autotools-brokensep opendreambox-github
6
7 PACKAGES_DYNAMIC = "^enigma2-skin-.*"
8 PACKAGES += "${PN}-meta"
9
10 FILES_${PN} = ""
11 FILES_${PN}-meta = "${datadir}/meta"
12
13 python enigma2_skins_split_packages() {
14     output_pattern = 'enigma2-skin-%s'
15     enigma2_skindir = os.path.join(d.getVar('datadir', True), 'enigma2')
16     do_split_packages(d, enigma2_skindir, '(.*?)/.*', output_pattern, 'Enigma2 Skin: %s', recursive=True, extra_depends='enigma2', match_path=True)
17
18     def parseControlFile(package, dir):
19         filename = os.path.join(dir, 'CONTROL/control')
20         if os.path.exists(filename):
21             with open(filename) as f:
22                 for line in f.read().splitlines():
23                     try:
24                         name, value = line.strip().split(': ', 1)
25                         if name == 'Description':
26                             d.setVar('DESCRIPTION_%s' % package, value)
27                         elif name == 'Depends':
28                             d.appendVar('RDEPENDS_%s' % package, ' ' + ' '.join(value.split(', ')))
29                         elif name == 'Replaces':
30                             d.setVar('RREPLACES_%s' % package, ' '.join(value.split(', ')))
31                         elif name == 'Conflicts':
32                             d.setVar('RCONFLICTS_%s' % package, ' '.join(value.split(', ')))
33                     except:
34                         bb.fatal("Error parsing control file for package %s" % package)
35
36     srcdir = os.path.join(d.getVar('S', True), 'skins')
37     packages = d.getVar('PACKAGES', True).split()
38     for subdir in os.walk(srcdir).next()[1]:
39         package = output_pattern % legitimize_package_name(subdir)
40         if package in packages:
41             parseControlFile(package, os.path.join(srcdir, subdir))
42 }
43
44 PACKAGESPLITFUNCS_prepend = "enigma2_skins_split_packages "
45
46 # No package will be generated for ${PN}, and enigma2-plugins doesn't exist as
47 # a package either, but it's enough to avoid a direct build dependency.
48 RDEPENDS_${PN} = "enigma2-plugins"