Updating makefile and readme.

This commit is contained in:
Brad Nelson
2022-11-25 16:52:13 -08:00
parent 4052ebcb81
commit d801d14540
2 changed files with 43 additions and 7 deletions

View File

@ -93,6 +93,12 @@ RC64 = "$(shell $(LSQ) ${MSKITS}/*/bin/*/x64/rc.exe | head -n 1)"
D8 = "$(shell $(LSQ) ${HOME}/src/v8/v8/out/x64.release/d8)"
NODEJS = "$(shell $(LSQ) /usr/bin/nodejs)"
ifeq ("", $(NODEJS))
$(error "ERROR: Missing nodejs. Run: sudo apt-get install nodejs")
endif
# Selectively enable windows if tools available
DEPLOYABLE := 1
ifneq ("", $(CL32))
@ -100,11 +106,11 @@ ifneq ("", $(CL32))
TARGETS += win32_target
TESTS += win32_tests
else
$(warning "Missing Visual Studio rc.exe skipping 32-bit Windows.")
$(warning "WARNING: Missing Visual Studio rc.exe skipping 32-bit Windows.")
DEPLOYABLE := 0
endif
else
$(warning "Missing Visual Studio cl.exe skipping 32-bit Windows.")
$(warning "WARNING: Missing Visual Studio cl.exe skipping 32-bit Windows.")
DEPLOYABLE := 0
endif
ifneq ("", $(CL64))
@ -112,11 +118,11 @@ ifneq ("", $(CL64))
TARGETS += win64_target
TESTS += win64_tests
else
$(warning "Missing Visual Studio rc.exe skipping 64-bit Windows.")
$(warning "WARNING: Missing Visual Studio rc.exe skipping 64-bit Windows.")
DEPLOYABLE := 0
endif
else
$(warning "Missing Visual Studio cl.exe skipping 64-bit Windows.")
$(warning "WARNING: Missing Visual Studio cl.exe skipping 64-bit Windows.")
DEPLOYABLE := 0
endif
@ -125,7 +131,7 @@ DEPLOY_TARGETS =
ifeq (1, $(DEPLOYABLE))
DEPLOY_TARGETS := $(DEPLOY)/app.yaml
else
$(warning "Missing some platforms skipping deployment build.")
$(warning "WARNING: Missing some platforms skipping deployment build.")
endif
WEB_D8_TESTS =

View File

@ -4,14 +4,44 @@ This EForth inspired implementation of Forth is bootstraped from a minimalist C
## Building from Source
To build:
To build from source:
```
git clone https://github.com/flagxor/ueforth
cd ueforth
make
```
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 - A source build for ESP32.
* out/esp32-sim - A POSIX build approximating ESP32.
* 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.
* out/linux - A build for Linux.
Individual platforms can be built as follows:
```
make posix
make esp32
make win32
make win64
make web
```
ESP32 boards can be compiled and flashed with:
```
make esp32-flash
make esp32s2-flash
make esp32s3-flash
make esp32c3-flash
make esp32cam-flash
```
Set PORT=com3 etc. to select board.