diff options
Diffstat (limited to 'utils')
-rwxr-xr-x | utils/alex.sh | 11 | ||||
-rwxr-xr-x | utils/happy.sh | 11 |
2 files changed, 22 insertions, 0 deletions
diff --git a/utils/alex.sh b/utils/alex.sh new file mode 100755 index 0000000000..5f9f24f080 --- /dev/null +++ b/utils/alex.sh @@ -0,0 +1,11 @@ +#!/usr/bin/env bash + +set -e + +rm -f "$3" +F2=$(mktemp --suffix=".x") +F3=$(mktemp --suffix=".hs") +tail -n +2 "$2" > "$F2" +alex -g --latin1 -o "$F3" "$F2" +ghc -E "$F3" -o "$3" # needed because alex spits out ifdef WORDS_BIGENDIAN conditionals +rm "$F2" "$F3" diff --git a/utils/happy.sh b/utils/happy.sh new file mode 100755 index 0000000000..093dd1977b --- /dev/null +++ b/utils/happy.sh @@ -0,0 +1,11 @@ +#!/usr/bin/env bash + +set -e + +rm -f "$3" +F2=$(mktemp --suffix=".y") +F3=$(mktemp --suffix=".hs") +cp "$2" "$F2" # needed because happy rejects files that do not have the .y extension +happy -agc --strict --outfile="$F3" "$F2" +ghc -E "$F3" -o "$3" # needed because happy spits out #if __GLASGOW_HASKELL__ >= 710 conditionals +rm "$F2" "$F3" |