summaryrefslogtreecommitdiff
path: root/meson.build
Commit message (Collapse)AuthorAgeFilesLines
* build: Define _GNU_SOURCE for gmtime_rBrahmajit Das2023-05-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | Found while building tracker 3.5.2 with clang 16, which enable Wimplicit-function-declaration by default. Without _GNU_SOURCE defined, tracker would fail in the configure phase with Checking if "strftime 4-digit year modifier" runs: DID NOT COMPILE error. And investigating the meson log we see Compiler stderr: /var/tmp/portage/app-misc/tracker-3.5.2/work/tracker-3.5.2-build/meson-private/tmplr2vm6b0/testfile.c:12:5: error: call to undeclared function 'gmtime_r'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] gmtime_r (&timestamp, &tm); And a little further up Command line: clang /var/tmp/portage/app-misc/tracker-3.5.2/work/tracker-3.5.2-build/meson-private/tmplr2vm6b0/testfile.c -o /var/tmp/portage/app-misc/tracker-3.5.2/work/tracker-3.5.2-build/meson-private/tmplr2vm6b0/output.exe -O2 -pipe -march=native -DTRACKER_DEBUG -DG_DISABLE_CAST_CHECKS -D_FILE_OFFSET_BITS=64 -O0 -Werror=implicit-function-declaration -std=c99 -Wl,-O1 -Wl,--as-needed -fuse-ld=lld -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed Seems like cc.run() doesn't pick up the general compiler args we set earlier. We have already set it for the main build, so adding it just for the configure test should be fine. Signed-off-by: Brahmajit Das <brahmajit.xyz@gmail.com>
* Release 3.5.23.5.2tracker-3.5Carlos Garnacho2023-05-131-1/+1
|
* build: Detect appropriate strftime() year modifier at build timeCarlos Garnacho2023-05-021-0/+35
| | | | | | | | | | | | | | | | Different libc implementations (or different platforms) have different bugs. Even though %Y is documented as a 4-digit number, and %C as year/100 in a [00-99] range, they both crap out with years under 1000, using respectively 3 and 1 digits. This would be typically task for a width modifier (e.g. %4Y, or %2C), but that was conversely found to break NixOS on Darwin. Since the existing libc bugs paint us to a corner, detect an appropriate modifier at build time to get a 4-digit year to get true ISO 8601 in our supported [0001-9999] year range. Closes: https://gitlab.gnome.org/GNOME/tracker/-/issues/402
* Release 3.5.13.5.1Carlos Garnacho2023-04-251-1/+1
|
* Release 3.5.03.5.0Carlos Garnacho2023-03-191-1/+1
|
* Release 3.5.0.rc3.5.0.rcCarlos Garnacho2023-03-051-1/+1
|
* Merge branch 'wip/carlosg/gi-docgen-take-2' into 'master'Sam Thursfield2023-03-031-1/+1
|\ | | | | | | | | Migrate docs to gi-docgen (Take 2) See merge request https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/580
| * build: Depend on meson >= 0.55Carlos Garnacho2023-02-271-1/+1
| | | | | | | | We'll use some features from there.
* | build: Remove define leftoversCarlos Garnacho2023-03-021-2/+0
|/ | | | | The HAVE_LIBICU/LIBUNISTRING defines should not be needed for anything now.
* Release 3.5.0.beta3.5.0.betaCarlos Garnacho2023-02-151-1/+1
|
* build: Auto-generate VAPIRasmus Thomsen2023-01-111-2/+4
| | | | | The autogenerated version has a more intuitive API on Vala and is more up-to-date
* build: Build GVDB as a Meson subprojectCarlos Garnacho2022-12-111-0/+2
| | | | | | | | | | | | | | | | | | | | Since recently, GVDB repository includes a minimal meson.build file to allow building as a subproject without additional hassles (e.g. shipping supporting files at /subprojects/repofiles/) Drop our internal copy of GVDB in favor of a subproject built through Meson. Since we're updating many years across, there has been GVDB API updates that we need to adapt to: GvdbTable is no longer a refcounted object, and gvdb_table_walk() is no longer offered to iterate across values. These largely affect our own set of GVDB tests though, the test for gvdb_table_walk() was dropped, and so is the ref/unref one (it basically does the same than gvdb/flat_strings, after dropping the refcounting). These remaining tests stay useful, and should ideally move into the GVDB repository, so it can run as a separate suite here.
* build: Bump version to 3.5.0.alphaCarlos Garnacho2022-12-051-1/+1
|
* Release 3.4.23.4.2Carlos Garnacho2022-12-051-1/+1
|
* Release 3.4.13.4.1Carlos Garnacho2022-10-261-1/+1
|
* Release 3.4.03.4.0Carlos Garnacho2022-09-171-1/+1
|
* Release 3.4.0.rc3.4.0.rcCarlos Garnacho2022-09-051-1/+1
|
* build: Don't look for posix_fadviseCarlos Garnacho2022-08-301-1/+0
| | | | | For some reason this fails, but also is unused in this project tree. We can stop asking for its existence.
* build: Use generic .get_variable method to get pkgconfig variablesCarlos Garnacho2022-08-301-8/+8
| | | | | This generic method is available since meson 0.51 (which we already require), while pkg.get_pkgconfig_variable is deprecated in 0.56.
* build: Update meson_version to 0.53Jean Felder2022-08-241-1/+1
| | | | | Tracker uses the fs module to build the documentation. It was introduced in meson version 0.53.
* Release 3.4.0.beta3.4.0.betaCarlos Garnacho2022-08-081-1/+1
|
* build: Cleanse of Vala dependenciesCarlos Garnacho2022-07-171-5/+1
| | | | | | Drop all the places left where we do specify things for Vala, and rename the targets that had that name because of vala code presence.
* Merge branch 'wip/carlosg/shuffle-dirs' into 'master'Carlos Garnacho2022-04-241-15/+4
|\ | | | | | | | | Build libtracker-sparql as a monolithic library See merge request GNOME/tracker!504
| * libtracker-fts: Drop in-tree fts5 moduleCarlos Garnacho2022-04-021-14/+2
| | | | | | | | | | | | | | | | | | This was only a last resort for sqlite < 3.20, since module loading API changed around that version, also it probably did us a disservice since we barely updated the fts5.c file. We no longer accept such old versions and we expect that sqlite has a builtin FTS5 module, so we can drop this.
| * build: Depend on sqlite >=3.20.0Carlos Garnacho2022-04-021-1/+2
| | | | | | | | | | | | | | | | Back in the day, 3.20.0 was stablished as the baseline to expect a builtin fts5 module, due to module loading API changes in sqlite. Fast forward to today, this version was released in Aug 2017 so it is old enough to bump the dependency. This will allow us to drop our in-tree fts5 module.
* | build: Bump version to 3.4.0.alphaCarlos Garnacho2022-04-241-1/+1
|/ | | | | Also add the relevant versioning helper macros, so that we can add new API right away.
* Release 3.3.03.3.0Carlos Garnacho2022-03-191-1/+1
|
* Release 3.3.0.rc3.3.0.rcCarlos Garnacho2022-03-061-1/+1
|
* build: Add config options for libsoupMatt Turner2022-02-201-4/+17
| | | | | This allows distributions that ship both versions to choose which version of libsoup will be linked.
* build: Add an option to control building testsMatt Turner2022-02-201-4/+9
| | | | | | | | | | | | | | | Commit 8569c99d2926 ("Look for a Python installation with the tap module") correctly added a dependency on the gi Python module for tests. Commit 51ca035697a4 ("Make tracker:endpoint test work on macOS") restructured Python probing by moving it to the top-level meson.build. These two commits have the side-effect of exposing the fact that the gi Python module is really only a test dependency, and should not be required if building without tests. As such, add a -Dtests=bool option to disable building tests. This reduces the number of ninja targets from 232 to 188 on my non-test build.
* manpages: Fix generation of manpages with asciidoc 10Jan Alexander Steffens (heftig)2022-02-151-2/+1
| | | | | | | We should use asciidoc's `a2x` driver instead of running xsltproc ourselves. asciidoc 10 ships its stylesheets in a private directory. Fixes: https://gitlab.gnome.org/GNOME/tracker/-/issues/347
* Release 3.3.0.beta3.3.0.betaCarlos Garnacho2022-02-141-1/+1
|
* build: Bump for 3.3Carlos Garnacho2021-11-051-1/+1
| | | | | Also add the relevant versioning helper macros, so that we can add new API right away.
* Release 3.2.13.2.1Carlos Garnacho2021-10-301-1/+1
|
* Release 3.2.03.2.0Carlos Garnacho2021-09-181-1/+1
|
* Release 3.2.0.rc3.2.0.rcCarlos Garnacho2021-09-051-1/+1
|
* Release 3.2.0.beta3.2.0.betaCarlos Garnacho2021-09-011-1/+1
|
* Revert "meson: Add gi-docgen as a subproject"Carlos Garnacho2021-08-261-3/+0
| | | | This reverts commit 4446db1ba422b8f13cc96f75e49fbee7aa88d7d0.
* build: Use hotdoc to build documentationCarlos Garnacho2021-08-261-5/+0
|
* docs: Generate reference manual with gi-docgenDaniele Nicolodi2021-08-261-0/+8
|
* meson: Adjust indentationDaniele Nicolodi2021-08-261-1/+1
|
* libtracker-sparql: Check for the correct build CWD as subprojectCarlos Garnacho2021-08-041-1/+1
| | | | | | | | | | When building Tracker as a subproject, the CWD at build time is still that of the root project. We want to check this, instead of the subproject build root. This makes the remote module correctly detected in the build dir when building Tracker as a subproject (as it happens in tracker-miners CI).
* libtracker-sparql: Allow building against multiple versions of libsoupCarlos Garnacho2021-07-281-6/+21
| | | | | | | | | | | | | | | | Tracker is an innocent bystander hindering libsoup3 port, since the libsoup2/3->tracker->gtk3 dependency chain imposes a libsoup version, graphical applications using libsoup cannot port at their own pace. Make our remote code (connection & endpoint) be a private module that is built against both versions of libsoup (if found), then we pick one at runtime, with a preference on libsoup3 if libsoup2 .so file is not seen in the already loaded libraries. This patch should be reverted ASAP, once we can consider libsoup2 deprecated. Fixes: https://gitlab.gnome.org/GNOME/tracker/-/issues/320
* Remove dependency on GModuleSam Thursfield2021-07-221-1/+0
| | | | | | This was used by tracker-extract which no longer lives in this repo. https://gitlab.gnome.org/GNOME/tracker/-/issues/313
* meson.build: fix building with libsoup3Abderrahim Kitouni2021-07-221-1/+0
| | | | currently it requires soup2 to be installed even if building against soup3
* build: Show documentation enabled/disabled state in summarySam Thursfield2021-06-221-0/+2
|
* Release 3.2.0.alpha.13.2.0.alpha.1Carlos Garnacho2021-06-121-1/+1
| | | | | | There was some experimentation on the version scheme to appease https://gitlab.gnome.org/GNOME/tracker/-/issues/290, but it breaks GNOME ftpadmin. Never again.
* build: Avoid setting the regular library path in rpathCarlos Garnacho2021-06-081-1/+0
| | | | | This is redundant, and Fedora has made it a requirement to drop unnecessary rpaths.
* build: Disable GCC pedantic warningsSam Thursfield2021-05-261-1/+1
| | | | | | | | This flag has detected some bugs and resulted in a number of good code cleanups However, some of these warnings cannot neatly be fixed, as GLib depends on converting function pointers to (void *) and back again.
* meson: Do not disable sign-compare warningsDaniele Nicolodi2021-05-081-3/+0
| | | | Now that all occurrences have been fixed, we can enable this again.