[gimp/meson: 7/127] Fixed app/xcf. Added all other app subdirs.



commit af5463d30f2009206ee097b1437bedf91c866126
Author: Félix Piédallu <felix piedallu me>
Date:   Wed Nov 8 12:24:34 2017 +0100

    Fixed app/xcf. Added all other app subdirs.

 app/config/meson.build                        |   22 ++-
 app/dialogs/meson.build                       |   66 +++++++
 app/display/meson.build                       |  100 +++++++++++
 app/file/meson.build                          |   18 ++
 app/gegl/meson.build                          |   31 ++++
 app/gui/meson.build                           |   29 +++
 app/menus/meson.build                         |   22 +++
 app/meson.build                               |   19 ++-
 app/operations/layer-modes-legacy/meson.build |   31 ++++
 app/operations/layer-modes/meson.build        |   29 +++
 app/operations/meson.build                    |   57 ++++++
 app/operations/tests/meson.build              |   10 +
 app/paint/meson.build                         |   52 ++++++
 app/pdb/meson.build                           |   91 ++++++++++
 app/plug-in/meson.build                       |   45 +++++
 app/propgui/meson.build                       |   28 +++
 app/tests/meson.build                         |  107 ++++++++++++
 app/text/meson.build                          |   33 ++++
 app/tools/meson.build                         |  121 +++++++++++++
 app/vectors/meson.build                       |   26 +++
 app/widgets/meson.build                       |  232 +++++++++++++++++++++++++
 app/xcf/meson.build                           |   21 ++-
 meson.build                                   |    4 +
 23 files changed, 1178 insertions(+), 16 deletions(-)
---
diff --git a/app/config/meson.build b/app/config/meson.build
index 3b8ad66..8fb4f31 100644
--- a/app/config/meson.build
+++ b/app/config/meson.build
@@ -49,9 +49,23 @@ executable('test-config',
     libgimpconfig,
     libgimpcolor,
     libgimpmath,
-    libappconfig,
-    libappcore,
-  ]
+    libgimpmodule,
+    libgimpthumb,
 
+    libappcore,
+    libappconfig,
+    libappfile,
+    libappgegl,
+    libappinternalprocs,
+    libapplayermodes,
+    libapplayermodeslegacy,
+    libappoperations,
+    libapppaint,
+    libapppdb,
+    libappplugin,
+    libapptext,
+    libappvectors,
+    libappxcf,
+  ],
+)
 
