| #!/bin/bash |
| # switchlibGL |
| # |
| # Copyright (c) 2011 Advanced Micro Devices, Inc. |
| # |
| # Purpose: |
| # For switch between AMD and Intel graphic driver library. |
| # |
| # Usage: |
| # switchlibGL amd|intel|query |
| # amd: switches to the AMD version of libGL. |
| # intel: switches to the open-source version of libGL . |
| # query: checks, which version is currently active and prints either "amd" |
| # or "intel" or "unknown" on the standard output. |
| # must be root to execute this script |
| |
| ARCH=`uname -m` |
| E_ERR=1 |
| |
| # Check if root |
| if [ "`whoami`" != "root" ]; then |
| echo "Must be root to run this script." 1>&2 |
| exit $E_ERR |
| fi |
| |
| # One parameter |
| if [ $# -ne 1 ]; then |
| echo "Usage: `basename $0` amd|intel|query " 1>&2 |
| echo "Please choose one parameter " 1>&2 |
| exit $E_ERR |
| fi |
| |
| current=$(eselect opengl show) |
| # Switch to right mode |
| case "$1" in |
| "amd" ) |
| if [ $current != ati ] ; then |
| eselect opengl set ati || return 1 |
| fi |
| ;; |
| "intel" ) |
| if [ $current != xorg-x11 ] ; then |
| eselect opengl set xorg-x11 || return 1 |
| fi |
| ;; |
| "query" ) |
| case "$current" in |
| "ati" ) |
| echo "amd" |
| ;; |
| "xorg-x11" ) |
| echo "intel" |
| ;; |
| esac |
| ;; |
| * ) echo "Usage: `basename $0` amd|intel|query" 1>&2; exit $E_ERR;; |
| # other than amd|intel|query parameter report an error |
| esac |
| |
| # A zero return value from the script upon exit indicates success. |
| exit 0 |