nautilus/meson.build
Ernestas Kulik 510a8303dd build: make all tests optional
This can help cut down on link times a bit when working on things.
2018-03-16 06:22:36 +02:00

137 lines
3.3 KiB
Meson

project('nautilus', 'c',
version: '3.28.0',
meson_version: '>= 0.41.0',
license: 'GPL3+'
)
# Directory variables
bindir = get_option('bindir')
datadir = get_option('datadir')
desktopdir = join_paths(datadir, 'applications')
includedir = get_option('includedir')
libdir = get_option('libdir')
extensiondir = join_paths(libdir, 'nautilus', 'extensions-3.0')
prefix = get_option('prefix')
servicedir = join_paths(datadir, 'dbus-1', 'services')
#
# Compiler variables
cc = meson.get_compiler('c')
#
add_global_arguments(
cc.get_supported_arguments([
'-Wno-deprecated-declarations',
]),
language: 'c'
)
add_project_arguments(
cc.get_supported_arguments([
'-Wall',
'-Wduplicated-branches',
'-Wlogical-op',
'-Werror=declaration-after-statement',
'-Werror=empty-body',
'-Werror=format=2',
'-Werror=implicit-function-declaration',
'-Werror=init-self',
'-Werror=missing-include-dirs',
'-Werror=missing-prototypes',
'-Werror=pointer-arith',
'-Werror=sequence-point',
'-Werror=shadow',
'-Werror=strict-prototypes',
'-Werror=undef',
'-Werror=uninitialized',
]),
language: 'c'
)
# Imports
gnome = import('gnome')
i18n = import('i18n')
pkgconfig = import('pkgconfig')
#
# Dependencies
glib_ver = '>= 2.55.1'
libgd = subproject(
'libgd',
default_options: [
'static=true',
'with-gtk-hacks=true',
'with-main-view=true',
'with-tagged-entry=true'
]
)
libgd_dep = libgd.get_variable('libgd_dep')
libm = cc.find_library('libm')
gail = dependency('gail-3.0')
if get_option('extensions')
gexiv = dependency('gexiv2', version: '>= 0.10.0')
endif
gio = dependency('gio-2.0', version: glib_ver)
gio_unix = dependency('gio-unix-2.0', version: glib_ver)
glib = dependency('glib-2.0', version: glib_ver)
gmodule = dependency('gmodule-no-export-2.0', version: glib_ver)
gnome_autoar = dependency('gnome-autoar-0', version: '>= 0.2.1')
gnome_desktop = dependency('gnome-desktop-3.0', version: '>= 3.0.0')
gtk = dependency('gtk+-3.0', version: '>= 3.22.26')
selinux = []
if get_option('selinux')
selinux = dependency('libselinux', version: '>= 2.0')
endif
tracker_sparql = dependency('tracker-sparql-2.0')
x11 = dependency('x11')
xml = dependency('libxml-2.0', version: '>= 2.7.8')
#
# Configuration
conf = configuration_data()
conf.set_quoted('VERSION', meson.project_version())
conf.set_quoted('PACKAGE_VERSION', meson.project_version())
conf.set_quoted('GETTEXT_PACKAGE', 'nautilus')
conf.set_quoted('LOCALEDIR', join_paths(prefix, get_option('localedir')))
conf.set_quoted('NAUTILUS_DATADIR', join_paths(datadir, 'nautilus'))
conf.set_quoted('NAUTILUS_EXTENSIONDIR', join_paths(prefix, extensiondir))
if get_option('packagekit')
conf.set10('ENABLE_PACKAGEKIT', true)
endif
if get_option('profiling')
conf.set10('ENABLE_PROFILING', true)
endif
if get_option('selinux')
conf.set10('HAVE_SELINUX', true)
endif
configure_file(output: 'config.h', configuration: conf)
#
nautilus_include_dirs = include_directories(
'.',
'libnautilus-extension'
)
subdir('eel')
subdir('libnautilus-extension')
subdir('src')
if get_option('tests') != 'none'
subdir('test')
endif
subdir('data')
subdir('po')
if get_option('docs')
subdir('docs')
endif
if get_option('extensions')
subdir('extensions')
endif
# Compile GSettings schemas when installing from source.
meson.add_install_script('build-aux/meson/postinstall.py')