Imported Upstream version 3.2.2
[debian/gnuradio] / run_tests.sh.in
index 5e1cbdc990069db1d5caba2f4c577fe75ee8ab42..69fbe26dc0758c12fc39a7af13c4d797d2ec86df 100644 (file)
@@ -4,6 +4,15 @@
 # Second argument is absolute path to top of component build directory
 # Third argument is component source directory for qa tests
 
+# Absolute path to the top of the source directory
+abs_top_srcdir=@abs_top_srcdir@
+
+# Absolute path to the top of the build directory
+abs_top_builddir=@abs_top_builddir@
+
+# current QA srcdir
+export srcdir=$3
+
 # Where to find my swig generated shared library
 mylibdir=$2/src:$2/src/.libs:$2/src/lib:$2/src/lib/.libs
 
@@ -13,27 +22,115 @@ mysrcdir=$1/src:$1/src/lib
 # Where to find my hand written python modules
 mypydir=$1/src:$1/src/python
 
-# Where to find core's swig generated shared libraries
-grswigdir=@abs_top_builddir@/gnuradio-core/src/lib/swig
-grswigdir=$grswigdir:$grswigdir/.libs
+# Where to find core's swig generated shared libraries,
+# and hand generated swig glue
+grswigdir=@gnuradio_core_SWIGDIRPATH@
 
 # Where to find core's python modules
-grpydir=@abs_top_srcdir@/gnuradio-core/src/python
+grpydir=@gnuradio_core_PYDIRPATH@
 
-# Where to find core's master library files
-grlibdir=@abs_top_builddir@/gnuradio-core/src/lib
-grlibdir=$grlibdir:$grlibdir/.libs
+# Construct search path for python modules, if each exists
+for dir in $grswigdir $grpydir
+do
+    if [ "$dir" != "" ]
+    then
+       if [ "$PYTHONPATH" = "" ]
+       then
+           PYTHONPATH="$dir"
+       else
+           PYTHONPATH="$dir:$PYTHONPATH"
+       fi
+    fi
+done
 
-# Construct search path for python modules
-PYTHONPATH="$mylibdir:$mysrcdir:$mypydir:$grswigdir:$grpydir:$PYTHONPATH"
+# Where to find pre-installed python modules
+withpydirs=@with_PYDIRPATH@
+
+# Add the 'with' dirs to the end of the python search path, if it exists
+if [ "$withpydirs" != "" ]
+then
+    PYTHONPATH="$PYTHONPATH:$withpydirs"
+fi
+
+# Add the "my" dirs to the absolute front of the python search path
+PYTHONPATH="$mylibdir:$mysrcdir:$mypydir:$PYTHONPATH"
 export PYTHONPATH
 
-# For OS/X
-DYLD_LIBRARY_PATH=$grlibdir:$DYLD_LIBRARY_PATH
-export DYLD_LIBRARY_PATH
+# Where to find omnithread library files
+gromnidir=@omnithread_LIBDIRPATH@
+
+# Where to find gruel library files
+grueldir=@gruel_LIBDIRPATH@
+
+# Where to find gnuradio core's library files
+grcoredir=@gnuradio_core_LIBDIRPATH@
+
+# Construct search path for python modules
+# Check each one to make sure it's not "" before adding
+grlibdir=""
+for dir in $gromnidir $grcoredir $grueldir
+do
+    if [ "$dir" != "" ]
+    then
+       if [ "$grlibdir" = "" ]
+       then
+           grlibdir="$dir"
+       else
+           grlibdir="$dir:$grlibdir"
+       fi
+    fi
+done
+
+# Add 'mylibdir' to the start of the library load path, to get local
+# (to this component) created libraries
+
+# Where to find pre-installed libraries
+withlibdirs=@with_LIBDIRPATH@
 
-# For Win32
-PATH=$grlibdir:$PATH
+case "@host_os@" in
+  darwin*)
+    # Special Code for executing on Darwin / Mac OS X only
+    if [ "$DYLD_LIBRARY_PATH" = "" ]
+    then
+       DYLD_LIBRARY_PATH=$mylibdir
+    else
+       DYLD_LIBRARY_PATH=$mylibdir:$DYLD_LIBRARY_PATH
+    fi
+    # DYLD_LIBRARY_PATH will not be empty now
+    # Add the grlibdir paths to the front of any library load variable
+    if [ "$grlibdir" != "" ]
+    then
+       DYLD_LIBRARY_PATH=$grlibdir:$DYLD_LIBRARY_PATH
+    fi
+    # Add the withdirs paths to the end of any library load variable
+    if [ "$withlibdirs" != "" ]
+    then
+       DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:$withlibdirs
+    fi
+    export DYLD_LIBRARY_PATH
+    ;;
+  cygwin*|win*|mingw*)
+    # Special Code for executing on Win32 variants only
+    if [ "$PATH" = "" ]
+    then
+       PATH=$mylibdir
+    else
+       PATH=$mylibdir:$PATH
+    fi
+    # PATH will not be empty now
+    # Add the grlibdir paths to the front of any library load variable
+    if [ "$grlibdir" != "" ]
+    then
+       PATH=$grlibdir:$PATH
+    fi
+    # Add the withdirs paths to the end of any library load variable
+    if [ "$withlibdirs" != "" ]
+    then
+       PATH=$PATH:$withlibdirs
+    fi
+    export PATH
+    ;;
+esac
 
 # Don't load user or system prefs
 GR_DONT_LOAD_PREFS=1
@@ -44,8 +141,15 @@ export GR_DONT_LOAD_PREFS
 ok=yes
 for file in $3/qa_*.py
 do
-  if ! @PYTHON@ $file
+  # echo $file
+  @PYTHON@ $file
+  r=$?
+  if [ $r -ne 0 ]
   then
+    if [ $r -ge 128 ]          # killed by a signal
+    then
+      exit $r
+    fi
     ok=no
   fi  
 done