#
# General options
#

option('maintainer',
    type : 'boolean',
    value : false,
    description : 'Enable maintainer mode (use strict compiler flags, e.g. -Werror)'
)

option('packaging_backend',
    type : 'array',
    choices : ['alpm',
               'apt',
               'dnf',
               'dnf5',
               'dummy',
               'entropy',
               'eopkg',
               'pisi',
               'poldek',
               'portage',
               'slack',
               'zypp',
               'nix',
               'freebsd'],
    value : ['dummy'],
    description : 'The name of the backend to use'
)
option('dnf_vendor',
    type : 'combo',
    choices : ['fedora', 'mageia', 'openmandriva', 'rosa', 'opensuse'],
    value : 'fedora',
    description : 'Vendor configuration when using the dnf backend'
)

option('packagekit_user',
    type : 'string',
    value : 'root',
    description : 'User for running the PackageKit daemon'
)
option('local_checkout',
    type : 'boolean',
    value : false,
    description : 'Allow running in local checkout'
)
option('daemon_tests',
    type : 'boolean',
    value : true,
    description : 'Test the daemon using the dummy backend'
)

#
# Features
#

option('systemd',
    type : 'boolean',
    value : true, description : 'Use systemd and logind'
)
option('offline_update',
    type : 'boolean',
    value : true,
    description : 'Use systemd offline update'
)
option('legacy_tools',
    type : 'boolean',
    value : false,
    description : 'Build the pkcon/pkmon command-line tools'
)
option('elogind',
    type : 'boolean',
    value : false,
    description : 'Use elogind instead of systemd-login'
)
option('gobject_introspection',
    type : 'boolean',
    value : true,
    description : 'Build GObject Introspection data'
)
option('bash_completion',
    type : 'boolean',
    value : true,
    description : 'Bash completion'
)
option('bash_command_not_found',
    type : 'boolean',
    value : true,
    description : 'Build Bash command-not-found functionality'
)
option('gstreamer_plugin',
    type : 'boolean',
    value : true,
    description : 'Build gstreamer plugin functionality'
)
option('gtk_module',
    type : 'boolean',
    value : true,
    description : 'Build GTK+-3 module functionality'
)
option('cron',
    type : 'boolean',
    value : true,
    description : 'Build cron background functionality'
)
option('python_backend',
    type : 'boolean',
    value : true,
    description : 'Provide a Python backend'
)

#
# Documentation
#

option('man_pages',
    type : 'boolean',
    value : true,
    description : 'Generate man pages'
)
option('gtk_doc',
    type : 'boolean',
    value : false,
    description : 'Generate API reference'
)

#
# Locations
#

option('systemdsystemunitdir',
    type : 'string',
    value : '',
    description : 'Directory for systemd service files'
)
option('systemduserunitdir',
    type : 'string',
    value : '',
    description : 'Directory for systemd user service files'
)
option('dbus_sys',
    type : 'string',
    value : '',
    description : 'D-BUS system.d directory'
)
option('dbus_services',
    type : 'string',
    value : '',
    description : 'D-BUS system-services directory'
)
option('pythonpackagedir',
    type : 'string',
    value : '',
    description : 'Location for Python modules'
)
