diff --git a/xtrn/sbl/sbl b/xtrn/sbl/sbl
index f99073b94deed9922866a450bd136319bb869a35..f6dbb740c944cffcee3b13dd2f770f22386d0c73 100755
--- a/xtrn/sbl/sbl
+++ b/xtrn/sbl/sbl
@@ -1,13 +1,15 @@
 #!/bin/sh
 os=`uname | tr "[A-Z]" "[a-z]"`
-if [ -x gcc.$os.exe.release/$0 ]
-	then exec gcc.$os.exe.release/$0 $@
-elif [ -x gcc.$os.exe.debug/$0 ]
-	then exec gcc.$os.exe.debug/$0 $@
-elif [ -x *.$os.exe.release/$0 ]
-	then exec *.$os.exe.release/$0 $@
-elif [ -x *.$os.exe.debug/$0 ]
-	then exec *.$os.exe.debug/$0 $@
-elif [ -x *.$os.exe.*/$0 ]
-	then exec *.$os.exe.*/$0 $@
+exename=`basename $0`
+dirname=`dirname $0`
+if [ -x $dirname\/gcc.$os.exe.release/$exename ]
+	then exec $dirname\/gcc.$os.exe.release/$exename $@
+elif [ -x $dirname\/gcc.$os.exe.debug/$exename ]
+	then exec $dirname\/gcc.$os.exe.debug/$exename $@
+elif [ -x $dirname\/*.$os.exe.release/$exename ]
+	then exec $dirname\/*.$os.exe.release/$exename $@
+elif [ -x $dirname\/*.$os.exe.debug/$exename ]
+	then exec $dirname\/*.$os.exe.debug/$exename $@
+elif [ -x $dirname\/*.$os.exe.*/$exename ]
+	then exec $dirname\/*.$os.exe.*/$exename $@
 fi