Gimp/meson_options.txt
Jehan 9ce27be989 meson: improve/fix previous commit from MR !725.
- Setting an exec_dir variable is an error. As meson docs says, if
  relative, it is installed relatively to prefix anyway: "If this is a
  relative path, it is assumed to be relative to the prefix."
  On the other hand, it would make problems if someone tried to set an
  absolute bindir.
  Moreover it is a lot clearer now. When we want to install in the
  binary directory unconditionally, then get_option('bindir') is the
  meson way, hence the way to go.
- On the other hand, the `gimp-debug-tool` is installed either in bindir
  for Windows or macOS and libexecdir for all other platforms, at least
  that's how it's set in the autotools build. So let's keep both builds
  consistent.
- Make a hopefully clearer description for enable-default-bin option.
  Let's clarify this is just about creating unversionning links pointing
  to versionned files.
- Adding an item in the "Optional Features" part of the summary listing
  during meson configure, for better discovery.

For the ".exe" extension on Windows, I wished we had an $(EXEEXT)
equivalent on meson rather than trying to set it ourselves (are there
other platforms where we must set a different extension?). But I could
not find any.
2022-08-29 15:43:25 +02:00

66 lines
5.4 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: 'Install unversioned symlinks pointing to versioned executables')
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: 'combo', value: 'platform-default',
description: 'GIMP will look up new version availability on startup',
choices: [ 'yes', 'no', 'platform-default' ])
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('jpeg2000', type: 'feature', value: 'auto', description: 'Jpeg-2000 support')
option('jpeg-xl', type: 'feature', value: 'auto', description: 'JPEG XL support')
option('mng', type: 'feature', value: 'auto', description: 'Mng support')
option('openexr', type: 'feature', value: 'auto', description: 'Openexr support')
option('print', type: 'boolean', value: true, description: 'Print support')
option('webkit-unmaintained',type: 'boolean', value: false, description: 'Help browser and webpage plugins (unmaintained)')
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('can-crosscompile-gir', type: 'boolean', value: false, description: 'GIR is buildable even if crosscompiling')
option('gi-docgen', type: 'feature', value: 'auto', description: 'Build developer documentation (uses gi-docgen)')
option('g-ir-doc', type: 'boolean', value: false, description: 'Build developer documentation for introspected API')
option('linux-input', type: 'feature', value: 'auto', description: 'Linux input event controller module')
option('vector-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')