1
1
mirror of https://gitlab.gnome.org/GNOME/gimp.git synced 2025-10-06 01:12:40 +02:00
Files
gimp/libgimpthumb/meson.build
Bruno Lopes f09007507f Declare gexiv2 dependency on many targets (due to gimpmetadata.h)
Our build files were relying 'sysroot' to find gexiv2.h but this is
not possible with Apple Clang om which sysroot points to macOS SDK.
So, exotic environments like Homebrew were failing. Let's fix this.
2025-10-03 18:31:53 -03:00

99 lines
2.5 KiB
Meson

# Unlike other enums file, we don't use the mkenums_wrap because this
# one is not versioned in the repository (not sure why). Moreover the
# options are quite different from the other generated enums, so it
# didn't make sense to overdo it.
gimpthumbenums = custom_target('gimpthumb-enums.c',
input : [ 'gimpthumb-enums.h', ],
output: [ 'gimpthumb-enums.c', ],
command: [
gimp_mkenums,
'--fhead','#include "config.h"\n'+
'#include <glib-object.h>\n'+
'#include "gimpthumb-enums.h"\n',
'--fprod','/* enumerations from "@filename@" */',
'--vhead','GType\n'+
'@enum_name@_get_type (void)\n'+
'{\n'+
' static const G@Type@Value values[] =\n'+
' {',
'--vprod',' { @VALUENAME@, @valuedesc@, "@valuenick@" },',
'--vtail',' { 0, NULL, NULL }\n'+
' };\n'+
'\n'+
' static GType type = 0;\n'+
'\n'+
' if (G_UNLIKELY (! type))\n'+
' type = g_@type@_register_static ("@EnumName@", values);\n'+
'\n'+
' return type;\n'+
'}\n',
'@INPUT@',
],
capture: true,
)
libgimpthumb_sources_introspectable = files(
'gimpthumb-error.c',
'gimpthumb-utils.c',
'gimpthumbnail.c',
)
libgimpthumb_sources = [
libgimpthumb_sources_introspectable,
gimpthumbenums,
]
libgimpthumb_headers_introspectable = files(
'gimpthumb-enums.h',
'gimpthumb-error.h',
'gimpthumb-types.h',
'gimpthumb-utils.h',
'gimpthumbnail.h',
)
libgimpthumb_headers = [
libgimpthumb_headers_introspectable,
'gimpthumb.h',
]
libgimpthumb_introspectable = [
libgimpthumb_sources_introspectable,
libgimpthumb_headers_introspectable,
]
libgimpthumb = library('gimpthumb-'+ gimp_api_version,
libgimpthumb_sources,
include_directories: rootInclude,
dependencies: [
gegl, gexiv2, glib, gobject, gdk_pixbuf, gio,
],
c_args: [ '-DG_LOG_DOMAIN="LibGimpThumb"', '-DGIMP_THUMB_COMPILATION', ],
link_with: [
libgimpbase,
],
vs_module_defs: 'gimpthumb.def',
install: true,
version: so_version,
)
install_headers(
libgimpthumb_headers,
subdir: gimp_api_name / 'libgimpthumb',
)
# Test program, not installed
gimp_thumbnail_list = executable('gimp-thumbnail-list',
'gimp-thumbnail-list.c',
include_directories: rootInclude,
dependencies: [
gdk_pixbuf,
],
c_args: '-DG_LOG_DOMAIN="LibGimpThumb"',
link_with: [
libgimpbase,
libgimpthumb,
],
install: false,
)