diff options
author | Sam Thursfield <ssssam@gmail.com> | 2016-03-27 14:31:41 +0100 |
---|---|---|
committer | Sam Thursfield <sam@afuera.me.uk> | 2017-05-22 13:58:07 +0100 |
commit | 68b41e39e0fbdcf60dccfbccc83f59212f81edb6 (patch) | |
tree | 0cee47b02a4283997f99034cf5816106add573f7 /meson_options.txt | |
parent | 20c715e249f6ea9a36ab09bbcda0c695c3062b79 (diff) | |
download | tracker-68b41e39e0fbdcf60dccfbccc83f59212f81edb6.tar.gz |
Meson build instructions for Tracker
See <http://mesonbuild.com/> for information about Meson.
Remaining issues:
* There's no `make dist` equivalent. We currently produce release
tarballs containing the output files of the Vala compiler. We need
to think through whether we can stop doing that. Shipping the
generated .c files does make the Vala preprocessor useless so
it would be good if we can stop.
* The Firefox, Thunderbird, Evolution and Nautilus plugins are not
built
* https://github.com/mesonbuild/meson/issues/671 -- means we can't
depend on tracker_common_dep in most places and have to manually
set link_with, include_directories and sources instead.
* https://github.com/mesonbuild/meson/issues/1469 -- without this we
have to install generated Vala headers using a script
* https://github.com/mesonbuild/meson/issues/1229 -- means adding
the #include guard to libtracker-sparql/tracker-generated-no-checks.h
is a pain
* The test suite has some spurious failures.
Here's a rough speed comparison.
Meson:
time sh -c 'meson .. --prefix=/opt/tracker-meson -D bash_completion=/opt/tracker-meson/share/bash-completion -Dsystemd_user_services=/opt/tracker-meson/lib/systemd/user -Ddbus_services=/opt/tracker-meson/share/dbus-1/services && ninja-build -j 4 && ninja-build install'
real 1m8.194s
user 2m16.962s
sys 0m20.532s
Autotools:
time sh -c './configure --prefix=/opt/tracker-autotools --with-bash-completion-dir=/opt/tracker-autotools/share/bash-completion --with-session-bus-services-dir=/opt/tracker-autotools/share/dbus-1/services --disable-nautilus-extension && make -j 4 && make install'
real 2m37.750s
user 4m37.214s
sys 0m54.806s
Plus 30+ seconds of ./autogen.sh first.
Note that Meson builds may fail if your source tree has generated files
from an Autotools build in there. If you see errors about duplicate
definitions, first try cleaning your source tree (use `git clean -dfx`,
but make sure you commit any work first!!)
Diffstat (limited to 'meson_options.txt')
-rw-r--r-- | meson_options.txt | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/meson_options.txt b/meson_options.txt new file mode 100644 index 000000000..943b48ae6 --- /dev/null +++ b/meson_options.txt @@ -0,0 +1,51 @@ +option('docs', type: 'boolean', value: true, + description: 'Enable the documentation') +option('extract', type: 'boolean', value: true, + description: 'Enable the Tracker metadata extractor') +option('fts', type: 'boolean', value: true, + description: 'Enable the Tracker full-text search feature') +option('functional_tests', type: 'boolean', value: true, + description: 'Enable the Tracker functional test suite') +option('guarantee_metadata', type: 'boolean', value: true, + description: 'Set nie:title and nie:contentCreated from filename and mtime if no metadata available') +option('journal', type: 'boolean', value: true, + description: 'Enable database journal backup mechanism') +option('writeback', type: 'boolean', value: true, + description: 'Enable Tracker writeback feature') + +option('abiword', type: 'boolean', value: 'true', + description: 'Enable extractor for AbiWord files') +option('dvi', type: 'boolean', value: 'true', + description: 'Enable extractor for DVI metadata') +option('icon', type: 'boolean', value: 'true', + description: 'Enable extractor for ICO metadata') +option('mp3', type: 'boolean', value: 'true', + description: 'Enable extractor for MP3 metadata') +option('ps', type: 'boolean', value: 'true', + description: 'Enable extractor for PS metadata') +option('text', type: 'boolean', value: 'true', + description: 'Enable extractor for TXT metadata') +option('unzip_ps_gz_files', type: 'boolean', value: 'true', + description: 'Enable extractor for PS.GZ metadata') + +option('battery_detection', type: 'combo', choices: ['auto', 'hal', 'upower', 'none'], value: 'auto', + description: 'Enable upower or HAL for battery/mains power detection') +option('charset_detection', type: 'combo', choices: ['auto', 'enca', 'icu', 'none'], value: 'auto', + description: 'Enable enca or libicu for charset detection in MP3s') +option('generic_media_extractor', type: 'combo', choices: ['auto', 'gstreamer', 'libav', 'none'], value: 'auto', + description: 'Enables one of the (gstreamer, libav, auto) generic media extractor backends') +option('gstreamer_backend', type: 'combo', choices: ['discoverer', 'gupnp'], value: 'discoverer', + description: 'When GStreamer is used, this enables one of the (discoverer, gupnp) GStreamer backends') +option('meegotouch', type: 'combo', choices: ['auto', 'no', 'yes'], value: 'no', + description: 'Enable libmeegotouch application extraction') +option('stemmer', type: 'combo', choices: ['auto', 'no', 'yes'], value: 'no', + description: 'Enable stemming words while indexing') +option('unicode_support', type: 'combo', choices: ['icu', 'unistring', 'auto'], value: 'auto', + description: 'Unicode support library to use') + +option('bash_completion', type: 'string', default: 'yes', + description: 'Directory to install Bash completion files (or "yes" for default directory, "no" to disable installation') +option('dbus_services', type: 'string', default: '', + description: 'Directory to install D-Bus .service files (leave blank to use the value from dbus-1.pc)') +option('systemd_user_services', type: 'string', default: 'yes', + description: 'Directory to install systemd user .service files (or "yes" for default directory, "no" to disable installation)') |