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