mirror of
https://github.com/obgm/libcoap.git
synced 2026-11-08 10:32:53 +03:00
New demo client app. Update some of the memory sizes. New coap_lwip_dump_memory_pools() to dump LwIP memory pool usage. Add in logic to handle new client sessions. New coap_io_process() to handle LwIP which can invoke a callback handler to wait / timeout for the next input handler. New coap_lwip_set_input_wait_handler() to define this handler. Update coap_io_prepare_io() to handle LwIP. Support re-use of pbuf for PDU re-transmissions. Make sure that NSTART is correctly obeyed. Build the client with client only libcoap code. Build the server with server only libcoap code. Update LwIP source to latest stable release. Reserve memory for a response PDU. New coap_lwip(3) man page. Update directory structures for config files. Update files contained in "make dist" and check lwip rebuilds in the github workflows.
164 lines
6.7 KiB
Makefile
164 lines
6.7 KiB
Makefile
# man/Makefile.am
|
|
#
|
|
# Copyright (C) 2018-2022 Jon Shallow <supjps-libcoap@jpshallow.com>
|
|
#
|
|
# This file is part of the CoAP C library libcoap. Please see README and
|
|
# COPYING for terms of use.
|
|
|
|
# picking up the default warning CFLAGS into AM_CFLAGS
|
|
AM_CFLAGS = -I$(top_builddir)/include -I$(top_srcdir)/include \
|
|
-I$(top_srcdir)/include/coap$(LIBCOAP_API_VERSION) \
|
|
$(WARNING_CFLAGS) $(DTLS_CFLAGS) -std=c99 $(EXTRA_CFLAGS)
|
|
|
|
# Build, not install
|
|
noinst_PROGRAMS = examples-code-check
|
|
|
|
# build manuals only if 'BUILD_MANPAGES' is defined
|
|
if BUILD_MANPAGES
|
|
|
|
# building the manpages
|
|
|
|
TXT3 = coap_async.txt \
|
|
coap_attribute.txt \
|
|
coap_block.txt \
|
|
coap_cache.txt \
|
|
coap_context.txt \
|
|
coap_endpoint_server.txt \
|
|
coap_encryption.txt \
|
|
coap_endpoint_client.txt \
|
|
coap_handler.txt \
|
|
coap_io.txt \
|
|
coap_keepalive.txt \
|
|
coap_logging.txt \
|
|
coap_lwip.txt \
|
|
coap_observe.txt \
|
|
coap_pdu_access.txt \
|
|
coap_pdu_setup.txt \
|
|
coap_recovery.txt \
|
|
coap_resource.txt \
|
|
coap_session.txt \
|
|
coap_string.txt \
|
|
coap_tls_library.txt
|
|
|
|
MAN3 = $(TXT3:%.txt=%.3)
|
|
|
|
man3_MANS = $(MAN3)
|
|
|
|
TXT5 = coap-client.txt \
|
|
coap-rd.txt \
|
|
coap-server.txt
|
|
|
|
MAN5 = $(TXT5:%.txt=%.5)
|
|
|
|
man5_MANS = $(MAN5)
|
|
|
|
TXT7 = coap.txt
|
|
|
|
MAN7 = $(TXT7:%.txt=%.7)
|
|
|
|
man7_MANS = $(MAN7)
|
|
|
|
.txt.3:
|
|
$(A2X) --doctype manpage --format manpage $<
|
|
@NEWLIST=`${SED} -ne '/^NAME/,/^SYNOPSIS/p;/^SYNOPSIS/q' $< | ${SED} 's/^- /\\\\\\\- /g' | egrep -v 'NAME|----|SYNOPSIS|^\$$' | tr '\n' ' '` ;\
|
|
NAME=`echo $< | ${SED} -ne 's/^\(coap_[a-zA-Z_0-9]\+\).*$$/\1.3/p'` ;\
|
|
${SED} -i '/.SH "NAME"/{n;d;}' $${NAME} ;\
|
|
${SED} -i "/\.SH \"NAME\"/a $${NEWLIST}" $${NAME}
|
|
$(A2X) --doctype manpage --format xhtml $<
|
|
@NEWLIST=`${SED} -ne '/^NAME/,/^SYNOPSIS/p;/^SYNOPSIS/q' $< | ${SED} 's^/^\\\\/^g' | egrep -v 'NAME|----|SYNOPSIS|^\$$' | tr '\n' ' '` ;\
|
|
NAME=`echo $< | ${SED} -ne 's/^\(coap_[a-zA-Z_0-9]\+\).*$$/\1.html/p'` ;\
|
|
${SED} -i "s^Name</h2><p>.*</p></div>^Name</h2><p>$${NEWLIST}</p></div>^" $${NAME}
|
|
|
|
.txt.5:
|
|
$(A2X) --doctype manpage --format manpage $<
|
|
$(A2X) --doctype manpage --format xhtml $<
|
|
|
|
.txt.7:
|
|
$(A2X) --doctype manpage --format manpage $<
|
|
$(A2X) --doctype manpage --format xhtml $<
|
|
|
|
# Man pages built by a2x based on the NAMES section of the .txt file.
|
|
# Note - this list includes all the defined entries, but a2x only builds the first 10.
|
|
A2X_EXTRA_PAGES_3 = @DOLLAR_SIGN@(shell for fil in $(TXT3) ; do sed -ne '/^NAME/,/^SYNOPSIS/p;/^SYNOPSIS/q' $${fil} | \
|
|
sed -ne '/coap_/{ s/ *, */\n/g; p }' | sed -ne 's/^\(coap_[a-zA-Z_0-9]\+\).*$$/\1.3/p' ; done)
|
|
A2X_EXTRA_PAGES_5 = @DOLLAR_SIGN@(shell for fil in $(TXT5) ; do sed -ne '/^NAME/,/^SYNOPSIS/p;/^SYNOPSIS/q' $${fil} | \
|
|
sed -ne '/coap-/{ s/ *, */\n/g; p }' | sed -ne 's/^\(coap-[a-zA-Z0-9-]\+\).*$$/\1.5/p' ; done)
|
|
|
|
# a2x builds alternative .3 files up to a limit of 10 names from the
|
|
# NAME section, so that 'man' works against the alternative different
|
|
# function names.
|
|
#
|
|
# However, if there are more alternative names, they need to be defined
|
|
# as per below
|
|
#
|
|
# Then all the alternative names as well as the extras defined below need
|
|
# to be cleaned up in a 'make unistall'.
|
|
install-man: install-man3 install-man5 install-man7
|
|
@echo ".so man3/coap_cache.3" > coap_cache_get_pdu.3
|
|
@echo ".so man3/coap_cache.3" > coap_cache_get_app_data.3
|
|
@echo ".so man3/coap_cache.3" > coap_cache_set_app_data.3
|
|
@echo ".so man3/coap_context.3" > coap_context_get_session_timeout.3
|
|
@echo ".so man3/coap_context.3" > coap_context_set_csm_timeout.3
|
|
@echo ".so man3/coap_context.3" > coap_context_get_csm_timeout.3
|
|
@echo ".so man3/coap_logging.3" > coap_show_pdu.3
|
|
@echo ".so man3/coap_logging.3" > coap_endpoint_str.3
|
|
@echo ".so man3/coap_logging.3" > coap_session_str.3
|
|
@echo ".so man3/coap_pdu_access.3" > coap_option_filter_set.3
|
|
@echo ".so man3/coap_pdu_access.3" > coap_option_filter_unset.3
|
|
@echo ".so man3/coap_pdu_access.3" > coap_option_iterator_init.3
|
|
@echo ".so man3/coap_pdu_access.3" > coap_option_next.3
|
|
@echo ".so man3/coap_pdu_access.3" > coap_pdu_get_code.3
|
|
@echo ".so man3/coap_pdu_access.3" > coap_pdu_get_mid.3
|
|
@echo ".so man3/coap_pdu_access.3" > coap_pdu_get_token.3
|
|
@echo ".so man3/coap_pdu_access.3" > coap_pdu_get_type.3
|
|
@echo ".so man3/coap_pdu_access.3" > coap_get_uri_path.3
|
|
@echo ".so man3/coap_pdu_setup.3" > coap_delete_optlist.3
|
|
@echo ".so man3/coap_pdu_setup.3" > coap_encode_var_safe.3
|
|
@echo ".so man3/coap_pdu_setup.3" > coap_encode_var_safe8.3
|
|
@echo ".so man3/coap_pdu_setup.3" > coap_add_optlist_pdu.3
|
|
@echo ".so man3/coap_pdu_setup.3" > coap_add_option.3
|
|
@echo ".so man3/coap_pdu_setup.3" > coap_add_data.3
|
|
@echo ".so man3/coap_pdu_setup.3" > coap_add_data_blocked_response.3
|
|
@echo ".so man3/coap_pdu_setup.3" > coap_send.3
|
|
@echo ".so man3/coap_pdu_setup.3" > coap_split_path.3
|
|
@echo ".so man3/coap_pdu_setup.3" > coap_split_query.3
|
|
@echo ".so man3/coap_pdu_setup.3" > coap_pdu_set_mid.3
|
|
@echo ".so man3/coap_pdu_setup.3" > coap_pdu_set_code.3
|
|
@echo ".so man3/coap_pdu_setup.3" > coap_pdu_set_type.3
|
|
@echo ".so man3/coap_recovery.3" > coap_session_set_nstart.3
|
|
@echo ".so man3/coap_recovery.3" > coap_session_get_nstart.3
|
|
@echo ".so man3/coap_recovery.3" > coap_session_set_probing_wait.3
|
|
@echo ".so man3/coap_recovery.3" > coap_session_get_probing_wait.3
|
|
@echo ".so man3/coap_recovery.3" > coap_debug_set_packet_loss.3
|
|
@echo ".so man3/coap_resource.3" > coap_resource_set_mode.3
|
|
@echo ".so man3/coap_resource.3" > coap_resource_set_userdata.3
|
|
@echo ".so man3/coap_resource.3" > coap_resource_get_userdata.3
|
|
@echo ".so man3/coap_resource.3" > coap_resource_release_userdata_handler.3
|
|
@echo ".so man3/coap_resource.3" > coap_resource_get_uri_path.3
|
|
@echo ".so man3/coap_session.3" > coap_session_get_context.3
|
|
@echo ".so man3/coap_session.3" > coap_session_get_ifindex.3
|
|
@echo ".so man3/coap_session.3" > coap_session_get_proto.3
|
|
@echo ".so man3/coap_session.3" > coap_session_get_psk_hint.3
|
|
@echo ".so man3/coap_session.3" > coap_session_get_psk_key.3
|
|
@echo ".so man3/coap_session.3" > coap_session_get_state.3
|
|
@echo ".so man3/coap_session.3" > coap_session_get_tls.3
|
|
@echo ".so man3/coap_session.3" > coap_session_get_type.3
|
|
@echo ".so man3/coap_string.3" > coap_delete_bin_const.3
|
|
@echo ".so man3/coap_string.3" > coap_make_str_const.3
|
|
@echo ".so man3/coap_string.3" > coap_string_equal.3
|
|
@echo ".so man3/coap_string.3" > coap_binary_equal.3
|
|
$(INSTALL_DATA) $(A2X_EXTRA_PAGES_3) "$(DESTDIR)$(man3dir)"
|
|
$(INSTALL_DATA) $(A2X_EXTRA_PAGES_5) "$(DESTDIR)$(man5dir)"
|
|
|
|
# As well as removing the base 'man' pages, remove other .3 files built by
|
|
# a2x, as well as build by install-man specials.
|
|
uninstall-man: uninstall-man3 uninstall-man5 uninstall-man7
|
|
-(cd $(DESTDIR)$(man3dir) ; rm -f $(A2X_EXTRA_PAGES_3) $(A2X_EXTRA_PAGES_5) )
|
|
|
|
endif # BUILD_MANPAGES
|
|
|
|
CLEANFILES = *.3 *.5 *.7 *.xml *.html docbook-xsl.css *.o examples-code-check
|
|
|
|
clean-local:
|
|
-rm -rf tmp
|