-)
\ No newline at end of file
diff --git a/app/dialogs/meson.build b/app/dialogs/meson.build
new file mode 100644
index 0000000..23d4ed8
--- /dev/null
+++ b/app/dialogs/meson.build
@@ -0,0 +1,66 @@
+libappdialogs_sources = [
+  'about-dialog.c',
+  'action-search-dialog.c',
+  'channel-options-dialog.c',
+  'color-profile-dialog.c',
+  'color-profile-import-dialog.c',
+  'convert-indexed-dialog.c',
+  'convert-precision-dialog.c',
+  'data-delete-dialog.c',
+  'dialogs-constructors.c',
+  'dialogs.c',
+  'fade-dialog.c',
+  'file-open-dialog.c',
+  'file-open-location-dialog.c',
+  'file-save-dialog.c',
+  'fill-dialog.c',
+  'grid-dialog.c',
+  'image-merge-layers-dialog.c',
+  'image-new-dialog.c',
+  'image-properties-dialog.c',
+  'image-scale-dialog.c',
+  'input-devices-dialog.c',
+  'item-options-dialog.c',
+  'keyboard-shortcuts-dialog.c',
+  'layer-add-mask-dialog.c',
+  'layer-options-dialog.c',
+  'lebl-dialog.c',
+  'module-dialog.c',
+  'offset-dialog.c',
+  'palette-import-dialog.c',
+  'preferences-dialog-utils.c',
+  'preferences-dialog.c',
+  'print-size-dialog.c',
+  'quit-dialog.c',
+  'resize-dialog.c',
+  'resolution-calibrate-dialog.c',
+  'scale-dialog.c',
+  'stroke-dialog.c',
+  'template-options-dialog.c',
+  'tips-dialog.c',
+  'tips-parser.c',
+  'user-install-dialog.c',
+  'vectors-export-dialog.c',
+  'vectors-import-dialog.c',
+  'vectors-options-dialog.c',
+]
+
+# Auto-generated sources
+libappdialogs_sources += [
+  custom_target('authors.h',
+    input : [ 'authors.xsl', join_paths(meson.source_root(), 'authors.xml') ],
+    output: [ 'authors.h' ],
+    command: [ xsltproc, '-o', '@OUTPUT@', '@INPUT0@', '@INPUT1@' ],
+  )
+]
+
+libappdialogs = static_library('appdialogs',
+  libappdialogs_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-Dialogs"',
+  ],
+  dependencies: [
+    gegl, gtk2,
+  ],
+)
diff --git a/app/display/meson.build b/app/display/meson.build
new file mode 100644
index 0000000..7b382fb
--- /dev/null
+++ b/app/display/meson.build
@@ -0,0 +1,100 @@
+libappdisplay_sources = [
+  'gimpcanvas-style.c',
+  'gimpcanvas.c',
+  'gimpcanvasarc.c',
+  'gimpcanvasboundary.c',
+  'gimpcanvasbufferpreview.c',
+  'gimpcanvascorner.c',
+  'gimpcanvascursor.c',
+  'gimpcanvasgrid.c',
+  'gimpcanvasgroup.c',
+  'gimpcanvasguide.c',
+  'gimpcanvashandle.c',
+  'gimpcanvasitem-utils.c',
+  'gimpcanvasitem.c',
+  'gimpcanvaslayerboundary.c',
+  'gimpcanvasline.c',
+  'gimpcanvaspassepartout.c',
+  'gimpcanvaspath.c',
+  'gimpcanvaspen.c',
+  'gimpcanvaspolygon.c',
+  'gimpcanvasprogress.c',
+  'gimpcanvasproxygroup.c',
+  'gimpcanvasrectangle.c',
+  'gimpcanvasrectangleguides.c',
+  'gimpcanvassamplepoint.c',
+  'gimpcanvastextcursor.c',
+  'gimpcanvastransformguides.c',
+  'gimpcanvastransformpreview.c',
+  'gimpcursorview.c',
+  'gimpdisplay-foreach.c',
+  'gimpdisplay-handlers.c',
+  'gimpdisplay.c',
+  'gimpdisplayshell-actions.c',
+  'gimpdisplayshell-appearance.c',
+  'gimpdisplayshell-autoscroll.c',
+  'gimpdisplayshell-callbacks.c',
+  'gimpdisplayshell-close.c',
+  'gimpdisplayshell-cursor.c',
+  'gimpdisplayshell-dnd.c',
+  'gimpdisplayshell-draw.c',
+  'gimpdisplayshell-expose.c',
+  'gimpdisplayshell-filter-dialog.c',
+  'gimpdisplayshell-filter.c',
+  'gimpdisplayshell-grab.c',
+  'gimpdisplayshell-handlers.c',
+  'gimpdisplayshell-icon.c',
+  'gimpdisplayshell-items.c',
+  'gimpdisplayshell-layer-select.c',
+  'gimpdisplayshell-profile.c',
+  'gimpdisplayshell-progress.c',
+  'gimpdisplayshell-render.c',
+  'gimpdisplayshell-rotate-dialog.c',
+  'gimpdisplayshell-rotate.c',
+  'gimpdisplayshell-rulers.c',
+  'gimpdisplayshell-scale-dialog.c',
+  'gimpdisplayshell-scale.c',
+  'gimpdisplayshell-scroll.c',
+  'gimpdisplayshell-scrollbars.c',
+  'gimpdisplayshell-selection.c',
+  'gimpdisplayshell-title.c',
+  'gimpdisplayshell-tool-events.c',
+  'gimpdisplayshell-transform.c',
+  'gimpdisplayshell.c',
+  'gimpdisplayxfer.c',
+  'gimpimagewindow.c',
+  'gimpmotionbuffer.c',
+  'gimpmultiwindowstrategy.c',
+  'gimpnavigationeditor.c',
+  'gimpscalecombobox.c',
+  'gimpsinglewindowstrategy.c',
+  'gimpstatusbar.c',
+  'gimptoolcompass.c',
+  'gimptooldialog.c',
+  'gimptoolgui.c',
+  'gimptoolhandlegrid.c',
+  'gimptoolline.c',
+  'gimptoolpath.c',
+  'gimptoolpolygon.c',
+  'gimptoolrectangle.c',
+  'gimptoolrotategrid.c',
+  'gimptoolsheargrid.c',
+  'gimptooltransformgrid.c',
+  'gimptoolwidget.c',
+]
+
+# TODO mkenums
+libappdisplay_sources += [
+  'display-enums.c'
+]
+
+libappdisplay = static_library('appdisplay',
+  libappdisplay_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-Display"',
+  ],
+  dependencies: [
+    gegl, gtk2,
+  ],
+)
diff --git a/app/file/meson.build b/app/file/meson.build
new file mode 100644
index 0000000..76ce411
--- /dev/null
+++ b/app/file/meson.build
@@ -0,0 +1,18 @@
+libappfile_sources = [
+  'file-import.c',
+  'file-open.c',
+  'file-remote.c',
+  'file-save.c',
+  'file-utils.c',
+]
+
+libappfile = static_library('appfile',
+  libappfile_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-File"',
+  ],
+  dependencies: [
+    gegl, gdk_pixbuf,
+  ],
+)
diff --git a/app/gegl/meson.build b/app/gegl/meson.build
new file mode 100644
index 0000000..6b88d0c
--- /dev/null
+++ b/app/gegl/meson.build
@@ -0,0 +1,31 @@
+libappgegl_sources = [
+  'gimp-babl-compat.c',
+  'gimp-babl.c',
+  'gimp-gegl-apply-operation.c',
+  'gimp-gegl-loops-sse2.c',
+  'gimp-gegl-loops.c',
+  'gimp-gegl-mask-combine.c',
+  'gimp-gegl-mask.c',
+  'gimp-gegl-nodes.c',
+  'gimp-gegl-tile-compat.c',
+  'gimp-gegl-utils.c',
+  'gimp-gegl.c',
+  'gimpapplicator.c',
+  'gimptilehandlervalidate.c',
+]
+
+# TODO mkenums
+libappgegl_sources += [
+  'gimp-gegl-enums.c',
+]
+
+libappgegl = static_library('appgegl',
+  libappgegl_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-GEGL"',
+  ],
+  dependencies: [
+    cairo, gegl, gdk_pixbuf,
+  ],
+)
diff --git a/app/gui/meson.build b/app/gui/meson.build
new file mode 100644
index 0000000..0f4abfa
--- /dev/null
+++ b/app/gui/meson.build
@@ -0,0 +1,29 @@
+libappgui_sources = [
+  # 'gimpdbusservice.c',
+  'gimpuiconfigurer.c',
+  'gui-message.c',
+  # 'gui-unique.c',
+  'gui-vtable.c',
+  'gui.c',
+  'icon-themes.c',
+  'session.c',
+  'splash.c',
+  'themes.c',
+]
+
+# TODO dbus-codegen
+libappgui_sources += [
+  # 'gimpdbusservice-generated.c',
+]
+
+libappgui = static_library('appgui',
+  libappgui_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-GUI"',
+    '-DGIMP_COMMAND="'+ gimp_command +'"',
+  ],
+  dependencies: [
+    cairo, dbus_glib, gegl, gdk_pixbuf, gio_specific, gtk2
+  ],
+)
diff --git a/app/menus/meson.build b/app/menus/meson.build
new file mode 100644
index 0000000..bd5ee74
--- /dev/null
+++ b/app/menus/meson.build
@@ -0,0 +1,22 @@
+libappmenus_sources = [
+  'dockable-menu.c',
+  'file-menu.c',
+  'filters-menu.c',
+  'image-menu.c',
+  'menus.c',
+  'plug-in-menus.c',
+  'tool-options-menu.c',
+  'window-menu.c',
+  'windows-menu.c',
+]
+
+libappmenus = static_library('appmenus',
+  libappmenus_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-Menus"',
+  ],
+  dependencies: [
+    gegl, gtk2
+  ],
+)
diff --git a/app/meson.build b/app/meson.build
index bfb720b..ffe8ef9 100644
--- a/app/meson.build
+++ b/app/meson.build
@@ -2,11 +2,26 @@
 rootAppInclude = include_directories('.')
 
 
