101 lines
3.0 KiB
Bash
Executable File
101 lines
3.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
#
|
|
# try.sh - demonstrate IOCCC entry 2011/hamaji
|
|
#
|
|
|
|
# make sure CC is set so that when we do make CC="$CC" it isn't empty. Doing it
|
|
# this way allows us to have the user specify a different compiler in an easy
|
|
# way.
|
|
if [[ -z "$CC" ]]; then
|
|
CC="cc"
|
|
fi
|
|
|
|
make CC="$CC" all >/dev/null || exit 1
|
|
|
|
# clear screen after compilation so that only the entry is shown
|
|
clear
|
|
|
|
read -r -n 1 -p "Press any key to run: ./hamaji < dragon.nono (q = quit, space = next page): "
|
|
echo 1>&2
|
|
./hamaji < dragon.nono | less -rEXFK
|
|
echo 1>&2
|
|
|
|
rm -f dragon dragon2
|
|
PERL="$(type -P perl)"
|
|
if [[ -n "$PERL" && -f "$PERL" && -x "$PERL" ]]; then
|
|
echo "Perl installed, will generate output of ./hamaji < dragon.nono."
|
|
echo 1>&2
|
|
echo "$ $PERL c2nono.pl hamaji.c | ./hamaji | tee dragon"
|
|
read -r -n 1 -p "Press any key to continue (space = next page, q = quit): "
|
|
"$PERL" c2nono.pl hamaji.c | ./hamaji | tee dragon | less -rEXFK
|
|
echo 1>&2
|
|
echo "$ ./hamaji < dragon.nono | tee dragon2" 1>&2
|
|
read -r -n 1 -p "Press any key to run: ./hamaji < dragon.nono | tee dragon2 (space = next page, q = quit): "
|
|
echo 1>&2
|
|
./hamaji < dragon.nono | tee dragon2 | less -rEXFK
|
|
read -r -n 1 -p "Press any key to run: diff -s dragon dragon2: "
|
|
echo 1>&2
|
|
diff -s dragon dragon2
|
|
else
|
|
echo "Perl not found, will not run perl related steps." 1>&2
|
|
fi
|
|
rm -f dragon dragon2
|
|
echo 1>&2
|
|
|
|
read -r -n 1 -p "Press any key to run: ./hamaji < random.nono (space = next page, q = quit): "
|
|
echo 1>&2
|
|
./hamaji < random.nono | less -rEXFK
|
|
echo 1>&2
|
|
|
|
read -r -n 1 -p "Press any key to run: ./hamaji < soccer.nono (space = next page, q = quit): "
|
|
echo 1>&2
|
|
./hamaji < soccer.nono | less -rEXFK
|
|
echo 1>&2
|
|
|
|
read -r -n 1 -p "Press any key to run: ./hamaji < codegolf.nono (space = next page, q = quit): "
|
|
echo 1>&2
|
|
./hamaji < codegolf.nono | less -rEXFK
|
|
echo 1>&2
|
|
|
|
read -r -n 1 -p "Press any key to run: ./hamaji < face.nono (space = next page, q = quit): "
|
|
echo 1>&2
|
|
./hamaji < face.nono | less -rEXFK
|
|
echo 1>&2
|
|
|
|
read -r -n 1 -p "Press any key to run: ./hamaji < penguin.nono (space = next page, q = quit): "
|
|
echo 1>&2
|
|
./hamaji < penguin.nono | less -rEXFK
|
|
echo 1>&2
|
|
|
|
read -r -n 1 -p "Press any key to run: ./hamaji < samurai.nono (q = quit, space = next page): "
|
|
echo 1>&2
|
|
./hamaji < samurai.nono | less -rEXFK
|
|
echo 1>&2
|
|
|
|
echo "$ ./hamaji < conway-game-of-life.nono" 1>&2
|
|
read -r -n 1 -p "Press any key to continue (space = next page, q = quit): "
|
|
echo 1>&2
|
|
./hamaji < conway-game-of-life.nono | less -rEXFK
|
|
echo 1>&2
|
|
|
|
read -r -n 1 -p "Press any key to run: ./hamaji < no-solution.nono (no solution): "
|
|
echo 1>&2
|
|
./hamaji < no-solution.nono
|
|
echo 1>&2
|
|
|
|
read -r -n 1 -p "Press any key to run: ./hamaji < multi-solutions.nono (> 1 solution): "
|
|
echo 1>&2
|
|
./hamaji < multi-solutions.nono
|
|
echo 1>&2
|
|
|
|
read -r -n 1 -p "Press any key to run: ./hamaji < plus.nono (space = next page, q = quit): "
|
|
echo 1>&2
|
|
./hamaji < plus.nono | less -rEXFK
|
|
echo 1>&2
|
|
|
|
read -r -n 1 -p "Press any key to run: ./hamaji < smiley.nono (space = next page, q = quit): "
|
|
echo 1>&2
|
|
./hamaji < smiley.nono | less -rEXFK
|
|
|
|
exit 0
|