48 lines
1.7 KiB
Makefile
48 lines
1.7 KiB
Makefile
|
#
|
||
|
# Example Makefile for building a program with embedded Duktape.
|
||
|
# The example program here is the Duktape command line tool.
|
||
|
#
|
||
|
|
||
|
DUKTAPE_SOURCES = src/duktape.c
|
||
|
|
||
|
CMDLINE_SOURCES = \
|
||
|
examples/cmdline/duk_cmdline.c
|
||
|
|
||
|
CC = gcc
|
||
|
CCOPTS = -Os -pedantic -std=c99 -Wall -fstrict-aliasing -fomit-frame-pointer
|
||
|
CCOPTS += -I./examples/cmdline -I./src # duktape.h and duk_config.h must be in include path
|
||
|
CCLIBS = -lm
|
||
|
|
||
|
# Enable print() and alert() for command line using an optional extra module.
|
||
|
CCOPTS += -DDUK_CMDLINE_PRINTALERT_SUPPORT -I./extras/print-alert
|
||
|
CMDLINE_SOURCES += extras/print-alert/duk_print_alert.c
|
||
|
|
||
|
# Enable console object (console.log() etc) for command line.
|
||
|
CCOPTS += -DDUK_CMDLINE_CONSOLE_SUPPORT -I./extras/console
|
||
|
CMDLINE_SOURCES += extras/console/duk_console.c
|
||
|
|
||
|
# Enable Duktape.Logger for command line.
|
||
|
CCOPTS += -DDUK_CMDLINE_LOGGING_SUPPORT -I./extras/logging
|
||
|
CMDLINE_SOURCES += extras/logging/duk_logging.c
|
||
|
|
||
|
# Enable Duktape 1.x module loading for command line.
|
||
|
CCOPTS += -DDUK_CMDLINE_MODULE_SUPPORT -I./extras/module-duktape
|
||
|
CMDLINE_SOURCES += extras/module-duktape/duk_module_duktape.c
|
||
|
|
||
|
# If you want linenoise, you can enable these. At the moment linenoise
|
||
|
# will cause some harmless compilation warnings.
|
||
|
#CCOPTS += -DDUK_CMDLINE_FANCY -I./linenoise
|
||
|
#CMDLINE_SOURCES += linenoise/linenoise.c
|
||
|
#duk: linenoise
|
||
|
|
||
|
# Use the tools/configure.py utility to modify Duktape default configuration:
|
||
|
# http://duktape.org/guide.html#compiling
|
||
|
# http://wiki.duktape.org/Configuring.html
|
||
|
|
||
|
duk: $(DUKTAPE_SOURCES) $(CMDLINE_SOURCES)
|
||
|
$(CC) -o $@ $(DEFINES) $(CCOPTS) $(DUKTAPE_SOURCES) $(CMDLINE_SOURCES) $(CCLIBS)
|
||
|
|
||
|
linenoise/linenoise.c: linenoise
|
||
|
linenoise:
|
||
|
git clone https://github.com/antirez/linenoise.git
|