core/catalyst-utils/switchlibGL

71 lines
1.5 KiB
Bash
Executable File

#!/bin/sh
# A stupid script to switch GL libs on chakra/archlinux
USAGE=0
F_FGLRX="/usr/lib/fglrx/fglrx-libGL.so.1.2"
F_MESA="/usr/lib/libGL.so.1.2.mesa"
F_TARGETS="/usr/lib/libGL.so.1.2"
F32_FGLRX="/usr/lib32/fglrx/fglrx-libGL.so.1.2"
F32_MESA="/usr/lib32/libGL.so.1.2.mesa"
F32_TARGETS="/usr/lib32/libGL.so.1.2"
if [ -z $1 ]; then
USAGE=1
fi
if [ $USAGE -eq 1 ]; then
echo "Usage: $0 amd|intel|query"
exit 0
fi
function fix_links {
ln -sf ${F_MESA} ${F_TARGETS}
ln -sf ${F_TARGETS} /usr/lib/libGL.so.1
ln -sf ${F_TARGETS} /usr/lib/libGL.so
if [ -e $F32_FGLRX ]; then
ln -sf ${F32_MESA} ${F32_TARGETS}
ln -sf ${F32_TARGETS} /usr/lib32/libGL.so.1
ln -sf ${F32_TARGETS} /usr/lib32/libGL.so
fi
}
function switch_ati {
ln -sf ${F_FGLRX} ${F_TARGETS}
if [ -e $F32_FGLRX ]; then
ln -sf ${F_FGLRX} ${F_TARGETS}
fi
}
function switch_intel {
ln -sf ${F_MESA} ${F_TARGETS}
if [ -e $F32_FGLRX ]; then
ln -sf ${F_MESA} ${F_TARGETS}
fi
}
function print_current {
CURRENT_GL=`ls -l ${F_TARGETS}|awk '{print $11}'`
# echo $CURRENT_GL
if [ -z $CURRENT_GL ]; then
echo unknown
exit 1
fi
if [ "$CURRENT_GL" = ${F_FGLRX} ]; then
echo "amd"
fi
if [ "$CURRENT_GL" = ${F_MESA} ]; then
echo "intel"
fi
}
if [ "$1" = "amd" ]; then
fix_links
switch_ati
else
if [ "$1" = "intel" ];then
fix_links
switch_intel
else
if [ "$1" = "query" ]; then
print_current
fi
fi
fi