aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt58
-rw-r--r--docs/man/CMakeLists.txt358
2 files changed, 359 insertions, 57 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f277c653..bf08ca90 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -86,7 +86,6 @@ endif()
# User-defined options.
-option (NNG_ENABLE_DOC "Enable building documentation." ON)
option (NNG_TESTS "Build and run tests" ON)
option (NNG_TOOLS "Build extra tools" ON)
option (NNG_ENABLE_NNGCAT "Enable building nngcat utility." ${NNG_TOOLS})
@@ -420,62 +419,7 @@ if (NNG_ENABLE_NNGCAT)
add_subdirectory (tools/nngcat)
endif ()
-if (NNG_ENABLE_DOC)
- find_program (ASCIIDOCTOR_EXE asciidoctor)
- if (NOT ASCIIDOCTOR_EXE)
- message (WARNING "Could not find asciidoctor: skipping docs")
- set (NNG_ENABLE_DOC OFF)
- else ()
- message (STATUS "Using asciidoctor at ${ASCIIDOCTOR_EXE}")
- endif ()
-endif ()
-
-
-# Build the documenation
-if (NNG_ENABLE_DOC)
-
- set (NNG_DOCDIR ${CMAKE_CURRENT_SOURCE_DIR}/doc)
- set (NNG_STYLESHEET ${NNG_DOCDIR}/stylesheet.css)
- set (NNG_TITLE ${PROJECT_NAME} ${NNG_PACKAGE_VERSION})
- set (NNG_A2M ${ASCIIDOCTOR_EXE} -b manpage -amanmanual='${NNG_TITLE}')
- set (NNG_A2H ${ASCIIDOCTOR_EXE} -d manpage -b html5 -a stylesheeet=${NNG_STYLESHEET} -aversion-label=${PROJECT_NAME} -arevnumber=${NNG_PACKAGE_VERSION})
-
- macro (add_libnng_man NAME SECT)
- add_custom_command (
- OUTPUT ${NAME}.${SECT}
- COMMAND ${NNG_A2M} -o ${NAME}.${SECT} ${NNG_DOCDIR}/${NAME}.adoc
- MAIN_DEPENDENCY ${NNG_DOCDIR}/${NAME}.adoc
- )
-
- add_custom_command (
- OUTPUT ${NAME}.html
- COMMAND ${NNG_A2H} -o ${NAME}.html ${NNG_DOCDIR}/${NAME}.adoc
- DEPENDS ${NNG_STYLESHEET}
- MAIN_DEPENDENCY ${NNG_DOCDIR}/${NAME}.adoc
- )
-
- set(NNG_MANS ${NNG_MANS} ${NAME}.${SECT})
- set(NNG_HTMLS ${NNG_HTMLS} ${NAME}.html)
-
- install (
- FILES ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.html
- DESTINATION ${CMAKE_INSTALL_DOCDIR}
- )
- install (
- FILES ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.${SECT}
- DESTINATION ${CMAKE_INSTALL_MANDIR}/man${SECT}
- )
-
- endmacro (add_libnng_man)
-
- #add_libnng_man (nn_errno 3)
-
- #add_libnng_man (nanomsg 7)
-
- #add_custom_target (man ALL DEPENDS ${NNG_MANS})
- #add_custom_target (html ALL DEPENDS ${NNG_HTMLS})
-
-endif ()
+add_subdirectory (docs/man)
set (CPACK_PACKAGE_NAME ${PROJECT_NAME})
set (CPACK_PACKAGE_VERSION ${NNG_PACKAGE_VERSION})
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 ()