summaryrefslogtreecommitdiff
path: root/meson.build
Commit message (Collapse)AuthorAgeFilesLines
* Remove no-FTS codepathsSam Thursfield2020-03-081-55/+42
| | | | | | | For historical reasons we have a codepath to build without full-text search support, mostly useful on systems where the SQLite FTS5 module is not available. This module is not difficult to build so in Tracker 3.0 we'll require it.
* build: Bump SQLite dependency to 3.15.0Carlos Garnacho2020-03-071-1/+2
| | | | | | This version (released on Oct 2016) added support for "row values" (https://sqlite.org/rowvalue.html), which will be used for our MINUS support, and possibly in other places of our SQL generation.
* Fix meson error when bash completion is disabledBastien Nocera2020-02-261-1/+7
| | | | | | | | | | | Passing -Dbash_completion=false would error out as the bash_completion_dir variable is never set. meson.build:310:0: ERROR: Unknown variable "bash_completion_dir". Fixes: d318ebeb5d4f984c61373b492d86ca50fbfd71dc Closes: #187
* Clean up Meson optionsSam Thursfield2020-02-251-51/+11
| | | | Fixes https://gitlab.gnome.org/GNOME/tracker-miners/issues/49
* Update functional tests for Tracker 3.0 changesSam Thursfield2020-02-171-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | This commit updates the functional tests in line with the Tracker 3.0 architectural changes. These tests used to spawn a private tracker-store daemon and communicate over D-Bus. Most of the tests now create a local database in-process and run tests against that, using the PyGObject bindings to drive libtracker-sparql. It's good to test our Python bindings in this way. Some tests also test connecting to a database over D-Bus. The 'fixtures' module makes it easy to do either of these things. The 08-unique-insertions test is gone, it claimed that "we can't test tracker-miner-fs itself", but we can. The 14-signals test is now a test of the TrackerNotifier API. The 15-statistics test is removed as the API that it tests is gone. Numbers were removed from the filenames of all tests. It's debatable if the name "functional tests" really applies here any more, perhaps a bigger distinction from the "unit tests" which also run against libtracker-sparql is that these are written using Python and PyGObject instead of C. In tracker-miners.git we will still be testing multiple processes so the name will still make sense there.
* Bump API version to 3.0Sam Thursfield2020-02-171-1/+1
|
* libtracker-fts: Drop TrackerFTSConfigCarlos Garnacho2020-02-171-3/+0
| | | | | | | | | These settings are no longer read through settings, at least from library bits. Since we no longer need the settings, we no longer need the schemas, and we don't need the testsuite envvars to have things look into the right gschema dirs, and we don't need to compile schemas either.
* build: Drop g-ir-merge utilCarlos Garnacho2020-02-171-1/+0
| | | | | We no longer need to merge C/Vala gir files, thus we no longer need this script.
* build: Mark sqlite 3.24.0 >= $version >= 3.28.0 as brokenCarlos Garnacho2019-12-101-0/+3
| | | | | | | This range of versions break ontology updates, in combination with the newer technique to implement the union graph through WITH clause queries. The previous and following working versions are 3.23.1 and 3.29.0.
* build: Make "safe" sqlite checks fail hardCarlos Garnacho2019-12-101-22/+16
| | | | | | | Nobody reads configure script summaries, make it sure they will by spewing a build error. Make this overridable though, so people and distributors at least make a conscious choice to shoot themselves in the foot.
* Update Meson requirement to 0.50.0sam/remove-libuuidSam Thursfield2019-12-041-1/+1
| | | | | | | | | | | | | | | | Meson 0.50.0 was released on 10th March 2019. We should now be able to depend on it. In particular, Freedesktop SDK now contains 0.51.0[1] so this shouldn't break gnome-build-meta like last time (13948fda052e). Fixes the following warnings: WARNING: Project specifies a minimum meson_version '>=0.47' but uses features which were added in newer versions: * 0.49.0: {'/ with string arguments'} * 0.50.0: {'install arg in configure_file'} 1. https://gitlab.com/freedesktop-sdk/freedesktop-sdk/blob/master/elements%2Fcomponents%2Fmeson.bst
* Remove libuuid dependency, bump GLib requirement to >= 2.52.0Sam Thursfield2019-12-041-9/+1
| | | | | | | The functionality that we were using from libuuid is now present in GLib itself. Fixes https://gitlab.gnome.org/GNOME/tracker/issues/131
* Fix subproject build when -Dfunctional_tests=falseSam Thursfield2019-11-041-0/+1
| | | | | | | When building tracker-miners with -Dtracker:functional_tests=false defined, it would fail with this error: meson.build:64:2: ERROR: Requested variable "tracker_uninstalled_testutils_dir" not found.
* meson: Use pkgconfig module to generate filesMarco Trevisan (TreviƱo)2019-10-011-14/+2
| | | | | | | | Meson provides a pkgconfig module to generate .pc files without any need to defile stub files, but reusing libraries. So just use this convenience feature instead of manually redefininig variables and files.
* Bump version to 2.99.0Sam Thursfield2019-09-161-1/+1
| | | | The 'master' branch is now for work leading towards Tracker 3.0.
* meson: Expose cli build directory to subprojectsSam Thursfield2019-09-161-0/+1
| | | | | This is needed for the new 'run-uninstalled' script in tracker-miners.git to run the correct version of the CLI.
* Expose dbus_services_dir to dependent projectsSam Thursfield2019-09-141-0/+1
| | | | | | | | | The tracker-miners tests now depend on the tests/services/org.freedesktop.Tracker1.service file. We need to expose it. The pkg-config variable is for situations where we build against an installed Tracker core (so we use the normal service file, and honour any custom location that the user specified for it). The Meson variable is for when Tracker core is built as a subproject of tracker-miners.
* functional-tests: Start daemons through D-Bus autolaunchSam Thursfield2019-09-141-4/+0
| | | | | | | | | | | | | | Instead of manually running and managing Tracker daemon processes manually in the test, we now rely on our private D-Bus daemon to do so. This makes the test environment more like a real Tracker deployment. Log output from the D-Bus daemon is now captured and output through the Python logging system. This allows for finer-grained filtering of output from the tests themselves and from the Tracker daemons. Some test code is changed to support the new model.
* libtracker-data: Drop journalCarlos Garnacho2019-09-101-11/+0
|
* Release 2.3.02.3.0Carlos Garnacho2019-09-091-1/+1
|
* Release 2.2.99.12.2.99.1Carlos Garnacho2019-09-051-1/+1
|
* Release 2.2.99.02.2.99.0Carlos Garnacho2019-08-081-1/+1
| | | | Almost 2.3.0
* build: Make gsettings_schema_dir absoluteSam Thursfield2019-07-101-1/+1
| | | | | This fixes `ninja install`, which was broken since aef285b4a801ba7e9d8c166.
* build: Compile GSettings schemas after installSam Thursfield2019-07-101-0/+3
| | | | | | | | This isn't needed in the common case of distro package builds, as the distro package will already provide a hook. However, our README.md tells developers to install into a prefix like ~/opt/tracker, and that is broken by default because GLib will complain that none of the settings schemas are installed.
* build: Include libdir in rpathSam Thursfield2019-07-101-0/+1
| | | | | | | | This fixes the case where Tracker is installed into a non-standard prefix such as /opt/tracker and then fails to start with an error such as this: /opt/tracker/bin/tracker: error while loading shared libraries: libtracker-control-2.0.so.0: cannot open shared object file: No such file or directory
* tests: Don't depend on installed service fileAndrea Azzarone2019-05-251-0/+2
| | | | | | | Run dbus-run-session with the --config-file parameter in order to allow to run tests without installing tracker before. Closes: https://gitlab.gnome.org/GNOME/tracker/issues/24
* build: Bump version to 2.3.0 in masterSam Thursfield2019-05-251-1/+1
| | | | API additions for the 2.3 series are now possible.
* Release 2.2.22.2.2Carlos Garnacho2019-05-021-1/+1
|
* Revert "build: Require Meson >= 0.50"Sam Thursfield2019-05-011-1/+1
| | | | | | | | | | | | This reverts commit 17777040c63b7bc8586fa77bfa1219c0d96a9dd9. Some projects that include Tracker haven't yet updated to Meson 0.50. This change broke gnome-build-meta for example: https://gitlab.gnome.org/GNOME/gnome-build-meta/-/jobs/286671 The install: arg isn't actually required as for configure_file() targets Meson will infer whether an install is needed by the presence of the install_dir: arg.
* build: Require Meson >= 0.50Sam Thursfield2019-05-011-1/+1
| | | | | | | Meson helpfully warns us that this is needed: WARNING: Project specifies a minimum meson_version '>=0.47' but uses features which were added in newer versions: * 0.50.0: {'install arg in configure_file'}
* Release 2.2.12.2.1Carlos Garnacho2019-03-061-1/+1
|
* build: add support for sqlite3_has_fts5 property.maxice82019-02-261-30/+44
| | | | | Allows distros that are cross compiling to tell tracker whether sqlite3 has FTS support builtin or not.
* Release 2.2.02_2_0Carlos Garnacho2019-02-201-1/+1
|
* Merge branch 'mraudsepp/tracker-meson-docs-options'Carlos Garnacho2019-02-181-5/+1
|\
| * build: Separate manpages install option from gtk-doc generationMart Raudsepp2019-02-181-5/+1
| | | | | | | | | | | | | | The main use case for the docs option seems to be to not spend time on gtk-doc generation. It is rather unexpected this also disables the installation of manpages, which are just installed as-is with no work involved.
* | Merge branch 'wip/mschraal/meson-log-domain'Carlos Garnacho2019-02-171-1/+6
|\ \
| * | build: Set tracker as the log domainwip/mschraal/meson-log-domainMarinus Schraal2019-02-171-1/+6
| | | | | | | | | | | | An oversight of the meson port.
* | | Merge branch 'meson-deps' into 'master'Sam Thursfield2019-02-171-1/+1
|\ \ \ | | | | | | | | | | | | | | | | build: Raise glib dep to 2.46.0 See merge request GNOME/tracker!57
| * | | build: Raise glib dep to 2.46.0Mart Raudsepp2019-02-131-1/+1
| | |/ | |/| | | | | | | | | | | | | | | | It used to be 2.44.0 in configure.ac, and the code does use at least g_strv_contains, which is new in 2.44. It now also uses g_async_queue_push_front_unlocked and g_settings_schema_list_keys, which are new in 2.46.
* | | build: Use meson feature option type where appropriateMart Raudsepp2019-02-141-15/+7
|/ /
* | Release 2.2.0-alpha22.2.0-alpha2Carlos Garnacho2019-02-061-1/+1
| | | | | | | | | | | | For the lulz, releng all over the place crapped out with the "new" versioning. This is just a tag, and does not get a tarball in gnome FTP.
* | tests: compile gschemas in the build dirAndrea Azzarone2018-12-171-0/+1
|/ | | | | | | | | Allow running tests without the need to install the gsettings schemas. This commit moves all the gschemas in the data directory and compiles them in the build directory. Tests that require gschemas need to be launched with the proper GSETTINGS_SCHEMA_DIR env variable. Fixes: https://gitlab.gnome.org/GNOME/tracker/issues/60
* Merge branch 'heftig/tracker-fix-soversion'Carlos Garnacho2018-11-131-1/+2
|\
| * build: Restore right soversion to librariesJan Alexander Steffens (heftig)2018-11-121-1/+2
| | | | | | | | | | | | | | The previous change did not leave the expected .0 symlinks. 'soversion' is the actual version linked against. To match the scheme used by libtool, we need to give the libraries a 'version' as well.
* | build: Export store/ontology/domain ontology locations in .pc fileCarlos Garnacho2018-11-131-0/+3
|/ | | | | | | Export those in tracker-sparql.pc, so users may find out the install details. Related: https://gitlab.gnome.org/GNOME/tracker-miners/issues/19
* Merge branch 'sam/warning-format-security'Carlos Garnacho2018-11-121-0/+3
|\
| * meson: Enable -Wformat-securitySam Thursfield2018-09-031-0/+3
| | | | | | | | | | | | | | | | This warning is disabled by default at warning level 1. Multiple distros are building Tracker with -Werror=format-security and discovering regressions, we have had reports from Debian, Fedora and NixOS so far, so let's enable it by default.
* | build: Bump version earlyCarlos Garnacho2018-10-131-1/+1
| | | | | | | | | | | | The scheme adopted for development releases is "alphaN" for unstable releases, and "betaN" for release candidates. major/minor/micro version stay fixed in the targeted version.
* | build: Set proper soversion to librariesCarlos Garnacho2018-10-131-7/+8
| | | | | | | | | | | | Leaving to '0' is not enough if several versions of the library are installed (say, in different prefixes). Add back the library soversion, similarly to how it was done in autotools.
* | build: override prefix on all system install locationswip/carlosg/meson-system-dirsCarlos Garnacho2018-09-101-13/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | Following https://www.bassi.io/articles/2018/03/15/pkg-config-and-paths/, this includes dbus service, bash completion, gir and typelib paths. Unfortunately, the path for systemd user units cannot be overriden, so use a path made from our libdir path. This allows for trouble free builds by just defining prefix. If installing onto system paths was desirable on some setups, it might return through a -Duse_system_paths boolean build option that disables the overrides, but this is a preferrable default.