|
|
@ -1,3 +1,69 @@ |
|
|
|
# ccmeta |
|
|
|
# CCMETA |
|
|
|
|
|
|
|
C compiler with embedded metalanguage. |
|
|
|
C compiler with embedded metalanguage. |
|
|
|
|
|
|
|
## Table of contents |
|
|
|
1. [Architecture](#ar) |
|
|
|
2. [Build the project](#bp) |
|
|
|
- [Requirements](#ar) |
|
|
|
- [Makefile](#makefile) |
|
|
|
- [Build](#makefile_Build) |
|
|
|
- [Clean](#makefile_Clean) |
|
|
|
- [Test](#makefile_Test) |
|
|
|
3. [Usage](#usage) |
|
|
|
4. [Help](#help) |
|
|
|
- [Peg/Leg](#pegleg) |
|
|
|
|
|
|
|
|
|
|
|
## <div id="ar">Architecture<div> |
|
|
|
 |
|
|
|
## <div id="bp">Build the project<div> |
|
|
|
### <div id="req">Requirements<div> |
|
|
|
|
|
|
|
Please install [peg/leg](https://www.piumarta.com/software/peg/) manually or with a package manager, for example with Homebrew: |
|
|
|
```bash |
|
|
|
$ brew install peg |
|
|
|
``` |
|
|
|
|
|
|
|
Please install [the Boehm-Demers-Weiser conservative garbage collector](https://www.hboehm.info/gc/) manually or with a package manager, for example with Homebrew: |
|
|
|
```bash |
|
|
|
$ brew install bdw-gc |
|
|
|
``` |
|
|
|
|
|
|
|
### <div id="makefile"> Makefile<div> |
|
|
|
|
|
|
|
#### <div id="makefile_Build">Build<div> |
|
|
|
|
|
|
|
```bash |
|
|
|
$ make |
|
|
|
``` |
|
|
|
|
|
|
|
#### <div id="makefile_Clean">Clean<div> |
|
|
|
```bash |
|
|
|
$ make clean |
|
|
|
``` |
|
|
|
|
|
|
|
#### <div id="makefile_Test">Test <div> |
|
|
|
```bash |
|
|
|
$ make test |
|
|
|
``` |
|
|
|
|
|
|
|
|
|
|
|
## <div id="usage">Usage<div> |
|
|
|
You can pass your program: |
|
|
|
* via a file |
|
|
|
```bash |
|
|
|
$ ./ccmeta < file |
|
|
|
``` |
|
|
|
* via a file |
|
|
|
```bash |
|
|
|
$ ./ccmeta file |
|
|
|
``` |
|
|
|
|
|
|
|
## <div id="help">Help<div> |
|
|
|
|
|
|
|
### <div id="pegleg">peg/leg<div> |
|
|
|
|
|
|
|
``` shell |
|
|
|
$ man peg |
|
|
|
``` |