aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2018-05-18 22:21:28 -0700
committerGarrett D'Amore <garrett@damore.org>2018-05-18 22:21:28 -0700
commit0c3178860cb14b095e809676d5c4401cf65f5f58 (patch)
tree9841a2af627afede8e245126f533d528c3b7a258 /docs
parent6bbe0ac937556de0bda5344842957b8c9e8c226b (diff)
downloadnng-0c3178860cb14b095e809676d5c4401cf65f5f58.tar.gz
nng-0c3178860cb14b095e809676d5c4401cf65f5f58.tar.bz2
nng-0c3178860cb14b095e809676d5c4401cf65f5f58.zip
fixes #444 Stop looking for asciidoctor by default
While here, we have actually cleaned this up and enabled documentation building to work, for folks that want it. We default to off, because frankly folks should just use the website and be happy. If docs are enabled, then both man pages and html are generated. The man pages are noticably inferior (only so much you can do with 80 columns of text), but some people have indicated they prefer to be able to type "man" something.
Diffstat (limited to 'docs')
-rw-r--r--docs/man/CMakeLists.txt358
1 files changed, 358 insertions, 0 deletions
diff --git a/docs/man/CMakeLists.txt b/docs/man/CMakeLists.txt
new file mode 100644
index 00000000..66421553
--- /dev/null
+++ b/docs/man/CMakeLists.txt
@@ -0,0 +1,358 @@
+#
+# Copyright 2018 Capitar IT Group BV <info@capitar.com>
+# Copyright 2018 Staysail Systems, Inc. <info@staysail.tech>
+#
+# This software is supplied under the terms of the MIT License, a
+# copy of which should be located in the distribution where this
+# file was obtained (LICENSE.txt). A copy of the license may also be
+# found online at https://opensource.org/licenses/MIT.
+
+# We default to off here.
+option (NNG_ENABLE_DOC "Enable building documentation." OFF)
+
+if (NNG_ENABLE_DOC)
+ find_program (ASCIIDOCTOR asciidoctor)
+ if (NOT ASCIIDOCTOR)
+ message (WARNING "Could not find asciidoctor: skipping docs")
+ set (NNG_ENABLE_DOC OFF)
+ else ()
+ message (STATUS "Using asciidoctor at ${ASCIIDOCTOR}")
+ endif ()
+endif ()
+
+if (NNG_ENABLE_DOC)
+ set (NNG_DOCDIR ${CMAKE_CURRENT_SOURCE_DIR})
+
+ set (NNG_A2M ${ASCIIDOCTOR} -b manpage -amanmanual='NNG Reference Manual')
+ set (NNG_A2H ${ASCIIDOCTOR} -a nofooter -atoc=left -aicons=font -d manpage -b html5)
+
+ macro (nng_man NAME SECT)
+
+ add_custom_command (
+ OUTPUT ${NAME}.${SECT}
+ COMMAND ${NNG_A2M} -o ${NAME}.${SECT} ${NNG_DOCDIR}/${NAME}.${SECT}.adoc
+ MAIN_DEPENDENCY ${NNG_DOCDIR}/${NAME}.${SECT}.adoc
+ )
+
+ add_custom_command (
+ OUTPUT ${NAME}.${SECT}.html
+ COMMAND ${NNG_A2H} -o ${NAME}.html ${NNG_DOCDIR}/${NAME}.${SECT}.adoc
+ MAIN_DEPENDENCY ${NNG_DOCDIR}/${NAME}.${SECT}.adoc
+ )
+
+ set(NNG_MANS ${NNG_MANS} ${NAME}.${SECT})
+ set(NNG_HTMLS ${NNG_HTMLS} ${NAME}.${SECT}.html)
+
+ install (
+ FILES ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.{SECT}.html
+ DESTINATION ${CMAKE_INSTALL_DOCDIR}
+ )
+ install (
+ FILES ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.${SECT}
+ DESTINATION ${CMAKE_INSTALL_MANDIR}/man${SECT}
+ )
+
+ endmacro (nng_man)
+
+ set (NNG_MAN1
+ nngcat
+ )
+
+ set (NNG_MAN3
+ libnng
+ nng_aio_abort
+ nng_aio_alloc
+ nng_aio_cancel
+ nng_aio_count
+ nng_aio_finish
+ nng_aio_free
+ nng_aio_get_input
+ nng_aio_get_msg
+ nng_aio_get_output
+ nng_aio_result
+ nng_aio_set_input
+ nng_aio_set_iov
+ nng_aio_set_msg
+ nng_aio_set_output
+ nng_aio_set_timeout
+ nng_aio_stop
+ nng_aio_wait
+ nng_alloc
+ nng_bus_open
+ nng_close
+ nng_ctx_close
+ nng_ctx_getopt
+ nng_ctx_id
+ nng_ctx_open
+ nng_ctx_recv
+ nng_ctx_send
+ nng_ctx_setopt
+ nng_device
+ nng_dial
+ nng_dialer_close
+ nng_dialer_create
+ nng_dialer_getopt
+ nng_dialer_id
+ nng_dialer_setopt
+ nng_dialer_start
+ nng_free
+ nng_getopt
+ nng_inproc_register
+ nng_ipc_register
+ nng_listen
+ nng_listener_close
+ nng_listener_create
+ nng_listener_getopt
+ nng_listener_id
+ nng_listener_setopt
+ nng_listener_start
+ nng_msg_alloc
+ nng_msg_append
+ nng_msg_body
+ nng_msg_chop
+ nng_msg_clear
+ nng_msg_dup
+ nng_msg_free
+ nng_msg_get_pipe
+ nng_msg_header
+ nng_msg_header_append
+ nng_msg_header_chop
+ nng_msg_header_clear
+ nng_msg_header_insert
+ nng_msg_header_len
+ nng_msg_header_trim
+ nng_msg_insert
+ nng_msg_len
+ nng_msg_realloc
+ nng_msg_set_pipe
+ nng_msg_trim
+ nng_pair_open
+ nng_pipe_close
+ nng_pipe_dialer
+ nng_pipe_getopt
+ nng_pipe_id
+ nng_pipe_listener
+ nng_pipe_notify
+ nng_pipe_socket
+ nng_pub_open
+ nng_pull_open
+ nng_push_open
+ nng_recv
+ nng_recv_aio
+ nng_recvmsg
+ nng_rep_open
+ nng_req_open
+ nng_respondent_open
+ nng_send
+ nng_send_aio
+ nng_sendmsg
+ nng_setopt
+ nng_sleep_aio
+ nng_socket_id
+ nng_strdup
+ nng_strerror
+ nng_strfree
+ nng_sub_open
+ nng_surveyor_open
+ nng_tcp_register
+ nng_tls_register
+ nng_url_clone
+ nng_url_free
+ nng_url_parse
+ nng_version
+ nng_ws_register
+ nng_wss_register
+ nng_zt_register
+ )
+
+ set(NNG_MAN3COMPAT
+ nn_allocmsg
+ nn_bind
+ nn_close
+ nn_cmsg
+ nn_connect
+ nn_device
+ nn_errno
+ nn_freemsg
+ nn_get_statistic
+ nn_getsockopt
+ nn_poll
+ nn_reallocmsg
+ nn_recv
+ nn_recvmsg
+ nn_send
+ nn_sendmsg
+ nn_setsockopt
+ nn_shutdown
+ nn_socket
+ nn_strerror
+ nn_term
+ nng_compat
+ )
+
+ set(NNG_MAN3HTTP
+ nng_http_client_alloc
+ nng_http_client_connect
+ nng_http_client_free
+ nng_http_client_get_tls
+ nng_http_client_set_tls
+ nng_http_conn_close
+ nng_http_conn_read
+ nng_http_conn_read_all
+ nng_http_conn_read_req
+ nng_http_conn_read_res
+ nng_http_conn_write
+ nng_http_conn_write_all
+ nng_http_conn_write_req
+ nng_http_conn_write_res
+ nng_http_handler_alloc
+ nng_http_handler_free
+ nng_http_handler_get_data
+ nng_http_handler_set_data
+ nng_http_handler_set_host
+ nng_http_handler_set_method
+ nng_http_handler_set_tree
+ nng_http_hijack
+ nng_http_req_add_header
+ nng_http_req_alloc
+ nng_http_req_copy_data
+ nng_http_req_del_header
+ nng_http_req_free
+ nng_http_req_get_header
+ nng_http_req_get_method
+ nng_http_req_get_uri
+ nng_http_req_get_version
+ nng_http_req_set_data
+ nng_http_req_set_header
+ nng_http_req_set_method
+ nng_http_req_set_uri
+ nng_http_req_set_version
+ nng_http_res_add_header
+ nng_http_res_alloc
+ nng_http_res_alloc_error
+ nng_http_res_copy_data
+ nng_http_res_del_header
+ nng_http_res_free
+ nng_http_res_get_header
+ nng_http_res_get_reason
+ nng_http_res_get_status
+ nng_http_res_get_version
+ nng_http_res_set_data
+ nng_http_res_set_header
+ nng_http_res_set_reason
+ nng_http_res_set_status
+ nng_http_res_set_version
+ nng_http_server_add_handler
+ nng_http_server_del_handler
+ nng_http_server_get_tls
+ nng_http_server_hold
+ nng_http_server_release
+ nng_http_server_set_tls
+ nng_http_server_start
+ nng_http_server_stop
+ )
+
+ set(NNG_MAN3SUPP
+ nng_clock
+ nng_cv_alloc
+ nng_cv_free
+ nng_cv_until
+ nng_cv_wait
+ nng_cv_wake
+ nng_cv_wake1
+ nng_msleep
+ nng_mtx_alloc
+ nng_mtx_free
+ nng_mtx_lock
+ nng_mtx_unlock
+ nng_opts_parse
+ nng_random
+ nng_thread_create
+ nng_thread_destroy
+ )
+
+ set(NNG_MAN3TLS
+ nng_tls_config_alloc
+ nng_tls_config_auth_mode
+ nng_tls_config_ca_chain
+ nng_tls_config_ca_file
+ nng_tls_config_cert_key_file
+ nng_tls_config_free
+ nng_tls_config_own_cert
+ nng_tls_config_server_name
+ )
+
+ set(NNG_MAN5
+ nng_aio
+ nng_ctx
+ nng_dialer
+ nng_duration
+ nng_iov
+ nng_listener
+ nng_msg
+ nng_options
+ nng_pipe
+ nng_sockaddr
+ nng_sockaddr_in
+ nng_sockaddr_in6
+ nng_sockaddr_inproc
+ nng_sockaddr_ipc
+ nng_sockaddr_zt
+ nng_socket
+ )
+
+ set(NNG_MAN7
+ nng
+ nng_bus
+ nng_inproc
+ nng_ipc
+ nng_pair
+ nng_pub
+ nng_pull
+ nng_push
+ nng_rep
+ nng_req
+ nng_respondent
+ nng_sub
+ nng_surveyor
+ nng_tcp
+ nng_tls
+ nng_ws
+ nng_zerotier
+ )
+
+ foreach(F ${NNG_MAN1})
+ nng_man(${F} 1)
+ endforeach()
+
+ foreach(F ${NNG_MAN3})
+ nng_man(${F} 3)
+ endforeach()
+
+ foreach(F ${NNG_MAN3COMPAT})
+ nng_man(${F} 3compat)
+ endforeach()
+
+ foreach(F ${NNG_MAN3HTTP})
+ nng_man(${F} 3http)
+ endforeach()
+
+ foreach(F ${NNG_MAN3SUPP})
+ nng_man(${F} 3supp)
+ endforeach()
+
+ foreach(F ${NNG_MAN3TLS})
+ nng_man(${F} 3tls)
+ endforeach()
+
+ foreach(F ${NNG_MAN5})
+ nng_man(${F} 5)
+ endforeach()
+
+ foreach(F ${NNG_MAN7})
+ nng_man(${F} 7)
+ endforeach()
+
+ add_custom_target (man ALL DEPENDS ${NNG_MANS})
+ add_custom_target (html ALL DEPENDS ${NNG_HTMLS})
+endif ()