Files
ueforth/README.md
Brad Nelson aa69b68412 Droping make build in favor of ninja.
Bumping version.
Adding esp32 flashing + vetting.
2024-01-15 14:04:46 -08:00

64 lines
1.3 KiB
Markdown

# µEforth / ESP32forth
This EForth inspired implementation of Forth is bootstraped from a minimalist C kernel.
## Building from Source
To build from source:
```
sudo apt install ninja-build gcc-arm-none-eabi
git clone https://github.com/flagxor/ueforth
cd ueforth
./configure.py
ninja
```
The resulting output will have this structure:
* out/deploy - A copy of the eforth.appspot.com / esp32forth.appspot.com ready to deploy.
* out/esp32 - A source build for ESP32.
* out/esp32-sim - A POSIX build approximating ESP32 for testing.
* out/pico-ice - A build for pico-ice.
* out/pico-ice-sim - A POSIX build approximating pico-ice for testing.
* out/gen - Intermediate / generated files.
* out/posix - A build for Linux / POSIX.
* out/resources - Intermediate / generated resources.
* out/web - A build for Web.
* out/windows - A build for Windows.
Individual platforms can be built as follows:
```
ninja posix
ninja esp32
ninja pico-ice
ninja win32
ninja win64
ninja web
```
A build that excludes the slower components can be configured with:
```
./configure.py -f
```
To install to /usr/bin on Linux / POSIX do:
```
ninja install
```
ESP32 boards can be compiled and flashed with:
```
ninja esp32-flash
ninja esp32s2-flash
ninja esp32s3-flash
ninja esp32c3-flash
ninja esp32cam-flash
```
Set PORT=com3 etc. to select board.