[gthumb] meson: added some extensions
- From: Paolo Bacchilega <paobac src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gthumb] meson: added some extensions
- Date: Mon, 16 Apr 2018 16:21:32 +0000 (UTC)
commit c9076761bf61e4e159cb3a8c12f897d9cba06be3
Author: Paolo Bacchilega <paobac src gnome org>
Date: Sat Oct 21 15:11:10 2017 +0200
meson: added some extensions
.gitignore | 7 ++
extensions/23hq/23hq.extension.in.in | 1 -
extensions/bookmarks/bookmarks.extension.in.in | 12 +--
extensions/bookmarks/meson.build | 37 +++++++
extensions/burn_disc/burn_disc.extension.in.in | 1 -
extensions/cairo_io/cairo_io.extension.in.in | 3 +-
extensions/cairo_io/data/meson.build | 1 +
extensions/cairo_io/data/ui/meson.build | 9 ++
extensions/cairo_io/gth-image-saver-tiff.c | 2 +-
extensions/cairo_io/meson.build | 62 +++++++++++
extensions/catalogs/catalogs.extension.in.in | 14 +--
extensions/catalogs/data/meson.build | 1 +
extensions/catalogs/data/ui/meson.build | 7 ++
extensions/catalogs/meson.build | 41 +++++++
extensions/change_date/change_date.extension.in.in | 1 -
extensions/comments/comments.extension.in.in | 11 +-
extensions/comments/data/meson.build | 1 +
extensions/comments/data/ui/meson.build | 4 +
extensions/comments/meson.build | 40 +++++++
.../contact_sheet/contact_sheet.extension.in.in | 1 -
.../convert_format/convert_format.extension.in.in | 1 -
.../desktop_background.extension.in.in | 11 +-
extensions/desktop_background/meson.build | 32 ++++++
extensions/edit_metadata/data/meson.build | 1 +
extensions/edit_metadata/data/ui/meson.build | 5 +
.../edit_metadata/edit_metadata.extension.in.in | 12 +--
extensions/edit_metadata/meson.build | 43 ++++++++
extensions/example/src/example.extension.in.in | 2 +-
extensions/exiv2_tools/exiv2-utils.cpp | 2 +-
extensions/exiv2_tools/exiv2_tools.extension.in.in | 11 +-
extensions/exiv2_tools/meson.build | 33 ++++++
.../export_tools/export_tools.extension.in.in | 3 +-
extensions/export_tools/meson.build | 32 ++++++
extensions/facebook/facebook.extension.in.in | 1 -
.../file_manager/file_manager.extension.in.in | 11 +-
extensions/file_manager/meson.build | 34 ++++++
extensions/file_tools/data/meson.build | 1 +
extensions/file_tools/data/ui/meson.build | 14 +++
extensions/file_tools/file_tools.extension.in.in | 3 +-
extensions/file_tools/gth-curve-preset.c | 2 +-
extensions/file_tools/gth-file-tool-crop.c | 2 +-
extensions/file_tools/gth-file-tool-rotate.c | 2 +-
extensions/file_tools/meson.build | 112 ++++++++++++++++++++
extensions/file_viewer/file_viewer.extension.in.in | 3 +-
extensions/file_viewer/meson.build | 30 +++++
extensions/find_duplicates/data/meson.build | 1 +
extensions/find_duplicates/data/ui/meson.build | 6 +
.../find_duplicates.extension.in.in | 11 +-
extensions/find_duplicates/meson.build | 39 +++++++
extensions/flicker/flicker.extension.in.in | 1 -
.../flicker_utils/flicker_utils.extension.in.in | 1 -
extensions/gstreamer_tools/data/meson.build | 1 +
extensions/gstreamer_tools/data/ui/meson.build | 5 +
.../gstreamer_tools.extension.in.in | 11 +-
extensions/gstreamer_tools/meson.build | 38 +++++++
.../gstreamer_utils.extension.in.in | 3 +-
extensions/gstreamer_utils/meson.build | 30 +++++
extensions/image_print/data/meson.build | 1 +
extensions/image_print/data/ui/meson.build | 5 +
extensions/image_print/image_print.extension.in.in | 11 +-
extensions/image_print/meson.build | 39 +++++++
.../image_rotation/image_rotation.extension.in.in | 11 +-
extensions/image_rotation/meson.build | 35 ++++++
extensions/image_viewer/data/meson.build | 1 +
extensions/image_viewer/data/ui/meson.build | 4 +
.../image_viewer/image_viewer.extension.in.in | 3 +-
extensions/image_viewer/meson.build | 43 ++++++++
extensions/image_viewer/resources.xml | 2 +-
extensions/importer/data/meson.build | 1 +
extensions/importer/data/ui/meson.build | 4 +
extensions/importer/importer.extension.in.in | 3 +-
extensions/importer/meson.build | 50 +++++++++
extensions/jpeg_utils/jpeg_utils.extension.in.in | 3 +-
extensions/jpeg_utils/meson.build | 42 ++++++++
extensions/list_tools/list_tools.extension.in.in | 11 +-
extensions/list_tools/meson.build | 38 +++++++
extensions/map_view/map_view.extension.in.in | 12 +--
extensions/map_view/meson.build | 30 +++++
extensions/meson.build | 76 +++++++++++++
extensions/oauth/oauth.extension.in.in | 1 -
extensions/photo_importer/meson.build | 40 +++++++
.../photo_importer/photo_importer.extension.in.in | 11 +-
extensions/picasaweb/picasaweb.extension.in.in | 1 -
extensions/raw_files/main.c | 17 +---
extensions/raw_files/meson.build | 30 +++++
extensions/raw_files/raw_files.extension.in.in | 11 +-
.../red_eye_removal.extension.in.in | 1 -
.../rename_series/rename_series.extension.in.in | 1 -
.../resize_images/resize_images.extension.in.in | 1 -
extensions/search/data/meson.build | 1 +
extensions/search/data/ui/meson.build | 4 +
extensions/search/meson.build | 40 +++++++
extensions/search/search.extension.in.in | 11 +-
extensions/selections/meson.build | 34 ++++++
extensions/selections/selections.extension.in.in | 14 +--
extensions/slideshow/data/meson.build | 1 +
extensions/slideshow/data/ui/meson.build | 4 +
extensions/slideshow/meson.build | 47 ++++++++
extensions/slideshow/slideshow.extension.in.in | 11 +-
extensions/webalbums/webalbums.extension.in.in | 1 -
gthumb/gth-extensions.c | 8 +-
gthumb/gth-extensions.h | 1 -
gthumb/meson.build | 62 +++++++----
meson.build | 17 ++--
104 files changed, 1399 insertions(+), 202 deletions(-)
---
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..898c2df
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,7 @@
+*~
+.cproject
+.project
+.settings/
+build/
+_build/
+po/gthumb.pot
diff --git a/extensions/23hq/23hq.extension.in.in b/extensions/23hq/23hq.extension.in.in
index f9ebd63..9d6d033 100644
--- a/extensions/23hq/23hq.extension.in.in
+++ b/extensions/23hq/23hq.extension.in.in
@@ -9,6 +9,5 @@ Category=Exporter
[Loader]
Type=module
-File=%LIBRARY%
API=%GTHUMB_API_VERSION%
Requires=importer;export_tools;flicker_utils
diff --git a/extensions/bookmarks/bookmarks.extension.in.in b/extensions/bookmarks/bookmarks.extension.in.in
index 7b89658..6770344 100644
--- a/extensions/bookmarks/bookmarks.extension.in.in
+++ b/extensions/bookmarks/bookmarks.extension.in.in
@@ -1,13 +1,11 @@
[Extension]
-_Name=Bookmarks
-_Description=Add bookmarks support.
-_Authors=gthumb development team
+Name=Bookmarks
+Comment=Add bookmarks support.
+Authors=gthumb development team
Copyright=Copyright © 2008-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
-URL=http://live.gnome.org/Apps/gthumb
+Version=@GTHUMB_VERSION@
Category=Browser
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
diff --git a/extensions/bookmarks/meson.build b/extensions/bookmarks/meson.build
new file mode 100644
index 0000000..5a4ee4d
--- /dev/null
+++ b/extensions/bookmarks/meson.build
@@ -0,0 +1,37 @@
+source_files = files(
+ 'actions.c',
+ 'actions.h',
+ 'callbacks.c',
+ 'callbacks.h',
+ 'dlg-bookmarks.c',
+ 'dlg-bookmarks.h',
+ 'main.c'
+)
+
+gresource_files = gnome.compile_resources('bookmarks-resources', 'resources.xml', c_name : 'gth')
+
+shared_module('bookmarks',
+ sources : [ source_files, gresource_files ],
+ dependencies : extension_common_deps,
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'bookmarks.extension.in.in',
+ output : 'bookmarks.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'bookmarks.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
diff --git a/extensions/burn_disc/burn_disc.extension.in.in b/extensions/burn_disc/burn_disc.extension.in.in
index 3f4ec77..34d08c3 100644
--- a/extensions/burn_disc/burn_disc.extension.in.in
+++ b/extensions/burn_disc/burn_disc.extension.in.in
@@ -9,6 +9,5 @@ Category=Exporter
[Loader]
Type=module
-File=%LIBRARY%
API=%GTHUMB_API_VERSION%
Requires=export_tools
diff --git a/extensions/cairo_io/cairo_io.extension.in.in b/extensions/cairo_io/cairo_io.extension.in.in
index 9cdc5a4..94076a6 100644
--- a/extensions/cairo_io/cairo_io.extension.in.in
+++ b/extensions/cairo_io/cairo_io.extension.in.in
@@ -3,6 +3,5 @@ Mandatory=true
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
After=jpeg_utils
diff --git a/extensions/cairo_io/data/meson.build b/extensions/cairo_io/data/meson.build
new file mode 100644
index 0000000..36e5b29
--- /dev/null
+++ b/extensions/cairo_io/data/meson.build
@@ -0,0 +1 @@
+subdir('ui')
diff --git a/extensions/cairo_io/data/ui/meson.build b/extensions/cairo_io/data/ui/meson.build
new file mode 100644
index 0000000..27eef9e
--- /dev/null
+++ b/extensions/cairo_io/data/ui/meson.build
@@ -0,0 +1,9 @@
+ui_files = files(
+ 'jpeg-options.ui',
+ 'png-options.ui',
+ 'save-options-preferences.ui',
+ 'tga-options.ui',
+ 'tiff-options.ui',
+ 'webp-options.ui'
+)
+install_data(ui_files, install_dir : ui_install_dir)
diff --git a/extensions/cairo_io/gth-image-saver-tiff.c b/extensions/cairo_io/gth-image-saver-tiff.c
index c7ae2fb..41a9e60 100644
--- a/extensions/cairo_io/gth-image-saver-tiff.c
+++ b/extensions/cairo_io/gth-image-saver-tiff.c
@@ -25,7 +25,7 @@
#endif /* HAVE_LIBTIFF */
#include <glib/gi18n.h>
#include <gthumb.h>
-#include "enum-types.h"
+#include "cairo-io-enum-types.h"
#include "gth-image-saver-tiff.h"
#include "preferences.h"
diff --git a/extensions/cairo_io/meson.build b/extensions/cairo_io/meson.build
new file mode 100644
index 0000000..1b64826
--- /dev/null
+++ b/extensions/cairo_io/meson.build
@@ -0,0 +1,62 @@
+source_files = files(
+ 'cairo-image-surface-jpeg.c',
+ 'cairo-image-surface-png.c',
+ 'cairo-image-surface-xcf.c',
+ 'gth-image-saver-jpeg.c',
+ 'gth-image-saver-png.c',
+ 'gth-image-saver-tga.c',
+ 'gth-image-saver-tiff.c',
+ 'preferences.c',
+ 'main.c'
+)
+
+if use_librsvg
+ source_files += files('cairo-image-surface-svg.c')
+endif
+
+if use_libwebp
+ source_files += files('cairo-image-surface-webp.c', 'gth-image-saver-webp.c')
+endif
+
+if use_libtiff
+ source_files += files('cairo-image-surface-tiff.c')
+endif
+
+enum_files = gnome.mkenums_simple('cairo-io-enum-types', sources: [ 'preferences.h' ])
+
+shared_module('cairo_io',
+ sources : [ source_files, enum_files ],
+ dependencies : [
+ extension_common_deps,
+ jpeg_deps,
+ use_libtiff ? tiff_deps : [],
+ use_librsvg ? librsvg_dep : [],
+ use_libwebp ? libwebp_dep : []
+ ],
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ link_with : jpeg_utils_mod,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'cairo_io.extension.in.in',
+ output : 'cairo_io.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'cairo_io.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# Subdirectories
+
+subdir('data')
diff --git a/extensions/catalogs/catalogs.extension.in.in b/extensions/catalogs/catalogs.extension.in.in
index c2cd90c..09fdead 100644
--- a/extensions/catalogs/catalogs.extension.in.in
+++ b/extensions/catalogs/catalogs.extension.in.in
@@ -1,14 +1,12 @@
[Extension]
-_Name=Catalogs
-_Description=Create file collections.
-_Authors=gthumb development team
+Name=Catalogs
+Comment=Create file collections.
+Authors=gthumb development team
Copyright=Copyright © 2008-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
-URL=http://live.gnome.org/Apps/gthumb
-Icon=file-catalog
+Version=@GTHUMB_VERSION@
+Icon=file-catalog-symbolic
Category=Browser
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
diff --git a/extensions/catalogs/data/meson.build b/extensions/catalogs/data/meson.build
new file mode 100644
index 0000000..36e5b29
--- /dev/null
+++ b/extensions/catalogs/data/meson.build
@@ -0,0 +1 @@
+subdir('ui')
diff --git a/extensions/catalogs/data/ui/meson.build b/extensions/catalogs/data/ui/meson.build
new file mode 100644
index 0000000..7bdd767
--- /dev/null
+++ b/extensions/catalogs/data/ui/meson.build
@@ -0,0 +1,7 @@
+ui_files = files(
+ 'add-to-catalog.ui',
+ 'catalog-properties.ui',
+ 'organize-files.ui',
+ 'organize-files-task.ui'
+)
+install_data(ui_files, install_dir : ui_install_dir)
diff --git a/extensions/catalogs/meson.build b/extensions/catalogs/meson.build
new file mode 100644
index 0000000..4be8b28
--- /dev/null
+++ b/extensions/catalogs/meson.build
@@ -0,0 +1,41 @@
+source_files = files(
+ 'actions.c',
+ 'callbacks.c',
+ 'dlg-add-to-catalog.c',
+ 'dlg-catalog-properties.c',
+ 'dlg-organize-files.c',
+ 'gth-catalog.c',
+ 'gth-file-source-catalogs.c',
+ 'gth-organize-task.c',
+ 'main.c'
+)
+
+catalogs_mod = shared_module('catalogs',
+ sources : source_files,
+ dependencies : extension_common_deps,
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'catalogs.extension.in.in',
+ output : 'catalogs.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'catalogs.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# Subdirectories
+
+subdir('data')
diff --git a/extensions/change_date/change_date.extension.in.in
b/extensions/change_date/change_date.extension.in.in
index 8a9cf67..bac3544 100644
--- a/extensions/change_date/change_date.extension.in.in
+++ b/extensions/change_date/change_date.extension.in.in
@@ -8,6 +8,5 @@ Category=List-Tool
[Loader]
Type=module
-File=%LIBRARY%
API=%GTHUMB_API_VERSION%
Requires=list_tools
diff --git a/extensions/comments/comments.extension.in.in b/extensions/comments/comments.extension.in.in
index f5f6026..5202c90 100644
--- a/extensions/comments/comments.extension.in.in
+++ b/extensions/comments/comments.extension.in.in
@@ -1,12 +1,11 @@
[Extension]
-_Name=Comments and tags
-_Description=Add comments and tags to any file type.
-_Authors=gthumb development team
+Name=Comments and tags
+Comment=Add comments and tags to any file type.
+Authors=gthumb development team
Copyright=Copyright © 2009-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
+Version=@GTHUMB_VERSION@
Category=Metadata
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
diff --git a/extensions/comments/data/meson.build b/extensions/comments/data/meson.build
new file mode 100644
index 0000000..36e5b29
--- /dev/null
+++ b/extensions/comments/data/meson.build
@@ -0,0 +1 @@
+subdir('ui')
diff --git a/extensions/comments/data/ui/meson.build b/extensions/comments/data/ui/meson.build
new file mode 100644
index 0000000..3c61eb7
--- /dev/null
+++ b/extensions/comments/data/ui/meson.build
@@ -0,0 +1,4 @@
+ui_files = files(
+ 'comments-preferences.ui'
+)
+install_data(ui_files, install_dir : ui_install_dir)
diff --git a/extensions/comments/meson.build b/extensions/comments/meson.build
new file mode 100644
index 0000000..68430e3
--- /dev/null
+++ b/extensions/comments/meson.build
@@ -0,0 +1,40 @@
+source_files = files(
+ 'actions.c',
+ 'callbacks.c',
+ 'dlg-comments-preferences.c',
+ 'gth-comment.c',
+ 'gth-import-metadata-task.c',
+ 'gth-metadata-provider-comment.c',
+ 'main.c'
+)
+
+shared_module('comments',
+ sources : source_files,
+ dependencies : [ extension_common_deps ],
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ link_with : use_exiv2 ? exiv2_tools_mod : [],
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'comments.extension.in.in',
+ output : 'comments.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'comments.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# Subdirectories
+
+subdir('data')
diff --git a/extensions/contact_sheet/contact_sheet.extension.in.in
b/extensions/contact_sheet/contact_sheet.extension.in.in
index 441fa8a..3671002 100644
--- a/extensions/contact_sheet/contact_sheet.extension.in.in
+++ b/extensions/contact_sheet/contact_sheet.extension.in.in
@@ -8,6 +8,5 @@ Category=Exporter
[Loader]
Type=module
-File=%LIBRARY%
API=%GTHUMB_API_VERSION%
Requires=export_tools
diff --git a/extensions/convert_format/convert_format.extension.in.in
b/extensions/convert_format/convert_format.extension.in.in
index 9230329..36ded39 100644
--- a/extensions/convert_format/convert_format.extension.in.in
+++ b/extensions/convert_format/convert_format.extension.in.in
@@ -8,6 +8,5 @@ Category=List-Tool
[Loader]
Type=module
-File=%LIBRARY%
API=%GTHUMB_API_VERSION%
Requires=list_tools
diff --git a/extensions/desktop_background/desktop_background.extension.in.in
b/extensions/desktop_background/desktop_background.extension.in.in
index 08994c5..d3c5314 100644
--- a/extensions/desktop_background/desktop_background.extension.in.in
+++ b/extensions/desktop_background/desktop_background.extension.in.in
@@ -1,14 +1,13 @@
[Extension]
-_Name=Desktop background
-_Description=Set the image as desktop background
-_Authors=gthumb development team
+Name=Desktop background
+Comment=Set the image as desktop background
+Authors=gthumb development team
Copyright=Copyright © 2009-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
+Version=@GTHUMB_VERSION@
Icon=desktop
Category=List-Tool
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
After=image_viewer
diff --git a/extensions/desktop_background/meson.build b/extensions/desktop_background/meson.build
new file mode 100644
index 0000000..6e00072
--- /dev/null
+++ b/extensions/desktop_background/meson.build
@@ -0,0 +1,32 @@
+source_files = files(
+ 'actions.c',
+ 'callbacks.c',
+ 'main.c'
+)
+
+shared_module('desktop_background',
+ sources : source_files,
+ dependencies : extension_common_deps,
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ link_with : image_viewer_mod,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'desktop_background.extension.in.in',
+ output : 'desktop_background.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'desktop_background.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
diff --git a/extensions/edit_metadata/data/meson.build b/extensions/edit_metadata/data/meson.build
new file mode 100644
index 0000000..fb796f4
--- /dev/null
+++ b/extensions/edit_metadata/data/meson.build
@@ -0,0 +1 @@
+subdir('ui')
\ No newline at end of file
diff --git a/extensions/edit_metadata/data/ui/meson.build b/extensions/edit_metadata/data/ui/meson.build
new file mode 100644
index 0000000..760e5f0
--- /dev/null
+++ b/extensions/edit_metadata/data/ui/meson.build
@@ -0,0 +1,5 @@
+ui_files = files(
+ 'edit-comment-page.ui',
+ 'tag-chooser.ui'
+)
+install_data(ui_files, install_dir : ui_install_dir)
diff --git a/extensions/edit_metadata/edit_metadata.extension.in.in
b/extensions/edit_metadata/edit_metadata.extension.in.in
index ccf81e1..2566b71 100644
--- a/extensions/edit_metadata/edit_metadata.extension.in.in
+++ b/extensions/edit_metadata/edit_metadata.extension.in.in
@@ -1,14 +1,12 @@
[Extension]
-_Name=Edit metadata
-_Description=Allow to edit files metadata.
-_Authors=gthumb development team
+Name=Edit metadata
+Comment=Allow to edit files metadata.
+Authors=gthumb development team
Copyright=Copyright © 2009-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
-URL=http://live.gnome.org/Apps/gthumb
+Version=@GTHUMB_VERSION@
Category=Metadata
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
After=list_tools
diff --git a/extensions/edit_metadata/meson.build b/extensions/edit_metadata/meson.build
new file mode 100644
index 0000000..be77dbd
--- /dev/null
+++ b/extensions/edit_metadata/meson.build
@@ -0,0 +1,43 @@
+source_files = files(
+ 'actions.c',
+ 'callbacks.c',
+ 'dlg-edit-metadata.c',
+ 'gth-delete-metadata-task.c',
+ 'gth-edit-comment-dialog.c',
+ 'gth-edit-general-page.c',
+ 'gth-edit-metadata-dialog.c',
+ 'gth-edit-tags-dialog.c',
+ 'gth-tag-task.c',
+ 'main.c',
+ 'utils.c'
+)
+
+edit_metadata_mod = shared_module('edit_metadata',
+ sources : source_files,
+ dependencies : extension_common_deps,
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'edit_metadata.extension.in.in',
+ output : 'edit_metadata.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'edit_metadata.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# Subdirectories
+
+subdir('data')
diff --git a/extensions/example/src/example.extension.in.in b/extensions/example/src/example.extension.in.in
index 615e11d..dfe24c4 100644
--- a/extensions/example/src/example.extension.in.in
+++ b/extensions/example/src/example.extension.in.in
@@ -5,8 +5,8 @@ Authors=gthumb development team
Copyright=Copyright © 2010 The Free Software Foundation, Inc.
Version=1.0
Category=Browser
+URL=https://www.example.com
[Loader]
Type=module
-File=%LIBRARY%
API=3.0
diff --git a/extensions/exiv2_tools/exiv2-utils.cpp b/extensions/exiv2_tools/exiv2-utils.cpp
index b4a8fa5..a1a16ec 100644
--- a/extensions/exiv2_tools/exiv2-utils.cpp
+++ b/extensions/exiv2_tools/exiv2-utils.cpp
@@ -1167,7 +1167,7 @@ exiv2_write_metadata_private (Exiv2::Image::AutoPtr image,
if (g_file_info_get_attribute_boolean (info, "gth::file::image-changed")) {
if (software_name == NULL)
- software_name = g_strconcat (g_get_application_name (), " ", VERSION, NULL);
+ software_name = g_strconcat (g_get_application_name (), " ", PACKAGE_VERSION, NULL);
ed["Exif.Image.ProcessingSoftware"] = software_name;
}
diff --git a/extensions/exiv2_tools/exiv2_tools.extension.in.in
b/extensions/exiv2_tools/exiv2_tools.extension.in.in
index 60a88b1..a549286 100644
--- a/extensions/exiv2_tools/exiv2_tools.extension.in.in
+++ b/extensions/exiv2_tools/exiv2_tools.extension.in.in
@@ -1,13 +1,12 @@
[Extension]
-_Name=EXIF, IPTC, XMP support
-_Description=Read and write exif, iptc and xmp metadata.
-_Authors=gthumb development team
+Name=EXIF, IPTC, XMP support
+Comment=Read and write exif, iptc and xmp metadata.
+Authors=gthumb development team
Copyright=Copyright © 2009-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
+Version=@GTHUMB_VERSION@
Category=Metadata
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
After=image_rotation;comments;edit_metadata
diff --git a/extensions/exiv2_tools/meson.build b/extensions/exiv2_tools/meson.build
new file mode 100644
index 0000000..71c5e82
--- /dev/null
+++ b/extensions/exiv2_tools/meson.build
@@ -0,0 +1,33 @@
+source_files = files(
+ 'exiv2-utils.cpp',
+ 'gth-edit-iptc-page.c',
+ 'gth-metadata-provider-exiv2.c',
+ 'main.c'
+)
+
+exiv2_tools_mod = shared_module('exiv2_tools',
+ sources : source_files,
+ dependencies : [ extension_common_deps, exiv2_dep ],
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ link_with : [ edit_metadata_mod ],
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'exiv2_tools.extension.in.in',
+ output : 'exiv2_tools.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'exiv2_tools.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
diff --git a/extensions/export_tools/export_tools.extension.in.in
b/extensions/export_tools/export_tools.extension.in.in
index ad8b8db..d6f2b8c 100644
--- a/extensions/export_tools/export_tools.extension.in.in
+++ b/extensions/export_tools/export_tools.extension.in.in
@@ -3,5 +3,4 @@ Hidden=true
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
diff --git a/extensions/export_tools/meson.build b/extensions/export_tools/meson.build
new file mode 100644
index 0000000..512dff2
--- /dev/null
+++ b/extensions/export_tools/meson.build
@@ -0,0 +1,32 @@
+source_files = files(
+ 'callbacks.c',
+ 'main.c'
+)
+
+gresource_files = gnome.compile_resources('export-tools-resources', 'resources.xml', c_name : 'gth')
+
+export_tools_mod = shared_module('export_tools',
+ sources : [ source_files, gresource_files ],
+ dependencies : extension_common_deps,
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'export_tools.extension.in.in',
+ output : 'export_tools.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'export_tools.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
diff --git a/extensions/facebook/facebook.extension.in.in b/extensions/facebook/facebook.extension.in.in
index 65e89e9..5bd2b0b 100644
--- a/extensions/facebook/facebook.extension.in.in
+++ b/extensions/facebook/facebook.extension.in.in
@@ -9,6 +9,5 @@ Category=Exporter
[Loader]
Type=module
-File=%LIBRARY%
API=%GTHUMB_API_VERSION%
Requires=photo_importer;export_tools;oauth
diff --git a/extensions/file_manager/file_manager.extension.in.in
b/extensions/file_manager/file_manager.extension.in.in
index dc97acb..732de89 100644
--- a/extensions/file_manager/file_manager.extension.in.in
+++ b/extensions/file_manager/file_manager.extension.in.in
@@ -1,13 +1,12 @@
[Extension]
-_Name=File manager
-_Description=File manager operations.
-_Authors=gthumb development team
+Name=File manager
+Comment=File manager operations.
+Authors=gthumb development team
Copyright=Copyright © 2009-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
+Version=@GTHUMB_VERSION@
Icon=system-file-manager
Category=Browser
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
diff --git a/extensions/file_manager/meson.build b/extensions/file_manager/meson.build
new file mode 100644
index 0000000..c055b89
--- /dev/null
+++ b/extensions/file_manager/meson.build
@@ -0,0 +1,34 @@
+source_files = files(
+ 'actions.c',
+ 'callbacks.c',
+ 'gth-copy-task.c',
+ 'gth-duplicate-task.c',
+ 'gth-reorder-task.c',
+ 'main.c'
+)
+
+shared_module('file_manager',
+ sources : source_files,
+ dependencies : extension_common_deps,
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'file_manager.extension.in.in',
+ output : 'file_manager.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'file_manager.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
diff --git a/extensions/file_tools/data/meson.build b/extensions/file_tools/data/meson.build
new file mode 100644
index 0000000..36e5b29
--- /dev/null
+++ b/extensions/file_tools/data/meson.build
@@ -0,0 +1 @@
+subdir('ui')
diff --git a/extensions/file_tools/data/ui/meson.build b/extensions/file_tools/data/ui/meson.build
new file mode 100644
index 0000000..2d62e9e
--- /dev/null
+++ b/extensions/file_tools/data/ui/meson.build
@@ -0,0 +1,14 @@
+ui_files = files(
+ 'adjust-colors-options.ui',
+ 'adjust-contrast-options.ui',
+ 'color-picker-options.ui',
+ 'crop-options.ui',
+ 'curve-preset-editor.ui',
+ 'curves-options.ui',
+ 'effects-options.ui',
+ 'grayscale-options.ui',
+ 'resize-options.ui',
+ 'rotate-options.ui',
+ 'sharpen-options.ui'
+)
+install_data(ui_files, install_dir : ui_install_dir)
diff --git a/extensions/file_tools/file_tools.extension.in.in
b/extensions/file_tools/file_tools.extension.in.in
index 168f639..3ea260c 100644
--- a/extensions/file_tools/file_tools.extension.in.in
+++ b/extensions/file_tools/file_tools.extension.in.in
@@ -3,6 +3,5 @@ Mandatory=true
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
Requires=image_viewer
diff --git a/extensions/file_tools/gth-curve-preset.c b/extensions/file_tools/gth-curve-preset.c
index 18c2058..7e2b125 100644
--- a/extensions/file_tools/gth-curve-preset.c
+++ b/extensions/file_tools/gth-curve-preset.c
@@ -20,7 +20,7 @@
*/
#include <config.h>
-#include "enum-types.h"
+#include "file-tools-enum-types.h"
#include "gth-curve-preset.h"
diff --git a/extensions/file_tools/gth-file-tool-crop.c b/extensions/file_tools/gth-file-tool-crop.c
index 5de968e..8922023 100644
--- a/extensions/file_tools/gth-file-tool-crop.c
+++ b/extensions/file_tools/gth-file-tool-crop.c
@@ -22,7 +22,7 @@
#include <config.h>
#include <gthumb.h>
#include <extensions/image_viewer/image-viewer.h>
-#include "enum-types.h"
+#include "file-tools-enum-types.h"
#include "gth-file-tool-crop.h"
#include "preferences.h"
diff --git a/extensions/file_tools/gth-file-tool-rotate.c b/extensions/file_tools/gth-file-tool-rotate.c
index fdffe7d..a388450 100644
--- a/extensions/file_tools/gth-file-tool-rotate.c
+++ b/extensions/file_tools/gth-file-tool-rotate.c
@@ -24,7 +24,7 @@
#include <gthumb.h>
#include <extensions/image_viewer/image-viewer.h>
#include "cairo-rotate.h"
-#include "enum-types.h"
+#include "file-tools-enum-types.h"
#include "gth-file-tool-rotate.h"
#include "gth-image-line-tool.h"
#include "gth-image-rotator.h"
diff --git a/extensions/file_tools/meson.build b/extensions/file_tools/meson.build
new file mode 100644
index 0000000..b91ca6b
--- /dev/null
+++ b/extensions/file_tools/meson.build
@@ -0,0 +1,112 @@
+
+header_files = [
+ 'cairo-blur.h',
+ 'cairo-effects.h',
+ 'cairo-rotate.h',
+ 'gth-curve.h',
+ 'gth-curve-editor.h',
+ 'gth-curve-preset.h',
+ 'gth-curve-preset-editor-dialog.h',
+ 'gth-file-tool-adjust-colors.h',
+ 'gth-file-tool-adjust-contrast.h',
+ 'gth-file-tool-color-picker.h',
+ 'gth-file-tool-crop.h',
+ 'gth-file-tool-curves.h',
+ 'gth-file-tool-effects.h',
+ 'gth-file-tool-flip.h',
+ 'gth-file-tool-grayscale.h',
+ 'gth-file-tool-lomo.h',
+ 'gth-file-tool-mirror.h',
+ 'gth-file-tool-negative.h',
+ 'gth-file-tool-redo.h',
+ 'gth-file-tool-resize.h',
+ 'gth-file-tool-rotate.h',
+ 'gth-file-tool-rotate-left.h',
+ 'gth-file-tool-rotate-right.h',
+ 'gth-file-tool-rotate.h',
+ 'gth-file-tool-save.h',
+ 'gth-file-tool-save-as.h',
+ 'gth-file-tool-sharpen.h',
+ 'gth-file-tool-undo.h',
+ 'gth-image-line-tool.h',
+ 'gth-image-rotator.h',
+ 'gth-points.h',
+ 'gth-preview-tool.h',
+ 'preferences.h'
+]
+
+enum_files = gnome.mkenums_simple('file-tools-enum-types', sources: header_files)
+
+source_files = files(
+ 'cairo-blur.c',
+ 'cairo-effects.c',
+ 'cairo-rotate.c',
+ 'callbacks.c',
+ 'callbacks.h',
+ 'gth-curve.c',
+ 'gth-curve-editor.c',
+ 'gth-curve-preset.c',
+ 'gth-curve-preset-editor-dialog.c',
+ 'gth-file-tool-adjust-colors.c',
+ 'gth-file-tool-adjust-contrast.c',
+ 'gth-file-tool-color-picker.c',
+ 'gth-file-tool-crop.c',
+ 'gth-file-tool-curves.c',
+ 'gth-file-tool-effects.c',
+ 'gth-file-tool-flip.c',
+ 'gth-file-tool-grayscale.c',
+ 'gth-file-tool-lomo.c',
+ 'gth-file-tool-mirror.c',
+ 'gth-file-tool-negative.c',
+ 'gth-file-tool-redo.c',
+ 'gth-file-tool-resize.c',
+ 'gth-file-tool-rotate.c',
+ 'gth-file-tool-rotate-left.c',
+ 'gth-file-tool-rotate-right.c',
+ 'gth-file-tool-save.c',
+ 'gth-file-tool-save-as.c',
+ 'gth-file-tool-sharpen.c',
+ 'gth-file-tool-undo.c',
+ 'gth-image-line-tool.c',
+ 'gth-image-rotator.c',
+ 'gth-points.c',
+ 'gth-preview-tool.c',
+ 'main.c'
+)
+
+file_tools_mod = shared_module('file_tools',
+ sources : [ source_files, enum_files ],
+ dependencies : [
+ extension_common_deps,
+ jpeg_deps,
+ use_libtiff ? tiff_deps : [],
+ use_librsvg ? librsvg_dep : [],
+ use_libwebp ? libwebp_dep : []
+ ],
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ link_with : image_viewer_mod,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'file_tools.extension.in.in',
+ output : 'file_tools.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'file_tools.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# Subdirectories
+
+subdir('data')
diff --git a/extensions/file_viewer/file_viewer.extension.in.in
b/extensions/file_viewer/file_viewer.extension.in.in
index f53d1be..a7fbc81 100644
--- a/extensions/file_viewer/file_viewer.extension.in.in
+++ b/extensions/file_viewer/file_viewer.extension.in.in
@@ -3,5 +3,4 @@ Mandatory=true
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
diff --git a/extensions/file_viewer/meson.build b/extensions/file_viewer/meson.build
new file mode 100644
index 0000000..f4b4696
--- /dev/null
+++ b/extensions/file_viewer/meson.build
@@ -0,0 +1,30 @@
+source_files = files(
+ 'gth-file-viewer-page.c',
+ 'main.c'
+)
+
+shared_module('file_viewer',
+ sources : [ source_files ],
+ dependencies : extension_common_deps,
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'file_viewer.extension.in.in',
+ output : 'file_viewer.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'file_viewer.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
diff --git a/extensions/find_duplicates/data/meson.build b/extensions/find_duplicates/data/meson.build
new file mode 100644
index 0000000..36e5b29
--- /dev/null
+++ b/extensions/find_duplicates/data/meson.build
@@ -0,0 +1 @@
+subdir('ui')
diff --git a/extensions/find_duplicates/data/ui/meson.build b/extensions/find_duplicates/data/ui/meson.build
new file mode 100644
index 0000000..50bd63f
--- /dev/null
+++ b/extensions/find_duplicates/data/ui/meson.build
@@ -0,0 +1,6 @@
+ui_files = files(
+ 'find-duplicates.ui',
+ 'find-duplicates-choose-folders.ui',
+ 'find-duplicates-dialog.ui'
+)
+install_data(ui_files, install_dir : ui_install_dir)
diff --git a/extensions/find_duplicates/find_duplicates.extension.in.in
b/extensions/find_duplicates/find_duplicates.extension.in.in
index f4fde03..e89c3d6 100644
--- a/extensions/find_duplicates/find_duplicates.extension.in.in
+++ b/extensions/find_duplicates/find_duplicates.extension.in.in
@@ -1,13 +1,12 @@
[Extension]
-_Name=Find Duplicates
-_Description=Find duplicated files.
-_Authors=gthumb development team
+Name=Find Duplicates
+Comment=Find duplicated files.
+Authors=gthumb development team
Copyright=Copyright © 2010-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
+Version=@GTHUMB_VERSION@
Category=Browser
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
Requires=catalogs
diff --git a/extensions/find_duplicates/meson.build b/extensions/find_duplicates/meson.build
new file mode 100644
index 0000000..4871a4b
--- /dev/null
+++ b/extensions/find_duplicates/meson.build
@@ -0,0 +1,39 @@
+source_files = files(
+ 'actions.c',
+ 'callbacks.c',
+ 'dlg-find-duplicates.c',
+ 'gth-find-duplicates.c',
+ 'gth-folder-chooser-dialog.c',
+ 'main.c'
+)
+
+shared_module('find_duplicates',
+ sources : source_files,
+ dependencies : extension_common_deps,
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ link_with : catalogs_mod,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'find_duplicates.extension.in.in',
+ output : 'find_duplicates.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'find_duplicates.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# Subdirectories
+
+subdir('data')
diff --git a/extensions/flicker/flicker.extension.in.in b/extensions/flicker/flicker.extension.in.in
index 98ec10a..3565d24 100644
--- a/extensions/flicker/flicker.extension.in.in
+++ b/extensions/flicker/flicker.extension.in.in
@@ -9,6 +9,5 @@ Category=Exporter
[Loader]
Type=module
-File=%LIBRARY%
API=%GTHUMB_API_VERSION%
Requires=photo_importer;export_tools;flicker_utils
diff --git a/extensions/flicker_utils/flicker_utils.extension.in.in
b/extensions/flicker_utils/flicker_utils.extension.in.in
index 89c7cf6..edba346 100644
--- a/extensions/flicker_utils/flicker_utils.extension.in.in
+++ b/extensions/flicker_utils/flicker_utils.extension.in.in
@@ -3,6 +3,5 @@ Hidden=true
[Loader]
Type=module
-File=%LIBRARY%
API=%GTHUMB_API_VERSION%
Requires=importer;export_tools;oauth
diff --git a/extensions/gstreamer_tools/data/meson.build b/extensions/gstreamer_tools/data/meson.build
new file mode 100644
index 0000000..fb796f4
--- /dev/null
+++ b/extensions/gstreamer_tools/data/meson.build
@@ -0,0 +1 @@
+subdir('ui')
\ No newline at end of file
diff --git a/extensions/gstreamer_tools/data/ui/meson.build b/extensions/gstreamer_tools/data/ui/meson.build
new file mode 100644
index 0000000..c546ed5
--- /dev/null
+++ b/extensions/gstreamer_tools/data/ui/meson.build
@@ -0,0 +1,5 @@
+ui_files = files(
+ 'mediabar.ui',
+ 'media-viewer-preferences.ui'
+)
+install_data(ui_files, install_dir : ui_install_dir)
diff --git a/extensions/gstreamer_tools/gstreamer_tools.extension.in.in
b/extensions/gstreamer_tools/gstreamer_tools.extension.in.in
index db66e31..4683eb2 100644
--- a/extensions/gstreamer_tools/gstreamer_tools.extension.in.in
+++ b/extensions/gstreamer_tools/gstreamer_tools.extension.in.in
@@ -1,14 +1,13 @@
[Extension]
-_Name=Audio/Video support
-_Description=Play audio and video files.
-_Authors=gthumb development team
+Name=Audio/Video support
+Comment=Play audio and video files.
+Authors=gthumb development team
Copyright=Copyright © 2009-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
+Version=@GTHUMB_VERSION@
Icon=video-x-generic
Category=Viewer
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
Requires=gstreamer_utils
diff --git a/extensions/gstreamer_tools/meson.build b/extensions/gstreamer_tools/meson.build
new file mode 100644
index 0000000..0f4a91c
--- /dev/null
+++ b/extensions/gstreamer_tools/meson.build
@@ -0,0 +1,38 @@
+source_files = files(
+ 'actions.c',
+ 'dlg-media-viewer-preferences.c',
+ 'gth-media-viewer-page.c',
+ 'gth-metadata-provider-gstreamer.c',
+ 'main.c'
+)
+
+shared_module('gstreamer_tools',
+ sources : source_files,
+ dependencies : [ extension_common_deps, gstreamer_deps ],
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ link_with: gstreamer_utils_mod,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'gstreamer_tools.extension.in.in',
+ output : 'gstreamer_tools.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'gstreamer_tools.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# Subdirectories
+
+subdir('data')
diff --git a/extensions/gstreamer_utils/gstreamer_utils.extension.in.in
b/extensions/gstreamer_utils/gstreamer_utils.extension.in.in
index ad8b8db..d6f2b8c 100644
--- a/extensions/gstreamer_utils/gstreamer_utils.extension.in.in
+++ b/extensions/gstreamer_utils/gstreamer_utils.extension.in.in
@@ -3,5 +3,4 @@ Hidden=true
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
diff --git a/extensions/gstreamer_utils/meson.build b/extensions/gstreamer_utils/meson.build
new file mode 100644
index 0000000..79d18f1
--- /dev/null
+++ b/extensions/gstreamer_utils/meson.build
@@ -0,0 +1,30 @@
+source_files = files(
+ 'gstreamer-utils.c',
+ 'main.c'
+)
+
+gstreamer_utils_mod = shared_module('gstreamer_utils',
+ sources : source_files,
+ dependencies : [ extension_common_deps, gstreamer_deps ],
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'gstreamer_utils.extension.in.in',
+ output : 'gstreamer_utils.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'gstreamer_utils.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
diff --git a/extensions/image_print/data/meson.build b/extensions/image_print/data/meson.build
new file mode 100644
index 0000000..36e5b29
--- /dev/null
+++ b/extensions/image_print/data/meson.build
@@ -0,0 +1 @@
+subdir('ui')
diff --git a/extensions/image_print/data/ui/meson.build b/extensions/image_print/data/ui/meson.build
new file mode 100644
index 0000000..d8e3103
--- /dev/null
+++ b/extensions/image_print/data/ui/meson.build
@@ -0,0 +1,5 @@
+ui_files = files(
+ 'print-layout.ui',
+ 'print-preferences.ui'
+)
+install_data(ui_files, install_dir : ui_install_dir)
diff --git a/extensions/image_print/image_print.extension.in.in
b/extensions/image_print/image_print.extension.in.in
index a0263fa..340ee68 100644
--- a/extensions/image_print/image_print.extension.in.in
+++ b/extensions/image_print/image_print.extension.in.in
@@ -1,13 +1,12 @@
[Extension]
-_Name=Image print
-_Description=Allow to print images choosing the page layout.
-_Authors=gthumb development team
+Name=Image print
+Comment=Allow to print images choosing the page layout.
+Authors=gthumb development team
Copyright=Copyright © 2009-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
+Version=@GTHUMB_VERSION@
Icon=document-print
Category=List-Tool
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
diff --git a/extensions/image_print/meson.build b/extensions/image_print/meson.build
new file mode 100644
index 0000000..6a728d2
--- /dev/null
+++ b/extensions/image_print/meson.build
@@ -0,0 +1,39 @@
+source_files = files(
+ 'actions.c',
+ 'callbacks.c',
+ 'gth-image-info.c',
+ 'gth-image-print-job.c',
+ 'gth-load-image-info-task.c',
+ 'preferences.c',
+ 'main.c'
+)
+
+shared_module('image_print',
+ sources : source_files,
+ dependencies : extension_common_deps,
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'image_print.extension.in.in',
+ output : 'image_print.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'image_print.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# Subdirectories
+
+subdir('data')
diff --git a/extensions/image_rotation/image_rotation.extension.in.in
b/extensions/image_rotation/image_rotation.extension.in.in
index 70bbfc6..a71fd96 100644
--- a/extensions/image_rotation/image_rotation.extension.in.in
+++ b/extensions/image_rotation/image_rotation.extension.in.in
@@ -1,13 +1,12 @@
[Extension]
-_Name=Image rotation
-_Description=Rotate images without data loss.
-_Authors=gthumb development team
+Name=Image rotation
+Comment=Rotate images without data loss.
+Authors=gthumb development team
Copyright=Copyright © 2009-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
+Version=@GTHUMB_VERSION@
Category=List-Tool
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
Requires=jpeg_utils;list_tools
diff --git a/extensions/image_rotation/meson.build b/extensions/image_rotation/meson.build
new file mode 100644
index 0000000..42b0a45
--- /dev/null
+++ b/extensions/image_rotation/meson.build
@@ -0,0 +1,35 @@
+source_files = files(
+ 'actions.c',
+ 'callbacks.c',
+ 'gth-reset-orientation-task.c',
+ 'gth-transform-task.c',
+ 'main.c',
+ 'rotation-utils.c'
+)
+
+image_rotation_mod = shared_module('image_rotation',
+ sources : source_files,
+ dependencies : [ common_deps, jpeg_deps ],
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ link_with : jpeg_utils_mod,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'image_rotation.extension.in.in',
+ output : 'image_rotation.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'image_rotation.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
diff --git a/extensions/image_viewer/data/meson.build b/extensions/image_viewer/data/meson.build
new file mode 100644
index 0000000..fb796f4
--- /dev/null
+++ b/extensions/image_viewer/data/meson.build
@@ -0,0 +1 @@
+subdir('ui')
\ No newline at end of file
diff --git a/extensions/image_viewer/data/ui/meson.build b/extensions/image_viewer/data/ui/meson.build
new file mode 100644
index 0000000..8997c5d
--- /dev/null
+++ b/extensions/image_viewer/data/ui/meson.build
@@ -0,0 +1,4 @@
+ui_files = files(
+ 'image-viewer-preferences.ui'
+)
+install_data(ui_files, install_dir : ui_install_dir)
diff --git a/extensions/image_viewer/image_viewer.extension.in.in
b/extensions/image_viewer/image_viewer.extension.in.in
index b409f0e..45ab90d 100644
--- a/extensions/image_viewer/image_viewer.extension.in.in
+++ b/extensions/image_viewer/image_viewer.extension.in.in
@@ -3,6 +3,5 @@ Mandatory=true
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
After=file_viewer;jpeg_utils
diff --git a/extensions/image_viewer/meson.build b/extensions/image_viewer/meson.build
new file mode 100644
index 0000000..0d6ade7
--- /dev/null
+++ b/extensions/image_viewer/meson.build
@@ -0,0 +1,43 @@
+source_files = files(
+ 'actions.c',
+ 'gth-image-histogram.c',
+ 'gth-image-viewer-page.c',
+ 'gth-image-viewer-page-tool.c',
+ 'gth-image-viewer-task.c',
+ 'gth-metadata-provider-image.c',
+ 'main.c',
+ 'preferences.c'
+)
+
+gresource_files = gnome.compile_resources('image-viewer-resources', 'resources.xml', c_name : 'gth')
+
+image_viewer_mod = shared_module('image_viewer',
+ sources : [ source_files, gresource_files ],
+ dependencies : extension_common_deps,
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ link_with : jpeg_utils_mod,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'image_viewer.extension.in.in',
+ output : 'image_viewer.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'image_viewer.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# Subdirectories
+
+subdir('data')
diff --git a/extensions/image_viewer/resources.xml b/extensions/image_viewer/resources.xml
index de1f5df..459c711 100644
--- a/extensions/image_viewer/resources.xml
+++ b/extensions/image_viewer/resources.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<gresources>
- <gresource prefix="/org/gnome/gThumb/image_viewer">
+ <gresource prefix="/org/gnome/gThumb/image_viewer">
<file compressed="true">data/ui/toolbar-zoom-menu.ui</file>
</gresource>
</gresources>
diff --git a/extensions/importer/data/meson.build b/extensions/importer/data/meson.build
new file mode 100644
index 0000000..36e5b29
--- /dev/null
+++ b/extensions/importer/data/meson.build
@@ -0,0 +1 @@
+subdir('ui')
diff --git a/extensions/importer/data/ui/meson.build b/extensions/importer/data/ui/meson.build
new file mode 100644
index 0000000..d82e226
--- /dev/null
+++ b/extensions/importer/data/ui/meson.build
@@ -0,0 +1,4 @@
+ui_files = files(
+ 'import-preferences.ui'
+)
+install_data(ui_files, install_dir : ui_install_dir)
\ No newline at end of file
diff --git a/extensions/importer/importer.extension.in.in b/extensions/importer/importer.extension.in.in
index 8c34ed6..3f04ae8 100644
--- a/extensions/importer/importer.extension.in.in
+++ b/extensions/importer/importer.extension.in.in
@@ -3,6 +3,5 @@ Hidden=true
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
After=catalogs
diff --git a/extensions/importer/meson.build b/extensions/importer/meson.build
new file mode 100644
index 0000000..8e2514f
--- /dev/null
+++ b/extensions/importer/meson.build
@@ -0,0 +1,50 @@
+source_files = files(
+ 'gth-import-destination-button.c',
+ 'gth-import-preferences-dialog.c',
+ 'gth-import-task.c',
+ 'main.c',
+ 'utils.c'
+)
+
+header_files = [
+ 'gth-import-destination-button.h',
+ 'gth-import-preferences-dialog.h',
+ 'gth-import-task.h',
+ 'preferences.h',
+ 'utils.h'
+]
+
+enum_files = gnome.mkenums_simple('gth-import-enum-types', sources: header_files)
+
+importer_mod = shared_module('importer',
+ sources : [ source_files, enum_files ],
+ dependencies : [ extension_common_deps, jpeg_deps ],
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ link_with : [
+ catalogs_mod,
+ image_rotation_mod,
+ use_exiv2 ? exiv2_tools_mod : []
+ ],
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'importer.extension.in.in',
+ output : 'importer.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'importer.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+subdir('data')
diff --git a/extensions/jpeg_utils/jpeg_utils.extension.in.in
b/extensions/jpeg_utils/jpeg_utils.extension.in.in
index f53d1be..a7fbc81 100644
--- a/extensions/jpeg_utils/jpeg_utils.extension.in.in
+++ b/extensions/jpeg_utils/jpeg_utils.extension.in.in
@@ -3,5 +3,4 @@ Mandatory=true
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
diff --git a/extensions/jpeg_utils/meson.build b/extensions/jpeg_utils/meson.build
new file mode 100644
index 0000000..35d7596
--- /dev/null
+++ b/extensions/jpeg_utils/meson.build
@@ -0,0 +1,42 @@
+source_files = files(
+ 'jmemorydest.c',
+ 'jmemorysrc.c',
+ 'jpeg-info.c',
+ 'jpegtran.c',
+ 'main.c'
+)
+
+if have_libjpeg_80
+ source_files += files('transupp-80.c')
+else
+ source_files += files('transupp-62.c')
+endif
+
+jpeg_utils_mod = shared_module('jpeg_utils',
+ sources : source_files,
+ dependencies : [
+ extension_common_deps,
+ jpeg_deps
+ ],
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'jpeg_utils.extension.in.in',
+ output : 'jpeg_utils.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'jpeg_utils.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
diff --git a/extensions/list_tools/list_tools.extension.in.in
b/extensions/list_tools/list_tools.extension.in.in
index 206c411..ba4656c 100644
--- a/extensions/list_tools/list_tools.extension.in.in
+++ b/extensions/list_tools/list_tools.extension.in.in
@@ -1,13 +1,12 @@
[Extension]
-_Name=File list tools
-_Description=Scripting and batch manipulation of files.
-_Authors=gthumb development team
+Name=File list tools
+Comment=Scripting and batch manipulation of files.
+Authors=gthumb development team
Copyright=Copyright © 2009-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
+Version=@GTHUMB_VERSION@
Icon=applications-engineering
Category=List-Tool
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
diff --git a/extensions/list_tools/meson.build b/extensions/list_tools/meson.build
new file mode 100644
index 0000000..609ccd2
--- /dev/null
+++ b/extensions/list_tools/meson.build
@@ -0,0 +1,38 @@
+source_files = files(
+ 'actions.c',
+ 'callbacks.c',
+ 'dlg-personalize-scripts.c',
+ 'gth-script.c',
+ 'gth-script-editor-dialog.c',
+ 'gth-script-file.c',
+ 'gth-script-task.c',
+ 'main.c'
+)
+
+gresource_files = gnome.compile_resources('list-tools-resources', 'resources.xml', c_name : 'gth')
+
+shared_module('list_tools',
+ sources : [ source_files, gresource_files ],
+ dependencies : extension_common_deps,
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'list_tools.extension.in.in',
+ output : 'list_tools.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'list_tools.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
diff --git a/extensions/map_view/map_view.extension.in.in b/extensions/map_view/map_view.extension.in.in
index 4053697..19823f7 100644
--- a/extensions/map_view/map_view.extension.in.in
+++ b/extensions/map_view/map_view.extension.in.in
@@ -1,13 +1,11 @@
[Extension]
-_Name=Map
-_Description=View the photo position on the map
-_Authors=gthumb development team
+Name=Map
+Comment=View the photo position on the map
+Authors=gthumb development team
Copyright=Copyright © 2011-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
-Icon=map
+Version=@GTHUMB_VERSION@
Category=Viewer
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
diff --git a/extensions/map_view/meson.build b/extensions/map_view/meson.build
new file mode 100644
index 0000000..1310bc8
--- /dev/null
+++ b/extensions/map_view/meson.build
@@ -0,0 +1,30 @@
+source_files = files(
+ 'gth-map-view.c',
+ 'main.c'
+)
+
+shared_module('map_view',
+ sources : source_files,
+ dependencies : [ extension_common_deps, libchamplain_deps ],
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'map_view.extension.in.in',
+ output : 'map_view.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'map_view.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
diff --git a/extensions/meson.build b/extensions/meson.build
new file mode 100644
index 0000000..7346c18
--- /dev/null
+++ b/extensions/meson.build
@@ -0,0 +1,76 @@
+extension_data = configuration_data()
+extension_data.set('GTHUMB_VERSION', meson.project_version())
+extension_data.set('GTHUMB_API_VERSION', api_version)
+
+extension_common_deps = [ common_deps, gthumb_h_dep ]
+
+subdir('file_viewer')
+subdir('catalogs')
+subdir('edit_metadata')
+if use_exiv2
+ subdir('exiv2_tools')
+endif
+
+# after exiv2
+subdir('comments')
+
+# jpeg tools
+subdir('jpeg_utils')
+subdir('cairo_io')
+subdir('image_viewer')
+subdir('image_rotation')
+subdir('importer')
+
+# list tools
+subdir('list_tools')
+#subdir('change_date')
+#subdir('convert_format')
+#subdir('rename_series')
+#subdir('resize_images')
+
+# importers
+subdir('photo_importer')
+
+# exporters
+subdir('export_tools')
+#subdir('burn_disc')
+#subdir('contact_sheet')
+if with_webservices
+ #subdir('oauth')
+ #subdir('facebook')
+
+ # flickr exporters
+ #subdir('flicker_utils')
+ #subdir('23hq')
+ #subdir('flicker')
+
+ #subdir('photobucket')
+ #subdir('picasaweb')
+endif
+if with_webalbums
+ #subdir('webalbums')
+endif
+
+# file tools
+subdir('file_tools')
+#subdir('red_eye_removal')
+
+# other tools
+subdir('bookmarks')
+subdir('file_manager')
+if use_gstreamer
+ subdir('gstreamer_utils')
+ subdir('gstreamer_tools')
+endif
+subdir('image_print')
+if use_libchamplain
+ subdir('map_view')
+endif
+if use_libraw
+ subdir('raw_files')
+endif
+subdir('search')
+subdir('selections')
+subdir('slideshow')
+subdir('desktop_background')
+subdir('find_duplicates')
diff --git a/extensions/oauth/oauth.extension.in.in b/extensions/oauth/oauth.extension.in.in
index ad8b8db..1beafb9 100644
--- a/extensions/oauth/oauth.extension.in.in
+++ b/extensions/oauth/oauth.extension.in.in
@@ -3,5 +3,4 @@ Hidden=true
[Loader]
Type=module
-File=%LIBRARY%
API=%GTHUMB_API_VERSION%
diff --git a/extensions/photo_importer/meson.build b/extensions/photo_importer/meson.build
new file mode 100644
index 0000000..1c21d07
--- /dev/null
+++ b/extensions/photo_importer/meson.build
@@ -0,0 +1,40 @@
+source_files = files(
+ 'actions.c',
+ 'callbacks.c',
+ 'dlg-photo-importer.c',
+ 'dlg-photo-importer-preferences.c',
+ 'main.c'
+)
+
+gresource_files = gnome.compile_resources('photo-importer-resources', 'resources.xml', c_name : 'gth')
+
+shared_module('photo_importer',
+ sources : [ source_files, gresource_files ],
+ dependencies : extension_common_deps,
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ link_with : [
+ catalogs_mod,
+ importer_mod,
+ image_rotation_mod,
+ ],
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'photo_importer.extension.in.in',
+ output : 'photo_importer.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'photo_importer.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
diff --git a/extensions/photo_importer/photo_importer.extension.in.in
b/extensions/photo_importer/photo_importer.extension.in.in
index 0d16b34..9033270 100644
--- a/extensions/photo_importer/photo_importer.extension.in.in
+++ b/extensions/photo_importer/photo_importer.extension.in.in
@@ -1,14 +1,13 @@
[Extension]
-_Name=Import photos
-_Description=Import photos from removable devices.
-_Authors=gthumb development team
+Name=Import photos
+Comment=Import photos from removable devices.
+Authors=gthumb development team
Copyright=Copyright © 2009-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
+Version=@GTHUMB_VERSION@
Icon=camera-photo
Category=Importer
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
Requires=importer
diff --git a/extensions/picasaweb/picasaweb.extension.in.in b/extensions/picasaweb/picasaweb.extension.in.in
index 8d3d7b3..324fcbb 100644
--- a/extensions/picasaweb/picasaweb.extension.in.in
+++ b/extensions/picasaweb/picasaweb.extension.in.in
@@ -9,6 +9,5 @@ Category=Exporter
[Loader]
Type=module
-File=%LIBRARY%
API=%GTHUMB_API_VERSION%
Requires=importer;export_tools;oauth
diff --git a/extensions/raw_files/main.c b/extensions/raw_files/main.c
index 9c55e72..e58b299 100644
--- a/extensions/raw_files/main.c
+++ b/extensions/raw_files/main.c
@@ -23,15 +23,10 @@
#include <config.h>
#include <glib.h>
#include <gthumb.h>
-#include "main.h"
-
-
-#ifdef HAVE_LIBRAW
-
-
#include <cairo.h>
#include <gtk/gtk.h>
#include <libraw.h>
+#include "main.h"
#include "gth-metadata-provider-raw.h"
@@ -433,16 +428,6 @@ gthumb_extension_activate (void)
}
-#else
-
-G_MODULE_EXPORT void
-gthumb_extension_activate (void)
-{
-}
-
-#endif
-
-
G_MODULE_EXPORT void
gthumb_extension_deactivate (void)
{
diff --git a/extensions/raw_files/meson.build b/extensions/raw_files/meson.build
new file mode 100644
index 0000000..2bd2b2a
--- /dev/null
+++ b/extensions/raw_files/meson.build
@@ -0,0 +1,30 @@
+source_files = files(
+ 'main.c',
+ 'gth-metadata-provider-raw.c'
+)
+
+shared_module('raw_files',
+ sources : source_files,
+ dependencies : [ extension_common_deps, libraw_dep ],
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'raw_files.extension.in.in',
+ output : 'raw_files.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'raw_files.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
diff --git a/extensions/raw_files/raw_files.extension.in.in b/extensions/raw_files/raw_files.extension.in.in
index 0ee9417..3807c5e 100644
--- a/extensions/raw_files/raw_files.extension.in.in
+++ b/extensions/raw_files/raw_files.extension.in.in
@@ -1,12 +1,11 @@
[Extension]
-_Name=Raw format support
-_Description=Allow to load raw format images.
-_Authors=gthumb development team
+Name=Raw format support
+Comment=Allow to load raw format images.
+Authors=gthumb development team
Copyright=Copyright © 2009-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
+Version=@GTHUMB_VERSION@
Category=Viewer
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
diff --git a/extensions/red_eye_removal/red_eye_removal.extension.in.in
b/extensions/red_eye_removal/red_eye_removal.extension.in.in
index 89acb78..a0d474e 100644
--- a/extensions/red_eye_removal/red_eye_removal.extension.in.in
+++ b/extensions/red_eye_removal/red_eye_removal.extension.in.in
@@ -8,6 +8,5 @@ Category=File-Tool
[Loader]
Type=module
-File=%LIBRARY%
API=%GTHUMB_API_VERSION%
Requires=image_viewer;file_tools
diff --git a/extensions/rename_series/rename_series.extension.in.in
b/extensions/rename_series/rename_series.extension.in.in
index a1d0ad5..14f42e5 100644
--- a/extensions/rename_series/rename_series.extension.in.in
+++ b/extensions/rename_series/rename_series.extension.in.in
@@ -8,6 +8,5 @@ Category=List-Tool
[Loader]
Type=module
-File=%LIBRARY%
API=%GTHUMB_API_VERSION%
Requires=file_manager
diff --git a/extensions/resize_images/resize_images.extension.in.in
b/extensions/resize_images/resize_images.extension.in.in
index eedb805..f228953 100644
--- a/extensions/resize_images/resize_images.extension.in.in
+++ b/extensions/resize_images/resize_images.extension.in.in
@@ -8,6 +8,5 @@ Category=List-Tool
[Loader]
Type=module
-File=%LIBRARY%
API=%GTHUMB_API_VERSION%
Requires=image_viewer;list_tools
diff --git a/extensions/search/data/meson.build b/extensions/search/data/meson.build
new file mode 100644
index 0000000..36e5b29
--- /dev/null
+++ b/extensions/search/data/meson.build
@@ -0,0 +1 @@
+subdir('ui')
diff --git a/extensions/search/data/ui/meson.build b/extensions/search/data/ui/meson.build
new file mode 100644
index 0000000..918cca0
--- /dev/null
+++ b/extensions/search/data/ui/meson.build
@@ -0,0 +1,4 @@
+ui_files = files(
+ 'search-editor.ui'
+)
+install_data(ui_files, install_dir : ui_install_dir)
diff --git a/extensions/search/meson.build b/extensions/search/meson.build
new file mode 100644
index 0000000..6451b9e
--- /dev/null
+++ b/extensions/search/meson.build
@@ -0,0 +1,40 @@
+source_files = files(
+ 'actions.c',
+ 'callbacks.c',
+ 'gth-search.c',
+ 'gth-search-editor.c',
+ 'gth-search-editor-dialog.c',
+ 'gth-search-task.c',
+ 'main.c'
+)
+
+shared_module('search',
+ sources : [ source_files, gresource_files ],
+ dependencies : extension_common_deps,
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ link_with : catalogs_mod,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'search.extension.in.in',
+ output : 'search.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'search.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# Subdirectories
+
+subdir('data')
diff --git a/extensions/search/search.extension.in.in b/extensions/search/search.extension.in.in
index fbb76ce..2260eb6 100644
--- a/extensions/search/search.extension.in.in
+++ b/extensions/search/search.extension.in.in
@@ -1,14 +1,13 @@
[Extension]
-_Name=Search
-_Description=File search tool.
-_Authors=gthumb development team
+Name=Search
+Comment=File search tool.
+Authors=gthumb development team
Copyright=Copyright © 2008-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
+Version=@GTHUMB_VERSION@
Icon=edit-find
Category=Browser
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
Requires=catalogs
diff --git a/extensions/selections/meson.build b/extensions/selections/meson.build
new file mode 100644
index 0000000..a050415
--- /dev/null
+++ b/extensions/selections/meson.build
@@ -0,0 +1,34 @@
+source_files = files(
+ 'actions.c',
+ 'callbacks.c',
+ 'gth-file-source-selections.c',
+ 'gth-metadata-provider-selections.c',
+ 'gth-selections-manager.c',
+ 'main.c'
+)
+
+shared_module('selections',
+ sources : source_files,
+ dependencies : extension_common_deps,
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'selections.extension.in.in',
+ output : 'selections.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'selections.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
diff --git a/extensions/selections/selections.extension.in.in
b/extensions/selections/selections.extension.in.in
index 56acbf7..171b0cb 100644
--- a/extensions/selections/selections.extension.in.in
+++ b/extensions/selections/selections.extension.in.in
@@ -1,14 +1,12 @@
[Extension]
-_Name=Selections
-_Description=Advanced file selection.
-_Authors=gthumb development team
+Name=Selections
+Comment=Advanced file selection.
+Authors=gthumb development team
Copyright=Copyright © 2008-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
-Icon=selection
-URL=http://live.gnome.org/Apps/gthumb
+Version=@GTHUMB_VERSION@
+Icon=emblem-flag-gray
Category=Browser
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
diff --git a/extensions/slideshow/data/meson.build b/extensions/slideshow/data/meson.build
new file mode 100644
index 0000000..fb796f4
--- /dev/null
+++ b/extensions/slideshow/data/meson.build
@@ -0,0 +1 @@
+subdir('ui')
\ No newline at end of file
diff --git a/extensions/slideshow/data/ui/meson.build b/extensions/slideshow/data/ui/meson.build
new file mode 100644
index 0000000..61efc92
--- /dev/null
+++ b/extensions/slideshow/data/ui/meson.build
@@ -0,0 +1,4 @@
+ui_files = files(
+ 'slideshow-preferences.ui'
+)
+install_data(ui_files, install_dir : ui_install_dir)
diff --git a/extensions/slideshow/meson.build b/extensions/slideshow/meson.build
new file mode 100644
index 0000000..45adeca
--- /dev/null
+++ b/extensions/slideshow/meson.build
@@ -0,0 +1,47 @@
+source_files = files(
+ 'actions.c',
+ 'callbacks.c',
+ 'gth-slideshow.c',
+ 'gth-slideshow-preferences.c',
+ 'gth-transition.c',
+ 'main.c',
+ 'preferences.c'
+)
+
+shared_module('slideshow',
+ sources : source_files,
+ dependencies : [
+ extension_common_deps,
+ use_clutter ? clutter_deps : [],
+ use_gstreamer ? gstreamer_deps : []
+ ],
+ include_directories : [ config_inc, gthumb_inc ],
+ c_args : c_args,
+ link_with : [
+ catalogs_mod,
+ use_gstreamer ? gstreamer_utils_mod : []
+ ],
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# .extension file
+
+extension_in_file = configure_file(
+ input : 'slideshow.extension.in.in',
+ output : 'slideshow.extension.in',
+ configuration : extension_data
+)
+
+i18n.merge_file(
+ input : extension_in_file,
+ output : 'slideshow.extension',
+ type : 'desktop',
+ po_dir : po_dir,
+ install : true,
+ install_dir : extensions_install_dir
+)
+
+# Subdirectories
+
+subdir('data')
diff --git a/extensions/slideshow/slideshow.extension.in.in b/extensions/slideshow/slideshow.extension.in.in
index 526a036..467ec0c 100644
--- a/extensions/slideshow/slideshow.extension.in.in
+++ b/extensions/slideshow/slideshow.extension.in.in
@@ -1,14 +1,13 @@
[Extension]
-_Name=Slideshow
-_Description=View images as a slideshow.
-_Authors=gthumb development team
+Name=Slideshow
+Comment=View images as a slideshow.
+Authors=gthumb development team
Copyright=Copyright © 2008-2013 The Free Software Foundation, Inc.
-Version=%VERSION%
+Version=@GTHUMB_VERSION@
Icon=x-office-presentation
Category=Browser
[Loader]
Type=module
-File=%LIBRARY%
-API=%GTHUMB_API_VERSION%
+API=@GTHUMB_API_VERSION@
After=catalogs;image_viewer
diff --git a/extensions/webalbums/webalbums.extension.in.in b/extensions/webalbums/webalbums.extension.in.in
index 5637d97..6c36366 100644
--- a/extensions/webalbums/webalbums.extension.in.in
+++ b/extensions/webalbums/webalbums.extension.in.in
@@ -8,6 +8,5 @@ Category=Exporter
[Loader]
Type=module
-File=%LIBRARY%
API=%GTHUMB_API_VERSION%
Requires=export_tools
diff --git a/gthumb/gth-extensions.c b/gthumb/gth-extensions.c
index 379df05..aa46c0a 100644
--- a/gthumb/gth-extensions.c
+++ b/gthumb/gth-extensions.c
@@ -188,7 +188,7 @@ gth_extension_module_real_open (GthExtension *base,
{
char *extension_dir;
- extension_dir = g_build_filename (GTHUMB_EXTENSIONS_DIR, self->priv->module_name, ".libs",
NULL);
+ extension_dir = g_build_filename (GTHUMB_EXTENSIONS_DIR, self->priv->module_name, NULL);
file_name = g_module_build_path (extension_dir, self->priv->module_name);
g_free (extension_dir);
}
@@ -416,7 +416,6 @@ gth_extension_description_finalize (GObject *obj)
g_free (self->url);
g_free (self->category);
g_free (self->loader_type);
- g_free (self->loader_file);
g_strfreev (self->loader_requires);
g_strfreev (self->loader_after);
_g_object_unref (self->priv->extension);
@@ -470,7 +469,9 @@ gth_extension_description_load_from_file (GthExtensionDescription *desc,
basename = g_file_get_basename (file);
desc->id = _g_uri_remove_extension (basename);
desc->name = g_key_file_get_locale_string (key_file, "Extension", "Name", NULL, NULL);
- desc->description = g_key_file_get_locale_string (key_file, "Extension", "Description", NULL, NULL);
+ desc->description = g_key_file_get_locale_string (key_file, "Extension", "Comment", NULL, NULL);
+ if (desc->description == NULL)
+ desc->description = g_key_file_get_locale_string (key_file, "Extension", "Description", NULL,
NULL);
desc->version = g_key_file_get_locale_string (key_file, "Extension", "Version", NULL, NULL);
desc->authors = g_key_file_get_locale_string_list (key_file, "Extension", "Authors", NULL, NULL,
NULL);
desc->copyright = g_key_file_get_locale_string (key_file, "Extension", "Copyright", NULL, NULL);
@@ -480,7 +481,6 @@ gth_extension_description_load_from_file (GthExtensionDescription *desc,
desc->mandatory = g_key_file_get_boolean (key_file, "Extension", "Mandatory", NULL);
desc->hidden = g_key_file_get_boolean (key_file, "Extension", "Hidden", NULL);
desc->loader_type = g_key_file_get_string (key_file, "Loader", "Type", NULL);
- desc->loader_file = g_key_file_get_string (key_file, "Loader", "File", NULL);
desc->loader_requires = g_key_file_get_string_list (key_file, "Loader", "Requires", NULL, NULL);
desc->loader_after = g_key_file_get_string_list (key_file, "Loader", "After", NULL, NULL);
diff --git a/gthumb/gth-extensions.h b/gthumb/gth-extensions.h
index 0e341f2..987aab3 100644
--- a/gthumb/gth-extensions.h
+++ b/gthumb/gth-extensions.h
@@ -116,7 +116,6 @@ struct _GthExtensionDescription {
char *url;
char *category;
char *loader_type;
- char *loader_file;
char **loader_requires;
char **loader_after;
gboolean mandatory;
diff --git a/gthumb/meson.build b/gthumb/meson.build
index c80a388..85521db 100644
--- a/gthumb/meson.build
+++ b/gthumb/meson.build
@@ -110,25 +110,40 @@ public_header_files = [
'zlib-utils.h'
]
-enum_files = gnome.mkenums_simple('gth-enum-types', sources: files(public_header_files))
+install_headers(
+ public_header_files,
+ install_dir : pkgincludedir
+)
-marshal_files = gnome.genmarshal('gth-marshal', prefix : 'gth_marshal', sources : 'gth-marshal.list' )
+enum_files = gnome.mkenums_simple('gth-enum-types',
+ sources: files(public_header_files),
+ install_header : true,
+ install_dir : pkgincludedir,
+)
-public_header_files += [ 'gth-enum-types.h', 'gth-marshal.h' ]
+marshal_files = gnome.genmarshal('gth-marshal',
+ prefix : 'gth_marshal',
+ sources : 'gth-marshal.list',
+ install_header : true,
+ install_dir : pkgincludedir,
+)
gthumb_h = custom_target('gthumb.h',
- input : 'gthumb.h.template',
+ input : [ 'gthumb.h.template' ],
output : 'gthumb.h',
- command : [ find_program('make-header.sh'), '@OUTPUT@', '@INPUT@', public_header_files ],
- build_by_default : true
+ command : [ find_program('make-header.sh'), '@OUTPUT@', '@INPUT@', 'gth-enum-types.h', 'gth-marshal.h',
public_header_files ],
+ install : true,
+ install_dir : pkgincludedir
)
+gthumb_h_dep = declare_dependency(sources : [ enum_files, marshal_files, gthumb_h ])
+
authors_tab = custom_target('authors.tab',
input : join_paths(meson.source_root(), 'AUTHORS'),
output : 'AUTHORS.tab',
- command : [ find_program('make-authors-tab.sh'), '@INPUT@', '@OUTPUT@' ],
- build_by_default : true
+ command : [ find_program('make-authors-tab.sh'), '@INPUT@', '@OUTPUT@' ]
)
+authors_dep = declare_dependency(sources : [ authors_tab ])
gresource_files = gnome.compile_resources('gth-resources', 'gthumb.gresource.xml', c_name : 'gth')
@@ -263,34 +278,39 @@ other_files = files(
'gnome-thumbnail-pixbuf-utils.c'
)
+gthumb_inc = include_directories('.')
+
# Build targets
-executable('gthumb',
+gthumb_exe = executable('gthumb',
sources : [
config_file,
+ marshal_files,
+ enum_files,
source_files,
other_files,
- gresource_files,
- marshal_files,
- enum_files
- ],
+ gresource_files
+ ],
dependencies : [
- common_dep,
+ common_deps,
+ jpeg_deps,
exiv2_dep,
clutter_deps,
gstreamer_deps,
- libchamplain_deps,
+ use_libchamplain ? libchamplain_deps : [],
lcms2_dep,
colord_dep,
- tiff_dep,
- libwebp_dep,
- libraw_dep,
- librsvg_dep,
+ use_libtiff ? tiff_deps : [],
+ use_libwebp ? libwebp_dep : [],
+ use_libraw ? libraw_dep : [],
+ use_librsvg ? librsvg_dep : [],
webkit2_dep,
libsecret_dep,
- libbrasero_dep
+ libbrasero_dep,
+ authors_dep
],
- include_directories : config_inc,
+ include_directories : [ config_inc, gthumb_inc ],
c_args : c_args,
+ implib : true,
install : true
)
diff --git a/meson.build b/meson.build
index 79f08a1..2082064 100644
--- a/meson.build
+++ b/meson.build
@@ -41,10 +41,12 @@ icons_install_dir = join_paths(pkgdatadir, 'icons')
if get_option('run-in-place')
ui_data_dir = join_paths(meson.source_root(), 'data', 'ui')
icons_data_dir = join_paths(meson.source_root(), 'data', 'icons')
+ extensions_ui_data_dir = join_paths(meson.source_root(), 'extensions')
extensions_data_dir = join_paths(meson.build_root(), 'extensions')
else
ui_data_dir = ui_install_dir
icons_data_dir = icons_install_dir
+ extensions_ui_data_dir = ui_data_dir
extensions_data_dir = extensions_install_dir
endif
@@ -121,7 +123,7 @@ libz_dep = dependency('zlib')
libm_dep = c_comp.find_library('m')
libjpeg_dep = c_comp.find_library('jpeg')
if libjpeg_dep.found()
- jpeg_dep = [ libm_dep, libz_dep, libjpeg_dep ]
+ jpeg_deps = [ libm_dep, libz_dep, libjpeg_dep ]
endif
code = '''#include <stdio.h>
@@ -130,16 +132,16 @@ code = '''#include <stdio.h>
#error "wrong version"
#endif
int main(int c, char**v) { return 0; }'''
-have_libjpeg_80 = c_comp.compiles(code, name : 'libjpeg version is 8 or greater', dependencies : jpeg_dep)
+have_libjpeg_80 = c_comp.compiles(code, name : 'libjpeg version is 8 or greater', dependencies : jpeg_deps)
-have_progressive_jpeg = c_comp.has_function('jpeg_simple_progression', prefix : '#include
<stdio.h>\n#include<jpeglib.h>', dependencies : jpeg_dep)
+have_progressive_jpeg = c_comp.has_function('jpeg_simple_progression', prefix : '#include
<stdio.h>\n#include<jpeglib.h>', dependencies : jpeg_deps)
# tiff
if get_option('libtiff')
libtiff_dep = c_comp.find_library('tiff')
use_libtiff = libtiff_dep.found()
- tiff_dep = [ libm_dep, libz_dep, libtiff_dep ]
+ tiff_deps = [ libm_dep, libz_dep, libtiff_dep ]
else
use_libtiff = false
endif
@@ -195,7 +197,7 @@ with_webalbums = bison.found() and flex.found()
vector_ops = (c_comp.get_id() == 'gcc') and (c_comp.version().version_compare('>=4.0.7'))
-common_dep = [
+common_deps = [
libm_dep,
dependency('threads'),
dependency('glib-2.0', version : glib_version),
@@ -205,7 +207,6 @@ common_dep = [
dependency('gtk+-3.0', version : gtk_version),
dependency('libpng'),
dependency('zlib'),
- jpeg_dep,
dependency('gsettings-desktop-schemas')
]
@@ -219,7 +220,7 @@ config_data.set_quoted('GTHUMB_API_VERSION', api_version)
config_data.set_quoted('GTHUMB_LOCALEDIR', join_paths(prefix, get_option('localedir')))
config_data.set_quoted('GTHUMB_UI_DIR', ui_data_dir)
config_data.set_quoted('GTHUMB_ICON_DIR', icons_data_dir)
-config_data.set_quoted('GTHUMB_EXTENSIONS_UI_DIR', ui_data_dir)
+config_data.set_quoted('GTHUMB_EXTENSIONS_UI_DIR', extensions_ui_data_dir)
config_data.set_quoted('GTHUMB_EXTENSIONS_DIR', extensions_data_dir)
if get_option('buildtype').contains('debug')
config_data.set('DEBUG', 1)
@@ -312,8 +313,8 @@ c_args += c_comp.get_supported_arguments(test_args)
# Subdirectories
-#subdir('extensions')
subdir('gthumb')
+subdir('extensions')
subdir('data')
subdir('help')
subdir('po')
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]