From 4a47284252fb0a183686fae10b03377abfc91953 Mon Sep 17 00:00:00 2001 From: Pavel Timofeev Date: Fri, 20 Dec 2024 11:47:27 -0700 Subject: [PATCH 1/6] Fix build error for help/reference/libview/meson.build Fix error like: help/reference/libview/meson.build:13:18: ERROR: Unknown variable "libdoc_deps" --- help/reference/libview/meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/help/reference/libview/meson.build b/help/reference/libview/meson.build index 1ab82419..db2b1306 100644 --- a/help/reference/libview/meson.build +++ b/help/reference/libview/meson.build @@ -10,7 +10,7 @@ version_xml = configure_file( libview_doc_deps = declare_dependency( include_directories: [include_root, libdoc_include, libview_include, include_directories('.')], link_with: libview, - dependencies: libdoc_deps, + dependencies: libview_deps, ) gnome.gtkdoc( From 7b16805843bf884276a415a0974c497d08594e84 Mon Sep 17 00:00:00 2001 From: Pavel Timofeev Date: Fri, 20 Dec 2024 11:48:22 -0700 Subject: [PATCH 2/6] Fix another build error for help/reference/libview/meson.build Fix error: help/reference/libview/meson.build:16:6: ERROR: gnome.gtkdoc got unknown keyword arguments "cflags" --- help/reference/libview/meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/help/reference/libview/meson.build b/help/reference/libview/meson.build index db2b1306..4c530229 100644 --- a/help/reference/libview/meson.build +++ b/help/reference/libview/meson.build @@ -24,7 +24,7 @@ gnome.gtkdoc( ignore_headers: [libview_private_headers], dependencies: libview_doc_deps, mkdb_args: ['--xml-mode', '--output-format=xml', '--name-space=ev'], - cflags: '-DXREADER_COMPILATION', + c_args: '-DXREADER_COMPILATION', fixxref_args: fixref_args, install: true, install_dir: 'libxreaderview-' + api_version, From 0ac99319e93ecaa7b3aeada302ccf348cbcb41d0 Mon Sep 17 00:00:00 2001 From: Pavel Timofeev Date: Fri, 20 Dec 2024 11:49:19 -0700 Subject: [PATCH 3/6] Fix another build error for help/reference/shell/meson.build It fixes error help/reference/shell/meson.build:16:6: ERROR: gnome.gtkdoc got unknown keyword arguments "cflags" --- help/reference/shell/meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/help/reference/shell/meson.build b/help/reference/shell/meson.build index ce0b51cb..20b68640 100644 --- a/help/reference/shell/meson.build +++ b/help/reference/shell/meson.build @@ -24,7 +24,7 @@ gnome.gtkdoc( ignore_headers: [libview_private_headers], dependencies: xreader_doc_deps, mkdb_args: ['--xml-mode', '--output-format=xml', '--name-space=ev'], - cflags: '-DXREADER_COMPILATION', + c_args: '-DXREADER_COMPILATION', fixxref_args: fixref_args, install: true, install_dir: meson.project_name(), From 051cc02e3337df1356d2f5dc036e8b60a058e5f5 Mon Sep 17 00:00:00 2001 From: Pavel Timofeev Date: Sun, 26 Jan 2025 09:44:18 -0700 Subject: [PATCH 4/6] Fix https://github.com/linuxmint/xreader/issues/549 build doc error Static libs are ignored for gtkdoc. The trick here is to build both static and dynamic, use static in the same place as before and use dynamic for doc. Also remove uneeded parts of declare_dependency in help/reference/shell/meson.build and add proper src_dir later. --- help/reference/shell/meson.build | 7 +++---- shell/meson.build | 4 ++-- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/help/reference/shell/meson.build b/help/reference/shell/meson.build index 20b68640..07bd2df8 100644 --- a/help/reference/shell/meson.build +++ b/help/reference/shell/meson.build @@ -8,9 +8,7 @@ version_xml = configure_file( ) xreader_doc_deps = declare_dependency( - include_directories: [include_root, libdoc_include, libview_include, include_directories('.')], - link_with: [libdocument, libview], - dependencies: xreader_deps, + link_with: libshell.get_shared_lib(), ) gnome.gtkdoc( @@ -19,7 +17,8 @@ gnome.gtkdoc( main_xml: 'xreader-docs.xml', gobject_typesfile: files('xreader.types'), src_dir: [ - join_paths(meson.source_root(), 'libview'), + join_paths(meson.source_root(), 'shell'), + join_paths(meson.source_root(), 'libmisc'), ], ignore_headers: [libview_private_headers], dependencies: xreader_doc_deps, diff --git a/shell/meson.build b/shell/meson.build index 4060ceec..808512fe 100644 --- a/shell/meson.build +++ b/shell/meson.build @@ -141,7 +141,7 @@ libshell_deps = [ libephyzoom_dep, ] -libshell = static_library( +libshell = both_libraries( 'shell', shell_sources, dependencies: libshell_deps, @@ -149,7 +149,7 @@ libshell = static_library( ) libshell_dep = declare_dependency( - link_whole: libshell, # Need the whole lib for gresource lookup + link_whole: libshell.get_static_lib(), # Need the whole lib for gresource lookup dependencies: libshell_deps, include_directories: include_dirs, ) From 8c8d422b14a3f0ce125232c0011bf9feedf6dce5 Mon Sep 17 00:00:00 2001 From: Pavel Timofeev Date: Sun, 26 Jan 2025 09:54:49 -0700 Subject: [PATCH 5/6] Cleanup and fix empty articles for view and document docs --- help/reference/libdocument/meson.build | 10 ++-------- help/reference/libview/meson.build | 10 ++-------- 2 files changed, 4 insertions(+), 16 deletions(-) diff --git a/help/reference/libdocument/meson.build b/help/reference/libdocument/meson.build index 6f4720a4..fcb84877 100644 --- a/help/reference/libdocument/meson.build +++ b/help/reference/libdocument/meson.build @@ -7,22 +7,16 @@ version_xml = configure_file( configuration: version_conf, ) -libdoc_doc_deps = declare_dependency( - include_directories: [libdoc_include, include_directories('.')], - link_with: libdocument, - dependencies: libdocument_deps, -) - gnome.gtkdoc( 'libxreaderdocument', mode: 'xml', main_xml: 'libxreaderdocument-docs.xml', gobject_typesfile: files('libxreaderdocument.types'), src_dir: [ - join_paths(meson.source_root(), 'libdocument'), + join_paths(meson.build_root(), 'libdocument'), ], ignore_headers: [libdocument_private_headers], - dependencies: libdoc_doc_deps, + dependencies: libdocument_dep, mkdb_args: ['--xml-mode', '--output-format=xml', '--name-space=ev'], fixxref_args: fixref_args, install: true, diff --git a/help/reference/libview/meson.build b/help/reference/libview/meson.build index 4c530229..e37600cf 100644 --- a/help/reference/libview/meson.build +++ b/help/reference/libview/meson.build @@ -7,22 +7,16 @@ version_xml = configure_file( configuration: version_conf, ) -libview_doc_deps = declare_dependency( - include_directories: [include_root, libdoc_include, libview_include, include_directories('.')], - link_with: libview, - dependencies: libview_deps, -) - gnome.gtkdoc( 'libxreaderview', mode: 'xml', main_xml: 'libxreaderview-docs.xml', gobject_typesfile: files('libxreaderview.types'), src_dir: [ - join_paths(meson.source_root(), 'libview'), + join_paths(meson.build_root(), 'libview'), ], ignore_headers: [libview_private_headers], - dependencies: libview_doc_deps, + dependencies: libview_dep, mkdb_args: ['--xml-mode', '--output-format=xml', '--name-space=ev'], c_args: '-DXREADER_COMPILATION', fixxref_args: fixref_args, From c2a05832b9b2e1d9c706120845515456828b448c Mon Sep 17 00:00:00 2001 From: Pavel Timofeev Date: Sun, 26 Jan 2025 10:00:15 -0700 Subject: [PATCH 6/6] Fix empty articles for shell docs I'm not sure I'm doing here everything right, so it's just my assumption: The header I migrate from libview_private_headers to libview_headers are used in the documentation. Also they do not have this inside: #if !defined (XREADER_COMPILATION) #error "This is a private header." #endif like other private header do (libview/ev-link-accessible.h) for example. So if I'm wrong and the headers I move are really private then: - they should have this "error "This is a private header." listed above as well - they should be removed from xml to generate doc for shell --- help/reference/shell/meson.build | 1 - libview/meson.build | 10 +++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/help/reference/shell/meson.build b/help/reference/shell/meson.build index 07bd2df8..b27569f1 100644 --- a/help/reference/shell/meson.build +++ b/help/reference/shell/meson.build @@ -20,7 +20,6 @@ gnome.gtkdoc( join_paths(meson.source_root(), 'shell'), join_paths(meson.source_root(), 'libmisc'), ], - ignore_headers: [libview_private_headers], dependencies: xreader_doc_deps, mkdb_args: ['--xml-mode', '--output-format=xml', '--name-space=ev'], c_args: '-DXREADER_COMPILATION', diff --git a/libview/meson.build b/libview/meson.build index 77c7f023..5bb7077f 100644 --- a/libview/meson.build +++ b/libview/meson.build @@ -1,23 +1,23 @@ libview_private_headers = [ - 'ev-annotation-window.h', 'ev-link-accessible.h', - 'ev-loading-window.h', - 'ev-page-cache.h', - 'ev-pixbuf-cache.h', 'ev-timeline.h', 'ev-transition-animation.h', 'ev-view-accessible.h', - 'ev-view-cursor.h', 'ev-view-private.h', ] libview_headers = [ + 'ev-annotation-window.h', 'ev-document-model.h', 'ev-jobs.h', 'ev-job-scheduler.h', + 'ev-loading-window.h', + 'ev-page-cache.h', + 'ev-pixbuf-cache.h', 'ev-print-operation.h', 'ev-stock-icons.h', 'ev-view.h', + 'ev-view-cursor.h', 'ev-web-view.h', 'ev-view-presentation.h', ]