The Sol Programming Language!
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

build.sh 877B

1234567891011121314151617181920212223242526272829
  1. #!/bin/sh
  2. if [ ! -f .submodule_stamp ]; then
  3. git submodule init && git submodule sync && git submodule update
  4. touch .submodule_stamp
  5. fi
  6. if [ -z "$CFLAGS" ]; then
  7. # Valid flags to add here:
  8. # -DDEBUG_GC : Turn on debug GC (all memory allocates/frees go to a file, use gcstat.py to get statistics)
  9. # -DSOL_ICACHE_MIN : Minimum integer to cache in the state
  10. # -DSOL_ICACHE_MAX : Maximum integer to cache in the state (if MAX < MIN, caching is disabled)
  11. CFLAGS="-g -DDEBUG_GC"
  12. fi
  13. CFLAGS="-lreadline"
  14. gcc -c $CFLAGS dsl/seq.c
  15. gcc -c $CFLAGS dsl/list.c
  16. gcc -c $CFLAGS dsl/array.c
  17. gcc -c $CFLAGS dsl/generic.c
  18. gcc -c $CFLAGS lex.yy.c
  19. gcc -c $CFLAGS parser.tab.c
  20. gcc -c $CFLAGS astprint.c
  21. gcc -c $CFLAGS runtime.c
  22. gcc -c $CFLAGS gc.c
  23. gcc -c $CFLAGS object.c
  24. gcc -c $CFLAGS state.c
  25. gcc -c $CFLAGS builtins.c
  26. gcc -c $CFLAGS solrun.c
  27. gcc $CFLAGS *.o -o sol -lm -ldl