[SM-Commit] GIT changes to master z-rejected grimoire by Andraž 'ruskie' Levstik (2d614e83fedf9528ff3ee4ca0b12bb4c2f8494aa)

Andraž 'ruskie' Levstik scm at sourcemage.org
Mon Feb 9 08:41:22 EST 2009


GIT changes to master z-rejected grimoire by Andraž 'ruskie' Levstik <ruskie at codemages.net>:

 .glselect/ati-filelist    |   11 ---
 .glselect/mesa-filelist   |   14 ----
 .glselect/nvidia-filelist |   12 ---
 ChangeLog                 |    4 -
 glselect.function         |  156 ++++++++++++++++++++--------------------------
 5 files changed, 71 insertions(+), 126 deletions(-)

New commits:
commit 2d614e83fedf9528ff3ee4ca0b12bb4c2f8494aa
Author: Andraž 'ruskie' Levstik <ruskie at codemages.net>
Commit: Andraž 'ruskie' Levstik <ruskie at codemages.net>

    glselect.function: updated

diff --git a/.glselect/ati-filelist b/.glselect/ati-filelist
deleted file mode 100644
index 007df47..0000000
--- a/.glselect/ati-filelist
+++ /dev/null
@@ -1,11 +0,0 @@
-/usr/lib/ati/libGL.so
-/usr/lib/ati/libGL.so.1.2
-/usr/lib/xorg/modules/extensions/ati/libdri.so
-/usr/lib/xorg/modules/extensions/ati/libglx.so
-/usr/lib/xorg/modules/mesa/libwfb.la
-/usr/lib/xorg/modules/mesa/libwfb.so
-/usr/include/GL/mesa/gl.h
-/usr/include/GL/mesa/glext.h
-/usr/include/GL/mesa/glx.h
-/usr/include/GL/mesa/glxext.h
-
diff --git a/.glselect/mesa-filelist b/.glselect/mesa-filelist
deleted file mode 100644
index 3e0a4dc..0000000
--- a/.glselect/mesa-filelist
+++ /dev/null
@@ -1,14 +0,0 @@
-/usr/include/GL/mesa/gl.h
-/usr/include/GL/mesa/glext.h
-/usr/include/GL/mesa/glx.h
-/usr/include/GL/mesa/glxext.h
-/usr/lib/mesa/libGL.so
-/usr/lib/mesa/libGL.so.1
-/usr/lib/mesa/libGL.so.1.2
-/usr/lib/xorg/modules/extensions/mesa/libdri.la
-/usr/lib/xorg/modules/extensions/mesa/libdri.so
-/usr/lib/xorg/modules/extensions/mesa/libglx.la
-/usr/lib/xorg/modules/extensions/mesa/libglx.so
-/usr/lib/xorg/modules/mesa/libwfb.la
-/usr/lib/xorg/modules/mesa/libwfb.so
-
diff --git a/.glselect/nvidia-filelist b/.glselect/nvidia-filelist
deleted file mode 100644
index ac5f24a..0000000
--- a/.glselect/nvidia-filelist
+++ /dev/null
@@ -1,12 +0,0 @@
-/usr/include/GL/nvidia/gl.h
-/usr/include/GL/nvidia/glext.h
-/usr/include/GL/nvidia/glx.h
-/usr/include/GL/nvidia/glxext.h
-/usr/lib/nvidia/libGL.so
-/usr/lib/nvidia/libGL.so.1
-/usr/lib/xorg/modules/extensions/mesa/libdri.la
-/usr/lib/xorg/modules/extensions/mesa/libdri.so
-/usr/lib/xorg/modules/extensions/nvidia/libglx.so
-/usr/lib/xorg/modules/nvidia/libnvidia-wfb.so
-/usr/lib/xorg/modules/nvidia/libwfb.so
-
diff --git a/ChangeLog b/ChangeLog
index 1fbcd36..87fbc8d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,6 @@
 2009-02-09 Andraž "ruskie" Levstik <ruskie at mages.ath.cx>
-	* .glselect/{nvidia,ati,mesa}-filelist: added from gl_select
-	* glselect.function: gl_select as a function
+	* .glselect/{nvidia,ati,mesa}-filelist: added from gl_select, removed
+	* glselect.function: gl_select as a function, updated
 	* FUNCTIONS: source glselect.function
 
 2009-01-05 Julien "_kaze_" ROZO <julien at rozo.org>
