xref: /OK3568_Linux_fs/yocto/poky/meta/recipes-multimedia/alsa/alsa-tools_1.2.5.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunSUMMARY = "Advanced tools for certain ALSA sound card drivers"
2*4882a593SmuzhiyunDESCRIPTION = "Package containing a number of tools ranging from envy24control \
3*4882a593Smuzhiyunwhich provides complete control over all devices with an envy24 chip, to \
4*4882a593Smuzhiyunfirmware loaders for pcmcia, USB and the hdsp devices."
5*4882a593SmuzhiyunHOMEPAGE = "http://www.alsa-project.org"
6*4882a593SmuzhiyunBUGTRACKER = "http://alsa-project.org/main/index.php/Bug_Tracking"
7*4882a593SmuzhiyunSECTION = "console/utils"
8*4882a593SmuzhiyunLICENSE = "GPL-2.0-only & LGPL-2.0-or-later"
9*4882a593SmuzhiyunDEPENDS = "alsa-lib"
10*4882a593Smuzhiyun
11*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://hdsploader/COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
12*4882a593Smuzhiyun                    file://ld10k1/COPYING.LIB;md5=a916467b91076e631dd8edb7424769c7 \
13*4882a593Smuzhiyun                    "
14*4882a593Smuzhiyun
15*4882a593SmuzhiyunSRC_URI = "https://www.alsa-project.org/files/pub/tools/${BP}.tar.bz2"
16*4882a593Smuzhiyun
17*4882a593SmuzhiyunSRC_URI[sha256sum] = "35a71027a01f4d7de4722e223520e940de68b3c570b6c671691567ae28f9893e"
18*4882a593Smuzhiyun
19*4882a593Smuzhiyuninherit autotools-brokensep pkgconfig
20*4882a593Smuzhiyun# brokensep as as10k1 (and probably more) fail out of tree
21*4882a593SmuzhiyunCLEANBROKEN = "1"
22*4882a593Smuzhiyun
23*4882a593Smuzhiyun# Here we use PACKAGECONFIG options to pick which directories we configure/build.
24*4882a593Smuzhiyun# Remember on upgrades to check that no new tools have been added.
25*4882a593SmuzhiyunPACKAGECONFIG ??= "as10k1 hdajacksensetest hda-verb hdsploader ld10k1 mixartloader pcxhrloader \
26*4882a593Smuzhiyun                   sb16_csp seq--sbiload sscape_ctl us428control usx2yloader vxloader \
27*4882a593Smuzhiyun                   ${@bb.utils.contains_any('DISTRO_FEATURES', '${GTK3DISTROFEATURES}', 'hdajackretask', '', d)} \
28*4882a593Smuzhiyun                   "
29*4882a593Smuzhiyun
30*4882a593SmuzhiyunPACKAGECONFIG[as10k1] = ""
31*4882a593SmuzhiyunPACKAGECONFIG[echomixer] = ",,gtk+"
32*4882a593SmuzhiyunPACKAGECONFIG[envy24control] = ",,gtk+"
33*4882a593SmuzhiyunPACKAGECONFIG[hda-verb] = ""
34*4882a593SmuzhiyunPACKAGECONFIG[hdajackretask] = ",,gtk+3"
35*4882a593SmuzhiyunPACKAGECONFIG[hdajacksensetest] = ",,glib-2.0"
36*4882a593SmuzhiyunPACKAGECONFIG[hdspconf] = ",,fltk"
37*4882a593SmuzhiyunPACKAGECONFIG[hdsploader] = ""
38*4882a593SmuzhiyunPACKAGECONFIG[hdspmixer] = ",,fltk"
39*4882a593SmuzhiyunPACKAGECONFIG[ld10k1] = ""
40*4882a593SmuzhiyunPACKAGECONFIG[mixartloader] = ""
41*4882a593SmuzhiyunPACKAGECONFIG[pcxhrloader] = ""
42*4882a593SmuzhiyunPACKAGECONFIG[qlo10k1] = ",,qt-x11-free"
43*4882a593SmuzhiyunPACKAGECONFIG[rmedigicontrol] = ",,gtk+"
44*4882a593SmuzhiyunPACKAGECONFIG[sb16_csp] = ""
45*4882a593SmuzhiyunPACKAGECONFIG[seq--sbiload] = ""
46*4882a593SmuzhiyunPACKAGECONFIG[sscape_ctl] = ""
47*4882a593SmuzhiyunPACKAGECONFIG[us428control] = ""
48*4882a593SmuzhiyunPACKAGECONFIG[usx2yloader] = ""
49*4882a593SmuzhiyunPACKAGECONFIG[vxloader] = ""
50*4882a593Smuzhiyun
51*4882a593Smuzhiyun# At the time of writing pyalsa is not packaged for OE, so this is not expected
52*4882a593Smuzhiyun# to work.
53*4882a593SmuzhiyunPACKAGECONFIG[hwmixvolume] = ",,,python-core python-pygobject pyalsa"
54*4882a593Smuzhiyun
55*4882a593Smuzhiyunpython do_configure() {
56*4882a593Smuzhiyun    for subdir in d.getVar("PACKAGECONFIG").split():
57*4882a593Smuzhiyun        subdir = subdir.replace("--", "/")
58*4882a593Smuzhiyun        bb.note("Configuring %s" % subdir)
59*4882a593Smuzhiyun        dd = d.createCopy()
60*4882a593Smuzhiyun        dd.setVar("S", os.path.join(d.getVar("S"), subdir))
61*4882a593Smuzhiyun        bb.build.exec_func("autotools_do_configure", dd)
62*4882a593Smuzhiyun}
63*4882a593Smuzhiyun
64*4882a593Smuzhiyunpython do_compile() {
65*4882a593Smuzhiyun    for subdir in d.getVar("PACKAGECONFIG").split():
66*4882a593Smuzhiyun        subdir = subdir.replace("--", "/")
67*4882a593Smuzhiyun        bb.note("Compiling %s" % subdir)
68*4882a593Smuzhiyun        dd = d.createCopy()
69*4882a593Smuzhiyun        dd.setVar("S", os.path.join(d.getVar("S"), subdir))
70*4882a593Smuzhiyun        bb.build.exec_func("autotools_do_compile", dd)
71*4882a593Smuzhiyun}
72*4882a593Smuzhiyun
73*4882a593Smuzhiyunpython do_install() {
74*4882a593Smuzhiyun    d.delVarFlag("autotools_do_install", "cleandirs")
75*4882a593Smuzhiyun    for subdir in d.getVar("PACKAGECONFIG").split():
76*4882a593Smuzhiyun        subdir = subdir.replace("--", "/")
77*4882a593Smuzhiyun        bb.note("Installing %s" % subdir)
78*4882a593Smuzhiyun        dd = d.createCopy()
79*4882a593Smuzhiyun        dd.setVar("S", os.path.join(d.getVar("S"), subdir))
80*4882a593Smuzhiyun        bb.build.exec_func("autotools_do_install", dd)
81*4882a593Smuzhiyun
82*4882a593Smuzhiyun    # Just remove bash-needing init script that isn't installed as an init script
83*4882a593Smuzhiyun    try:
84*4882a593Smuzhiyun        os.remove(oe.path.join(d.getVar("D"), d.getVar("sbindir"), "ld10k1d"))
85*4882a593Smuzhiyun    except:
86*4882a593Smuzhiyun        pass
87*4882a593Smuzhiyun}
88*4882a593Smuzhiyun
89*4882a593SmuzhiyunFILES:${PN} += "${datadir}"
90