36 lines
646 B
Bash
Executable file
36 lines
646 B
Bash
Executable file
#!/bin/bash
|
|
#Small wrapper to deal with compilation of the compiler and the stdlib.
|
|
|
|
|
|
RUN_DIR=`pwd`
|
|
|
|
|
|
SCRIPT_DIR=$RUN_DIR/`dirname $0`
|
|
|
|
COMPILER_DIR=$SCRIPT_DIR/compiler
|
|
COMPILER=heptc.byte
|
|
LIB_DIR=$SCRIPT_DIR/lib
|
|
|
|
#the symlink
|
|
HEPTC=$COMPILER_DIR/$COMPILER
|
|
|
|
#compile the compiler
|
|
if [ ! -x $HEPTC ]
|
|
then
|
|
cd $COMPILER_DIR
|
|
ocamlbuild -j 0 $COMPILER
|
|
cd -
|
|
fi
|
|
|
|
#compile the stdlib
|
|
if [ ! -e $LIB_DIR/pervasives.epci ] || [ $HEPTC -nt $LIB_DIR/pervasives.epci ]
|
|
then
|
|
cd $LIB_DIR
|
|
echo "Recompile pervasives.epci"
|
|
$HEPTC -nopervasives pervasives.epi
|
|
cd -
|
|
fi
|
|
|
|
#call the compiler with the passed arguments.
|
|
cd $RUN_DIR
|
|
$HEPTC -stdlib $LIB_DIR "$@"
|