meson: add -Dthemes=false|true

This adds a new meson option that controls whether the example theme
files should be installed or not. The default is true.

Previously, themes were gated by the -Ddocs option.
This commit is contained in:
Daniel Eklöf 2021-11-14 23:12:18 +01:00
parent 48758a101e
commit 31966f5494
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
3 changed files with 14 additions and 1 deletions

View file

@ -34,7 +34,13 @@
## Unreleased ## Unreleased
### Added ### Added
* `-Dthemes=false|true` meson command line option. When disabled,
example theme files are **not** installed.
### Changed ### Changed
### Deprecated ### Deprecated
### Removed ### Removed

View file

@ -240,10 +240,13 @@ if scdoc.found()
'LICENSE', 'README.md', 'CHANGELOG.md', 'LICENSE', 'README.md', 'CHANGELOG.md',
install_dir: join_paths(get_option('datadir'), 'doc', 'foot')) install_dir: join_paths(get_option('datadir'), 'doc', 'foot'))
install_data('foot.ini', install_dir: join_paths(get_option('datadir'), 'foot')) install_data('foot.ini', install_dir: join_paths(get_option('datadir'), 'foot'))
install_subdir('themes', install_dir: join_paths(get_option('datadir'), 'foot'))
subdir('doc') subdir('doc')
endif endif
if get_option('themes')
install_subdir('themes', install_dir: join_paths(get_option('datadir'), 'foot'))
endif
tic = find_program('tic', native: true, required: get_option('terminfo')) tic = find_program('tic', native: true, required: get_option('terminfo'))
if tic.found() if tic.found()
conf_data = configuration_data( conf_data = configuration_data(
@ -273,6 +276,7 @@ subdir('icons')
summary( summary(
{ {
'Documentation': scdoc.found(), 'Documentation': scdoc.found(),
'Themes': get_option('themes'),
'IME': get_option('ime'), 'IME': get_option('ime'),
'Grapheme clustering': utf8proc.found(), 'Grapheme clustering': utf8proc.found(),
'Build terminfo': tic.found(), 'Build terminfo': tic.found(),

View file

@ -1,6 +1,9 @@
option('docs', type: 'feature', option('docs', type: 'feature',
description: 'Build and install documentation (man pages, example foot.ini, readme, changelog, license etc).') description: 'Build and install documentation (man pages, example foot.ini, readme, changelog, license etc).')
option('themes', type: 'boolean', value: true,
description: 'Install themes (predefined color schemes)')
option('ime', type: 'boolean', value: true, option('ime', type: 'boolean', value: true,
description: 'IME (Input Method Editor) support') description: 'IME (Input Method Editor) support')