summaryrefslogtreecommitdiff
path: root/meson.build
diff options
context:
space:
mode:
Diffstat (limited to 'meson.build')
-rw-r--r--meson.build95
1 files changed, 50 insertions, 45 deletions
diff --git a/meson.build b/meson.build
index 5d08d30..43b6d12 100644
--- a/meson.build
+++ b/meson.build
@@ -1,18 +1,19 @@
project('shotwell', ['vala', 'c'],
- version : '0.30.18',
- meson_version : '>= 0.43.0',
+ version : '0.32.1',
+ meson_version : '>= 0.59.0',
default_options : ['buildtype=debugoptimized'])
gnome = import('gnome')
i18n = import('i18n')
conf = configuration_data()
-conf.set('GETTEXT_PACKAGE', '"@0@"'.format(meson.project_name().to_lower()))
-conf.set('_VERSION', '"@0@"'.format(meson.project_version()))
-conf.set('_PREFIX', '"@0@"'.format(get_option('prefix')))
-conf.set('_LANG_SUPPORT_DIR', '"@0@"'.format(join_paths(get_option('prefix'), get_option('localedir'))))
-conf.set('_LIBEXECDIR', '"@0@"'.format(join_paths(get_option('prefix'), get_option('libexecdir'))))
-conf.set('_LIB', '"@0@"'.format(get_option('libdir')))
+conf.set_quoted('GETTEXT_PACKAGE', meson.project_name().to_lower())
+conf.set_quoted('_VERSION', meson.project_version())
+conf.set_quoted('_PREFIX', get_option('prefix'))
+conf.set_quoted('_LANG_SUPPORT_DIR', join_paths(get_option('prefix'), get_option('localedir')))
+conf.set_quoted('_LIBEXECDIR', join_paths(get_option('prefix'), get_option('libexecdir')))
+conf.set_quoted('_LIB', get_option('libdir'))
+conf.set_quoted('_PIXBUF_LOADER_PATH', get_option('extra_pixbuf_loaders_path'))
configure_file(output : 'config.h', configuration: conf)
config_incdir = include_directories('.')
@@ -22,15 +23,16 @@ shotwell_plugin_dir = join_paths(get_option('libdir'), 'shotwell', 'plugins', 'b
add_global_arguments(['-DHAVE_CONFIG_H=1'],
['-include'], ['config.h'],
language : 'c')
-add_global_arguments(['--target-glib=2.40',
- '--vapidir=@0@'.format(join_paths(meson.current_source_dir(),
- 'vapi')),
- '--enable-checking',
- '--enable-experimental',
- '--enable-deprecated'], language : 'vala')
+add_global_arguments(
+ [
+ '--target-glib=2.40',
+ '--vapidir=@0@'.format(join_paths(meson.current_source_dir(), 'vapi')),
+ '--enable-checking',
+ '--enable-experimental',
+ ],
+ language : 'vala'
+)
-version_h = vcs_tag(command: ['git', 'rev-parse', 'HEAD'], input: 'version.h.in', output: 'version.h', fallback: '')
-version = declare_dependency(sources : version_h, include_directories : include_directories('.'))
if get_option('fatal_warnings')
add_global_arguments(
[
@@ -40,54 +42,54 @@ if get_option('fatal_warnings')
)
endif
+version_h = vcs_tag(command: ['git', 'rev-parse', 'HEAD'], input: 'version.h.in', output: 'version.h', fallback: '')
+version = declare_dependency(sources : version_h, include_directories : include_directories('.'))
gtk = dependency('gtk+-3.0', version : '>= 3.22')
gio = dependency('gio-2.0', version: '>= 2.40')
gmodule = dependency('gmodule-2.0', version: '>= 2.40')
-gio_unix = dependency('gio-unix-2.0', version: '>= 2.40')
gee = dependency('gee-0.8', version: '>= 0.8.5')
-webkit = dependency('webkit2gtk-4.0', version: '>= 2.26')
-soup = dependency('libsoup-2.4')
+webkit = dependency('webkit2gtk-4.1', version: '>= 2.26')
+soup = dependency('libsoup-3.0')
json_glib = dependency('json-glib-1.0')
xml = dependency('libxml-2.0')
gdk = dependency('gdk-3.0', version : '>= 3.22')
gdk_pixbuf = dependency('gdk-pixbuf-2.0')
sqlite = dependency('sqlite3', version : '>= 3.5.9')
-gstreamer = dependency('gstreamer-1.0', version : '>= 1.0')
-gstreamer_pbu = dependency('gstreamer-pbutils-1.0', version : '>= 1.0')
+gstreamer = dependency('gstreamer-1.0', version : '>= 1.20')
+gstreamer_pbu = dependency('gstreamer-pbutils-1.0', version : '>= 1.20')
gphoto2 = dependency('libgphoto2', version : '>= 2.5.0')
gudev = dependency('gudev-1.0', version : '>= 145', required: false)
-gexiv2 = dependency('gexiv2', version: '>= 0.10.4')
-if gexiv2.version().version_compare('>= 0.11')
- add_global_arguments(['--define=NEW_GEXIV2_API'], language : 'vala')
-endif
+gexiv2 = dependency('gexiv2', version: '>= 0.12.3')
libraw = dependency('libraw', version : '>= 0.13.2')
libexif = dependency('libexif', version : '>= 0.6.16')
unity = dependency('unity', required : false)
+secret = dependency('libsecret-1', required: true)
portal = [ dependency('libportal', version: '>= 0.5'), dependency('libportal-gtk3', version: '>= 0.5')]
+
+webpdemux = dependency('libwebpdemux')
+webp = dependency('libwebp')
-unity_available = false
-if unity.found() and get_option('unity-support')
- unity_available = true
+if unity.found() and get_option('unity_support')
add_global_arguments(['--define=UNITY_SUPPORT'], language : 'vala')
endif
-foreach publisher : get_option('publishers').split(',')
+foreach publisher : get_option('publishers')
add_global_arguments(['--define=HAVE_@0@'.format(publisher.to_upper())],
language : 'vala')
endforeach
-foreach trace : get_option('trace').split(',')
+foreach trace : get_option('trace')
add_global_arguments(['--define=TRACE_@0@'.format(trace.to_upper().underscorify())],
language : 'vala')
endforeach
-foreach measure : get_option('measure').split(',')
+foreach measure : get_option('measure')
add_global_arguments(['--define=MEASURE_@0@'.format(trace.to_upper().underscorify())],
language : 'vala')
endforeach
-if not get_option('dupe-detection')
+if not get_option('dupe_detection')
add_global_arguments(['--define=NO_DUPE_DETECTION'], language : 'vala')
endif
@@ -95,13 +97,19 @@ if get_option('udev') and gudev.found()
add_global_arguments(['--define=HAVE_UDEV'], language : 'vala')
endif
-if get_option('face-detection')
+if get_option('face_detection')
add_global_arguments(['--define=ENABLE_FACE_DETECTION'], language : 'vala')
- subdir('facedetect')
+
+ if get_option('face_detection_helper_bus') == 'private'
+ add_global_arguments(['--define=FACEDETECT_BUS_PRIVATE'], language : 'vala')
+ endif
+
+ if get_option('face_detection_helper')
+ subproject('shotwell-facedetect')
+ endif
endif
json_glib = dependency('json-glib-1.0')
-gdata = dependency('libgdata')
gcr = dependency('gcr-3')
gcr_ui = dependency('gcr-ui-3')
cairo = dependency('cairo')
@@ -109,20 +117,17 @@ cairo = dependency('cairo')
valac = meson.get_compiler('vala')
posix = valac.find_library('posix')
-shotwell_resources = gnome.compile_resources('shotwell-resources',
- 'org.gnome.Shotwell.gresource.xml')
-
+subdir('data')
subdir('src')
subdir('plugins')
subdir('po')
subdir('help')
-subdir('misc')
subdir('thumbnailer')
-subdir('settings-migrator')
subdir('test')
-subdir('app-icons')
+subdir('settings-migrator')
-meson.add_install_script('build-aux/meson/postinstall.py')
-if get_option('install-apport-hook')
- subdir('apport')
-endif
+gnome.post_install(
+ glib_compile_schemas: true,
+ gtk_update_icon_cache: true,
+ update_desktop_database: true,
+)