Add 'xo-expression/' from commit '5ac3c03a0c'
git-subtree-dir: xo-expression git-subtree-mainline:d0f5ccc1cegit-subtree-split:5ac3c03a0c
This commit is contained in:
commit
aecabbb144
46 changed files with 3241 additions and 0 deletions
63
xo-expression/README.md
Normal file
63
xo-expression/README.md
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
# xo-expression library
|
||||
|
||||
A library for representing abstract syntax trees for EGAD (a small expression-based language).
|
||||
See also
|
||||
- [github/Rconybea/xo-jit](https://github.com/Rconybea/xo-jit)
|
||||
EGAD code generation via LLVM
|
||||
- [github/Rconybea/xo-pyexpression](https://github.com/Rconybea/xo-pyexpression)
|
||||
build EGAD expressions from a python session
|
||||
- [github/Rconybea/xo-pyjit](https://github.com/Rconybea/xo-pyjit)
|
||||
compile + run EGAD expressions from a python session
|
||||
|
||||
## Getting Started
|
||||
|
||||
### build + install `xo-cmake` dependency
|
||||
|
||||
- [github/Rconybea/xo-cmake](https://github.com/Rconybea/xo-cmake)
|
||||
|
||||
Installs a few cmake ingredients, along with a build assistant `xo-build` for XO projects such as this one.
|
||||
|
||||
### build + install other XO dependencies
|
||||
```
|
||||
$ xo-build --clone --configure --build --install xo-indentlog
|
||||
$ xo-build --clone --configure --build --install xo-refnct
|
||||
$ xo-build --clone --configure --build --install xo-subsys
|
||||
$ xo-build --clone --configure --build --install xo-reflect
|
||||
```
|
||||
|
||||
Note: can use `xo-build -n` to dry-run here
|
||||
|
||||
### copy `xo-expression` repository locally
|
||||
```
|
||||
$ xo-build --clone xo-expression
|
||||
```
|
||||
|
||||
or eqivalently
|
||||
```
|
||||
$ git clone git@github.com:Rconybea/xo-expression.git
|
||||
```
|
||||
|
||||
### build + install xo-expression
|
||||
```
|
||||
$ xo-build --configure --build --install xo-expression
|
||||
```
|
||||
|
||||
or equivalently:
|
||||
```
|
||||
$ PREFIX=/usr/local # or wherever you prefer
|
||||
$ cmake -DCMAKE_INSTALL_PREFIX=${PREFIX} -S xo-expression -B xo-jit/.build
|
||||
$ cmake --build xo-expression/.build
|
||||
$ cmake --install xo-expression/.build
|
||||
```
|
||||
|
||||
### build for unit test coverage
|
||||
```
|
||||
$ cmake -DCMAKE_BUILD_TYPE=coverage -DCMAKE_INSTALL_PREFIX=$PREFIX xo-expression/.build-ccov
|
||||
$ cmake --build xo-expression/.build-ccov
|
||||
```
|
||||
|
||||
### LSP support
|
||||
```
|
||||
$ cd xo-expression
|
||||
$ ln -s build/compile_commands.json # lsp will look for compile_commands.json in the root of the source tree
|
||||
```
|
||||
Loading…
Add table
Add a link
Reference in a new issue