[tracker/wip/sam/meson] More meson!



commit 45fd6b9d5bb0b37f4b94a9c2a0d9465a84261edb
Author: Sam Thursfield <sam afuera me uk>
Date:   Tue Sep 20 22:52:08 2016 +0100

    More meson!

 docs/manpages/meson.build                     |   25 +++++++++++++++++++
 docs/meson.build                              |    3 ++
 docs/reference/libtracker-control/meson.build |    8 ++++++
 docs/reference/libtracker-miner/meson.build   |    8 ++++++
 docs/reference/libtracker-sparql/meson.build  |    8 ++++++
 docs/reference/meson.build                    |    4 +++
 docs/reference/ontology/meson.build           |   13 ++++++++++
 docs/tools/meson.build                        |   20 +++++++++++++++
 meson.build                                   |   32 ++++++++++++++++++-------
 po/meson.build                                |    6 ++++
 10 files changed, 118 insertions(+), 9 deletions(-)
---
diff --git a/docs/manpages/meson.build b/docs/manpages/meson.build
new file mode 100644
index 0000000..50317f7
--- /dev/null
+++ b/docs/manpages/meson.build
@@ -0,0 +1,25 @@
+install_man('tracker-extract.1')
+install_man('tracker-info.1')
+install_man('tracker-miner-fs.1')
+install_man('tracker-daemon.1')
+install_man('tracker-search.1')
+install_man('tracker-sparql.1')
+install_man('tracker-sql.1')
+install_man('tracker-status.1')
+install_man('tracker-store.1')
+install_man('tracker-tag.1')
+install_man('tracker-reset.1')
+install_man('tracker-index.1')
+install_man('tracker-writeback.1')
+
+if have_tracker_miner_rss
+  install_man('tracker-miner-rss.1')
+endif
+
+if have_tracker_needle
+  install_man('tracker-needle.1')
+endif
+
+if have_tracker_preferences
+  install_man('tracker-preferences.1')
+endif
diff --git a/docs/meson.build b/docs/meson.build
new file mode 100644
index 0000000..76e5979
--- /dev/null
+++ b/docs/meson.build
@@ -0,0 +1,3 @@
+subdir('tools')
+subdir('manpages')
+subdir('reference')
diff --git a/docs/reference/libtracker-control/meson.build b/docs/reference/libtracker-control/meson.build
new file mode 100644
index 0000000..d32533d
--- /dev/null
+++ b/docs/reference/libtracker-control/meson.build
@@ -0,0 +1,8 @@
+configure_file(input: 'version.xml.in',
+    output: 'version.xml',
+    configuration: conf)
+
+gnome.gtkdoc('libtracker-control',
+    src_dir: '../../../src/libtracker-control',
+    main_sgml: 'libtracker-control-docs.sgml',
+    install: true)
diff --git a/docs/reference/libtracker-miner/meson.build b/docs/reference/libtracker-miner/meson.build
new file mode 100644
index 0000000..699a37f
--- /dev/null
+++ b/docs/reference/libtracker-miner/meson.build
@@ -0,0 +1,8 @@
+configure_file(input: 'version.xml.in',
+    output: 'version.xml',
+    configuration: conf)
+
+gnome.gtkdoc('libtracker-miner',
+    src_dir: '../../../src/libtracker-miner',
+    main_sgml: 'libtracker-miner-docs.sgml',
+    install: true)
diff --git a/docs/reference/libtracker-sparql/meson.build b/docs/reference/libtracker-sparql/meson.build
new file mode 100644
index 0000000..56e25a2
--- /dev/null
+++ b/docs/reference/libtracker-sparql/meson.build
@@ -0,0 +1,8 @@
+configure_file(input: 'version.xml.in',
+    output: 'version.xml',
+    configuration: conf)
+
+gnome.gtkdoc('libtracker-sparql',
+    src_dir: '../../../src/libtracker-sparql',
+    main_sgml: 'libtracker-sparql-docs.sgml',
+    install: true)
diff --git a/docs/reference/meson.build b/docs/reference/meson.build
new file mode 100644
index 0000000..529007b
--- /dev/null
+++ b/docs/reference/meson.build
@@ -0,0 +1,4 @@
+subdir('libtracker-control')
+subdir('libtracker-miner')
+subdir('libtracker-sparql')
+subdir('ontology')
diff --git a/docs/reference/ontology/meson.build b/docs/reference/ontology/meson.build
new file mode 100644
index 0000000..409a64f
--- /dev/null
+++ b/docs/reference/ontology/meson.build
@@ -0,0 +1,13 @@
+configure_file(input: 'version.xml.in',
+    output: 'version.xml',
+    configuration: conf)
+
+# FIXME: this can't really work right now; Meson is too limited here.
+# Perhaps it could be done as an external script since none of the
+# normal scanning and stuff needs to be done anyway.
+# built anyway.
+
+gnome.gtkdoc('ontology',
+    src_dir: '.',
+    main_sgml: 'ontology-docs.sgml',
+    install: true)
diff --git a/docs/tools/meson.build b/docs/tools/meson.build
new file mode 100644
index 0000000..e709833
--- /dev/null
+++ b/docs/tools/meson.build
@@ -0,0 +1,20 @@
+# These tools are used for generating the ontologies documentation.
+
+ttl_loader_files = [
+    'ttl_loader.c',
+    'ttl_loader.h',
+    'ttl_model.c',
+    'ttl_model.h',
+    'ttl_sgml.c',
+    'ttl_sgml.h',
+    'qname.c',
+    'qname.h'
+]
+
+ttl2sgml = executable('ttl2sgml',
+    ttl_loader_files, 'ttl2sgml.c',
+    dependencies: [tracker_data_dep, tracker_sparql_dep])
+
+ttlresource2sgml = executable('ttlresource2sgml',
+    ttl_loader_files, 'ttlresource2sgml.c',
+    dependencies: [tracker_data_dep, tracker_sparql_dep])
diff --git a/meson.build b/meson.build
index 559530b..17b6298 100644
--- a/meson.build
+++ b/meson.build
@@ -3,6 +3,7 @@
 
 project('tracker', 'c', 'vala', version: '1.8.0')
 
