summaryrefslogtreecommitdiff
path: root/meson_options.txt
Commit message (Collapse)AuthorAgeFilesLines
* build: Add runtime_dir option to set runstatedir pathPhilip Withnall2022-12-021-0/+8
| | | | | | | | | | | | | | This will be used in upcoming commits to allow the previously-hardcoded `/run` path to be set at configure time. Most people will not want to change it from `/run`, even when building test builds, as otherwise interaction with system mounts and services will not work. Inspired by equivalent changes in dbus.git in their commit ff92efa389a57a5250c6996df6614234d4d462e0. Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
* build: Remove deprecated -Diconv optionPhilip Withnall2022-11-221-6/+0
| | | | | | | | It was deprecated in GLib 2.74, so we can now remove it. Signed-off-by: Philip Withnall <pwithnall@endlessos.org> Helps: #2786
* build: Deprecate -Druntime_libdir optionPhilip Withnall2022-11-221-1/+2
| | | | | | | | | It’s been broken since we ported to Meson and nobody has complained, so let’s deprecate it this cycle and remove it in GLib ≥ 2.78. Signed-off-by: Philip Withnall <pwithnall@endlessos.org> Fixes: #2786
* gio: Optionally install trigger executables to architecture-specific pathsSimon McVittie2022-07-241-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In Debian-style multiarch (libdir = lib/x86_64-linux-gnu or similar), Red-Hat-style multilib (libdir = lib64 or lib) and Arch-style multilib (libdir = lib or lib32), we have to run a separate version of gio-querymodules to discover 32- or 64-bit modules on x86. Installing modules in the directory used for each word size needs to trigger recompilation of the correct modules list. Debian, Fedora and Arch currently all have patches to facilitate this: Debian moves gio-querymodules into ${libdir}/glib-2.0 and provides a compat symlink in ${bindir}, while Fedora and Arch rename one or both of the gio-querymodules executables to give it a -32 or -64 suffix. We can avoid the need for these patches by making this a build option. Doing this upstream has the advantage that the pkg-config metadata for each architecture points to the correct executable and is in sync with reality. I'm using Debian's installation scheme with a separate directory here, because the word-size suffix used in Fedora and Arch only works for the common case of 32- and 64-bit multilib, and does not cover scenarios where there can be more than one ABI with the same word size, such as multiarch cross-compilation or alternative ABIs like x32. Now that we have this infrastructure, it's also convenient to use it for glib-compile-schemas. This works with /usr/share, so it only needs to be run for one architecture (typically the system's primary architecture), but using /usr/bin/glib-compile-schemas for the trigger would result in either primary and secondary architectures trying to overwrite each other's /usr/bin/glib-compile-schemas binaries, or a circular dependency (the GLib library would have to depend on a common package that contains glib-compile-schemas, but glib-compile-schemas depends on the GLib library). Installing a glib-compile-schemas binary in an architecture-specific location alongside each GLib library bypasses this problem. Signed-off-by: Simon McVittie <smcv@collabora.com>
* meson: simplify iconv lookups using Meson's builtin dependency lookupEli Schwartz2022-06-161-2/+2
| | | | | | | | | | | | | | | | | | | iconv is complicated to look up. That complexity now resides in Meson, since 0.60.0, via a `dependency('iconv')` lookup, so use that instead. No effort is made to support the old option for which type of iconv to use. It was a false choice, because if only one was available, then that's the only one you can use, and if both are available, the external iconv shadows the builtin one and renders the builtin one unusable, so there is still only one you can use. This meant that when configuring glib with -Diconv=libc on systems that had an external iconv, the configure check would detect a valid libc iconv, try to use it, and then fail during the build because iconv.h belongs to the external iconv and generates machine code using the external iconv ABI, but fails to link to the iconv `find_library()`. Meson handles this transparently.
* gio: Remove fam file monitor supportPhilip Withnall2022-03-231-5/+0
| | | | | | | | | | | | | | | | | libgamin was last released in 2007 and is dead [upstream](https://gitlab.gnome.org/Archive/gamin). Distributions may still ship it (although Fedora no longer does), but we want people to use inotify on Linux since it’s actively supported. BSDs use kqueue. Windows uses win32filemonitor. FAM might still be used on some commercial Unix distributions, but there are no contributors from those distributions, and certainly no CI for them to prevent regressions. Signed-off-by: Philip Withnall <pwithnall@endlessos.org> Fixes: #2614
* build: Drop the internal_pcre option in favour of the subprojectPhilip Withnall2021-06-161-5/+0
| | | | | | | | | | | | | | This should maintain equivalent functionality, apart from that now you have to pass `--force-fallback-for libpcre` to `meson configure` in order to use the subproject; rather than specifying `-Dinternal_pcre=true` to use the internal copy. This also fixes #642, as the wrapdb copy of libpcre is version 8.37. Signed-off-by: Philip Withnall <pwithnall@endlessos.org> Helps: #962 Fixes: #642
* build: Add glib_debug optionOle André Vadla Ravnås2021-01-201-0/+6
| | | | To allow disabling debug infrastructure in builds with debug symbols.
* build: Add option for disabling testsOle André Vadla Ravnås2021-01-051-0/+5
|
* Make libelf dependency optional via meson featureNiklas Gürtler2020-10-011-0/+5
|
* gtrace: Add sysprof tracing support infrastructurePhilip Withnall2020-07-071-0/+5
| | | | | | | | | | | | | | | | | | | Add some internal wrappers around sysprof tracing, so that it can be used throughout GLib without exposing all the details of sysprof internally. This adds an optional dependency on `libsysprof-capture-4`. sysprof support is disabled without it. This depends on the GLib dependency of `libsysprof-capture` being dropped in https://gitlab.gnome.org/GNOME/sysprof/-/merge_requests/30, which has bumped the soname of `libsysprof-capture` and added subproject support. The next few commits will add marks that trace out each `GMainContext` iteration and each `GSource` `check`/`prepare`/`dispatch` call. Signed-off-by: Philip Withnall <withnall@endlessm.com>
* Meson: Add glib_checks and glib_asserts optionsXavier Claessens2020-04-091-0/+12
| | | | | | | | In cases where performance are critical it can be useful to disable checks and asserts. GStreamer has those options too, using the same name and setting them yielding means we can set those options on the main project (e.g. gst-build) and glib will inherit the same value when built as subproject.
* meson: libmount autodectectionstephane Cerveau2020-02-011-2/+2
| | | | | As it can be disabled, it should be automatic as the packahge might be unavailable for a given target.
* gconvert: Don't differentiate between GNU iconv and macOS iconvNirbheek Chauhan2019-04-121-2/+2
| | | | | Both provide iconv_open, and in fact, we weren't using the difference anywhere in glib at all.
* meson: Add autodetection to the iconv combo optionNirbheek Chauhan2019-04-121-3/+3
| | | | | | | | | | Instead of requiring the user to specify which option to use, which they will not really know, nor should they need to know. Search for each type of iconv (in the C library, as a separate native library, as the GNU implementation) by default. Fixes https://gitlab.gnome.org/GNOME/glib/issues/1557
* Introduce oss_fuzz feature optionpdknsk2019-03-131-0/+5
|
* Merge branch 'nls' into 'master'Xavier Claessens2018-11-271-0/+6
|\ | | | | | | | | Meson: Add 'nls' option to disable translation See merge request GNOME/glib!484
| * Meson: Add 'nls' option to disable translationXavier Claessens2018-11-201-0/+6
| | | | | | | | | | | | | | | | It is not always needed to generate and install gmo files, for example when building for Android or Windows that often doesn't have libintl to use them anyway. At least all GStreamer modules have this same option.
* | meson: Turn selinux into a meson feature and make it auto by defaultThibault Saunier2018-11-201-2/+2
|/ | | | Making it more user friendly when building on distro no deploying selinux
* Meson: Install glib testsXavier Claessens2018-07-161-0/+5
| | | | Fixes: #1444.
* Meson: Build fam moduleXavier Claessens2018-06-071-0/+5
| | | | | | | gio-querymodules-wrapper.py is copied from glib-networking. This python wrapper script is needed because meson.build cannot check for DESTDIR env variable itself, unlike Makefile.am. It is used to update giomodule.cache file when installing GIO modules like fam.
* Meson: add 'force_posix_threads' optionXavier Claessens2018-05-161-0/+5
| | | | | | | | | This allows building with posix threads on Windows. It is generally better to use win32 threads implementation on Windows, but this option can be used in case it causes issues, or for performance comparison for example. https://bugzilla.gnome.org/show_bug.cgi?id=784995
* Meson: Add -Wl,-z,nodelete and -Wl,-Bsymbolic-functions where supportedXavier Claessens2018-04-301-0/+5
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=788771
* Meson: Add missing options and conform to naming guidelinesXavier Claessens2017-12-191-12/+65
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=790837
* meson: Add 'charsetalias-dir' option mirroring the autotools oneNirbheek Chauhan2017-11-221-0/+2
| | | | This fixes the build again.
* meson: Allow toggling internal/system PCRE dependencyEmmanuele Bassi2017-07-211-0/+1
| | | | | We don't always want to build GLib with a dependency on the system's PCRE. The Autotools build allows this, and so should the Meson build.
* meson: Detect with-docs and with-man automaticallyNirbheek Chauhan2017-07-131-2/+2
| | | | | | | | By default, only build man pages and gtk-doc if the build-deps were found. To force-enable, pass -Dwith-docs=yes and -Dwith-man=yes. Also use a foreach loop for man pages instead of listing them all manually
* meson: add support for dtrace/systemtapTim-Philipp Müller2017-07-131-0/+6
| | | | Still at least one FIXME. And untested so far. It builds.
* meson: Port to latest master (2.51.0)Nirbheek Chauhan2017-07-131-0/+1
| | | | | | | Also remove headers from some gio sources. Headers do not need to be added to the list of sources. + various smaller self-explanatory fixes.
* meson: More build fixesPatrick Griffis2017-07-131-0/+2
- Fix installing various data files - Build translations