Gimp/meson_options.txt
Jehan e77d9517f7 meson, autotools, CI: simplify plug-in binding build options.
For Python, Lua and Javascript, make the option boolean (with 'yes'
being the default). No need of a warning when not installing the
plug-ins as this would have been disabled explicitly anyway. When
installing the plug-ins, only make interpreter checks as precautionnary
verifications which don't actually change anything (except outputting
some warnings if interpreters are not found). Basically for these 3
bindings, the interpreters are only runtime dependencies anyway. So it
doesn't matter if they are not available at build time. In particular,
we get rid of the 'force' option.

Vala rules do not change as the vala compiler is indeed needed at build
time and current checks work correctly. I just add a "Vala plug-ins"
line in the summary message of the meson configuration, as it was
missing.
2020-10-12 22:10:17 +02:00

64 lines
5.3 KiB
Meson

# Build properties
option('ansi', type: 'boolean', value: false, description: 'Turn on strict ansi')
option('enable-console-bin',type: 'boolean', value: true, description: 'Build a console-only binary which does not link GTK+')
option('win32-debug-console',type:'boolean', value: true, description: 'Open a console when starting the program')
option('enable-default-bin',type: 'boolean', value: true, description: 'Build default Gtk+ binary')
option('enable-multiproc', type: 'boolean', value: true, description: 'Support for multiple processors')
option('profiling', type: 'boolean', value: false, description: 'Enable profiling')
option('windows-installer', type: 'boolean', value: false, description: 'Generate files needed for the Windows installer')
option('relocatable-bundle', type: 'combo', value: 'platform-default',
description: 'build with resources considered bundled under the same prefix',
choices: [ 'yes', 'no', 'platform-default' ])
option('shmem-type', type: 'combo', value: 'auto', description: 'Shared memory transport type',
choices: [ 'none', 'sysv', 'posix', 'win32', 'auto' ])
option('build-id', type: 'string', value: 'unknown', description: 'Unique string used to define your build')
option('revision', type: 'integer', value: 0, description: 'Revision increment for a package')
option('check-update', type: 'boolean', value: true, description: 'GIMP will look up new version availability on startup')
option('bug-report-url', type: 'string', value: '', description: 'URL used by the debug dialog to report bugs')
option('gimpdir', type: 'string', value: '', description: 'Change default gimpdir from ~/.config/GIMP/2.9 to ~/.config/DIR/2.9 (if relative), or to DIR (if absolute)')
option('icc-directory', type: 'string', value: '', description: 'Path to default color profiles for this system')
option('directx-sdk-dir', type: 'string', value: '', description: 'Prefix where the DirectX SDK is installed(optional)')
option('with-sendmail', type: 'string', value: '', description: 'Use Sendmail instead of Xdg-email')
option('win32-32bits-dll-folder', type: 'string', value: '32/bin', description: 'alternative folder with 32-bit versions of DLL libraries on Windows')
option('libunwind', type: 'boolean', value: true, description: 'Build with libunwind for backtrace')
option('libbacktrace', type: 'boolean', value: true, description: 'Build with libbacktrace support')
# Features
option('aa', type: 'feature', value: 'auto', description: 'AA plugin')
option('alsa', type: 'feature', value: 'auto', description: 'Alsa support in midi input controller')
option('appdata-test', type: 'feature', value: 'auto', description: 'Validate the appdata file')
option('cairo-pdf', type: 'feature', value: 'auto', description: 'Cairo-pdf support')
option('ghostscript', type: 'feature', value: 'auto', description: 'Ghostscript support')
option('gudev', type: 'feature', value: 'auto', description: 'Gudev support')
option('heif', type: 'feature', value: 'auto', description: 'HEIF support')
option('jpeg', type: 'feature', value: 'auto', description: 'Jpeg support')
option('jpeg2000', type: 'feature', value: 'auto', description: 'Jpeg-2000 support')
option('mng', type: 'feature', value: 'auto', description: 'Mng support')
option('openexr', type: 'feature', value: 'auto', description: 'Openexr support')
option('png', type: 'feature', value: 'auto', description: 'PNG support')
option('print', type: 'boolean', value: true, description: 'Print support')
option('tiff', type: 'feature', value: 'auto', description: 'TIFF support')
option('webkit', type: 'feature', value: 'auto', description: 'Help browser and webpage plugins')
option('webp', type: 'feature', value: 'auto', description: 'Webp support')
option('wmf', type: 'feature', value: 'auto', description: 'Wmf support')
option('xcursor', type: 'feature', value: 'auto', description: 'Xcursor support')
option('xpm', type: 'feature', value: 'auto', description: 'XPM support')
option('headless-tests', type: 'feature', value: 'auto', description: 'Use xvfb-run/dbus-run-session for UI-dependent automatic tests')
option('gtk-doc', type: 'boolean', value: true, description: 'Build developer documentation')
option('gtk-doc-app', type: 'boolean', value: false, description: 'Build developer documentation for app')
option('linux-input', type: 'feature', value: 'auto', description: 'Linux input event controller module')
option('vec-icons', type: 'boolean', value: true, description: 'Use vector icons rather than raster ones')
option('vala-plugins', type: 'feature', value: 'auto', description: 'Build VAPI and Vala plugins')
option('javascript', type: 'boolean', value: true, description: 'Install Javascript plug-ins')
option('lua', type: 'boolean', value: true, description: 'Install Lua plug-ins')
option('python', type: 'boolean', value: true, description: 'Install Python 3 plug-ins')