diff --git a/README.md b/README.md index 10068ed..3885666 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ This repository holds the reference implementation for Toy version 2.x, written # Nifty Features -* Simple C-like/JS-like syntax +* Simple C-style syntax * Intermediate AST and bytecode representations * Strong, but optional type system * First-class functions and closures @@ -24,18 +24,20 @@ This repository holds the reference implementation for Toy version 2.x, written Watch this space. -(The `scripts` or `tests` directory might help.) +(The `scripts` or `tests` directory might help, the docs website is WIP.) # Building -Watch this space. +This project requires `gcc` and `make` by default, but should also work in other environments. Officially supported platforms include `linux`, `windows` and `macOS`, see `source/toy_common.h` for implementation details. -(`make` and `make tests` might help.) +Run `make` in the root directory to build the shared library named `libToy.so` and a useable REPL named `repl.out`. # Tools Watch this space. +(There's some utility functions in `repl/` that are WIP but useful.) + # Documentation Watch this space. diff --git a/repl/makefile b/repl/makefile index e86a2eb..f02b780 100644 --- a/repl/makefile +++ b/repl/makefile @@ -4,6 +4,11 @@ CFLAGS+=-std=c17 -g -Wall -Werror -Wextra -Wpedantic -Wformat=2 -Wno-newline-eof LIBS+=-lm -lToy LDFLAGS+=-Wl,-rpath,'$$ORIGIN' +ifeq ($(shell uname),Darwin) #make sure there's enough space for the dylib fix + LDFLAGS+=-Wl,-headerpad_max_install_names +endif + + #directories REPL_ROOTDIR=.. REPL_REPLDIR=.