2566506e4b
Namely: no, yes, and yes and ask at startup. The install_check option is thus replaced by the can_install option. -Dinstall_check=true maps to -Dcan_install=yes_check, while -Dinstall_check=false maps to -Dcan_install=yes. -Dcan_install=no is new and is recommended for downstream packaging, where -Dinstall_check=false was historically used. Also improve error messages about bad configuration here and there and scatter configuration code in subdirectories, where they can be closer to their areas of effect.
223 lines
5.2 KiB
Meson
223 lines
5.2 KiB
Meson
option(
|
|
'static',
|
|
type: 'combo',
|
|
choices: [ 'none', 'system', 'prebuilt' ],
|
|
value: 'none',
|
|
description: 'Build statically using libraries present on the system (\'system\') or using prebuilt libraries official builds use (\'prebuilt\')'
|
|
)
|
|
option(
|
|
'beta',
|
|
type: 'boolean',
|
|
value: false,
|
|
description: 'Beta build'
|
|
)
|
|
option(
|
|
'ignore_updates',
|
|
type: 'boolean',
|
|
value: true,
|
|
description: 'Don\'t show notifications about available updates'
|
|
)
|
|
option(
|
|
'can_install',
|
|
type: 'combo',
|
|
choices: [ 'no', 'yes', 'yes_check', 'auto' ],
|
|
value: 'auto',
|
|
description: 'Disable (\'no\') or enable (\'yes\') setting up file and URL associations, or even offer to do it at startup (\'yes_check\')'
|
|
)
|
|
option(
|
|
'http',
|
|
type: 'boolean',
|
|
value: true,
|
|
description: 'Enable HTTP via libcurl'
|
|
)
|
|
option(
|
|
'gravfft',
|
|
type: 'boolean',
|
|
value: true,
|
|
description: 'Enable FFT gravity via libfftw3'
|
|
)
|
|
option(
|
|
'snapshot',
|
|
type: 'boolean',
|
|
value: false,
|
|
description: 'Snapshot build'
|
|
)
|
|
option(
|
|
'snapshot_id',
|
|
type: 'integer',
|
|
min: 0,
|
|
value: 0,
|
|
description: 'Snapshot ID, only relevant if \'snapshot\' is true'
|
|
)
|
|
option(
|
|
'mod_id',
|
|
type: 'integer',
|
|
min: 0,
|
|
value: 0,
|
|
description: 'Mod ID, used on the https://starcatcher.us/TPT build server, the build server will compile for all platforms for you and send updates in-game, see jacob1 to get a mod ID'
|
|
)
|
|
option(
|
|
'lua',
|
|
type: 'combo',
|
|
choices: [ 'none', 'lua5.1', 'lua5.2', 'luajit', 'auto' ],
|
|
value: 'auto',
|
|
description: 'Lua library to use'
|
|
)
|
|
option(
|
|
'x86_sse',
|
|
type: 'combo',
|
|
choices: [ 'none', 'sse', 'sse2', 'sse3', 'auto' ],
|
|
value: 'auto',
|
|
description: 'Enable SSE (available only on x86)'
|
|
)
|
|
option(
|
|
'build_powder',
|
|
type: 'boolean',
|
|
value: true,
|
|
description: 'Build the game'
|
|
)
|
|
option(
|
|
'build_render',
|
|
type: 'boolean',
|
|
value: false,
|
|
description: 'Build the thumbnail renderer'
|
|
)
|
|
option(
|
|
'build_font',
|
|
type: 'boolean',
|
|
value: false,
|
|
description: 'Build the font editor'
|
|
)
|
|
option(
|
|
'server',
|
|
type: 'string',
|
|
value: 'powdertoy.co.uk',
|
|
description: 'Simulation server'
|
|
)
|
|
option(
|
|
'static_server',
|
|
type: 'string',
|
|
value: 'static.powdertoy.co.uk',
|
|
description: 'Static simulation server'
|
|
)
|
|
option(
|
|
'update_server',
|
|
type: 'string',
|
|
value: '',
|
|
description: 'Update server, only used by snapshots and mods, see \'snapshot_id\' and \'mod_id\''
|
|
)
|
|
option(
|
|
'workaround_noncpp_lua',
|
|
type: 'boolean',
|
|
value: false,
|
|
description: 'Allow linking against a non-C++ system Lua'
|
|
)
|
|
option(
|
|
'workaround_elusive_bzip2',
|
|
type: 'boolean',
|
|
value: true,
|
|
description: 'acquire bzip2 dependency with find_library'
|
|
)
|
|
option(
|
|
'workaround_elusive_bzip2_lib_name',
|
|
type: 'string',
|
|
value: 'bz2',
|
|
description: 'bzip2 library name, see \'workaround_elusive_bzip2\''
|
|
)
|
|
option(
|
|
'workaround_elusive_bzip2_lib_dir',
|
|
type: 'string',
|
|
value: '/usr/lib/x86_64-linux-gnu',
|
|
description: 'bzip2 library directory, see \'workaround_elusive_bzip2\''
|
|
)
|
|
option(
|
|
'workaround_elusive_bzip2_include_name',
|
|
type: 'string',
|
|
value: 'bzlib.h',
|
|
description: 'bzip2 header name, see \'workaround_elusive_bzip2\''
|
|
)
|
|
option(
|
|
'workaround_elusive_bzip2_include_dir',
|
|
type: 'string',
|
|
value: '/usr/include',
|
|
description: 'bzip2 header directory, see \'workaround_elusive_bzip2\''
|
|
)
|
|
option(
|
|
'workaround_elusive_bzip2_static',
|
|
type: 'boolean',
|
|
value: false,
|
|
description: 'bzip2 static setting, see \'workaround_elusive_bzip2\''
|
|
)
|
|
option(
|
|
'tpt_libs_vtag',
|
|
type: 'string',
|
|
value: '',
|
|
description: 'tpt-libs vtag override, only used for tpt-libs development'
|
|
)
|
|
option(
|
|
'android_keystore',
|
|
type: 'string',
|
|
value: '',
|
|
description: 'Path to Java keystore for signing an APK, only used for Android development'
|
|
)
|
|
option(
|
|
'android_keyalias',
|
|
type: 'string',
|
|
value: 'androidkey',
|
|
description: 'Signing key alias for signing an APK, only used for Android development'
|
|
)
|
|
option(
|
|
'app_name',
|
|
type: 'string',
|
|
value: 'The Powder Toy',
|
|
description: 'App name, used for desktop integration and the window title, change if you work on a mod'
|
|
)
|
|
option(
|
|
'app_comment',
|
|
type: 'string',
|
|
value: 'Physics sandbox game',
|
|
description: 'App comment, used for desktop integration, change if you work on a mod'
|
|
)
|
|
option(
|
|
'app_exe',
|
|
type: 'string',
|
|
value: 'powder',
|
|
description: 'App executable name, used for desktop integration, change if you work on a mod'
|
|
)
|
|
option(
|
|
'app_id',
|
|
type: 'string',
|
|
value: 'uk.co.powdertoy.tpt',
|
|
description: 'App ID, a D-Bus well-known name, used for desktop integration, change if you work on a mod'
|
|
)
|
|
option(
|
|
'app_data',
|
|
type: 'string',
|
|
value: 'The Powder Toy',
|
|
description: 'App data directory name, do not change even if you work on a mod, only if you know what you are doing'
|
|
)
|
|
option(
|
|
'app_vendor',
|
|
type: 'string',
|
|
value: 'powdertoy',
|
|
description: 'App vendor prefix, used for desktop integration, do not change even if you work on a mod, only if you know what you are doing'
|
|
)
|
|
option(
|
|
'enforce_https',
|
|
type: 'boolean',
|
|
value: true,
|
|
description: 'Enforce encrypted HTTP traffic, may be disabled for debugging'
|
|
)
|
|
option(
|
|
'prepare',
|
|
type: 'boolean',
|
|
value: false,
|
|
description: 'Used by ghactions workflows, not useful otherwise'
|
|
)
|
|
option(
|
|
'render_icons_with_inkscape',
|
|
type: 'feature',
|
|
value: 'disabled',
|
|
description: 'Render icons with Inkscape (inkscape binary needs to be in PATH)'
|
|
)
|