Files
nethack/sys/lib/hints/wasm
2020-08-29 10:26:58 -07:00

68 lines
1.5 KiB
Plaintext

#-PRE xxxx
# enscripten WebAssembly config
WANT_WASM=1
WASM_DEBUG=1
WASM_DATA_DIR=$(NHSROOT)/src/wasm-data
# toolchain
EMCC=emcc
EMAR=emar rcu
EMRANLIB=emranlib
# link flags
EMCC_LFLAGS=-s SINGLE_FILE=1
EMCC_LFLAGS=-s WASM=1
EMCC_LFLAGS+=-s ALLOW_TABLE_GROWTH
EMCC_LFLAGS+=-s ASYNCIFY -s ASYNCIFY_IMPORTS='["_nhmain"]' -O3
EMCC_LFLAGS+=-s MODULARIZE
EMCC_LFLAGS+=-s EXPORTED_FUNCTIONS='["_main", "_stub_graphics_set_callback"]'
EMCC_LFLAGS+=-s EXPORTED_RUNTIME_METHODS='["cwrap", "ccall", "addFunction", "removeFunction", "UTF8ToString", "getValue"]'
EMCC_LFLAGS+=-s ERROR_ON_UNDEFINED_SYMBOLS=0
EMCC_LFLAGS+=--embed-file wasm-data@/
# WASM C flags
EMCC_CFLAGS=
EMCC_CFLAGS+=-Wall
EMCC_CFLAGS+=-Werror
EMCC_DEBUG_CFLAGS+=-s ASSERTIONS=1
EMCC_DEBUG_CFLAGS+=-s STACK_OVERFLOW_CHECK=2
EMCC_DEBUG_CFLAGS+=-s SAFE_HEAP=1
EMCC_DEBUG_CFLAGS+=-s LLD_REPORT_UNDEFINED
EMCC_PROD_CFLAGS+=-O3
# Nethack C flags
CFLAGS+=-DSYSCF -DSYSCF_FILE=\"/sysconf\" -DSECURE
CFLAGS+=-g -I../include -DNOTPARMDECL
CFLAGS+=-Wall
CFLAGS+=-Werror
CFLAGS+=-DGCC_WARN
# NetHack sources control
CFLAGS+=-DDLB
CFLAGS+=-DHACKDIR=\"$(HACKDIR)\"
CFLAGS+=-DDLB
#CFLAGS+=-DGREPPATH=\"/usr/bin/grep\"
CFLAGS+=-DNOMAIL
ifdef WASM_DEBUG
EMCC_CFLAGS+=$(EMCC_DEBUG_CFLAGS)
else
EMCC_CFLAGS+=$(EMCC_PROD_CFLAGS)
endif
# installation config
# hackdir is the wasm / emscripten embed data root directory
HACKDIR=/
CHOWN=/usr/bin/true
CHGRP=/usr/bin/true
GAMEPERM = 0700
VARFILEPERM = 0600
VARDIRPERM = 0700
INSTDIR=$(HACKDIR)
VARDIR=$(HACKDIR)
#-POST
# no post