2010-06-21 12:11:06 +02:00
|
|
|
|
#!/bin/sh
|
|
|
|
|
# This small helper scripts automates the Heptagon -> C translation.
|
|
|
|
|
|
|
|
|
|
if [ $# -lt 1 ]
|
|
|
|
|
then
|
|
|
|
|
echo Usage: $0 file.ept
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
|
2010-11-10 15:44:28 +01:00
|
|
|
|
if `which heptc.native` 2>/dev/null; then
|
|
|
|
|
HEPTC=heptc.native
|
|
|
|
|
else
|
|
|
|
|
HEPTC=heptc.byte
|
|
|
|
|
fi
|
|
|
|
|
|
2010-06-21 12:11:06 +02:00
|
|
|
|
compile=1
|
|
|
|
|
|
|
|
|
|
if [ $# -gt 2 ];
|
|
|
|
|
then
|
|
|
|
|
nocompile=0
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
F=$1
|
|
|
|
|
REP=`basename $F .ept`_c
|
|
|
|
|
shift
|
|
|
|
|
|
|
|
|
|
# Compile source file to VHDL, flattening node calls
|
|
|
|
|
if [ $compile -eq 1 ]; then
|
2010-11-10 15:44:28 +01:00
|
|
|
|
$HEPTC $@ -s main -target c $F $@ || exit 1
|
2010-06-21 12:11:06 +02:00
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# Compile it with GCC
|
2010-06-28 15:18:16 +02:00
|
|
|
|
cc -std=c99 $REP/*.c -o `basename $F .ept` || exit 1
|