Files
Cody Boone Ferguson 39664ab665 Fix manifest for 2013/endoh4
The endoh4.sh script is better described now. In the script itself it no
longer refers to try.sh but endoh4.sh.

Regenerated .entry.json and index.html file.
2024-06-01 11:38:45 -07:00

47 lines
1.2 KiB
Bash
Executable File

#!/usr/bin/env bash
#
# endoh4.sh - run IOCCC entry 2013/endoh4 without cursor being in the way
#
# 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.
[[ -z "$CC" ]] && CC="cc"
# let user redefine size. This requires that we clobber so that they can change
# it each time.
[[ -z "$SIZE" ]] && SIZE=70,23
make clobber CC="$CC" SIZE="$SIZE" all >/dev/null || exit 1
# clear screen after compilation so that only the entry is shown
clear
# set it so that when program is terminated through various signals we re-enable
# the cursor
trap "tput cnorm;echo" 0 1 2 3 15
# temporarily disable cursor
tput civis
# run program attempting to feed it a file, if specified
if [[ "$#" -gt 0 ]]; then
while [[ "$#" -gt 0 ]]; do
read -r -n 1 -p "Press any key to run: ./endoh4 < $1: "
echo 1>&2
./endoh4 < "$1"
echo 1>&2
shift 1
done
else
# otherwise feed the source code of the program to the program
read -r -n 1 -p "Press any key to run: ./endoh4 < endoh4.c: "
echo 1>&2
./endoh4 < endoh4.c
echo 1>&2
fi
# explicitly set cursor back just in case it's not terminated through one of the
# above signals
tput cnorm