+gnome = import('gnome')
 i18n = import('i18n')
 
 # This is the X.Y used in -llibtracker-FOO-X.Y
@@ -74,7 +75,9 @@ use_libicu = true
 if use_libicu
     icu_i18n = dependency('icu-i18n', version: '> 4.8.1.1', required: false)
     icu_uc = dependency('icu-uc', version: '> 4.8.1.1', required: false)
-    unicode_library = [icu_uc, icu_i18n]
+    unicode_library = declare_dependency(
+        dependencies: [icu_uc, icu_i18n]
+    )
 else
     libunistring = meson.get_compiler('c').find_library('libunistring', required: false)
     unicode_library = libunistring
@@ -104,20 +107,18 @@ conf.set('HAVE_LIBUNISTRING', false)  # FIXME: shouldn't be hardcoded
 conf.set('LOCALEDIR', '@0@/@1@'.format(get_option('prefix'), get_option('localedir')))
 conf.set('PACKAGE_VERSION', meson.project_version())
 conf.set('TRACKER_UI_DIR', '@0@/@1@/tracker/'.format(get_option('prefix'), get_option('datadir')))
+conf.set('TRACKER_VERSION', meson.project_version())
 configure_file(input: 'config.h.meson.in',
                output: 'config.h',
                configuration: conf)
 
-i18n.gettext('tracker', languages:
-    ['ar', 'as', 'be@latin', 'bg', 'bs', 'ca', 'ca@valencia', 'cs', 'da', 'de',
-     'dz', 'el', 'en_GB', 'eo', 'es', 'et', 'eu', 'fi', 'fr', 'gl', 'he', 'hu',
-     'id', 'it', 'ja', 'ko', 'lt', 'lv', 'mk', 'ml', 'nb', 'nds', 'nl', 'oc',
-     'pa', 'pl', 'pt', 'pt_BR', 'ro', 'ru', 'sk', 'sl', 'sr', 'sr@latin', 'sv',
-     'te', 'tg', 'th', 'tr', 'uk', 'zh_CN', 'zh_HK', 'zh_TW'])
-
 # Needed so we can link static helper libraries into shared libraries
 add_global_arguments('-fPIC', language: 'c')
 
+have_tracker_miner_rss = true
+have_tracker_needle = true
+have_tracker_preferences = true
+
 gvdb = static_library(
     'gvdb',
     'src/gvdb/gvdb-builder.c',
@@ -255,6 +256,7 @@ libtracker_data_vala = static_library(
     ]
 )
 
+tracker_data_dependencies = [gio_unix, glib, libmath, sqlite, uuid, unicode_library, zlib]
 libtracker_data = library(
     'tracker-data',
     'src/libtracker-data/tracker-class.c',
@@ -276,13 +278,21 @@ libtracker_data = library(
     'src/libtracker-data/tracker-property.c',
     link_with: [gvdb, libtracker_common, libtracker_sparql_intermediate,
         libtracker_sparql_intermediate_vala, libtracker_data_vala, libtracker_fts],
-    dependencies: [gio_unix, glib, libmath, sqlite, uuid, zlib, unicode_library],
+    dependencies: tracker_data_dependencies,
     c_args: [
         '-DSHAREDIR="' + get_option('datadir') + '"',
         '-DTRACKER_COMPILATION',
         '-I' + meson.source_root() + '/src',
     ],
 )
+tracker_data_dep = declare_dependency(
+    link_with: [libtracker_data],
+    dependencies: tracker_data_dependencies,
+    compile_args: [
+        '-I' + meson.source_root() + '/src',
+    ]
+)
+
 #
 libtracker_bus = static_library(
     'tracker-bus',
@@ -364,3 +374,7 @@ executable(
         '-include', 'config.h'
     ]
 )
+
+subdir('docs')
+
+subdir('po')
diff --git a/po/meson.build b/po/meson.build
new file mode 100644
index 0000000..adb5176
--- /dev/null
+++ b/po/meson.build
@@ -0,0 +1,6 @@
+i18n.gettext('tracker', languages:
+    ['ar', 'as', 'be@latin', 'bg', 'bs', 'ca', 'ca@valencia', 'cs', 'da', 'de',
+     'dz', 'el', 'en_GB', 'eo', 'es', 'et', 'eu', 'fi', 'fr', 'gl', 'he', 'hu',
+     'id', 'it', 'ja', 'ko', 'lt', 'lv', 'mk', 'ml', 'nb', 'nds', 'nl', 'oc',
+     'pa', 'pl', 'pt', 'pt_BR', 'ro', 'ru', 'sk', 'sl', 'sr', 'sr@latin', 'sv',
+     'te', 'tg', 'th', 'tr', 'uk', 'zh_CN', 'zh_HK', 'zh_TW'])


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]