# global

option(
  'profile',
  type: 'combo',
  choices: ['release', 'dev'],
  value: 'release',
)

# glycin loaders

option(
  'glycin-loaders',
  type: 'boolean',
  description: 'Build loaders',
)

option(
  'loaders',
  type: 'array',
  choices: [
    'glycin-heif',
    'glycin-image-rs',
    'glycin-jxl',
    'glycin-raw',
    'glycin-svg',
  ],
  value: [
    'glycin-heif',
    'glycin-image-rs',
    'glycin-jxl',
    'glycin-svg',
  ],
  description: 'List of loaders to build.',
)

option(
  'test_skip_ext',
  type: 'array',
  description: 'Image filename extensions, exlcuding dots, to skip during tests.',
)

option(
  'tests',
  type: 'boolean',
  value: true,
  description: 'Support running tests.',
)

option(
  'tokio_tests',
  type: 'boolean',
  value: true,
  description: 'Also run tests with tokio if tests are enabled.',
)

option(
  'test_skip_install',
  type: 'boolean',
  value: false,
  description: 'Do not run meson install before running tests.',
)

# libglycin

option(
  'libglycin',
  type: 'boolean',
  description: 'Build C bindings for the glycin crate',
)

option(
  'introspection',
  type: 'boolean',
  description: 'Generate .gir and .typelib files',
)

option(
  'vapi',
  type: 'boolean',
  description: 'Generate .vapi files for the Vala language',
)

option(
  'capi_docs',
  type: 'boolean',
  value: false,
  description: 'Generate HTML documentation for C API',
)

option(
  'python_tests',
  type: 'boolean',
  value: false,
  description: 'Test python bindings. Needs python3-gi',
)