aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorIñigo Martínez <inigomartinez@gmail.com>2021-07-29 23:27:11 +0200
committerAleksander Morgado <aleksander@aleksander.es>2021-09-07 10:55:43 +0000
commit77d1c243614d385027ca11f75aa5d688b01c2969 (patch)
treedc39670de7b80b887f539480153334c25ea75e88 /docs
parentfa19b2b9b1412d3eeb515afe41c55ac414acc982 (diff)
build: Port to meson
meson is a build system focused on speed an ease of use, which helps speeding up the software development. This patch adds meson support along autotools.
Diffstat (limited to 'docs')
-rw-r--r--docs/man/meson.build9
-rw-r--r--docs/reference/api/meson.build57
-rw-r--r--docs/reference/libmm-glib/meson.build52
3 files changed, 118 insertions, 0 deletions
diff --git a/docs/man/meson.build b/docs/man/meson.build
new file mode 100644
index 00000000..33c4ca05
--- /dev/null
+++ b/docs/man/meson.build
@@ -0,0 +1,9 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+# Copyright (C) 2021 Iñigo Martinez <inigomartinez@gmail.com>
+
+mans = files(
+ 'mmcli.1',
+ 'ModemManager.8',
+)
+
+install_man(mans)
diff --git a/docs/reference/api/meson.build b/docs/reference/api/meson.build
new file mode 100644
index 00000000..d7c420c7
--- /dev/null
+++ b/docs/reference/api/meson.build
@@ -0,0 +1,57 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+# Copyright (C) 2021 Iñigo Martinez <inigomartinez@gmail.com>
+
+doc_module = mm_name
+
+private_headers = [
+ 'ModemManager.h',
+ 'ModemManager-names.h',
+]
+
+mm_doc_path = mm_prefix / gnome.gtkdoc_html_dir(doc_module)
+
+version_xml = configure_file(
+ input: 'version.xml.in',
+ output: '@BASENAME@',
+ configuration: version_conf,
+)
+
+expand_content_files = [
+ 'ModemManager-dbus-reference.xml',
+ 'ModemManager-migration-reference.xml',
+ 'ModemManager-overview.xml',
+ # FIXME: workaround because only strings can be included and not custom targets (gen_docs)
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.Bearer.xml',
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Firmware.xml',
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Location.xml',
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Messaging.xml',
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Modem3gpp.ProfileManager.xml',
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Modem3gpp.Ussd.xml',
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Modem3gpp.xml',
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.ModemCdma.xml',
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Oma.xml',
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Signal.xml',
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Simple.xml',
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Time.xml',
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.xml',
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.Sim.xml',
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.Sms.xml',
+ generated_build_dir / 'mm-gdbus-doc-org.freedesktop.ModemManager1.xml',
+]
+
+gnome.gtkdoc(
+ doc_module,
+ main_xml: doc_module + '-docs.xml',
+ src_dir: include_inc,
+ ignore_headers: private_headers,
+ include_directories: top_inc,
+ gobject_typesfile: doc_module + '.types',
+ dependencies: glib_deps,
+ namespace: 'mm',
+ scan_args: '--deprecated-guards="MM_DISABLE_DEPRECATED"',
+ fixxref_args: '--html-dir=' + mm_doc_path,
+ html_assets: logos_pngs + diagrams_pngs,
+ content_files: version_xml,
+ expand_content_files: expand_content_files,
+ install: true,
+)
diff --git a/docs/reference/libmm-glib/meson.build b/docs/reference/libmm-glib/meson.build
new file mode 100644
index 00000000..2f1eb137
--- /dev/null
+++ b/docs/reference/libmm-glib/meson.build
@@ -0,0 +1,52 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+# Copyright (C) 2021 Iñigo Martinez <inigomartinez@gmail.com>
+
+doc_module = mm_glib_name
+
+src_dirs = [
+ generated_inc,
+ libmm_glib_inc,
+]
+
+private_headers = [
+ 'mm-common-helpers.h',
+ 'mm-gdbus-test.h',
+ 'mm-helpers.h',
+]
+
+scan_args = [
+ '--deprecated-guards="MM_DISABLE_DEPRECATED"',
+ '--rebuild-types',
+]
+
+mkdb_args = [
+ '--ignore-files=mm-gdbus-test.h',
+ '--ignore-files=mm-gdbus-test.c',
+]
+
+fixxref_args = [
+ '--html-dir=' + (mm_prefix / gnome.gtkdoc_html_dir(doc_module)),
+ '--extra-dir=' + mm_doc_path,
+]
+
+version_xml = configure_file(
+ input: 'version.xml.in',
+ output: '@BASENAME@',
+ configuration: version_conf,
+)
+
+gnome.gtkdoc(
+ doc_module,
+ main_xml: doc_module + '-docs.xml',
+ src_dir: src_dirs,
+ ignore_headers: private_headers,
+ include_directories: top_inc,
+ dependencies: libmm_glib_dep,
+ namespace: 'mm',
+ scan_args: scan_args,
+ mkdb_args: mkdb_args,
+ fixxref_args: fixxref_args,
+ html_assets: logos_pngs,
+ content_files: version_xml,
+ install: true,
+)