meson: add -Dtests=false|true option

When set to false, no test binaries are neither built, nor
executed (with “ninja test”).

Closes #919
This commit is contained in:
Daniel Eklöf 2022-02-06 12:51:54 +01:00
parent e6f884a9e1
commit c7248cf763
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
4 changed files with 20 additions and 9 deletions

View file

@ -66,6 +66,10 @@
foot only supports level 1 and 2 (and not level 0), this sequence
does not disable _modifyOtherKeys_ completely, but simply reverts it
back to level 1 (the default).
* `-Dtests=false|true` meson command line option. When disabled, test
binaries will neither be built, nor will `ninja test` attempt to
execute them. Enabled by default
(https://codeberg.org/dnkl/foot/issues/919).
### Changed

View file

@ -140,14 +140,15 @@ mkdir -p bld/release && cd bld/release
Available compile-time options:
| Option | Type | Default | Description | Extra dependencies |
|--------------------------------------|---------|-----------------------|----------------------------------|--------------------|
| `-Ddocs` | feature | `auto` | Builds and install documentation | scdoc |
| `-Dime` | bool | `true` | Enables IME support | None |
| `-Dgrapheme-clustering` | feature | `auto` | Enables grapheme clustering | libutf8proc |
| `-Dterminfo` | feature | `enabled` | Build and install terminfo files | tic (ncurses) |
| `-Ddefault-terminfo` | string | `foot` | Default value of `TERM` | none |
| `-Dcustom-terminfo-install-location` | string | `${datadir}/terminfo` | Value to set `TERMINFO` to | None |
| Option | Type | Default | Description | Extra dependencies |
|--------------------------------------|---------|-----------------------|------------------------------------------------|--------------------|
| `-Ddocs` | feature | `auto` | Builds and install documentation | scdoc |
| `-Dtests` | bool | `true` | Build tests (adds a `ninja test` build target) | none |
| `-Dime` | bool | `true` | Enables IME support | None |
| `-Dgrapheme-clustering` | feature | `auto` | Enables grapheme clustering | libutf8proc |
| `-Dterminfo` | feature | `enabled` | Build and install terminfo files | tic (ncurses) |
| `-Ddefault-terminfo` | string | `foot` | Default value of `TERM` | none |
| `-Dcustom-terminfo-install-location` | string | `${datadir}/terminfo` | Value to set `TERMINFO` to | None |
Documentation includes the man pages, readme, changelog and license
files.

View file

@ -303,7 +303,10 @@ endif
subdir('completions')
subdir('icons')
subdir('tests')
if (get_option('tests'))
subdir('tests')
endif
summary(
{
@ -315,6 +318,7 @@ summary(
'Terminfo install location': terminfo_install_location,
'Default TERM': get_option('default-terminfo'),
'Set TERMINFO': get_option('custom-terminfo-install-location') != '',
'Build tests': get_option('tests'),
},
bool_yn: true
)

View file

@ -10,6 +10,8 @@ option('ime', type: 'boolean', value: true,
option('grapheme-clustering', type: 'feature',
description: 'Enables grapheme clustering using libutf8proc. Requires fcft with harfbuzz support to be useful.')
option('tests', type: 'boolean', value: true, description: 'Build tests')
option('terminfo', type: 'feature', value: 'enabled', description: 'Build and install foot\'s terminfo files.')
option('default-terminfo', type: 'string', value: 'foot',
description: 'Default value of the "term" option in foot.ini.')