# # Duktape command line tool with debugger support. # DUKTAPE_SOURCES = prep/duktape.c # Windows (MinGW): use examples/debug-trans-socket/duk_trans_socket_windows.c # and link with -lws2_32. CMDLINE_SOURCES = \ examples/cmdline/duk_cmdline.c \ examples/debug-trans-socket/duk_trans_socket_unix.c CC = gcc CCOPTS = -Os -pedantic -std=c99 -Wall -fstrict-aliasing -fomit-frame-pointer CCOPTS += -I./prep -I./examples/cmdline -I./examples/debug-trans-socket CCOPTS += -DDUK_CMDLINE_DEBUGGER_SUPPORT # enable --debugger in ./duk CCLIBS = -lm # Enable a few optional modules. CCOPTS += -DDUK_CMDLINE_PRINTALERT_SUPPORT -I./extras/print-alert CMDLINE_SOURCES += extras/print-alert/duk_print_alert.c CCOPTS += -DDUK_CMDLINE_CONSOLE_SUPPORT -I./extras/console CMDLINE_SOURCES += extras/console/duk_console.c CCOPTS += -DDUK_CMDLINE_LOGGING_SUPPORT -I./extras/logging CMDLINE_SOURCES += extras/logging/duk_logging.c CCOPTS += -DDUK_CMDLINE_MODULE_SUPPORT -I./extras/module-duktape CMDLINE_SOURCES += extras/module-duktape/duk_module_duktape.c # Use tools/configure.py to prepare Duktape config header and sources with # custom configuration. duk: $(CMDLINE_SOURCES) @rm -rf prep python2 tools/configure.py \ --source-directory src-input \ --output-directory prep \ --config-metadata config \ -DDUK_USE_DEBUGGER_SUPPORT \ -DDUK_USE_INTERRUPT_COUNTER \ -DDUK_USE_DEBUGGER_DUMPHEAP \ -DDUK_USE_DEBUGGER_INSPECT $(CC) -o $@ $(DEFINES) $(CCOPTS) $(DUKTAPE_SOURCES) $(CMDLINE_SOURCES) $(CCLIBS)