serval-dna/headerfiles.mk
Andrew Bettison 92fa6c196a Rewrite logging system
Rename the logging primitive functions and utility functions, prefixing
all with 'serval_log', eg: logMessage() -> serval_logf() etc.

Add an XPRINTF xhexdump() function and use it to implement the
serval_log_hexdump() utility, renamed from dump().  Add macros
WHY_dump(), WARN_dump(), HINT_dump() and DEBUG_dump(), and use them
everywhere.

Remove the 'log.console.dump_config' and 'log.file.dump_config'
configuration options; configuration is now dumped in every log prolog.

The logging system now constructs the log prolog by invoking the new
'log_prolog' trigger, so that it no longer depends on the version string
and configuration system.  Any system that wants to present a message in
the log prolog can define its own trigger, which calls standard log
primitives to print the message.

Split the logging system into a front-end (log.c) that provides the
logging primitives and is independent of the configuration system, and a
set of back-end "outputters" (log_output_console.c, log_output_file.c,
log_output_android.c) that may depend on the configuration system and
are decoupled from the front-end using the 'logoutput' link section.

These log outputters are explicitly linked into executables by the
Makefile rules, but could also be linked in using USE_FEATURE().  The
USE_FEATURE() calls have _not_ been added to servald_features.c, so that
different daemon executables can be built with the same feature set but
different log outputs.
2018-03-06 15:16:56 +10:30

57 lines
821 B
Makefile

HDRS= fifo.h \
overlay_buffer.h \
overlay_address.h \
overlay_packet.h \
overlay_interface.h \
section.h \
trigger.h \
commandline.h \
limit.h \
rhizome_types.h \
rhizome.h \
sync_keys.h \
httpd.h \
instance.h \
meshms.h \
meshmb.h \
message_ply.h \
nibble_tree.h \
serval_types.h \
serval.h \
server.h \
route_link.h \
keyring.h \
socket.h \
cli.h \
str.h \
numeric_str.h \
base64.h \
uri.h \
rotbuf.h \
mem.h \
os.h \
serval_uuid.h \
sighandlers.h \
strbuf.h \
strbuf_helpers.h \
conf.h \
conf_schema.h \
crypto.h \
dataformats.h \
log.h \
log_output.h \
debug.h \
net.h \
fdqueue.h \
http_server.h \
xprintf.h \
lang.h \
constants.h \
monitor-client.h \
mdp_client.h \
msp_client.h \
msp_common.h \
msp_server.h \
radio_link.h \
$(SQLITE3_AMALGAMATION)/sqlite3.h