1image_display_enum_headers = files(
2  'entangle-image-display.h',
3)
4
5entangle_frontend_sources = [
6  'entangle-application.c',
7  'entangle-camera-support.c',
8  'entangle-camera-manager.c',
9  'entangle-camera-picker.c',
10  'entangle-camera-preferences.c',
11  'entangle-control-panel.c',
12  'entangle-dpms.c',
13  'entangle-help-about.c',
14  'entangle-image-display.c',
15  'entangle-image-histogram.c',
16  'entangle-media-popup.c',
17  'entangle-media-statusbar.c',
18  'entangle-preferences.c',
19  'entangle-preferences-display.c',
20  'entangle-script.c',
21  'entangle-script-simple.c',
22  'entangle-script-config.c',
23  'entangle-session-browser.c'
24]
25
26entangle_frontend_headers = [
27  'entangle-application.h',
28  'entangle-camera-support.h',
29  'entangle-camera-manager.h',
30  'entangle-camera-picker.h',
31  'entangle-camera-preferences.h',
32  'entangle-control-panel.h',
33  'entangle-dpms.h',
34  'entangle-help-about.h',
35  'entangle-image-display.h',
36  'entangle-image-histogram.h',
37  'entangle-media-popup.h',
38  'entangle-media-statusbar.h',
39  'entangle-preferences.h',
40  'entangle-preferences-display.h',
41  'entangle-script.h',
42  'entangle-script-simple.h',
43  'entangle-script-config.h',
44  'entangle-session-browser.h'
45]
46
47entangle_frontend_files = []
48foreach f: entangle_frontend_sources + entangle_frontend_headers
49  fn = join_paths('frontend', f)
50  entangle_frontend_files += [fn]
51endforeach
52
53
54entangle_frontend_enums = []
55
56entangle_frontend_enums += gnome.mkenums(
57  'entangle-image-display-enums.h',
58  sources: image_display_enum_headers,
59  comments: '/* @comment@ */',
60  fhead: '#ifndef __ENTANGLE_FRONTEND_ENUMS_H__\n#define __ENTANGLE_FRONTEND_ENUMS_H__\n\n#include <glib-object.h>\nG_BEGIN_DECLS\n\n',
61  ftail: 'G_END_DECLS\n\n#endif /* __ENTANGLE_FRONTEND_ENUMS_H__ */\n',
62  fprod: '\n/* --- @filename@ --- */',
63  eprod: '#define ENTANGLE_TYPE_@ENUMSHORT@ @enum_name@_get_type()\nGType @enum_name@_get_type (void);\n',
64  install_header: false,
65)
66
67entangle_frontend_enums += gnome.mkenums(
68  'entangle-image-display-enums.c',
69  sources: image_display_enum_headers,
70  comments: '/* @comment@ */',
71  fhead: '#include "entangle-image-display-enums.h"\n\n',
72  fprod: '\n/* enumerations from "@filename@" */\n#include "@filename@"\n',
73  vhead: 'static const G@Type@Value _@enum_name@_values[] = {',
74  vprod: '  { @VALUENAME@, "@VALUENAME@", "@valuenick@" },',
75  vtail: '  { 0, NULL, NULL }\n};\n\nGType\n@enum_name@_get_type (void)\n{\n  static GType type = 0;\n\n  if (!type)\n    type = g_@type@_register_static ("@EnumName@", _@enum_name@_values);\n\n  return type;\n}\n\n',
76  install_header: false,
77)
78
79entangle_frontend_sources += entangle_frontend_enums
80
81entangle_frontend_deps = [
82  gthread_dep,
83  gmodule_dep,
84  gtk_dep,
85  gst_dep,
86  libpeas_dep,
87  libpeas_gtk_dep,
88  gexiv2_dep,
89  xext_dep,
90  entangle_backend_dep,
91]
92
93entangle_frontend_cflags = [
94    '-DDATADIR="' + entangle_datadir + '"',
95    '-DPKGDATADIR="' + entangle_pkgdatadir + '"',
96    '-DLIBDIR="' + entangle_libdir + '"',
97    '-DVERSION="' + meson.project_version() + '"',
98]
99
100entangle_frontend = shared_library(
101  'entangle_frontend', entangle_frontend_enums,
102  sources: entangle_frontend_sources,
103  dependencies: entangle_frontend_deps,
104  include_directories: backend_inc,
105  c_args: entangle_frontend_cflags,
106  version: '0.0.0',
107  install: true,
108  install_dir: entangle_libdir,
109)
110
111entangle_frontend_dep = declare_dependency(
112  link_with: entangle_frontend,
113  dependencies: entangle_frontend_deps,
114)
115