-# Order is important!
 subdir('actions')
 subdir('core')
+subdir('dialogs')
+subdir('display')
+subdir('file')
+subdir('gegl')
+subdir('gui')
+subdir('menus')
+subdir('operations')
+subdir('paint')
+subdir('pdb')
+subdir('plug-in')
+subdir('propgui')
+subdir('text')
+subdir('tools')
+subdir('vectors')
+subdir('widgets')
 subdir('xcf')
 
 
-
+# Those subdirs need to link againts the first ones
 # subdir('config')
+# subdir('tests')
diff --git a/app/operations/layer-modes-legacy/meson.build b/app/operations/layer-modes-legacy/meson.build
new file mode 100644
index 0000000..c27f3e0
--- /dev/null
+++ b/app/operations/layer-modes-legacy/meson.build
@@ -0,0 +1,31 @@
+libapplayermodeslegacy_sources = [
+  'gimpoperationadditionlegacy.c',
+  'gimpoperationburnlegacy.c',
+  'gimpoperationdarkenonlylegacy.c',
+  'gimpoperationdifferencelegacy.c',
+  'gimpoperationdividelegacy.c',
+  'gimpoperationdodgelegacy.c',
+  'gimpoperationgrainextractlegacy.c',
+  'gimpoperationgrainmergelegacy.c',
+  'gimpoperationhardlightlegacy.c',
+  'gimpoperationhslcolorlegacy.c',
+  'gimpoperationhsvhuelegacy.c',
+  'gimpoperationhsvsaturationlegacy.c',
+  'gimpoperationhsvvaluelegacy.c',
+  'gimpoperationlightenonlylegacy.c',
+  'gimpoperationmultiplylegacy.c',
+  'gimpoperationscreenlegacy.c',
+  'gimpoperationsoftlightlegacy.c',
+  'gimpoperationsubtractlegacy.c',
+]
+
+libapplayermodeslegacy = static_library('applayermodeslegacy',
+  libapplayermodeslegacy_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-Layer-Modes-Legacy"',
+  ],
+  dependencies: [
+    cairo, gegl, gdk_pixbuf,
+  ],
+)
diff --git a/app/operations/layer-modes/meson.build b/app/operations/layer-modes/meson.build
new file mode 100644
index 0000000..3d5c039
--- /dev/null
+++ b/app/operations/layer-modes/meson.build
@@ -0,0 +1,29 @@
+libapplayermodes_sources = [
+  'gimp-layer-modes.c',
+  'gimpoperationantierase.c',
+  'gimpoperationbehind.c',
+  'gimpoperationdissolve.c',
+  'gimpoperationerase.c',
+  'gimpoperationlayermode-blend.c',
+  'gimpoperationlayermode-composite-sse2.c',
+  'gimpoperationlayermode-composite.c',
+  'gimpoperationlayermode.c',
+  'gimpoperationmerge.c',
+  'gimpoperationnormal-sse2.c',
+  'gimpoperationnormal-sse4.c',
+  'gimpoperationnormal.c',
+  'gimpoperationpassthrough.c',
+  'gimpoperationreplace.c',
+  'gimpoperationsplit.c',
+]
+
+libapplayermodes = static_library('applayermodes',
+  libapplayermodes_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-Layer-Modes"',
+  ],
+  dependencies: [
+    cairo, gegl, gdk_pixbuf,
+  ],
+)
diff --git a/app/operations/meson.build b/app/operations/meson.build
new file mode 100644
index 0000000..eee7923
--- /dev/null
+++ b/app/operations/meson.build
@@ -0,0 +1,57 @@
+libappoperations_sources = [
+  'gimp-operation-config.c',
+  'gimp-operations.c',
+  'gimpbrightnesscontrastconfig.c',
+  'gimpcageconfig.c',
+  'gimpcolorbalanceconfig.c',
+  'gimpcurvesconfig.c',
+  'gimphuesaturationconfig.c',
+  'gimplevelsconfig.c',
+  'gimpoperationblend.c',
+  'gimpoperationborder.c',
+  'gimpoperationbrightnesscontrast.c',
+  'gimpoperationcagecoefcalc.c',
+  'gimpoperationcagetransform.c',
+  'gimpoperationcolorbalance.c',
+  'gimpoperationcolorize.c',
+  'gimpoperationcomposecrop.c',
+  'gimpoperationcurves.c',
+  'gimpoperationdesaturate.c',
+  'gimpoperationequalize.c',
+  'gimpoperationflood.c',
+  'gimpoperationgrow.c',
+  'gimpoperationhistogramsink.c',
+  'gimpoperationhuesaturation.c',
+  'gimpoperationlevels.c',
+  'gimpoperationmaskcomponents.c',
+  'gimpoperationpointfilter.c',
+  'gimpoperationposterize.c',
+  'gimpoperationprofiletransform.c',
+  'gimpoperationscalarmultiply.c',
+  'gimpoperationsemiflatten.c',
+  'gimpoperationsetalpha.c',
+  'gimpoperationshapeburst.c',
+  'gimpoperationshrink.c',
+  'gimpoperationthreshold.c',
+  'gimpoperationthresholdalpha.c',
+]
+
+# TODO mkenums
+libappoperations_sources += [
+  'operations-enums.c',
+]
+
+libappoperations = static_library('appoperations',
+  libappoperations_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-Operations"',
+  ],
+  dependencies: [
+    cairo, gegl, gdk_pixbuf,
+  ],
+)
+
+subdir('layer-modes')
+subdir('layer-modes-legacy')
+subdir('tests')
diff --git a/app/operations/tests/meson.build b/app/operations/tests/meson.build
new file mode 100644
index 0000000..52a759c
--- /dev/null
+++ b/app/operations/tests/meson.build
@@ -0,0 +1,10 @@
+
+executable('test-operations',
+  'test-operations.c',
+  include_directories: [ rootInclude, rootAppInclude, ],
+
+  dependencies: [
+    cairo, gegl, gdk_pixbuf, glib, pangocairo,
+  ],
+  build_by_default: false,
+)
diff --git a/app/paint/meson.build b/app/paint/meson.build
new file mode 100644
index 0000000..b545fcb
--- /dev/null
+++ b/app/paint/meson.build
@@ -0,0 +1,52 @@
+libapppaint_sources = [
+  'gimp-paint.c',
+  'gimpairbrush.c',
+  'gimpairbrushoptions.c',
+  'gimpbrushcore.c',
+  'gimpclone.c',
+  'gimpcloneoptions.c',
+  'gimpconvolve.c',
+  'gimpconvolveoptions.c',
+  'gimpdodgeburn.c',
+  'gimpdodgeburnoptions.c',
+  'gimperaser.c',
+  'gimperaseroptions.c',
+  'gimpheal.c',
+  'gimpink-blob.c',
+  'gimpink.c',
+  'gimpinkoptions.c',
+  'gimpinkundo.c',
+  'gimpmybrushcore.c',
+  'gimpmybrushoptions.c',
+  'gimpmybrushsurface.c',
+  'gimppaintbrush.c',
+  'gimppaintcore-loops.c',
+  'gimppaintcore-stroke.c',
+  'gimppaintcore.c',
+  'gimppaintcoreundo.c',
+  'gimppaintoptions.c',
+  'gimppencil.c',
+  'gimppenciloptions.c',
+  'gimpperspectiveclone.c',
+  'gimpperspectivecloneoptions.c',
+  'gimpsmudge.c',
+  'gimpsmudgeoptions.c',
+  'gimpsourcecore.c',
+  'gimpsourceoptions.c',
+]
+
+# TODO mkenums
+libapppaint_sources += [
+  'paint-enums.c',
+]
+
+libapppaint = static_library('apppaint',
+  libapppaint_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-Paint"',
+  ],
+  dependencies: [
+    cairo, gegl, gdk_pixbuf, libmypaint,
+  ],
+)
diff --git a/app/pdb/meson.build b/app/pdb/meson.build
new file mode 100644
index 0000000..fd332e4
--- /dev/null
+++ b/app/pdb/meson.build
@@ -0,0 +1,91 @@
+libapppdb_sources = [
+  'gimp-pdb-compat.c',
+  'gimppdb-query.c',
+  'gimppdb-utils.c',
+  'gimppdb.c',
+  'gimppdbcontext.c',
+  'gimppdberror.c',
+  'gimpprocedure.c',
+]
+libappinternalprocs_sources = [
+  'brush-cmds.c',
+  'brush-select-cmds.c',
+  'brushes-cmds.c',
+  'buffer-cmds.c',
+  'channel-cmds.c',
+  'color-cmds.c',
+  'context-cmds.c',
+  'debug-cmds.c',
+  'display-cmds.c',
+  'drawable-cmds.c',
+  'drawable-color-cmds.c',
+  'drawable-transform-cmds.c',
+  'dynamics-cmds.c',
+  'edit-cmds.c',
+  'fileops-cmds.c',
+  'floating-sel-cmds.c',
+  'font-select-cmds.c',
+  'fonts-cmds.c',
+  'gimp-cmds.c',
+  'gimprc-cmds.c',
+  'gradient-cmds.c',
+  'gradient-select-cmds.c',
+  'gradients-cmds.c',
+  'help-cmds.c',
+  'image-cmds.c',
+  'image-color-profile-cmds.c',
+  'image-convert-cmds.c',
+  'image-grid-cmds.c',
+  'image-guides-cmds.c',
+  'image-sample-points-cmds.c',
+  'image-select-cmds.c',
+  'image-transform-cmds.c',
+  'image-undo-cmds.c',
+  'internal-procs.c',
+  'item-cmds.c',
+  'item-transform-cmds.c',
+  'layer-cmds.c',
+  'message-cmds.c',
+  'paint-tools-cmds.c',
+  'palette-cmds.c',
+  'palette-select-cmds.c',
+  'palettes-cmds.c',
+  'paths-cmds.c',
+  'pattern-cmds.c',
+  'pattern-select-cmds.c',
+  'patterns-cmds.c',
+  'plug-in-cmds.c',
+  'plug-in-compat-cmds.c',
+  'procedural-db-cmds.c',
+  'progress-cmds.c',
+  'selection-cmds.c',
+  'selection-tools-cmds.c',
+  'text-layer-cmds.c',
+  'text-tool-cmds.c',
+  'transform-tools-cmds.c',
+  'unit-cmds.c',
+  'vectors-cmds.c',
+]
+
+libapppdb = static_library('apppdb',
+  libapppdb_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-PDB"',
+  ],
+  dependencies: [
+    cairo, gegl, gdk_pixbuf,
+  ],
+)
+
+
+libappinternalprocs = static_library('appinternalprocs',
+  libappinternalprocs_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-PDB"',
+  ],
+  dependencies: [
+    cairo, gegl, gdk_pixbuf,
+  ],
+)
diff --git a/app/plug-in/meson.build b/app/plug-in/meson.build
new file mode 100644
index 0000000..422ccb0
--- /dev/null
+++ b/app/plug-in/meson.build
@@ -0,0 +1,45 @@
+libappplugin_sources = [
+  'gimpenvirontable.c',
+  'gimpinterpreterdb.c',
+  'gimpplugin-cleanup.c',
+  'gimpplugin-context.c',
+  'gimpplugin-message.c',
+  'gimpplugin-progress.c',
+  'gimpplugin.c',
+  'gimpplugindebug.c',
+  'gimpplugindef.c',
+  'gimppluginerror.c',
+  'gimppluginmanager-call.c',
+  'gimppluginmanager-data.c',
+  'gimppluginmanager-file-procedure.c',
+  'gimppluginmanager-file.c',
+  'gimppluginmanager-help-domain.c',
+  'gimppluginmanager-locale-domain.c',
+  'gimppluginmanager-menu-branch.c',
+  'gimppluginmanager-query.c',
+  'gimppluginmanager-restore.c',
+  'gimppluginmanager.c',
+  'gimppluginprocedure.c',
+  'gimppluginprocframe.c',
+  'gimppluginshm.c',
+  'gimptemporaryprocedure.c',
+  'plug-in-menu-path.c',
+  'plug-in-params.c',
+  'plug-in-rc.c',
+]
+
+# TODO mkenums
+libappplugin_sources += [
+  'plug-in-enums.c',
+]
+
+libappplugin = static_library('appplug-in',
+  libappplugin_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-Plug-In"',
+  ],
+  dependencies: [
+    cairo, gegl, gdk_pixbuf,
+  ],
+)
diff --git a/app/propgui/meson.build b/app/propgui/meson.build
new file mode 100644
index 0000000..6244f99
--- /dev/null
+++ b/app/propgui/meson.build
@@ -0,0 +1,28 @@
+libapppropgui_sources = [
+  'gimppropgui-channel-mixer.c',
+  'gimppropgui-color-balance.c',
+  'gimppropgui-color-rotate.c',
+  'gimppropgui-color-to-alpha.c',
+  'gimppropgui-convolution-matrix.c',
+  'gimppropgui-diffraction-patterns.c',
+  'gimppropgui-eval.c',
+  'gimppropgui-generic.c',
+  'gimppropgui-hue-saturation.c',
+  'gimppropgui-spiral.c',
+  'gimppropgui-supernova.c',
+  'gimppropgui-utils.c',
+  'gimppropgui.c',
+]
+
+libapppropgui = static_library('apppropgui',
+  libapppropgui_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-PropGUI"',
+    '-DISO_CODES_LOCATION="' + isocodes_location  +'"',
+    '-DISO_CODES_LOCALEDIR="'+ isocodes_localedir +'"',
+  ],
+  dependencies: [
+    gegl, gtk2,
+  ],
+)
diff --git a/app/tests/meson.build b/app/tests/meson.build
new file mode 100644
index 0000000..8be3769
--- /dev/null
+++ b/app/tests/meson.build
@@ -0,0 +1,107 @@
+
+apptests_includes = [
+  rootInclude, rootAppInclude
+]
+apptests_deps = [
+  pangocairo, gtk2, dbus_glib, gegl,
+]
+apptests_links = [
+  # libapp,
+  libappactions,
+  libappconfig,
+  libappcore,
+  libappdialogs,
+  libappdialogs,
+  libappdisplay,
+  libappfile,
+  libappgegl,
+  libappgui,
+  libappinternalprocs,
+  libapplayermodes,
+  libapplayermodeslegacy,
+  libappmenus,
+  libappoperations,
+  libapppaint,
+  libapppdb,
+  libappplugin,
+  libapppropgui,
+  libapptext,
+  libapptools,
+  libappvectors,
+  libappwidgets,
+  libappxcf,
+]
+
+
+libapptestutils = static_library('apptestutils',
+  [
+    'gimp-app-test-utils.c',
+    'gimp-test-session-utils.c',
+  ],
+  include_directories: apptests_includes,
+  dependencies: apptests_deps,
+  link_with: apptests_links,
+)
+
+apptests_links += libapptestutils
+
+executable('test-core',
+  'test-core.c',
+  include_directories: apptests_includes,
+  dependencies: apptests_deps,
+  link_with: apptests_links,
+)
+executable('test-gimpidtable',
+  'test-gimpidtable.c',
+  include_directories: apptests_includes,
+  dependencies: apptests_deps,
+  link_with: apptests_links,
+)
+executable('test-save-and-export',
+  'test-save-and-export.c',
+  include_directories: apptests_includes,
+  dependencies: apptests_deps,
+  link_with: apptests_links,
+)
+executable('test-session-2-6-compatibility',
+  'test-session-2-6-compatibility.c',
+  include_directories: apptests_includes,
+  dependencies: apptests_deps,
+  link_with: apptests_links,
+)
+executable('test-session-2-8-compatibility-multi-window',
+  'test-session-2-8-compatibility-multi-window.c',
+  include_directories: apptests_includes,
+  dependencies: apptests_deps,
+  link_with: apptests_links,
+)
+executable('test-session-2-8-compatibility-single-window',
+  'test-session-2-8-compatibility-single-window.c',
+  include_directories: apptests_includes,
+  dependencies: apptests_deps,
+  link_with: apptests_links,
+)
+executable('test-single-window-mode',
+  'test-single-window-mode.c',
+  include_directories: apptests_includes,
+  dependencies: apptests_deps,
+  link_with: apptests_links,
+)
+executable('test-tools',
+  'test-tools.c',
+  include_directories: apptests_includes,
+  dependencies: apptests_deps,
+  link_with: apptests_links,
+)
+executable('test-ui',
+  'test-ui.c',
+  include_directories: apptests_includes,
+  dependencies: apptests_deps,
+  link_with: apptests_links,
+)
+executable('test-xcf',
+  'test-xcf.c',
+  include_directories: apptests_includes,
+  dependencies: apptests_deps,
+  link_with: apptests_links,
+)
\ No newline at end of file
diff --git a/app/text/meson.build b/app/text/meson.build
new file mode 100644
index 0000000..4fe2177
--- /dev/null
+++ b/app/text/meson.build
@@ -0,0 +1,33 @@
+libapptext_sources = [
+  'gimp-fonts.c',
+  'gimpfont.c',
+  'gimpfontlist.c',
+  'gimptext-compat.c',
+  'gimptext-parasite.c',
+  'gimptext-vectors.c',
+  'gimptext-xlfd.c',
+  'gimptext.c',
+  'gimptextlayer-transform.c',
+  'gimptextlayer-xcf.c',
+  'gimptextlayer.c',
+  'gimptextlayout-render.c',
+  'gimptextlayout.c',
+  'gimptextundo.c',
+]
+
+# TODO mkenums
+libapptext_sources += [
+  'text-enums.c',
+]
+
+
+libapptext = static_library('apptext',
+  libapptext_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-Text"',
+  ],
+  dependencies: [
+    gegl, gdk_pixbuf, harfbuzz, pangocairo,
+  ],
+)
diff --git a/app/tools/meson.build b/app/tools/meson.build
new file mode 100644
index 0000000..42046f8
--- /dev/null
+++ b/app/tools/meson.build
@@ -0,0 +1,121 @@
+libapptools_sources = [
+  'gimp-tools.c',
+  'gimpairbrushtool.c',
+  'gimpalignoptions.c',
+  'gimpaligntool.c',
+  'gimpblendoptions.c',
+  'gimpblendtool-editor.c',
+  'gimpblendtool.c',
+  'gimpbrightnesscontrasttool.c',
+  'gimpbrushtool.c',
+  'gimpbucketfilloptions.c',
+  'gimpbucketfilltool.c',
+  'gimpbycolorselecttool.c',
+  'gimpcageoptions.c',
+  'gimpcagetool.c',
+  'gimpcloneoptions-gui.c',
+  'gimpclonetool.c',
+  'gimpcoloroptions.c',
+  'gimpcolorpickeroptions.c',
+  'gimpcolorpickertool.c',
+  'gimpcolortool.c',
+  'gimpconvolvetool.c',
+  'gimpcropoptions.c',
+  'gimpcroptool.c',
+  'gimpcurvestool.c',
+  'gimpdodgeburntool.c',
+  'gimpdrawtool.c',
+  'gimpeditselectiontool.c',
+  'gimpellipseselecttool.c',
+  'gimperasertool.c',
+  'gimpfilteroptions.c',
+  'gimpfiltertool-settings.c',
+  'gimpfiltertool-widgets.c',
+  'gimpfiltertool.c',
+  'gimpflipoptions.c',
+  'gimpfliptool.c',
+  'gimpforegroundselectoptions.c',
+  'gimpforegroundselecttool.c',
+  'gimpforegroundselecttoolundo.c',
+  'gimpfreeselecttool.c',
+  'gimpfuzzyselecttool.c',
+  'gimpgegltool.c',
+  'gimpguidetool.c',
+  'gimphandletransformoptions.c',
+  'gimphandletransformtool.c',
+  'gimphealtool.c',
+  'gimphistogramoptions.c',
+  'gimpinkoptions-gui.c',
+  'gimpinktool.c',
+  'gimpiscissorsoptions.c',
+  'gimpiscissorstool.c',
+  'gimplevelstool.c',
+  'gimpmagnifyoptions.c',
+  'gimpmagnifytool.c',
+  'gimpmeasureoptions.c',
+  'gimpmeasuretool.c',
+  'gimpmoveoptions.c',
+  'gimpmovetool.c',
+  'gimpmybrushoptions-gui.c',
+  'gimpmybrushtool.c',
+  'gimpnpointdeformationoptions.c',
+  'gimpnpointdeformationtool.c',
+  'gimpoperationtool.c',
+  'gimppaintbrushtool.c',
+  'gimppaintoptions-gui.c',
+  'gimppainttool.c',
+  'gimppenciltool.c',
+  'gimpperspectiveclonetool.c',
+  'gimpperspectivetool.c',
+  'gimprectangleoptions.c',
+  'gimprectangleselectoptions.c',
+  'gimprectangleselecttool.c',
+  'gimpregionselectoptions.c',
+  'gimpregionselecttool.c',
+  'gimprotatetool.c',
+  'gimpsamplepointtool.c',
+  'gimpscaletool.c',
+  'gimpseamlesscloneoptions.c',
+  'gimpseamlessclonetool.c',
+  'gimpselectionoptions.c',
+  'gimpselectiontool.c',
+  'gimpsheartool.c',
+  'gimpsmudgetool.c',
+  'gimpsourcetool.c',
+  'gimptextoptions.c',
+  'gimptexttool-editor.c',
+  'gimptexttool.c',
+  'gimpthresholdtool.c',
+  'gimptilehandleriscissors.c',
+  'gimptool-progress.c',
+  'gimptool.c',
+  'gimptoolcontrol.c',
+  'gimptooloptions-gui.c',
+  'gimptransformoptions.c',
+  'gimptransformtool.c',
+  'gimptransformtoolundo.c',
+  'gimpunifiedtransformtool.c',
+  'gimpvectoroptions.c',
+  'gimpvectortool.c',
+  'gimpwarpoptions.c',
+  'gimpwarptool.c',
+  'tool_manager.c',
+]
+
+# TODO mkenums
+libapptools_sources += [
+  'tools-enums.c',
+]
+
+
+libapptools = static_library('apptools',
+  libapptools_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-Tools"',
+  ],
+  dependencies: [
+    gegl, gtk2,
+  ],
+)
+
diff --git a/app/vectors/meson.build b/app/vectors/meson.build
new file mode 100644
index 0000000..9519493
--- /dev/null
+++ b/app/vectors/meson.build
@@ -0,0 +1,26 @@
+libappvectors_sources = [
+  'gimpanchor.c',
+  'gimpbezierstroke.c',
+  'gimpstroke-new.c',
+  'gimpstroke.c',
+  'gimpvectors-compat.c',
+  'gimpvectors-export.c',
+  'gimpvectors-import.c',
+  'gimpvectors-preview.c',
+  'gimpvectors-warp.c',
+  'gimpvectors.c',
+  'gimpvectorsmodundo.c',
+  'gimpvectorspropundo.c',
+  'gimpvectorsundo.c',
+]
+
+libappvectors = static_library('appvectors',
+  libappvectors_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-Vectors"',
+  ],
+  dependencies: [
+    cairo, gegl, gdk_pixbuf,
+  ],
+)
diff --git a/app/widgets/meson.build b/app/widgets/meson.build
new file mode 100644
index 0000000..60815f7
--- /dev/null
+++ b/app/widgets/meson.build
@@ -0,0 +1,232 @@
+libappwidgets_sources = [
+  'gimpaction-history.c',
+  'gimpaction.c',
+  'gimpactioneditor.c',
+  'gimpactionfactory.c',
+  'gimpactiongroup.c',
+  'gimpactionview.c',
+  'gimpblobeditor.c',
+  'gimpbrusheditor.c',
+  'gimpbrushfactoryview.c',
+  'gimpbrushselect.c',
+  'gimpbuffersourcebox.c',
+  'gimpbufferview.c',
+  'gimpcairo-wilber.c',
+  'gimpcellrendererbutton.c',
+  'gimpcellrendererdashes.c',
+  'gimpcellrendererviewable.c',
+  'gimpchanneltreeview.c',
+  'gimpcircle.c',
+  'gimpclipboard.c',
+  'gimpcolorbar.c',
+  'gimpcolordialog.c',
+  'gimpcolordisplayeditor.c',
+  'gimpcoloreditor.c',
+  'gimpcolorframe.c',
+  'gimpcolorhistory.c',
+  'gimpcolormapeditor.c',
+  'gimpcolorpanel.c',
+  'gimpcolorselectorpalette.c',
+  'gimpcombotagentry.c',
+  'gimpcomponenteditor.c',
+  'gimpcontainerbox.c',
+  'gimpcontainercombobox.c',
+  'gimpcontainereditor.c',
+  'gimpcontainerentry.c',
+  'gimpcontainergridview.c',
+  'gimpcontainericonview.c',
+  'gimpcontainerpopup.c',
+  'gimpcontainertreestore.c',
+  'gimpcontainertreeview-dnd.c',
+  'gimpcontainertreeview.c',
+  'gimpcontainerview-utils.c',
+  'gimpcontainerview.c',
+  'gimpcontrollereditor.c',
+  'gimpcontrollerinfo.c',
+  'gimpcontrollerkeyboard.c',
+  'gimpcontrollerlist.c',
+  'gimpcontrollermouse.c',
+  'gimpcontrollers.c',
+  'gimpcontrollerwheel.c',
+  'gimpcursor.c',
+  'gimpcurveview.c',
+  'gimpdasheditor.c',
+  'gimpdataeditor.c',
+  'gimpdatafactoryview.c',
+  'gimpdeviceeditor.c',
+  'gimpdeviceinfo-coords.c',
+  'gimpdeviceinfo.c',
+  'gimpdeviceinfoeditor.c',
+  'gimpdevicemanager.c',
+  'gimpdevices.c',
+  'gimpdevicestatus.c',
+  'gimpdial.c',
+  'gimpdialogfactory.c',
+  'gimpdnd-xds.c',
+  'gimpdnd.c',
+  'gimpdock.c',
+  'gimpdockable.c',
+  'gimpdockbook.c',
+  'gimpdockcolumns.c',
+  'gimpdockcontainer.c',
+  'gimpdocked.c',
+  'gimpdockwindow.c',
+  'gimpdocumentview.c',
+  'gimpdrawabletreeview.c',
+  'gimpdynamicseditor.c',
+  'gimpdynamicsfactoryview.c',
+  'gimpdynamicsoutputeditor.c',
+  'gimpeditor.c',
+  'gimpenumaction.c',
+  'gimperrorconsole.c',
+  'gimperrordialog.c',
+  'gimpexportdialog.c',
+  'gimpfgbgeditor.c',
+  'gimpfgbgview.c',
+  'gimpfiledialog.c',
+  'gimpfileprocview.c',
+  'gimpfilleditor.c',
+  'gimpfontselect.c',
+  'gimpfontview.c',
+  'gimpgradienteditor.c',
+  'gimpgradientselect.c',
+  'gimpgrideditor.c',
+  'gimphandlebar.c',
+  'gimphelp.c',
+  'gimphistogrambox.c',
+  'gimphistogrameditor.c',
+  'gimphistogramview.c',
+  'gimpiconpicker.c',
+  'gimpiconsizescale.c',
+  'gimpimagecommenteditor.c',
+  'gimpimageeditor.c',
+  'gimpimageparasiteview.c',
+  'gimpimageprofileview.c',
+  'gimpimagepropview.c',
+  'gimpimageview.c',
+  'gimpitemtreeview.c',
+  'gimplanguagecombobox.c',
+  'gimplanguageentry.c',
+  'gimplanguagestore-parser.c',
+  'gimplanguagestore.c',
+  'gimplayermodebox.c',
+  'gimplayermodecombobox.c',
+  'gimplayertreeview.c',
+  'gimpmenudock.c',
+  'gimpmenufactory.c',
+  'gimpmessagebox.c',
+  'gimpmessagedialog.c',
+  'gimpnavigationview.c',
+  'gimpopendialog.c',
+  'gimpoverlaybox.c',
+  'gimpoverlaychild.c',
+  'gimpoverlaydialog.c',
+  'gimpoverlayframe.c',
+  'gimppaletteeditor.c',
+  'gimppaletteselect.c',
+  'gimppaletteview.c',
+  'gimppanedbox.c',
+  'gimppatternfactoryview.c',
+  'gimppatternselect.c',
+  'gimppdbdialog.c',
+  'gimppickablebutton.c',
+  'gimppickablepopup.c',
+  'gimppixbuf.c',
+  'gimppluginview.c',
+  'gimppolar.c',
+  'gimppopup.c',
+  'gimpprefsbox.c',
+  'gimpprocedureaction.c',
+  'gimpprogressbox.c',
+  'gimpprogressdialog.c',
+  'gimppropwidgets.c',
+  'gimpradioaction.c',
+  'gimprender.c',
+  'gimpsamplepointeditor.c',
+  'gimpsavedialog.c',
+  'gimpscalebutton.c',
+  'gimpsearchpopup.c',
+  'gimpselectiondata.c',
+  'gimpselectioneditor.c',
+  'gimpsessioninfo-aux.c',
+  'gimpsessioninfo-book.c',
+  'gimpsessioninfo-dock.c',
+  'gimpsessioninfo-dockable.c',
+  'gimpsessioninfo.c',
+  'gimpsessionmanaged.c',
+  'gimpsettingsbox.c',
+  'gimpsettingseditor.c',
+  'gimpsizebox.c',
+  'gimpspinscale.c',
+  'gimpstringaction.c',
+  'gimpstrokeeditor.c',
+  'gimpsymmetryeditor.c',
+  'gimptagentry.c',
+  'gimptagpopup.c',
+  'gimptemplateeditor.c',
+  'gimptemplateview.c',
+  'gimptextbuffer-serialize.c',
+  'gimptextbuffer.c',
+  'gimptexteditor.c',
+  'gimptextproxy.c',
+  'gimptextstyleeditor.c',
+  'gimptexttag.c',
+  'gimpthumbbox.c',
+  'gimptoggleaction.c',
+  'gimptoolbox-color-area.c',
+  'gimptoolbox-dnd.c',
+  'gimptoolbox-image-area.c',
+  'gimptoolbox-indicator-area.c',
+  'gimptoolbox.c',
+  'gimptooleditor.c',
+  'gimptooloptionseditor.c',
+  'gimptoolpalette.c',
+  'gimptoolpreseteditor.c',
+  'gimptoolpresetfactoryview.c',
+  'gimptranslationstore.c',
+  'gimpuimanager.c',
+  'gimpundoeditor.c',
+  'gimpvectorstreeview.c',
+  'gimpview-popup.c',
+  'gimpview.c',
+  'gimpviewablebox.c',
+  'gimpviewablebutton.c',
+  'gimpviewabledialog.c',
+  'gimpviewrenderer-frame.c',
+  'gimpviewrenderer-utils.c',
+  'gimpviewrenderer.c',
+  'gimpviewrendererbrush.c',
+  'gimpviewrendererbuffer.c',
+  'gimpviewrendererdrawable.c',
+  'gimpviewrenderergradient.c',
+  'gimpviewrendererimage.c',
+  'gimpviewrendererimagefile.c',
+  'gimpviewrendererlayer.c',
+  'gimpviewrendererpalette.c',
+  'gimpviewrenderervectors.c',
+  'gimpwidgets-constructors.c',
+  'gimpwidgets-utils.c',
+  'gimpwindow.c',
+  'gimpwindowstrategy.c',
+  'gtkhwrapbox.c',
+  'gtkwrapbox.c',
+]
+
+# TODO mkenums
+libappwidgets_sources += [
+  'widgets-enums.c',
+]
+
+
+libappwidgets = static_library('appwidgets',
+  libappwidgets_sources,
+  include_directories: [ rootInclude, rootAppInclude, ],
+  c_args: [
+    '-DG_LOG_DOMAIN="Gimp-Widgets"',
+    '-DISO_CODES_LOCATION="' + isocodes_location  +'"',
+    '-DISO_CODES_LOCALEDIR="'+ isocodes_localedir +'"',
+  ],
+  dependencies: [
+    gegl, gtk2,
+  ],
+)
diff --git a/app/xcf/meson.build b/app/xcf/meson.build
index 6a38bf6..28975d9 100644
--- a/app/xcf/meson.build
+++ b/app/xcf/meson.build
@@ -1,19 +1,20 @@
+libappxcf_sources = [
+  'xcf-load.c',
+  'xcf-read.c',
+  'xcf-save.c',
+  'xcf-seek.c',
+  'xcf-utils.c',
+  'xcf-write.c',
+  'xcf.c',
+]
 
 libappxcf = static_library('appxcf',
-  [
-    'xcf-load.c',
-    'xcf-read.c',
-    'xcf-save.c',
-    'xcf-seek.c',
-    'xcf-utils.c',
-    'xcf-write.c',
-    'xcf.c',
-  ],
+  libappxcf_sources,
   include_directories: [ rootInclude, rootAppInclude, ],
   c_args: [
     '-DG_LOG_DOMAIN="Gimp-XCF"',
   ],
   dependencies: [
-    cairo, gegl, gdk_pixbuf
+    cairo, gegl, gdk_pixbuf, zlib
   ],
 )
diff --git a/meson.build b/meson.build
index 8130737..469ef6a 100644
--- a/meson.build
+++ b/meson.build
@@ -56,6 +56,8 @@ sysconf_version    = '2.0'
 tool_version       = '2.0'
 user_version       = '2.9'
 
+gimp_command = 'gimp-' + app_version
+
 stable = (minor_version % 2 == 0)
 conf.set10('GIMP_UNSTABLE', not stable)
 
@@ -110,6 +112,8 @@ babl              = dependency('babl',               version: babl_minver)
 cairo_minver      = '>=1.12.2'
 cairo             = dependency('cairo',              version: cairo_minver)
 
+dbus_glib         = dependency('dbus-glib-1')
+
 fontconfig_minver = os_win32 ? '>=2.11.1' : '>=2.2.0'
 fontconfig_name   = 'fontconfig' + (os_win32 ? '_win32' : '')
 fontconfig        = dependency(fontconfig_name,      version: fontconfig_minver)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]