Add 2018/bellard/try.sh
This commit is contained in:
1 parent
35ca2f8d1f
commit
485b24beab
3 files changed
+68
-14
No files matched your search
Executable
+50
@@ -0,0 +1,50 @@
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# try.sh - demonstrate IOCCC winner 2018/bellard
|
||||
#
|
||||
|
||||
# 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"
|
||||
|
||||
make CC="$CC" all >/dev/null || exit 1
|
||||
|
||||
# clear screen after compilation so that only the entry is shown
|
||||
clear
|
||||
|
||||
# find out if we have necessary tools
|
||||
PNGTOPAM="$(type -P pngtopam)"
|
||||
PNMSCALE="$(type -P pnmscale)"
|
||||
PNGTOPNM="$(type -P pngtopnm)"
|
||||
CJPEG="$(type -P cjpeg)"
|
||||
|
||||
rm -f small.jpg
|
||||
|
||||
if [[ -n "$PNGTOPAM" && -n "$PNMSCALE" && -n "$CJPEG" ]]; then
|
||||
echo "$ $PNGTOPAM < Lenna.png | $PNMSCALE 0.25 | $CJPEG -arithmetic -dct float -quality 14 > small.jpg" 1>&2
|
||||
read -r -n 1 -p "Press any key to continue: "
|
||||
echo 1>&2
|
||||
"$PNGTOPAM" < Lenna.png | "$PNMSCALE" 0.25 | "$CJPEG" -arithmetic -dct float -quality 14 > small.jpg
|
||||
if [[ -f small.jpg ]]; then
|
||||
echo "Now open small.jpg in your graphics viewer of choice." 1>&2
|
||||
fi
|
||||
elif [[ -n "$PNGTOPNM" && -n "$PNMSCALE" && -n "$CJPEG" ]]; then
|
||||
echo "$ $PNGTOPNM < Lenna.png | $PNMSCALE 0.25 | $CJPEG -arithmetic -dct float -quality 14 > small.jpg" 1>&2
|
||||
read -r -n 1 -p "Press any key to continue: "
|
||||
echo 1>&2
|
||||
"$PNGTOPNM" < Lenna.png | "$PNMSCALE" 0.25 | "$CJPEG" -arithmetic -dct float -quality 14 > small.jpg
|
||||
if [[ -f small.jpg ]]; then
|
||||
echo "Now open small.jpg in your graphics viewer of choice." 1>&2
|
||||
fi
|
||||
else
|
||||
if [[ -z "$PNGTOPAM" || -z "$PNGTOPNM" || "$PNMSCALE" ]]; then
|
||||
echo "Cannot find pngtopam(1) or pnmscale(1). Try installing netpbm first." 1>&2
|
||||
echo "See https://github.com/ioccc-src/temp-test-ioccc/blob/master/faq.md#netpbm" 1>&2
|
||||
echo 1>&2
|
||||
fi
|
||||
if [[ -z "$CJPEG" ]]; then
|
||||
echo "Cannot find cjpeg. Try installing libjpeg-turbo." 1>&2
|
||||
echo "See https://github.com/ioccc-src/temp-test-ioccc/blob/master/faq.md#libjpeg." 1>&2
|
||||
echo 1>&2
|
||||
fi
|
||||
Reference in new issue
Block a user