1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
#! @SHELL@ -e
# [mx] make 'pl0c' and 'pl0r'
# create subdirectories holding generated files if they don't exist
for subdir in img gen inc prj ; do
[ -d ${subdir} ] || mkdir ${subdir}
done
INCLUDES="-I./inc -I@includedir@"
# For static linking, you may need to uncomment these 2 lines
# LDFLAGS="-static"
# LIBS="-ldl -lrt -lpthread"
#destination directory for parser and scanner table image files
BINSTYX=./img
#destination directory for parser and scanner table and term interface source files
GENSTYX=./gen
#source directory of language specification file
SPESTYX=.
export BINSTYX GENSTYX SPESTYX
#create source files
styx pl0 -makeC -makeINT -makeIMG -verbose
#create header files for generated c-sources
ctoh -ct -CPATH=./gen -HPATH=./inc -PRJ=./prj
#compile sources to program 'pl0c'
gcc ${CFLAGS} ${INCLUDES} ${LDFLAGS} \
pl0c.c ./gen/pl0_pim.c ./gen/pl0_lim.c ./gen/pl0_int.c \
-ldstyx ${LIBS} \
-o pl0c
#compile sources to program 'pl0r'
gcc ${CFLAGS} ${INCLUDES} ${LDFLAGS} \
pl0r.c ./gen/pl0_pim.c ./gen/pl0_lim.c ./gen/pl0_int.c
-ldstyx ${LIBS} \
-o pl0r
|