-This is a collection of simulation tests. They use clknetsim to simulate
-multiple systems connected in a network. It's available at
+This is a collection of simulation tests using the clknetsim simulator
+(supported on Linux only).
https://github.com/mlichvar/clknetsim
-If this directory doesn't have a clknetsim subdirectory, a known working
-revision will be downloaded and compiled automatically.
-
-Currently it runs only on Linux.
+The CLKNETSIM_PATH environment variable should point to the directory where
+clknetsim was downloaded and compiled. If the variable is not set, the tests
+will look for clknetsim in ./clknetsim in the current directory.
The tests are written in bash and they can be run directly. The ./run script
runs all tests.
export LC_ALL=C
export PATH=../../:$PATH
-export CLKNETSIM_PATH=clknetsim
+export CLKNETSIM_PATH=${CLKNETSIM_PATH:-clknetsim}
-# Known working clknetsim revision
-clknetsim_revision=1e56224dee1db69c0027e9bd63c2a202d4765959
-clknetsim_url=https://github.com/mlichvar/clknetsim/archive/$clknetsim_revision.tar.gz
-
-# Only Linux is supported
-if [ "$(uname -s)" != Linux ]; then
- echo "Simulation tests supported only on Linux"
- exit 3
-fi
-
-# Try to download clknetsim if not found
-if [ ! -e $CLKNETSIM_PATH ]; then
- curl -L "$clknetsim_url" | tar xz || exit 3
- ln -s clknetsim-$clknetsim_revision clknetsim || exit 3
-fi
-
-# Try to build clknetsim if not built
-if [ ! -x $CLKNETSIM_PATH/clknetsim -o ! -e $CLKNETSIM_PATH/clknetsim.so ]; then
- make -C clknetsim || exit 3
+if [ ! -x $CLKNETSIM_PATH/clknetsim ]; then
+ echo "SKIP (clknetsim not found)"
+ exit 9
fi
. $CLKNETSIM_PATH/clknetsim.bash