30 lines
679 B
Bash
Executable File
30 lines
679 B
Bash
Executable File
#!/bin/bash
|
|
|
|
SCRIPT_DIR="$(dirname $0)"
|
|
CC=clang
|
|
CFLAGS="-g -Wall -Werror -pedantic -I$SCRIPT_DIR/include"
|
|
SRC="$SCRIPT_DIR/src/main.c"
|
|
OUT=$SCRIPT_DIR/main
|
|
|
|
# STATE_TABLE
|
|
$CC $CFLAGS -I$SCRIPT_DIR/include/lexer $SCRIPT_DIR/generate_state_table.c -o $SCRIPT_DIR/gentable
|
|
$SCRIPT_DIR/gentable
|
|
|
|
# DSTRING
|
|
CFLAGS+=" -I$SCRIPT_DIR/include/dstring"
|
|
SRC+=" $SCRIPT_DIR/src/dstring/*.c"
|
|
|
|
# JSON_ENTITIES
|
|
CFLAGS+=" -I$SCRIPT_DIR/include/json_entities"
|
|
SRC+=" $SCRIPT_DIR/src/json_entities/*.c"
|
|
|
|
# LEXER
|
|
CFLAGS+=" -I$SCRIPT_DIR/include/lexer"
|
|
SRC+=" $SCRIPT_DIR/src/lexer/*.c"
|
|
|
|
# PARSER
|
|
CFLAGS+=" -I$SCRIPT_DIR/include/parser"
|
|
SRC+=" $SCRIPT_DIR/src/parser/*.c"
|
|
|
|
$CC $CFLAGS $SRC -o $OUT
|