thorvg/meson_options.txt
Hermet Park a49532a818 common: STM32 portability enhancement
Some systems such as micro-processor might not support
the thread feature on the system.

Enhance the portability by compiling the thorvg with toggling the
threading depepdency through the build option.

For this, thorvg newly introduced the internal Key/ScopedLock abstraction
for transparent thread-locking dependnecy.

To turn off the thread feature, please use the next build option:

$meson setup build -Dthreads=false ...

Note that, the thread feature is enabled in default.
Turning off the thread feature could reduce the binary size by 7kb.

issue: https://github.com/thorvg/thorvg/issues/1900
2024-01-18 10:20:21 +09:00

59 lines
1.4 KiB
Meson

option('engines',
type: 'array',
choices: ['sw', 'gl_beta', 'wg_beta'],
value: ['sw'],
description: 'Enable Rasterizer Engine in thorvg')
option('loaders',
type: 'array',
choices: ['', 'tvg', 'svg', 'png', 'jpg', 'lottie', 'ttf', 'webp_beta', 'all'],
value: ['svg', 'tvg', 'lottie'],
description: 'Enable File Loaders in thorvg ("all" does not include "*_beta".)')
option('savers',
type: 'array',
choices: ['', 'tvg', 'gif', 'all'],
value: [''],
description: 'Enable File Savers in thorvg')
option('threads',
type: 'boolean',
value: true,
description: 'Enable the multi-threading task scheduler in thorvg')
option('vector',
type: 'boolean',
value: false,
description: 'Enable CPU Vectorization(SIMD) in thorvg')
option('bindings',
type: 'array',
choices: ['', 'capi', 'wasm_beta'],
value: [''],
description: 'Enable API bindings')
option('tools',
type: 'array',
choices: ['', 'svg2tvg', 'svg2png', 'lottie2gif', 'all'],
value: [''],
description: 'Enable building thorvg tools')
option('examples',
type: 'boolean',
value: false,
description: 'Enable building examples')
option('tests',
type: 'boolean',
value: false,
description: 'Enable building Unit Tests')
option('log',
type: 'boolean',
value: false,
description: 'Enable log message')
option('static',
type: 'boolean',
value: false,
description: 'Force to use static linking modules in thorvg')