blob: ebae7995889f17bda557d20bbc40bd46cd8a0a15 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
mconf()
{
# arbitrary, but I can't imagine a system with more
# than 6 *different* audio cards !
for i in `seq 6` ;
do C=`echo snd-$CARDS | sed s/\,/\,snd-/g | cut -d, -f${i}` ;
if [ -n "$C" ] ; then
echo "alias snd-card-`expr $i - 1` $C">>${INSTALL_ROOT}/etc/modules.d/alsa &&
echo "alias snd-slot-`expr $i - 1` snd-card-`expr $i - 1`">>${INSTALL_ROOT}/etc/modules.d/alsa
fi ;
done &&
cat >> ${INSTALL_ROOT}/etc/modules.d/alsa <<EOF
alias /dev/mixer snd-mixer-oss
alias /dev/dsp snd-pcm-oss
alias /dev/midi snd-seq-oss
EOF
}
dconf()
{
if test -f ${INSTALL_ROOT}/etc/devfsd.conf && ! grep -q alsa ${INSTALL_ROOT}/etc/devfsd.conf; then
cat >> ${INSTALL_ROOT}/etc/devfsd.conf <<EOF
# some MODLOAD
LOOKUP midi MODLOAD
# setup permissions for oss audio/alsa oss emulation
REGISTER ^sound/ PERMISSIONS -1.audio 0660
# setup some symlinks for oss audio/alsa oss emulation
REGISTER ^sound/mixer$ CFUNCTION GLOBAL mksymlink $devname mixer
REGISTER ^sound/mixer$ CFUNCTION GLOBAL mksymlink $devname mixer0
UNREGISTER ^sound/mixer$ CFUNCTION GLOBAL unlink mixer
UNREGISTER ^sound/mixer$ CFUNCTION GLOBAL unlink mixer0
REGISTER ^sound/dsp$ CFUNCTION GLOBAL mksymlink $devname dsp
UNREGISTER ^sound/dsp$ CFUNCTION GLOBAL unlink dsp
REGISTER ^sound/adsp$ CFUNCTION GLOBAL mksymlink $devname dsp1
UNREGISTER ^sound/adsp$ CFUNCTION GLOBAL unlink dsp1
REGISTER ^sound/midi$ CFUNCTION GLOBAL mksymlink $devname midi
UNREGISTER ^sound/midi$ CFUNCTION GLOBAL unlink midi
REGISTER ^sound/amidi$ CFUNCTION GLOBAL mksymlink $devname amidi
UNREGISTER ^sound/amidi$ CFUNCTION GLOBAL unlink amidi
EOF
else
echo "devfsd.conf already configured, skipping"
fi
}
default_install &&
./snddevices &&
if [ -f ${INSTALL_ROOT}/dev/snd ]; then
rm -f ${INSTALL_ROOT}/dev/snd
fi &&
chown root.audio ${INSTALL_ROOT}/dev/adsp &&
chmod 777 ${INSTALL_ROOT}/dev/adsp &&
chown root.audio ${INSTALL_ROOT}/dev/amidi &&
chmod 777 ${INSTALL_ROOT}/dev/amidi &&
chown root.audio ${INSTALL_ROOT}/dev/audio &&
chmod 777 ${INSTALL_ROOT}/dev/audio &&
chown root.audio ${INSTALL_ROOT}/dev/dsp &&
chmod 777 ${INSTALL_ROOT}/dev/dsp &&
chown root.audio ${INSTALL_ROOT}/dev/midi* &&
chmod 777 ${INSTALL_ROOT}/dev/midi* &&
chown root.audio ${INSTALL_ROOT}/dev/mixer &&
chmod 777 ${INSTALL_ROOT}/dev/mixer &&
chown root.audio ${INSTALL_ROOT}/dev/sequencer* &&
chmod 777 ${INSTALL_ROOT}/dev/sequencer* &&
chown root.audio ${INSTALL_ROOT}/dev/snd &&
chmod 777 ${INSTALL_ROOT}/dev/snd &&
if [ ! -f ${INSTALL_ROOT}/etc/modules.d/alsa ]; then
mkdir -p ${INSTALL_ROOT}/etc/modules.d &&
mconf
fi &&
dconf &&
MOD="${INSTALL_ROOT}/etc/modules.conf"
INC="include ${TRACK_ROOT}/etc/modules.d/alsa"
grep -q "$INC" $MOD ||
echo "$INC" >> $MOD
|