diff --git a/glselect.function b/glselect.function
index d075850..00690b8 100755
--- a/glselect.function
+++ b/glselect.function
@@ -10,116 +10,98 @@
 #---
 
 function glselect(){
-  # get all available GL providers
-  local gl_libs="$(ls -1 --color=none ${TRACK_ROOT}/usr/lib/*/libGL.so \
-                   | awk -F"/" '{print $4}' 2> /dev/null )"
-  # where to store the filelists
-  local gl_filelist_dir="$GRIMOIRE/.glselect"
-  local orig_file new_file
+  local file_list="
+                    /usr/lib/libGL.so
+                    /usr/lib/libGL.so.*
+                    /usr/lib/xorg/modules/extensions/libdri.la
+                    /usr/lib/xorg/modules/extensions/libdri.so
+                    /usr/lib/xorg/modules/extensions/libglx.la
+                    /usr/lib/xorg/modules/extensions/libglx.so*
+                    /usr/include/GL/gl.h
+                    /usr/include/GL/glext.h
+                    /usr/include/GL/glx.h
+                    /usr/include/GL/glxext.h
+                   "
+  local dir_list=( \
+                  "/usr/lib/ati" \
+                  "/usr/lib/nvidia" \
+                  "/usr/lib/mesa" \
+                  "/usr/include/GL/ati" \
+                  "/usr/include/GL/nvidia" \
+                  "/usr/include/GL/mesa" \
+                  "/usr/lib/xorg/modules/extensions/ati" \
+                  "/usr/lib/xorg/modules/extensions/nvidia" \
+                  "/usr/lib/xorg/modules/extensions/mesa" \
+                 )
+  local rm_file orig_dir
   local gl_lib=$1
-  if ! grep -q "$gl_lib" <<< "$gl_libs"
-  then
-    message "Error $gl_lib is not a valid GL Library"
-    exit 1
-  fi
   message "Selecting $gl_lib as the default system GL library"
   if [[ -L ${INSTALL_ROOT}/usr/lib/libGL.so ]] ||
      [[ ! -e ${INSTALL_ROOT}/usr/lib/libGL.so ]]
   then
     message "Cleaning all previous GL providers..."
-    for orig_file in $(grep "/ati" $gl_filelist_dir/ati-filelist)
+    for rm_file in $file_list
     do
-      new_file=${orig_file/\/ati}
-      rm -f $new_file
+      rm -f $rm_file
       echo -n "."
     done
     echo -n "."
-    orig_file=""
-    for orig_file in $(grep "/mesa" $gl_filelist_dir/mesa-filelist)
-    do
-      new_file=${orig_file/\/mesa}
-      rm -f $new_file
-      echo -n "."
-    done
-    echo -n "."
-    orig_file=""
-    for orig_file in $(grep "/nvidia" $gl_filelist_dir/nvidia-filelist)
-    do
-      new_file=${orig_file/\/nvidia}
-      rm -f $new_file
-      echo -n "."
-    done
-    orig_file=""
     echo ""
     message "Done."
     message "Setting up new GL provider $gl_lib..."
     case "$1" in
-       ati)
-            for orig_file in $(grep "/mesa" $gl_filelist_dir/ati-filelist)
-            do
-              new_file=${orig_file/\/mesa}
-              ln -sf ${INSTALL_ROOT}${orig_file} \
-                     ${INSTALL_ROOT}${new_file} 2>/dev/null
-              echo -n "."
-            done
-            orig_file=""
-            for orig_file in $(grep "/ati" $gl_filelist_dir/ati-filelist)
-            do
-              new_file=${orig_file/\/ati}
-              ln -sf ${INSTALL_ROOT}${orig_file} \
-                     ${INSTALL_ROOT}${new_file} 2>/dev/null
-              echo -n "."
-            done
-            ;;
-      mesa) 
-            for orig_file in $(cat $gl_filelist_dir/mesa-filelist)
-            do
-              new_file=${orig_file/\/mesa}
-              ln -sf ${INSTALL_ROOT}${orig_file} \
-                     ${INSTALL_ROOT}${new_file} 2>/dev/null
-              echo -n "."
-            done
-            ;;
-    nvidia) 
-            for orig_file in $(grep "/mesa" $gl_filelist_dir/nvidia-filelist)
-            do
-              new_file=${orig_file/\/mesa}
-              ln -sf ${INSTALL_ROOT}${orig_file} \
-                     ${INSTALL_ROOT}${new_file} 2>/dev/null
-              echo -n "."
-            done
-            orig_file=""
-            for orig_file in $(grep "/nvidia" $gl_filelist_dir/nvidia-filelist)
-            do
-              new_file=${orig_file/\/nvidia}
-              ln -sf ${INSTALL_ROOT}${orig_file} \
-                     ${INSTALL_ROOT}${new_file} 2>/dev/null
-              echo -n "."
-            done
-            ;;
-         *) message "Unknown secondary files so I only linked the libGL.so"
-            for orig_file in $(cat $gl_filelist_dir/mesa-filelist)
-            do
-              new_file=${orig_file/\/mesa}
-              ln -sf ${INSTALL_ROOT}${orig_file} \
-                     ${INSTALL_ROOT}${new_file} 2>/dev/null
-              echo -n "."
-            done
-            ln -fs ${INSTALL_ROOT}/usr/lib/$gl_lib/libGL.so* \
-                   ${INSTALL_ROOT}/usr/lib/ 2>/dev/null
-            ;;
+   ati) 
+        [[ -e ${INSTALL_ROOT}${dir_list[0]}/libGL.so ]] &&
+        ln -sf ${INSTALL_ROOT}${dir_list[0]}/* \
+               ${INSTALL_ROOT}/usr/lib/ 2>/dev/null
+        [[ -e ${INSTALL_ROOT}${dir_list[3]}/gl.h ]] &&
+        ln -sf ${INSTALL_ROOT}${dir_list[3]}/* \
+               ${INSTALL_ROOT}/usr/include/GL/ 2>/dev/null
+        [[ -e ${INSTALL_ROOT}${dir_list[6]}/libglx.so ]] &&
+        ln -sf ${INSTALL_ROOT}${dir_list[6]}/* \
+               ${INSTALL_ROOT}/usr/lib/xorg/modules/extensions/ 2>/dev/null
+        echo -n "."
+        ;;
+  mesa) 
+        [[ -e ${INSTALL_ROOT}${dir_list[2]}/libGL.so ]] &&
+        ln -sf ${INSTALL_ROOT}${dir_list[2]}/* \
+               ${INSTALL_ROOT}/usr/lib/ 2>/dev/null
+        [[ -e ${INSTALL_ROOT}${dir_list[5]}/gl.h ]] &&
+        ln -sf ${INSTALL_ROOT}${dir_list[5]}/* \
+               ${INSTALL_ROOT}/usr/include/GL/ 2>/dev/null
+        [[ -e ${INSTALL_ROOT}${dir_list[8]}/libglx.so ]] &&
+        ln -sf ${INSTALL_ROOT}${dir_list[8]}/* \
+               ${INSTALL_ROOT}/usr/lib/xorg/modules/extensions/ 2>/dev/null
+        echo -n "."
+        ;;
+nvidia) 
+        [[ -e ${INSTALL_ROOT}${dir_list[1]}/libGL.so ]] &&
+        ln -sf ${INSTALL_ROOT}${dir_list[1]}/* \
+               ${INSTALL_ROOT}/usr/lib/ 2>/dev/null
+        [[ -e ${INSTALL_ROOT}${dir_list[4]}/gl.h ]] &&
+        ln -sf ${INSTALL_ROOT}${dir_list[4]}/* \
+               ${INSTALL_ROOT}/usr/include/GL/ 2>/dev/null
+        [[ -e ${INSTALL_ROOT}${dir_list[7]}/libglx.so ]] &&
+        ln -sf ${INSTALL_ROOT}${dir_list[7]}/* \
+               ${INSTALL_ROOT}/usr/lib/xorg/modules/extensions/ 2>/dev/null
+        echo -n "."
+        ;;
+     *) message "Unknown secondary files so I only linked the libGL.so"
+        ln -fs ${INSTALL_ROOT}/usr/lib/$gl_lib/libGL.so* \
+               ${INSTALL_ROOT}/usr/lib/ 2>/dev/null
+        ;;
       esac
     echo -e "\nDone."
     message "You can manage the libGL providers at runtime by using"
     message "either smgl-gl_select or manually by symlinking the files"
     message "from their respective directories i.e.:"
     message "/usr/lib/[nvidia|ati|mesa]/libGL.so"
-    message "/usr/xorg/modules/extensions/[nvidia,ati,mesa]/lib{glx,dri}.so"
-    message "/usr/include/GL/[nvidia|mesa]/gl{x,xext,ext}.h"
+    message "/usr/lib/xorg/modules/extensions/[nvidia,ati,mesa]/lib{glx,dri}.so"
+    message "/usr/include/GL/[nvidia|ati|mesa]/gl{x,xext,ext}.h"
     message ""
     message "To:"
     message "/usr/lib/libGL.so"
-    message "/usr/xorg/modules/extensions/lib{glx,dri}.so"
+    message "/usr/lib/xorg/modules/extensions/lib{glx,dri}.so"
     message "/usr/include/GL/gl{x,xext,ext}.h"
     message ""
     return 0



More information about the SM-Commit mailing list