mirror of
https://github.com/servalproject/serval-dna.git
synced 2024-12-18 20:57:56 +00:00
a79156c4d0
The daemon API is built as a Swift module called ServalDNA. The new CliContext class allows easy implementation of CLI output using Swift code. The new CliContextFile subclass is the obvious first implementation, equivalent to cli_stdio.c. The 'servaldswift' executable now uses CliContextFile to print its CLI output to standard output. The new delegated log output support constructs each log line in a buffer and prints it by calling the delegate's 'print' function at end-of-line. The 'servaldswift' executable now provides a log output delegate in Swift that simply prints to standard error, replacing log_output_console.o, which is omitted from its link.
171 lines
3.4 KiB
Makefile
171 lines
3.4 KiB
Makefile
# The "client" source files do not depend on "serval.h" or "rhizome.h", ie,
|
|
# they can be linked into executables other than servald.
|
|
SERVAL_CLIENT_SOURCES = \
|
|
base64.c \
|
|
cli.c \
|
|
cli_stdio.c \
|
|
commandline.c \
|
|
conf.c \
|
|
conf_om.c \
|
|
conf_parse.c \
|
|
conf_schema.c \
|
|
console.c \
|
|
context1.c \
|
|
dataformats.c \
|
|
echo_cli.c \
|
|
fdqueue.c \
|
|
instance.c \
|
|
limit.c \
|
|
log.c \
|
|
log_inline.c \
|
|
log_cli.c \
|
|
log_context.c \
|
|
log_util.c \
|
|
mem.c \
|
|
net.c \
|
|
numeric_str.c \
|
|
os.c \
|
|
performance_timing.c \
|
|
rotbuf.c \
|
|
sighandlers.c \
|
|
socket.c \
|
|
strbuf.c \
|
|
strbuf_helpers.c \
|
|
str.c \
|
|
strlcpy.c \
|
|
test_cli.c \
|
|
uri.c \
|
|
serval_uuid.c \
|
|
version_cli.c \
|
|
whence.c \
|
|
xprintf.c
|
|
|
|
# These source files are imported and do not depend on any local header files.
|
|
# They also take a long time to compile, so their dependencies should be as
|
|
# narrow as possible to avoid unnecessary recompilations when developers modify
|
|
# header files.
|
|
SQLITE3_SOURCES = $(SQLITE3_AMALGAMATION)/sqlite3.c
|
|
|
|
# The source files for building the Serval DNA daemon.
|
|
SERVAL_DAEMON_SOURCES = \
|
|
main.c \
|
|
servald_main.c \
|
|
conf_cli.c \
|
|
crypto.c \
|
|
directory_client.c \
|
|
dna_helper.c \
|
|
golay.c \
|
|
httpd.c \
|
|
http_server.c \
|
|
keyring.c \
|
|
keyring_cli.c \
|
|
keyring_restful.c \
|
|
log_output_console.c \
|
|
log_output_file.c \
|
|
log_output_delegate.c \
|
|
lsif.c \
|
|
radio_link.c \
|
|
meshms.c \
|
|
meshmb.c \
|
|
meshmb_cli.c \
|
|
message_ply.c \
|
|
meshms_cli.c \
|
|
meshms_restful.c \
|
|
meshmb_restful.c \
|
|
msp_client.c \
|
|
msp_proxy.c \
|
|
monitor.c \
|
|
monitor-client.c \
|
|
monitor-cli.c \
|
|
overlay_address.c \
|
|
overlay_buffer.c \
|
|
overlay_interface.c \
|
|
overlay_link.c \
|
|
overlay_probe.c \
|
|
overlay_stun.c \
|
|
overlay_stunreq.c \
|
|
overlay_packetradio.c \
|
|
overlay_queue.c \
|
|
overlay_mdp.c \
|
|
overlay_mdp_echo.c \
|
|
overlay_mdp_trace.c \
|
|
overlay_mdp_keymaprequest.c \
|
|
overlay_mdp_dnalookup.c \
|
|
mdp_filter.c \
|
|
msp_server.c \
|
|
nibble_tree.c \
|
|
network_cli.c \
|
|
overlay_olsr.c \
|
|
overlay_packetformats.c \
|
|
overlay_payload.c \
|
|
route_link.c \
|
|
rhizome.c \
|
|
rhizome_bundle.c \
|
|
rhizome_crypto.c \
|
|
rhizome_database.c \
|
|
overlay_mdp_rhizome.c \
|
|
rhizome_direct.c \
|
|
rhizome_direct_cli.c \
|
|
rhizome_direct_http.c \
|
|
rhizome_fetch.c \
|
|
rhizome_http.c \
|
|
rhizome_packetformats.c \
|
|
rhizome_store.c \
|
|
rhizome_sync.c \
|
|
rhizome_sync_keys.c \
|
|
rhizome_restful.c \
|
|
rhizome_cli.c \
|
|
sync_keys.c \
|
|
serval_packetvisualise.c \
|
|
server.c \
|
|
server_httpd.c \
|
|
vomp.c \
|
|
vomp_console.c \
|
|
fec-3.0.1/ccsds_tables.c \
|
|
fec-3.0.1/decode_rs_8.c \
|
|
fec-3.0.1/encode_rs_8.c \
|
|
fec-3.0.1/init_rs_char.c
|
|
|
|
SERVAL_DAEMON_JNI_SOURCES = \
|
|
jni_common.c \
|
|
jni_commandline.c \
|
|
jni_instance.c \
|
|
jni_server.c
|
|
|
|
SERVAL_DAEMON_SWIFT_SOURCES = \
|
|
swift_main.swift \
|
|
swift_cli.swift \
|
|
swift_cli_stdio.swift \
|
|
swift_log.swift
|
|
|
|
MDP_CLIENT_SOURCES = \
|
|
mdp_client.c
|
|
|
|
SIMULATOR_SOURCES = \
|
|
simulator.c
|
|
|
|
MONITOR_CLIENT_SRCS = \
|
|
monitor-client.c
|
|
|
|
# These source files must excluded from the Android.mk build, otherwise
|
|
# the libserval.so link fails.
|
|
# TODO: get rid of the need for this separate list by unifying the daemon
|
|
# and client logging.
|
|
CLIENT_ONLY_SOURCES = \
|
|
log_stderr.c
|
|
|
|
ANDROID_SOURCES = \
|
|
android.c \
|
|
log_output_android.c
|
|
|
|
ALL_SOURCES = \
|
|
$(SERVAL_CLIENT_SOURCES) \
|
|
$(MDP_CLIENT_SOURCES) \
|
|
$(SQLITE3_SOURCES) \
|
|
$(SERVAL_DAEMON_SOURCES) \
|
|
$(SERVAL_DAEMON_JNI_SOURCES) \
|
|
$(SIMULATOR_SOURCES) \
|
|
$(MONITOR_CLIENT_SRCS) \
|
|
$(CLIENT_ONLY_SOURCES) \
|
|
$(ANDROID_SOURCES)
|