/usr/src/blcr-0.8.5/tests/guile_test.sh is in blcr-dkms 0.8.5-2.1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | #!/bin/sh
# First check that we *have* guile
guile -c '(quit)' || exit 77
. ${cr_testsdir:-`dirname $0`}/shellinit
\rm -f Context[123] .Context[123].tmp 2>/dev/null
exec 2>/dev/null # To drop job control messages
echo '#ST_ALARM:120'
# Alas, (format) is not portable across guile versions
$cr_run guile -c '
(define greet
(lambda (n)
(if (< n 10)
(begin
(display n)(display " Hello\n")(force-output)
(sleep 1)
(greet (+ n 1))))))
(greet 0)
(display "# Checkpoint self\n")(force-output)
(system (string-append
(getenv "cr_checkpoint")
" --file=Context3 --term --tree "
(number->string (getpid))))
(display "11 DONE\n")
(quit)' 2>&1 &
pid=$!
sleep 3
echo "# Checkpoint original child"
$cr_checkpoint --file=Context1 --term $pid 2>&1
wait
sleep 1
echo "# Restart 1"
$cr_restart Context1 2>&1 &
pid=$!
sleep 3
echo "# Checkpoint restarted child"
$cr_checkpoint --file=Context2 --term --tree $pid 2>&1
wait
sleep 1
echo "# Restart^2"
$cr_restart Context2 2>&1 &
pid=$!
wait
echo "10 Restart interpreter"
$cr_restart Context3 2>&1
\rm -f Context[123] .Context[123].tmp 2>/dev/null
|