Lines 7-24
Link Here
|
7 |
SVN_DATE='$Date: 2011/08/29 21:02:02 $' |
7 |
SVN_DATE='$Date: 2011/08/29 21:02:02 $' |
8 |
VERSION=$(svn_date_to_version "${SVN_DATE}" ) |
8 |
VERSION=$(svn_date_to_version "${SVN_DATE}" ) |
9 |
|
9 |
|
|
|
10 |
get_libname() { |
11 |
[[ $(uname) == "Darwin" ]] \ |
12 |
&& echo ${1:+.}${1}.dylib \ |
13 |
|| echo .so${1:+.}${1} |
14 |
} |
15 |
|
10 |
XVMCLIBS=( |
16 |
XVMCLIBS=( |
11 |
"libXvMCNVIDIA_dynamic.so.1" |
17 |
"libXvMCNVIDIA_dynamic$(get_libname 1)" |
12 |
"libXvMC.so.1" |
18 |
"libXvMC$(get_libname 1)" |
13 |
"libviaXvMC.so.1" |
19 |
"libviaXvMC$(get_libname 1)" |
14 |
"libviaXvMCPro.so.1" |
20 |
"libviaXvMCPro$(get_libname 1)" |
15 |
"libchromeXvMC.so.1" |
21 |
"libchromeXvMC$(get_libname 1)" |
16 |
"libchromeXvMCPro.so.1" |
22 |
"libchromeXvMCPro$(get_libname 1)" |
17 |
"libXvMCVIA.so" |
23 |
"libXvMCVIA$(get_libname)" |
18 |
"libXvMCVIAPro.so" |
24 |
"libXvMCVIAPro$(get_libname)" |
19 |
"libI810XvMC.so.1" |
25 |
"libI810XvMC$(get_libname 1)" |
20 |
"/usr/lib/libIntelXvMC.so" |
26 |
"/usr/lib/libIntelXvMC$(get_libname)" |
21 |
"libAMDXvBA.so.1" ) |
27 |
"libAMDXvBA$(get_libname 1)" ) |
22 |
XVMCPRETTY=( |
28 |
XVMCPRETTY=( |
23 |
"nvidia" |
29 |
"nvidia" |
24 |
"xorg-x11" |
30 |
"xorg-x11" |
Lines 35-41
Link Here
|
35 |
get_implementation_indices() { |
41 |
get_implementation_indices() { |
36 |
local ret n |
42 |
local ret n |
37 |
for (( n = 0; n < ${#XVMCLIBS[@]}; ++n )); do |
43 |
for (( n = 0; n < ${#XVMCLIBS[@]}; ++n )); do |
38 |
[[ -e "${ROOT}/usr/lib/${XVMCLIBS[n]}" ]] && ret+=($n) |
44 |
[[ -e "${EROOT}/usr/lib/${XVMCLIBS[n]}" ]] && ret+=($n) |
39 |
done |
45 |
done |
40 |
|
46 |
|
41 |
echo ${ret[@]} |
47 |
echo ${ret[@]} |
Lines 43-50
Link Here
|
43 |
|
49 |
|
44 |
get_current_implementation_index() { |
50 |
get_current_implementation_index() { |
45 |
local n |
51 |
local n |
46 |
if [[ -f "${ROOT}/etc/X11/XvMCConfig" ]]; then |
52 |
if [[ -f "${EROOT}/etc/X11/XvMCConfig" ]]; then |
47 |
local current=$(< "${ROOT}/etc/X11/XvMCConfig") |
53 |
local current=$(< "${EROOT}/etc/X11/XvMCConfig") |
48 |
for (( n = 0; n < ${#XVMCLIBS[@]}; ++n )); do |
54 |
for (( n = 0; n < ${#XVMCLIBS[@]}; ++n )); do |
49 |
if [[ "${XVMCLIBS[n]}" = "${current}" ]]; then |
55 |
if [[ "${XVMCLIBS[n]}" = "${current}" ]]; then |
50 |
echo "${n}" |
56 |
echo "${n}" |
Lines 58-68
Link Here
|
58 |
|
64 |
|
59 |
set_new_implementation() { |
65 |
set_new_implementation() { |
60 |
echo -n "Switching to ${XVMCPRETTY[$1]} XvMC implementation..." |
66 |
echo -n "Switching to ${XVMCPRETTY[$1]} XvMC implementation..." |
61 |
touch "${ROOT}/etc/X11/XvMCConfig" 2>&1 > /dev/null |
67 |
touch "${EROOT}/etc/X11/XvMCConfig" 2>&1 > /dev/null |
62 |
if [[ $? -eq 0 ]]; then |
68 |
if [[ $? -eq 0 ]]; then |
63 |
echo "${XVMCLIBS[$1]}" > "${ROOT}/etc/X11/XvMCConfig" |
69 |
echo "${XVMCLIBS[$1]}" > "${EROOT}/etc/X11/XvMCConfig" |
64 |
chmod 644 "${ROOT}/etc/X11/XvMCConfig" |
70 |
chmod 644 "${EROOT}/etc/X11/XvMCConfig" |
65 |
chown 0:0 "${ROOT}/etc/X11/XvMCConfig" |
71 |
[[ ${EROOT} == "/" ]] && chown 0:0 "${EROOT}/etc/X11/XvMCConfig" |
66 |
echo " done" |
72 |
echo " done" |
67 |
else |
73 |
else |
68 |
echo " failed!" |
74 |
echo " failed!" |