summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTedd Ho-Jeong An <tedd.an@intel.com>2021-05-03 22:02:05 -0700
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>2021-05-04 16:49:01 -0700
commitb66f406e1e15fb7137412963b82ad143e4a4cd93 (patch)
tree8e78a9810b74998a891d06a776edd8d8321e5bd1
parentc0cae92548b4716869b440c3d454ff4517d1fde1 (diff)
downloadbluez-b66f406e1e15fb7137412963b82ad143e4a4cd93.tar.gz
monitor: Convert manpage to rst format
This patch adds support to convert reStructuredText formatted btmon manpage to manpage with rst2man tool.
-rw-r--r--Makefile.am15
-rw-r--r--Makefile.tools4
-rw-r--r--configure.ac4
-rw-r--r--doc/btmon.txt35
-rw-r--r--monitor/btmon.rst171
5 files changed, 189 insertions, 40 deletions
diff --git a/Makefile.am b/Makefile.am
index cb0d5fc0a..4e9cae885 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -594,7 +594,7 @@ if LIBRARY
pkgconfig_DATA = lib/bluez.pc
endif
-EXTRA_DIST += $(manual_pages:.1=.txt)
+EXTRA_DIST += $(manual_pages:.1=.rst)
DISTCHECK_CONFIGURE_FLAGS = --disable-datafiles --enable-library \
--enable-health \
@@ -616,11 +616,20 @@ SED_PROCESS = $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
$(SED) -e 's,@pkglibexecdir\@,$(pkglibexecdir),g' \
< $< > $@
+if RUN_RST2MAN
+RST2MAN_PROCESS = $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
+ $(RST2MAN) --strict --no-raw \
+ --no-generator --no-datestamp $< $@
+else
+RST2MAN_PROCESS = $(AM_V_GEN)test -f $@ || \
+ { echo "Generated manual page $@ does not exist"; false; }
+endif
+
%.service: %.service.in Makefile
$(SED_PROCESS)
-%.1: %.txt
- $(AM_V_GEN)a2x --doctype manpage --format manpage $(srcdir)/$<
+%.1: %.rst Makefile
+ $(RST2MAN_PROCESS)
src/builtin.h: src/genbuiltin $(builtin_sources)
$(AM_V_GEN)$(srcdir)/src/genbuiltin $(builtin_modules) > $@
diff --git a/Makefile.tools b/Makefile.tools
index 160272212..a39e3e334 100644
--- a/Makefile.tools
+++ b/Makefile.tools
@@ -51,10 +51,10 @@ monitor_btmon_LDADD = lib/libbluetooth-internal.la \
src/libshared-mainloop.la $(UDEV_LIBS) -ldl
if MANPAGES
-man_MANS += doc/btmon.1
+man_MANS += monitor/btmon.1
endif
endif
-manual_pages += doc/btmon.1
+manual_pages += monitor/btmon.1
if LOGGER
pkglibexec_PROGRAMS += tools/btmon-logger
diff --git a/configure.ac b/configure.ac
index dbd98c9ad..d7e4766e4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -326,7 +326,11 @@ AM_CONDITIONAL(DATAFILES, test "${enable_datafiles}" != "no")
AC_ARG_ENABLE(manpages, AC_HELP_STRING([--enable-manpages],
[enable building of manual pages]),
[enable_manpages=${enableval}])
+if (test "${enable_manpages}" != "no"); then
+ AC_CHECK_PROGS(RST2MAN, [rst2man rst2man.py], "no")
+fi
AM_CONDITIONAL(MANPAGES, test "${enable_manpages}" = "yes")
+AM_CONDITIONAL(RUN_RST2MAN, test "${enable_manpages}" = "yes" && test "${RST2MAN}" != "no")
AC_ARG_ENABLE(testing, AC_HELP_STRING([--enable-testing],
[enable testing tools]),
diff --git a/doc/btmon.txt b/doc/btmon.txt
deleted file mode 100644
index 7a7fc537b..000000000
--- a/doc/btmon.txt
+++ /dev/null
@@ -1,35 +0,0 @@
-BTMON(1)
-========
-:doctype: manpage
-
-
-NAME
-----
-btmon - Bluetooth monitor
-
-
-SYNOPSIS
---------
-*btmon* ['OPTIONS']
-
-
-DESCRIPTION
------------
-The btmon(1) command provides access to the Bluetooth subsystem monitor
-infrastructure for reading HCI traces.
-
-
-AUTHOR
-------
-btmon was originally written by Marcel Holtmann.
-
-
-RESOURCES
----------
-See <http://www.bluez.org/>
-
-
-COPYING
--------
-Free use of this software is granted under ther terms of the GNU Lesser
-General Public Licenses (LGPL).
diff --git a/monitor/btmon.rst b/monitor/btmon.rst
new file mode 100644
index 000000000..c59fdde62
--- /dev/null
+++ b/monitor/btmon.rst
@@ -0,0 +1,171 @@
+=====
+btmon
+=====
+
+-----------------
+Bluetooth monitor
+-----------------
+
+:Authors: - Marcel Holtmann <marcel@holtmann.org>
+ - Tedd Ho-Jeong An <tedd.an@intel.com>
+:Copyright: Free use of this software is granted under ther terms of the GNU
+ Lesser General Public Licenses (LGPL).
+:Version: BlueZ
+:Date: April 2021
+:Manual section: 1
+:Manual group: Linux System Administration
+
+SYNOPSYS
+========
+
+**btmon** [*OPTIONS* ...]
+
+DESCRIPTION
+===========
+
+The btmon(1) command provides access to the Bluetooth subsystem monitor
+infrastructure for reading HCI traces.
+
+OPTIONS
+=======
+
+-r FILE, --read FILE Read traces in btsnoop format from *FILE*.
+-w FILE, --write FILE Save traces in btsnoop format to *FILE*.
+-a FILE, --analyze FILE Analyze traces in btsnoop format from *FILE*.
+ It displays the devices found in the *FILE* with
+ its packets by type.
+-s SOCKET, --server SOCKET Start monitor server socket.
+-p PRIORITY, --priority PRIORITY Show only priority or lower for user log.
+
+.. list-table::
+ :header-rows: 1
+ :widths: auto
+ :stub-columns: 1
+
+ * - *PRIORITY*
+ - NAME
+
+ * - **3**
+ - Error
+
+ * - **4**
+ - Warning
+
+ * - **6**
+ - Information (Default)
+
+ * - **7**
+ - Debug. **debug** can be used.
+
+-i NUM, --index NUM Show only specified controller. *hciNUM* is also
+ acceptable. This is useful to capture the traces
+ from the specific controller when the multiple
+ controllers are presented.
+
+-d TTY, --tty TTY Read data from *TTY*.
+
+-B SPEED, --rate SPEED Set TTY speed. The default *SPEED* is 115300
+
+-V COMPID, --vendor COMPID Set the default company identifier. The *COMPID* is
+ a unique number assigned by the Bluetooth SIG to
+ a member company and can be found/searched from the
+ Bluetooth SIG webpage.
+
+ For example, Intel is 2 and Realtek is 93.
+
+-M, --mgmt Open channel for mgmt events.
+
+-t, --time Show a time instead of time offset.
+
+-T, --date Show a time and date information instead of
+ time offset.
+
+-S, --sco Dump SCO traffic in raw hex format.
+
+-A, --a2dp Dump A2DP stream traffic in a raw hex format.
+
+-E IP, --ellisys IP Send Ellisys HCI Injection.
+
+-P, --no-pager Disable pager usage while reading the log file.
+
+-J OPTIONS, --jlink OPTIONS Read data from RTT. Each options are comma(,)
+ seprated without spaces.
+
+.. list-table::
+ :header-rows: 1
+ :widths: auto
+ :stub-columns: 1
+
+ * - *OPTIONS*
+ - Description
+
+ * - **DEVICE**
+ - Required. Set the target device.
+
+ * - **SERIALNO**
+ - (Optional) Set the USB serial number. Default is **0**.
+
+ * - **INTERFACE**
+ - (Optional) Target interface. Default is **swd**.
+
+ * - **SPEED**
+ - (Optional) Set target interface speed in kHz. Default is **1000**.
+
+-R OPTIONS, --rtt OPTIONS RTT control block parameters. Each options are
+ comma(,) seprated without spaces.
+
+.. list-table::
+ :header-rows: 1
+ :widths: auto
+ :stub-columns: 1
+
+ * - *OPTIONS*
+ - Description
+
+ * - **ADDRESS**
+ - (Optional) Address of RTT buffer. Default is **0x00**
+
+ * - **AREA**
+ - (Optional) Size of range to search in RTT buffer. Default is **0**
+
+ * - **NAME**
+ - (Optional) Buffer name. Default is **btmonitor**
+
+-C WIDTH, --columns WIDTH Output width if not a terminal
+
+-c MODE, --color MODE Set output color. The possible *MODE* values are:
+ **auto|always|never**.
+
+ Default value is **auto**
+
+-v, --version Show version
+
+-h, --help Show help options
+
+EXAMPLES
+========
+
+Capture the traces from hci0 to hcidump.log file
+------------------------------------------------
+
+.. code-block:: bash
+
+ $ btmon -i hci0 -w hcidump.log
+
+Open the trace file
+-------------------
+
+.. code-block:: bash
+
+ $ btmon -r hcidump.log
+
+
+RESOURCES
+=========
+
+http://www.bluez.org
+
+REPORTING BUGS
+==============
+
+linux-bluetooth@vger.kernel.org