git @ Cat's Eye Technologies PL-GOTO.NET / master build.sh
master

Tree @master (Download .tar.gz)

build.sh @masterraw · history · blame

#!/bin/sh

# SPDX-FileCopyrightText: Chris Pressey, the original author of this work, has dedicated it to the public domain.
# For more information, please refer to <https://unlicense.org/>
# SPDX-License-Identifier: Unlicense

PROG=PLexceptGOTOdotNET

if command -v ghc >/dev/null 2>&1; then
    echo "building $PROG.exe with ghc"
    (cd src && ghc --make Main.hs -o ../bin/$PROG.exe) || exit 1
else
    echo "ghc not found, not building $PROG.exe"
fi

# For this to work, you need hastec installed.
# You also need parsec installed in a way that haste can use it:
#
#    haste-cabal install parsec-3.1.1
#
# Later versions might not work.  For example, 3.1.13.0 fails to build for me at:
# Preprocessing library generic-deriving-1.12.3...
# src/Generics/Deriving/TH/Pre4_9.hs:177:20:
#     parse error on input ‘->’
#

if command -v hastec >/dev/null 2>&1; then
    echo "building $PROG.js with hastec"
    (cd src && hastec --make HasteMain.hs -o $PROG.js && mv $PROG.js ../demo/$PROG.js) || exit 1
else
    echo "hastec not found, not building $PROG.js"
fi