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)" 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 # Selectively enable windows if tools available
DEPLOYABLE := 1 DEPLOYABLE := 1
ifneq ("", $(CL32)) ifneq ("", $(CL32))
@ -100,11 +106,11 @@ ifneq ("", $(CL32))
TARGETS += win32_target TARGETS += win32_target
TESTS += win32_tests TESTS += win32_tests
else else
$(warning "Missing Visual Studio rc.exe skipping 32-bit Windows.") $(warning "WARNING: Missing Visual Studio rc.exe skipping 32-bit Windows.")
DEPLOYABLE := 0 DEPLOYABLE := 0
endif endif
else else
$(warning "Missing Visual Studio cl.exe skipping 32-bit Windows.") $(warning "WARNING: Missing Visual Studio cl.exe skipping 32-bit Windows.")
DEPLOYABLE := 0 DEPLOYABLE := 0
endif endif
ifneq ("", $(CL64)) ifneq ("", $(CL64))
@ -112,11 +118,11 @@ ifneq ("", $(CL64))
TARGETS += win64_target TARGETS += win64_target
TESTS += win64_tests TESTS += win64_tests
else else
$(warning "Missing Visual Studio rc.exe skipping 64-bit Windows.") $(warning "WARNING: Missing Visual Studio rc.exe skipping 64-bit Windows.")
DEPLOYABLE := 0 DEPLOYABLE := 0
endif endif
else else
$(warning "Missing Visual Studio cl.exe skipping 64-bit Windows.") $(warning "WARNING: Missing Visual Studio cl.exe skipping 64-bit Windows.")
DEPLOYABLE := 0 DEPLOYABLE := 0
endif endif
@ -125,7 +131,7 @@ DEPLOY_TARGETS =
ifeq (1, $(DEPLOYABLE)) ifeq (1, $(DEPLOYABLE))
DEPLOY_TARGETS := $(DEPLOY)/app.yaml DEPLOY_TARGETS := $(DEPLOY)/app.yaml
else else
$(warning "Missing some platforms skipping deployment build.") $(warning "WARNING: Missing some platforms skipping deployment build.")
endif endif
WEB_D8_TESTS = WEB_D8_TESTS =

View File

@ -4,14 +4,44 @@ This EForth inspired implementation of Forth is bootstraped from a minimalist C
## Building from Source ## Building from Source
To build: To build from source:
``` ```
git clone https://github.com/flagxor/ueforth
cd ueforth
make make
``` ```
The resulting output will have this structure: The resulting output will have this structure:
* out/deploy - A copy of the eforth.appspot.com / esp32forth.appspot.com ready to deploy. * 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/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.