1
1
mirror of https://gitlab.gnome.org/GNOME/gimp.git synced 2025-10-06 05:22:40 +02:00

Compare commits

...

21 Commits

Author SHA1 Message Date
Salamandar
5f46b1a4fc Fix mypaint_brushes use. Wno-deprecated-declarations. 2018-04-20 16:42:19 +02:00
Salamandar
79f44ddd1d Post-merge commit, backport autotools modifs 2018-04-20 16:06:27 +02:00
Salamandar
a21efe50f4 Merge branch 'master' into meson 2018-04-20 15:52:03 +02:00
Salamandar
11af20fa1b Backport LibMyPaint modifications to meson. 2018-04-11 16:24:47 +02:00
Salamandar
4aefa2341b Backport master modifs to meson branch. 2018-04-11 16:23:46 +02:00
Salamandar
09b9eab695 Merge branch 'master' into meson 2018-04-11 15:13:29 +02:00
Salamandar
8094acfc87 Fix dependencies in pkgbuild 2018-04-11 14:57:57 +02:00
Salamandar
f0d3c4a7bd Cleanup PDB build 2018-03-29 13:33:11 +02:00
Salamandar
507cada6b7 Backport master modifications to meson 2018-03-29 12:14:45 +02:00
Salamandar
0238af5ba4 Fix merge 2018-03-29 12:01:11 +02:00
Salamandar
6bcde8332c Merge branch 'master' into meson 2018-03-29 10:22:23 +02:00
Félix Piédallu
f508df5172 Gtk+2 fails to build with strict-prototypes. Do not use Werror=. 2018-02-16 17:19:32 +01:00
Félix Piédallu
e88bd87cb1 Add MingW build system 2018-02-16 14:40:52 +01:00
Félix Piédallu
1c6b177150 Add Archlinux build system 2018-02-16 14:40:52 +01:00
Félix Piédallu
3f537e9007 Add include guard for windows 2018-02-16 14:40:52 +01:00
Félix Piédallu
8efaa10fd3 Fix: Rename macros as it conflicts with Mingw headers.
* DATADIR -> GIMPDATADIR
* SYSCONFDIR -> GIMPSYSCONFDIR
* SYSDATADIR -> GIMPSYSDATADIR
2018-02-16 14:40:52 +01:00
Félix Piédallu
33a88938a7 include .c ?? That's just weird and just can't work. 2018-02-16 14:40:52 +01:00
Félix Piédallu
78488a25be Fix Python file : Prefer python2 to python that may point on python3 on modern installs. 2018-02-16 14:40:52 +01:00
Félix Piédallu
c673cb8ef3 Fix Python file tabs/spaces consistency 2018-02-16 14:40:51 +01:00
Félix Piédallu
e18edea1ce Fix encoding... 2018-02-16 14:40:51 +01:00
Félix Piédallu
ce4dc2ac96 Add basic Meson files.
* **/meson.build
* meson_options.txt
* *version.h{.in}
* tools/generate_changelog.sh : custom script to easily gen changelog.
* app/tests/create_test_env.sh
* Fix default install directories, according to https://github.com/mesonbuild/meson/issues/1637#issuecomment-338281018
Successful build of libgimp*

TODO : find workaround for icons+subdir generation.

MingW support:
* Use pygobject-codegen instead of pygtk-codegen
* mypaint-brushes not available, setting as non-required (for now)
2018-02-16 14:40:46 +01:00
158 changed files with 10797 additions and 55 deletions

14
app-tools/meson.build Normal file
View File

@@ -0,0 +1,14 @@
gimp_debug_tool = executable('gimp-debug-tool',
'gimp-debug-tool.c',
include_directories: rootInclude,
dependencies: [
gio,
gegl,
gtk2,
],
link_with: [
libapp,
libappwidgets,
],
)

107
app/actions/meson.build Normal file
View File

@@ -0,0 +1,107 @@
libappactions_sources = [
'actions.c',
'brush-editor-actions.c',
'brushes-actions.c',
'buffers-actions.c',
'buffers-commands.c',
'channels-actions.c',
'channels-commands.c',
'colormap-actions.c',
'colormap-commands.c',
'context-actions.c',
'context-commands.c',
'cursor-info-actions.c',
'cursor-info-commands.c',
'dashboard-actions.c',
'dashboard-commands.c',
'data-commands.c',
'data-editor-commands.c',
'debug-actions.c',
'debug-commands.c',
'dialogs-actions.c',
'dialogs-commands.c',
'dock-actions.c',
'dock-commands.c',
'dockable-actions.c',
'dockable-commands.c',
'documents-actions.c',
'documents-commands.c',
'drawable-actions.c',
'drawable-commands.c',
'dynamics-actions.c',
'dynamics-editor-actions.c',
'edit-actions.c',
'edit-commands.c',
'error-console-actions.c',
'error-console-commands.c',
'file-actions.c',
'file-commands.c',
'filters-actions.c',
'filters-commands.c',
'fonts-actions.c',
'fonts-commands.c',
'gimpgeglprocedure.c',
'gradient-editor-actions.c',
'gradient-editor-commands.c',
'gradients-actions.c',
'gradients-commands.c',
'help-actions.c',
'help-commands.c',
'image-actions.c',
'image-commands.c',
'images-actions.c',
'images-commands.c',
'items-actions.c',
'items-commands.c',
'layers-actions.c',
'layers-commands.c',
'mypaint-brushes-actions.c',
'palette-editor-actions.c',
'palette-editor-commands.c',
'palettes-actions.c',
'palettes-commands.c',
'patterns-actions.c',
'plug-in-actions.c',
'plug-in-commands.c',
'procedure-commands.c',
'quick-mask-actions.c',
'quick-mask-commands.c',
'sample-points-actions.c',
'sample-points-commands.c',
'select-actions.c',
'select-commands.c',
'templates-actions.c',
'templates-commands.c',
'text-editor-actions.c',
'text-editor-commands.c',
'text-tool-actions.c',
'text-tool-commands.c',
'tool-options-actions.c',
'tool-options-commands.c',
'tool-preset-editor-actions.c',
'tool-preset-editor-commands.c',
'tool-presets-actions.c',
'tool-presets-commands.c',
'tools-actions.c',
'tools-commands.c',
'vectors-actions.c',
'vectors-commands.c',
'view-actions.c',
'view-commands.c',
'window-actions.c',
'window-commands.c',
'windows-actions.c',
'windows-commands.c',
]
libappactions = static_library('appactions',
libappactions_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: [
'-DG_LOG_DOMAIN="Gimp-Actions"',
],
dependencies: [
gegl, gdk_pixbuf, gtk2,
],
)

View File

@@ -15,7 +15,7 @@ endif
AM_CPPFLAGS = \
-DG_LOG_DOMAIN=\"Gimp-Config\" \
-DGIMP_APP_VERSION_STRING=\"$(GIMP_APP_VERSION)\" \
-DDATADIR=\""$(datadir)"\" \
-DGIMPDATADIR=\""$(datadir)"\" \
-I$(top_builddir) \
-I$(top_srcdir) \
-I$(top_builddir)/app \

72
app/config/meson.build Normal file
View File

@@ -0,0 +1,72 @@
appconfigenums = custom_target('config-enums.c',
input : [ 'config-enums.h', ],
output: [ 'config-enums.c', ],
command: app_mkenums_custom_target_command,
capture: true,
)
libappconfig_sources = [
'gimpconfig-dump.c',
'gimpconfig-file.c',
'gimpconfig-utils.c',
'gimpcoreconfig.c',
'gimpdialogconfig.c',
'gimpdisplayconfig.c',
'gimpdisplayoptions.c',
'gimpgeglconfig.c',
'gimpguiconfig.c',
'gimplangrc.c',
'gimppluginconfig.c',
'gimprc-deserialize.c',
'gimprc-serialize.c',
'gimprc-unknown.c',
'gimprc.c',
'gimpxmlparser.c',
appconfigenums,
]
libappconfig = static_library('appconfig',
libappconfig_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: [ '-DG_LOG_DOMAIN="Gimp-Config"', ],
dependencies: [
cairo, gegl, gdk_pixbuf, gio, gio_specific, gtk2, libmypaint,
],
)
test('app-config',
executable('test-config',
[ 'test-config.c', app_debug_files, ],
include_directories: [ rootInclude, rootAppInclude, ],
dependencies: [
gegl, gio, gio_specific,
],
link_with: [
libgimpbase,
libgimpconfig,
libgimpcolor,
libgimpmath,
libgimpmodule,
libgimpthumb,
libappcore,
libappconfig,
libappfile,
libappgegl,
libappinternalprocs,
libapplayermodes,
libapplayermodeslegacy,
libappoperations,
libapppaint,
libapppdb,
libappplugin,
libapptext,
libappvectors,
libappxcf,
],
install: false,
),
suite: 'app'
)

View File

@@ -39,7 +39,11 @@
#include "gimptempbuf.h"
#include "gimpviewable.h"
#ifdef MESON_BUILD
#include "icons/Color/gimp-core-pixbufs.h"
#else
#include "icons/Color/gimp-core-pixbufs.c"
#endif
enum

233
app/core/meson.build Normal file
View File

@@ -0,0 +1,233 @@
appcoreenums = custom_target('core-enums',
input : [ 'core-enums.h', ],
output: [ 'core-enums.c', ],
command: app_mkenums_custom_target_command,
capture: true,
)
appcoremarshal = gnome.genmarshal('gimpmarshal',
prefix: 'gimp_marshal',
sources: 'gimpmarshal.list',
install_header: false,
)
libappcore_sources = [
'gimp-batch.c',
'gimp-cairo.c',
'gimp-contexts.c',
'gimp-data-factories.c',
'gimp-edit.c',
'gimp-filter-history.c',
'gimp-gradients.c',
'gimp-gui.c',
'gimp-internal-data.c',
'gimp-memsize.c',
'gimp-modules.c',
'gimp-palettes.c',
'gimp-parallel.cc',
'gimp-parasites.c',
'gimp-spawn.c',
'gimp-tags.c',
'gimp-templates.c',
'gimp-transform-resize.c',
'gimp-transform-utils.c',
'gimp-units.c',
'gimp-user-install.c',
'gimp-utils.c',
'gimp.c',
'gimpbezierdesc.c',
'gimpboundary.c',
'gimpbrush-boundary.c',
'gimpbrush-load.c',
'gimpbrush-transform.cc',
'gimpbrush.c',
'gimpbrushcache.c',
'gimpbrushclipboard.c',
'gimpbrushgenerated-load.c',
'gimpbrushgenerated-save.c',
'gimpbrushgenerated.c',
'gimpbrushpipe-load.c',
'gimpbrushpipe.c',
'gimpbuffer.c',
'gimpchannel-combine.c',
'gimpchannel-select.c',
'gimpchannel.c',
'gimpchannelpropundo.c',
'gimpchannelundo.c',
'gimpcontainer-filter.c',
'gimpcontainer.c',
'gimpcontext.c',
'gimpcoords-interpolate.c',
'gimpcoords.c',
'gimpcurve-load.c',
'gimpcurve-map.c',
'gimpcurve-save.c',
'gimpcurve.c',
'gimpdashpattern.c',
'gimpdata.c',
'gimpdatafactory.c',
'gimpdocumentlist.c',
'gimpdrawable-bucket-fill.c',
'gimpdrawable-combine.c',
'gimpdrawable-edit.c',
'gimpdrawable-equalize.c',
'gimpdrawable-fill.c',
'gimpdrawable-filters.c',
'gimpdrawable-floating-selection.c',
'gimpdrawable-foreground-extract.c',
'gimpdrawable-gradient.c',
'gimpdrawable-histogram.c',
'gimpdrawable-levels.c',
'gimpdrawable-offset.c',
'gimpdrawable-operation.c',
'gimpdrawable-preview.c',
'gimpdrawable-shadow.c',
'gimpdrawable-stroke.c',
'gimpdrawable-transform.c',
'gimpdrawable.c',
'gimpdrawablefilter.c',
'gimpdrawablemodundo.c',
'gimpdrawablestack.c',
'gimpdrawableundo.c',
'gimpdynamics-load.c',
'gimpdynamics-save.c',
'gimpdynamics.c',
'gimpdynamicsoutput.c',
'gimperror.c',
'gimpfilloptions.c',
'gimpfilter.c',
'gimpfilteredcontainer.c',
'gimpfilterstack.c',
'gimpfloatingselectionundo.c',
'gimpgradient-load.c',
'gimpgradient-save.c',
'gimpgradient.c',
'gimpgrid.c',
'gimpgrouplayer.c',
'gimpgrouplayerundo.c',
'gimpguide.c',
'gimpguideundo.c',
'gimphistogram.c',
'gimpidtable.c',
'gimpimage-arrange.c',
'gimpimage-color-profile.c',
'gimpimage-colormap.c',
'gimpimage-convert-indexed.c',
'gimpimage-convert-precision.c',
'gimpimage-convert-type.c',
'gimpimage-crop.c',
'gimpimage-duplicate.c',
'gimpimage-fade.c',
'gimpimage-flip.c',
'gimpimage-grid.c',
'gimpimage-guides.c',
'gimpimage-item-list.c',
'gimpimage-merge.c',
'gimpimage-metadata.c',
'gimpimage-new.c',
'gimpimage-pick-color.c',
'gimpimage-pick-item.c',
'gimpimage-preview.c',
'gimpimage-quick-mask.c',
'gimpimage-resize.c',
'gimpimage-rotate.c',
'gimpimage-sample-points.c',
'gimpimage-scale.c',
'gimpimage-snap.c',
'gimpimage-symmetry.c',
'gimpimage-undo-push.c',
'gimpimage-undo.c',
'gimpimage.c',
'gimpimagefile.c',
'gimpimageundo.c',
'gimpitem-exclusive.c',
'gimpitem-linked.c',
'gimpitem-preview.c',
'gimpitem.c',
'gimpitempropundo.c',
'gimpitemstack.c',
'gimpitemtree.c',
'gimpitemundo.c',
'gimplayer-floating-selection.c',
'gimplayer-new.c',
'gimplayer.c',
'gimplayermask.c',
'gimplayermaskpropundo.c',
'gimplayermaskundo.c',
'gimplayerpropundo.c',
'gimplayerstack.c',
'gimplayerundo.c',
'gimplist.c',
'gimpmaskundo.c',
'gimpmybrush-load.c',
'gimpmybrush.c',
'gimpobject.c',
'gimpobjectqueue.c',
'gimppaintinfo.c',
'gimppalette-import.c',
'gimppalette-load.c',
'gimppalette-save.c',
'gimppalette.c',
'gimppalettemru.c',
'gimpparamspecs-desc.c',
'gimpparamspecs-duplicate.c',
'gimpparamspecs.c',
'gimpparasitelist.c',
'gimppattern-load.c',
'gimppattern.c',
'gimppatternclipboard.c',
'gimppdbprogress.c',
'gimppickable-auto-shrink.c',
'gimppickable-contiguous-region.c',
'gimppickable.c',
'gimpprogress.c',
'gimpprojectable.c',
'gimpprojection.c',
'gimpsamplepoint.c',
'gimpsamplepointundo.c',
'gimpscanconvert.c',
'gimpselection.c',
'gimpsettings.c',
'gimpstrokeoptions.c',
'gimpsubprogress.c',
'gimpsymmetry-mandala.c',
'gimpsymmetry-mirror.c',
'gimpsymmetry-tiling.c',
'gimpsymmetry.c',
'gimptag.c',
'gimptagcache.c',
'gimptagged.c',
'gimptaggedcontainer.c',
'gimptempbuf.c',
'gimptemplate.c',
'gimptilehandlerprojectable.c',
'gimptoolinfo.c',
'gimptooloptions.c',
'gimptoolpreset-load.c',
'gimptoolpreset-save.c',
'gimptoolpreset.c',
'gimptreehandler.c',
'gimpundo.c',
'gimpundostack.c',
'gimpunit.c',
'gimpviewable.c',
appcoreenums,
appcoremarshal,
cursors_sources,
pickers_sources,
icons_core_sources,
]
libappcore = static_library('appcore',
libappcore_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: [
'-DG_LOG_DOMAIN="Gimp-Core"',
],
dependencies: [
cairo, gegl, gdk_pixbuf, libmypaint, gexiv2, math
],
)

67
app/dialogs/meson.build Normal file
View File

@@ -0,0 +1,67 @@
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',
gitversion_h,
]
# 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,
],
)

View File

@@ -515,8 +515,8 @@ gimp_display_shell_format_title (GimpDisplayShell *shell,
/* Other cool things to be added:
* %r = xresolution
* %R = yresolution
* %<EFBFBD> = image's fractal dimension
* %<EFBFBD> = the answer to everything - (implemented)
* %ø = image's fractal dimension
* %þ = the answer to everything - (implemented)
*/
default:

108
app/display/meson.build Normal file
View File

@@ -0,0 +1,108 @@
appdisplayenums = custom_target('display-enums.c',
input : [ 'display-enums.h', ],
output: [ 'display-enums.c', ],
command: app_mkenums_custom_target_command,
capture: true,
)
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-utils.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',
'gimptoolgyroscope.c',
'gimptoolhandlegrid.c',
'gimptoolline.c',
'gimptoolpath.c',
'gimptoolpolygon.c',
'gimptoolrectangle.c',
'gimptoolrotategrid.c',
'gimptoolsheargrid.c',
'gimptooltransformgrid.c',
'gimptoolwidget.c',
appdisplayenums,
appcoremarshal,
gitversion_h,
]
libappdisplay = static_library('appdisplay',
libappdisplay_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: [
'-DG_LOG_DOMAIN="Gimp-Display"',
],
dependencies: [
gegl, gtk2,
],
)

18
app/file/meson.build Normal file
View File

@@ -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,
],
)

35
app/gegl/meson.build Normal file
View File

@@ -0,0 +1,35 @@
appgeglenums = custom_target('gimp-gegl-enums.c',
input : [ 'gimp-gegl-enums.h', ],
output: [ 'gimp-gegl-enums.c', ],
command: app_mkenums_custom_target_command,
capture: true,
)
libappgegl_sources = [
'gimp-babl-compat.c',
'gimp-babl.c',
'gimp-gegl-apply-operation.c',
'gimp-gegl-loops-sse2.c',
'gimp-gegl-loops.cc',
'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',
appgeglenums,
]
libappgegl = static_library('appgegl',
libappgegl_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: [
'-DG_LOG_DOMAIN="Gimp-GEGL"',
],
dependencies: [
cairo, gegl, gdk_pixbuf,
],
)

5
app/git-version.h.in Normal file
View File

@@ -0,0 +1,5 @@
#pragma once
#define GIMP_GIT_VERSION "@GIMP_GIT_VERSION@"
#define GIMP_GIT_VERSION_ABBREV "@GIMP_GIT_VERSION_ABBREV@"
#define GIMP_GIT_LAST_COMMIT_YEAR "@GIMP_GIT_LAST_COMMIT_YEAR@"

37
app/gui/meson.build Normal file
View File

@@ -0,0 +1,37 @@
gimpdbusservice_gen = gnome.gdbus_codegen(
'gimpdbusservice-generated',
'dbus-service.xml',
interface_prefix: 'org.gimp.GIMP.',
namespace: 'GimpDBusService',
)
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',
gimpdbusservice_gen,
]
# Workaround for generated header included in other directories.
configInclude = include_directories('.')
libappgui = static_library('appgui',
libappgui_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: [
'-DG_LOG_DOMAIN="Gimp-GUI"',
],
dependencies: [
cairo, dbus_glib, gegl, gdk_pixbuf, gio_specific, gtk2
],
install: false,
)

22
app/menus/meson.build Normal file
View File

@@ -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
],
)

159
app/meson.build Normal file
View File

@@ -0,0 +1,159 @@
rootAppInclude = include_directories('.')
app_mkenums_custom_target_command = [
gimp_mkenums,
'--fhead','#include "config.h"\n'
+ '#include <gio/gio.h>\n'
+ '#include "libgimpbase/gimpbase.h"\n'
+ '#include "core/core-enums.h"\n'
+ '#include "@INPUT@"\n'
+ '#include "gimp-intl.h"\n',
gimp_mkenums_custom_target_commonargs,
]
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')
app_debug_files = files(
'gimp-debug.c',
'gimp-log.c',
)
# Top-level library
app_cflags = [
'-DG_LOG_DOMAIN="Gimp"',
'-DGIMP_APP_GLUE_COMPILATION',
]
libapp_sources = [
'app.c',
'errors.c',
'gimp-debug.c',
'gimp-log.c',
'gimp-version.c',
'language.c',
'sanity.c',
'signals.c',
'tests.c',
'unique.c',
gitversion_h,
gimpdbusservice_gen,
]
libapp = static_library('app',
libapp_sources,
include_directories: [ rootInclude, rootAppInclude, configInclude, ],
c_args: app_cflags,
dependencies: [
gegl, gdk_pixbuf, gtk2,
],
)
# Those subdirs need to link againts the first ones
subdir('config')
subdir('tests')
app_links = [
libappconfig,
libappcore,
libappfile,
libappgegl,
libappinternalprocs,
libapplayermodes,
libapplayermodeslegacy,
libappoperations,
libapppaint,
libapppdb,
libappplugin,
libapptext,
libappvectors,
libappxcf,
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmath,
libgimpmodule,
libgimpthumb,
]
app_gui_links = [
libappactions,
libappdialogs,
libappdisplay,
libappgui,
libappmenus,
libapppropgui,
libapptools,
libappwidgets,
libgimpwidgets,
]
app_deps = [
gio, gtk2, pangocairo, pangoft2, gegl, lcms, gexiv2, drmingw,
]
# Executables
rc_name = 'gimp-'+ app_version
rc_file = platform_win32 ? windows.compile_resources(
gimp_app_rc,
args: [
'--define', 'ORIGINALFILENAME_STR="@0@"'.format(rc_name+'.exe'),
'--define', 'INTERNALNAME_STR="@0@"' .format(rc_name),
'--define', 'TOP_SRCDIR="@0@"' .format(meson.source_root()),
],
include_directories: [
rootInclude, appInclude,
],
) : []
gimpconsole_exe = executable('gimp-console-'+app_version,
libapp_sources + [ 'main.c', rc_file, ],
c_args: app_cflags + [ '-DGIMP_CONSOLE_COMPILATION', ],
include_directories: [ rootInclude, ],
dependencies: app_deps,
link_with: app_links,
install: true,
)
rc_name = 'gimp-console-'+ app_version
rc_file = platform_win32 ? windows.compile_resources(
gimp_app_rc,
args: [
'--define', 'ORIGINALFILENAME_STR="@0@"'.format(rc_name+'.exe'),
'--define', 'INTERNALNAME_STR="@0@"' .format(rc_name),
'--define', 'TOP_SRCDIR="@0@"' .format(meson.source_root()),
],
include_directories: [
rootInclude, appInclude,
],
) : []
gimpmain_exe = executable('gimp-'+app_version,
libapp_sources + [ 'main.c', rc_file, ],
c_args: app_cflags + [ ],
include_directories: [ rootInclude, ],
dependencies: app_deps,
link_with: app_links + app_gui_links,
install: true,
)

View File

@@ -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,
],
)

View File

@@ -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,
],
)

View File

@@ -0,0 +1,62 @@
appoperationsenums = custom_target('operations-enums.c',
input : [ 'operations-enums.h', ],
output: [ 'operations-enums.c', ],
command: app_mkenums_custom_target_command,
capture: true,
)
libappoperations_sources = [
'gimp-operation-config.c',
'gimp-operations.c',
'gimpbrightnesscontrastconfig.c',
'gimpcageconfig.c',
'gimpcolorbalanceconfig.c',
'gimpcurvesconfig.c',
'gimphuesaturationconfig.c',
'gimplevelsconfig.c',
'gimpoperationborder.c',
'gimpoperationbrightnesscontrast.c',
'gimpoperationbuffersourcevalidate.c',
'gimpoperationcagecoefcalc.c',
'gimpoperationcagetransform.c',
'gimpoperationcolorbalance.c',
'gimpoperationcolorize.c',
'gimpoperationcomposecrop.c',
'gimpoperationcurves.c',
'gimpoperationdesaturate.c',
'gimpoperationequalize.c',
'gimpoperationflood.c',
'gimpoperationgradient.c',
'gimpoperationgrow.c',
'gimpoperationhistogramsink.c',
'gimpoperationhuesaturation.c',
'gimpoperationlevels.c',
'gimpoperationmaskcomponents.c',
'gimpoperationpointfilter.c',
'gimpoperationposterize.c',
'gimpoperationprofiletransform.c',
'gimpoperationscalarmultiply.c',
'gimpoperationsemiflatten.c',
'gimpoperationsetalpha.c',
'gimpoperationshrink.c',
'gimpoperationthreshold.c',
'gimpoperationthresholdalpha.c',
appoperationsenums
]
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')

View File

@@ -0,0 +1,10 @@
executable('test-operations',
'test-operations.c',
include_directories: [ rootInclude, rootAppInclude, ],
dependencies: [
cairo, gegl, gdk_pixbuf, glib, pangocairo, pangoft2,
],
build_by_default: false,
)

59
app/paint/meson.build Normal file
View File

@@ -0,0 +1,59 @@
apppaintenums = custom_target('paint-enums.c',
input : [ 'paint-enums.h', ],
output: [ 'paint-enums.c', ],
command: app_mkenums_custom_target_command,
capture: true,
)
libapppaint_sources = [
'gimp-paint.c',
'gimpairbrush.c',
'gimpairbrushoptions.c',
'gimpbrushcore-loops.cc',
'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.cc',
'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',
apppaintenums,
appcoremarshal,
]
libapppaint = static_library('apppaint',
libapppaint_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: [
'-DG_LOG_DOMAIN="Gimp-Paint"',
],
dependencies: [
cairo, gegl, gdk_pixbuf, libmypaint,
],
)

93
app/pdb/meson.build Normal file
View File

@@ -0,0 +1,93 @@
libapppdb_sources = [
'gimp-pdb-compat.c',
'gimppdb-query.c',
'gimppdb-utils.c',
'gimppdb.c',
'gimppdbcontext.c',
'gimppdberror.c',
'gimpprocedure.c',
appcoremarshal,
]
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-edit-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,
],
)

51
app/plug-in/meson.build Normal file
View File

@@ -0,0 +1,51 @@
apppluginenums = custom_target('plug-in-enums.c',
input : [ 'plug-in-enums.h', ],
output: [ 'plug-in-enums.c', ],
command: app_mkenums_custom_target_command,
capture: true,
)
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',
apppluginenums,
appcoremarshal,
]
libappplugin = static_library('appplug-in',
libappplugin_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: [
'-DG_LOG_DOMAIN="Gimp-Plug-In"',
],
dependencies: [
cairo, gegl, gdk_pixbuf,
],
)

29
app/propgui/meson.build Normal file
View File

@@ -0,0 +1,29 @@
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-panorama-projection.c',
'gimppropgui-recursive-transform.c',
'gimppropgui-shadows-highlights.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"',
],
dependencies: [
gegl, gtk2,
],
)

View File

@@ -0,0 +1,29 @@
#!/bin/bash
# Copy tests resources
for dir in files gimpdir gimpdir-empty; do
rm -rf "${MESON_BUILD_ROOT}/${MESON_SUBDIR}/${dir}"
cp -r "${MESON_SOURCE_ROOT}/${MESON_SUBDIR}/${dir}" \
"${MESON_BUILD_ROOT}/${MESON_SUBDIR}"
done
# Link to Color icon theme for tests
IconsRoot="${MESON_SOURCE_ROOT}/icons/Color"
IconsDirs=$(find "${IconsRoot}" -name [0-9]* -type d -printf '%f\n' | sort -n)
for dir in ${IconsDirs} ; do
mkdir "${MESON_BUILD_ROOT}/${MESON_SUBDIR}/gimp-test-icon-theme/hicolor/${dir}x${dir}" -p
LnName="${MESON_BUILD_ROOT}/${MESON_SUBDIR}/gimp-test-icon-theme/hicolor/${dir}x${dir}/apps"
rm -rf "${LnName}"
ln -s "${IconsRoot}/${dir}" "${LnName}"
done
LnName="${MESON_BUILD_ROOT}/${MESON_SUBDIR}/gimp-test-icon-theme/hicolor/index.theme"
rm -rf "${LnName}"
ln -s "${IconsRoot}/index.theme" "${LnName}"
# Create output dirs
rm -rf "${MESON_BUILD_ROOT}/${MESON_SUBDIR}/gimpdir-output"
for dir in brushes gradients patterns; do
mkdir -p "${MESON_BUILD_ROOT}/${MESON_SUBDIR}/gimpdir-output/${dir}"
done

92
app/tests/meson.build Normal file
View File

@@ -0,0 +1,92 @@
apptests_includes = [
rootInclude, rootAppInclude
]
apptests_deps = [
pangocairo, pangoft2, 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,
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmath,
libgimpmodule,
libgimpthumb,
libgimpwidgets,
]
libapptestutils_sources = [
'gimp-app-test-utils.c',
'gimp-test-session-utils.c',
]
libapptestutils = static_library('apptestutils',
libapptestutils_sources,
include_directories: apptests_includes,
dependencies: apptests_deps,
link_with: apptests_links,
)
apptests_links += libapptestutils
app_tests = [
'core',
'gimpidtable',
'save-and-export',
'session-2-6-compatibility',
'session-2-8-compatibility-multi-window',
'session-2-8-compatibility-single-window',
'single-window-mode',
'tools',
'ui',
'xcf',
]
foreach test_name : app_tests
test_exe = executable(test_name,
'test-@0@.c'.format(test_name),
include_directories: apptests_includes,
dependencies: apptests_deps,
link_with: apptests_links,
)
test(test_name,
test_exe,
env: [
'GIMP_TESTING_ABS_TOP_SRCDIR=' + meson.build_root(),
'GIMP_TESTING_ABS_TOP_BUILDDIR='+ meson.build_root(),
'GIMP_TESTING_PLUGINDIRS=' + join_paths(meson.build_root(), 'plug-ins', 'common'),
'GIMP_TESTING_PLUGINDIRS_BASENAME_IGNORES=mkgen.pl',
],
suite: 'app',
)
endforeach
run_target('create_test_env', command: find_program('create_test_env.sh'))

38
app/text/meson.build Normal file
View File

@@ -0,0 +1,38 @@
apptextenums = custom_target('text-enums.c',
input : [ 'text-enums.h', ],
output: [ 'text-enums.c', ],
command: app_mkenums_custom_target_command,
capture: true,
)
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',
apptextenums,
appcoremarshal,
]
libapptext = static_library('apptext',
libapptext_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: [
'-DG_LOG_DOMAIN="Gimp-Text"',
],
dependencies: [
gegl, gdk_pixbuf, harfbuzz, pangocairo, pangoft2,
],
)

126
app/tools/meson.build Normal file
View File

@@ -0,0 +1,126 @@
apptoolsenums = custom_target('tools-enums.c',
input : [ 'tools-enums.h', ],
output: [ 'tools-enums.c', ],
command: app_mkenums_custom_target_command,
capture: true,
)
libapptools_sources = [
'gimp-tools.c',
'gimpairbrushtool.c',
'gimpalignoptions.c',
'gimpaligntool.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',
'gimpgenerictransformtool.c',
'gimpgradientoptions.c',
'gimpgradienttool-editor.c',
'gimpgradienttool.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-paint.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',
apptoolsenums,
appcoremarshal,
]
libapptools = static_library('apptools',
libapptools_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: [
'-DG_LOG_DOMAIN="Gimp-Tools"',
],
dependencies: [
gegl, gtk2,
],
)

26
app/vectors/meson.build Normal file
View File

@@ -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,
],
)

240
app/widgets/meson.build Normal file
View File

@@ -0,0 +1,240 @@
appwidgetsenums = custom_target('widgets-enums.c',
input : [ 'widgets-enums.h', ],
output: [ 'widgets-enums.c', ],
command: app_mkenums_custom_target_command,
capture: true,
)
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',
'gimpcriticaldialog.c',
'gimpcursor.c',
'gimpcurveview.c',
'gimpdashboard.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',
'gimphighlightablebutton.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',
'gimpmeter.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',
appwidgetsenums,
appcoremarshal,
]
libappwidgets = static_library('appwidgets',
libappwidgets_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: [
'-DG_LOG_DOMAIN="Gimp-Widgets"',
],
dependencies: [
gegl, gtk2,
],
)

20
app/xcf/meson.build Normal file
View File

@@ -0,0 +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',
libappxcf_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: [
'-DG_LOG_DOMAIN="Gimp-XCF"',
],
dependencies: [
cairo, gegl, gdk_pixbuf, zlib
],
)

3
build/archlinux/.gitignore vendored Normal file
View File

@@ -0,0 +1,3 @@
/gimp
/pkg
/src

114
build/archlinux/PKGBUILD Normal file
View File

@@ -0,0 +1,114 @@
# Maintainer: Iru Cai <mytbk920423@gmail.com>
# Maintainer: Alexander Hunziker <alex.hunziker@gmail.com>
# Contributor: Alessio Biancalana <dottorblaster@gmail.com>
# Contributor: Salamandar <felix@piedallu.me>
_pkgname='gimp'
pkgname="${_pkgname}-git"
epoch=1
pkgver=2.10.0.RC1.26.gf0d3c4a7bd
pkgrel=1
pkgdesc='GNU Image Manipulation Program'
arch=('i686' 'x86_64')
url='http://www.gimp.org'
license=('GPL' 'LGPL')
depends=(
'babl>=0.1.44'
'dbus-glib'
'desktop-file-utils'
'gegl-git>=0.3.30'
'gtk-doc'
'lcms2>=2.2'
'libart-lgpl>=2.3.19'
'libexif>=0.6.15'
'libgexiv2'
'libmng'
'libmypaint>=1.3.0'
'librsvg>=2.16.1'
'libwmf>=0.2.8'
'openexr>=1.6.1'
'pygtk'
)
makedepends=(
'alsa-lib>=1.0.0'
'git'
'glib-networking'
# 'gnome-python>=2.16.2'
'gutenprint>=5.0.0'
'libxslt'
'poppler>=0.12.4'
)
optdepends=(
'alsa-lib: for MIDI event controller module'
'curl: for URI support'
'ghostscript: for postscript support'
'gutenprint: for sophisticated printing only as gimp has built-in cups print support'
'poppler-glib: for pdf support'
)
options=('!libtool')
provides=("${_pkgname}")
conflicts=("${_pkgname}")
_gitname='gimp'
source=(
'git://git.gnome.org/gimp#branch=meson'
'linux.gpl'
)
md5sums=(
'SKIP'
'bb27bc214261d36484093e857f015f38'
)
pkgver() {
cd $_gitname
git describe --always | sed -e 's/GIMP_//' -e 's/[_-]/./g'
}
prepare() {
cd "${srcdir}/${_gitname}"
if [[ -f /usr/lib/pkgconfig/libmypaint-1.3.pc ]]; then
sed -i 's|libmypaint |libmypaint-1.3 |g' configure.ac
sed -i "s|'libmypaint'|'libmypaint-1.3'|g" meson.build
fi
}
build() {
mesonOptions=(
--prefix=/usr
--sysconfdir=/etc
--buildtype=release
--strip
-Db_lto=true
-Dwith-aa=false
-Dwith-webkit=false
-Dwith-xvfb-run=false
)
meson "${srcdir}/build" "${srcdir}/${_gitname}" "${mesonOptions[@]}"
ninja -C "${srcdir}/build" -j4
}
package() {
DESTDIR="${pkgdir}" ninja -C "${srcdir}/build" install
# Python compilation (was handled by Autotools, not Meson)
"${srcdir}/${_gitname}/plug-ins/pygimp/py-compile" \
--basedir "${pkgdir}/usr/lib/gimp/2.0/python" \
gimpenums.py \
gimpfu.py \
gimpplugin.py \
gimpshelf.py \
gimpui.py
# Meson does not handle creating empty directories
mkdir -p "${pkgdir}/usr/share/gimp/2.0/fonts/"
install -D -m644 "${srcdir}/linux.gpl" "${pkgdir}/usr/share/gimp/2.0/palettes/Linux.gpl"
ln -s gimp-2.9 "${pkgdir}/usr/bin/gimp"
ln -s gimptool-2.0 "${pkgdir}/usr/bin/gimptool"
ln -s gimp-console-2.9 "${pkgdir}/usr/bin/gimp-console"
}

19
build/archlinux/linux.gpl Normal file
View File

@@ -0,0 +1,19 @@
GIMP Palette
Name: linux
#
0 0 0
0 0 170
0 170 0
0 170 170
170 0 0
170 0 170
170 85 0
170 170 170
85 85 85
85 85 255
85 255 85
85 255 255
255 85 85
255 85 255
255 255 85
255 255 255

3
build/mingw/.gitignore vendored Normal file
View File

@@ -0,0 +1,3 @@
/gimp
/pkg
/src

132
build/mingw/PKGBUILD Normal file
View File

@@ -0,0 +1,132 @@
# Maintainer: Iru Cai <mytbk920423@gmail.com>
# Maintainer: Alexander Hunziker <alex.hunziker@gmail.com>
# Contributor: Alessio Biancalana <dottorblaster@gmail.com>
# Contributor: Salamandar <felix@piedallu.me>
_pkgname='gimp'
pkgname="${MINGW_PACKAGE_PREFIX}-${_pkgname}-git"
epoch=1
pkgver=2ca726dd32
pkgrel=1
pkgdesc='GNU Image Manipulation Program'
arch=('i686' 'x86_64')
url='http://www.gimp.org'
license=('GPL' 'LGPL')
depends=(
"${MINGW_PACKAGE_PREFIX}-babl>=0.1.27"
"${MINGW_PACKAGE_PREFIX}-dbus-glib"
"${MINGW_PACKAGE_PREFIX}-desktop-file-utils"
"${MINGW_PACKAGE_PREFIX}-gegl-git>=0.3.15"
"${MINGW_PACKAGE_PREFIX}-gtk-doc"
"${MINGW_PACKAGE_PREFIX}-lcms2>=2.2"
"${MINGW_PACKAGE_PREFIX}-libart_lgpl>=2.3.19"
"${MINGW_PACKAGE_PREFIX}-libexif>=0.6.15"
"${MINGW_PACKAGE_PREFIX}-gexiv2"
"${MINGW_PACKAGE_PREFIX}-libmng"
"${MINGW_PACKAGE_PREFIX}-libmypaint>=1.3.0"
"${MINGW_PACKAGE_PREFIX}-librsvg>=2.16.1"
"${MINGW_PACKAGE_PREFIX}-libwmf>=0.2.8"
"${MINGW_PACKAGE_PREFIX}-openexr>=1.6.1"
"${MINGW_PACKAGE_PREFIX}-python2-pygtk"
)
makedepends=(
# "${MINGW_PACKAGE_PREFIX}-alsa-lib>=1.0.0"
"git"
"${MINGW_PACKAGE_PREFIX}-glib-networking"
# "${MINGW_PACKAGE_PREFIX}-gnome-python>=2.16.2"
# "${MINGW_PACKAGE_PREFIX}-gutenprint>=5.0.0"
"${MINGW_PACKAGE_PREFIX}-libxslt"
"${MINGW_PACKAGE_PREFIX}-poppler>=0.12.4"
)
optdepends=(
# "${MINGW_PACKAGE_PREFIX}-alsa-lib: for MIDI event controller module"
"${MINGW_PACKAGE_PREFIX}-curl: for URI support"
"${MINGW_PACKAGE_PREFIX}-ghostscript: for postscript support"
# "${MINGW_PACKAGE_PREFIX}-gutenprint: for sophisticated printing only as gimp has built-in cups print support"
"${MINGW_PACKAGE_PREFIX}-poppler-glib: for pdf support"
)
options=('!libtool')
provides=("${MINGW_PACKAGE_PREFIX}-${_pkgname}")
conflicts=("${MINGW_PACKAGE_PREFIX}-${_pkgname}")
_gitname='gimp'
source=(
'git://git.gnome.org/gimp#branch=meson'
'linux.gpl'
)
md5sums=(
'SKIP'
'bb27bc214261d36484093e857f015f38'
)
pkgver() {
cd $_gitname
git describe --always | sed -e 's/GIMP_//' -e 's/[_-]/./g'
}
prepare() {
cd "${srcdir}/${_gitname}"
if [[ -f /usr/lib/pkgconfig/libmypaint-1.3.pc ]]; then
sed -i 's|libmypaint |libmypaint-1.3 |g' configure.ac
sed -i "s|'libmypaint'|'libmypaint-1.3'|g" meson.build
fi
}
build() {
mesonOptions=(
--prefix=/${MINGW_PREFIX}
--sysconfdir=/${MINGW_PREFIX}/etc
--buildtype=release
--strip
-Db_lto=true
-Dwith-aa=false
-Dwith-webkit=false
-Dwith-xvfb-run=false
# MingW specific
-Dwith-alsa=false
-Dwith-appdata-test=false
-Dwith-docs=false
-Dwith-graphviz=false
-Dwith-gtk-doc=false
-Dwith-gudev=false
-Dwith-libv4l=false
-Dwith-libv4l2=false
-Dwith-linux-input=false
-Dwith-mrg=false
-Dwith-print=false
-Dwith-screenshot=false
-Dwith-vala=false
-Dwith-wmf=false
-Dwith-xcursor=false
-Dwith-xpm=false
)
meson "${srcdir}/build" "${srcdir}/${_gitname}" "${mesonOptions[@]}"
ninja -C "${srcdir}/build"
}
package() {
DESTDIR="${pkgdir}" ninja -C "${srcdir}/build" install
# Python compilation (was handled by Autotools, not Meson)
"${srcdir}/${_gitname}/plug-ins/pygimp/py-compile" \
--basedir "${pkgdir}/usr/lib/gimp/2.0/python" \
gimpenums.py \
gimpfu.py \
gimpplugin.py \
gimpshelf.py \
gimpui.py
# Meson does not handle creating empty directories
mkdir -p "${pkgdir}/usr/share/gimp/2.0/fonts/"
install -D -m644 "${srcdir}/linux.gpl" "${pkgdir}/usr/share/gimp/2.0/palettes/Linux.gpl"
ln -s gimp-2.9 "${pkgdir}/usr/bin/gimp"
ln -s gimptool-2.0 "${pkgdir}/usr/bin/gimptool"
ln -s gimp-console-2.9 "${pkgdir}/usr/bin/gimp-console"
}

19
build/mingw/linux.gpl Normal file
View File

@@ -0,0 +1,19 @@
GIMP Palette
Name: linux
#
0 0 0
0 0 170
0 170 0
0 170 170
170 0 0
170 0 170
170 85 0
170 170 170
85 85 85
85 85 255
85 255 85
85 255 255
255 85 85
255 85 255
255 255 85
255 255 255

View File

@@ -17,7 +17,7 @@
#define VER_INTERNALNAME_STR QUOTE(INTERNALNAME_STR)
#define VER_ORIGINALFILENAME_STR QUOTE(ORIGINALFILENAME_STR)
#define VER_LEGALCOPYRIGHT_STR "Copyright <EFBFBD> 1995-" GIMP_GIT_LAST_COMMIT_YEAR
#define VER_LEGALCOPYRIGHT_STR "Copyright © 1995-" GIMP_GIT_LAST_COMMIT_YEAR
#ifndef DEBUG
#define VER_DEBUG 0

View File

@@ -18,10 +18,10 @@
#define VER_INTERNALNAME_STR QUOTE(INTERNALNAME_STR)
#define VER_ORIGINALFILENAME_STR QUOTE(ORIGINALFILENAME_STR)
#define VER_LEGALCOPYRIGHT_STR "Copyright <EFBFBD> 1995-" GIMP_GIT_LAST_COMMIT_YEAR
#define VER_LEGALCOPYRIGHT_STR "Copyright © 1995-" GIMP_GIT_LAST_COMMIT_YEAR
#ifndef DEBUG
#define VER_DEBUG 0
#define VER_DEBUG 0
#else
#define VER_DEBUG VS_FF_DEBUG
#endif

View File

@@ -0,0 +1,11 @@
#!/bin/bash
prefix=$1
encoding=$2
infile=$3
#replace [] with \[\]
prefix=$(echo "$prefix" | sed 's/[][]/\\\0/g')
#echo to stdout
sed '/^\w\+'"$prefix"'=/{s/\(.\)'"$prefix"'/\1/;n};/^\w.*=/d' "$infile" \
| iconv -f UTF-8 -t "$encoding"

View File

@@ -0,0 +1,58 @@
isl_input = custom_target('setup.isl',
input : 'setup.isl.in',
output: 'setup.isl',
command: [
intltool_merge,
'--desktop-style',
'--utf8',
'--multiple-output',
'--cache=' + join_paths('@OUTDIR@', 'intltool-merge-cache'),
po_windows_installer_dir,
'@INPUT@',
'@OUTPUT@',
]
)
languages = [
[ 'ca', '[ca]', 'WINDOWS-1252', ],
[ 'da', '[da]', 'WINDOWS-1252', ],
[ 'de', '[de]', 'WINDOWS-1252', ],
[ 'el', '[el]', 'WINDOWS-1253', ],
[ 'en', '', 'WINDOWS-1252', ],
[ 'eo', '[eo]', 'ISO-8859-3', ],
[ 'es', '[es]', 'WINDOWS-1252', ],
[ 'eu', '[eu]', 'WINDOWS-1252', ],
[ 'fr', '[fr]', 'WINDOWS-1252', ],
[ 'hu', '[hu]', 'WINDOWS-1250', ],
[ 'id', '[id]', 'ISO-8859-1', ],
[ 'is', '[is]', 'WINDOWS-1252', ],
[ 'it', '[it]', 'WINDOWS-1252', ],
[ 'lv', '[lv]', 'ISO-8859-13', ],
[ 'nl', '[nl]', 'WINDOWS-1252', ],
[ 'pl', '[pl]', 'WINDOWS-1250', ],
[ 'pt_BR','[pt_BR]', 'WINDOWS-1252', ],
[ 'ru', '[ru]', 'WINDOWS-1251', ],
[ 'sl', '[sl]', 'WINDOWS-1250', ],
[ 'sv', '[sv]', 'WINDOWS-1252', ],
[ 'tr', '[tr]', 'WINDOWS-1254', ],
[ 'zh_CN','[zh_CN]', 'WINDOWS-936', ],
]
extractlang = find_program('extractlang.sh')
all_isl = []
foreach language : languages
code = language[0]
prefix = language[1]
encoding= language[2]
islfile = '@0@.setup.isl'.format(code)
all_isl += custom_target(islfile,
input : isl_input,
output: islfile,
command: [ extractlang, prefix, encoding, '@INPUT@' ],
capture: true,
build_by_default: true,
)
endforeach

View File

@@ -0,0 +1 @@
subdir('lang')

13
build/windows/meson.build Normal file
View File

@@ -0,0 +1,13 @@
# Windows specific
gimp_plugins_rc = configure_file(
input : 'gimp-plug-ins.rc.in',
output: 'gimp-plug-ins.rc',
configuration: versionconfig,
)
gimp_app_rc = configure_file(
input : 'gimp.rc.in',
output: 'gimp.rc',
configuration: versionconfig,
)

137
cursors/meson.build Normal file
View File

@@ -0,0 +1,137 @@
tool_cursors = [
'cursor-bad.png',
'cursor-color-picker.png',
'cursor-corner-bottom-left.png',
'cursor-corner-bottom-right.png',
'cursor-corner-bottom.png',
'cursor-corner-left.png',
'cursor-corner-right.png',
'cursor-corner-top-left.png',
'cursor-corner-top-right.png',
'cursor-corner-top.png',
'cursor-crosshair-small.png',
'cursor-crosshair.png',
'cursor-mouse.png',
'cursor-move.png',
'cursor-none.png',
'cursor-side-bottom-left.png',
'cursor-side-bottom-right.png',
'cursor-side-bottom.png',
'cursor-side-left.png',
'cursor-side-right.png',
'cursor-side-top-left.png',
'cursor-side-top-right.png',
'cursor-side-top.png',
'cursor-zoom.png',
'modifier-anchor.png',
'modifier-background.png',
'modifier-bad.png',
'modifier-control.png',
'modifier-foreground.png',
'modifier-intersect.png',
'modifier-join.png',
'modifier-minus.png',
'modifier-move.png',
'modifier-pattern.png',
'modifier-plus.png',
'modifier-resize.png',
'modifier-rotate.png',
'modifier-select.png',
'modifier-zoom.png',
'tool-airbrush.png',
'tool-blur.png',
'tool-bucket-fill.png',
'tool-burn.png',
'tool-clone.png',
'tool-color-picker.png',
'tool-crop.png',
'tool-dodge.png',
'tool-ellipse-select.png',
'tool-eraser.png',
'tool-flip-horizontal.png',
'tool-flip-vertical.png',
'tool-free-select.png',
'tool-fuzzy-select.png',
'tool-gradient.png',
'tool-hand.png',
'tool-heal.png',
'tool-ink.png',
'tool-iscissors.png',
'tool-measure.png',
'tool-move.png',
'tool-paintbrush.png',
'tool-paths-anchor.png',
'tool-paths-control.png',
'tool-paths-segment.png',
'tool-paths.png',
'tool-pencil.png',
'tool-perspective.png',
'tool-polygon-select.png',
'tool-rect-select.png',
'tool-resize.png',
'tool-rotate.png',
'tool-shear.png',
'tool-smudge.png',
'tool-text.png',
'tool-warp.png',
'tool-zoom.png',
]
color_picker_cursors = [
'cursor-color-picker.png',
]
# Build xml files, in source dir, at Meson-runtime
# TODO : versionning, or write in build dir
cursors_resourcename = 'gimp-tool-cursors'
cursors_xml_content = '<?xml version="1.0" encoding="UTF-8"?>\n'
cursors_xml_content += '<gresources>\n'
cursors_xml_content += ' <gresource prefix="/org/gimp/tool-cursors">\n'
foreach cursor : tool_cursors
cursors_xml_content+=' <file preprocess="to-pixdata">'+ cursor +'</file>\n'
endforeach
cursors_xml_content += ' </gresource>\n'
cursors_xml_content += '</gresources>\n'
cursors_xml = configure_file(
output: cursors_resourcename + '.gresource.xml',
command: [ 'echo', cursors_xml_content ],
capture: true,
)
pickers_resourcename = 'gimp-color-picker-cursors'
pickers_xml_content = '<?xml version="1.0" encoding="UTF-8"?>\n'
pickers_xml_content += '<gresources>\n'
pickers_xml_content += ' <gresource prefix="/org/gimp/color-picker-cursors">\n'
foreach cursor : color_picker_cursors
pickers_xml_content+=' <file preprocess="to-pixdata">'+ cursor +'</file>\n'
endforeach
pickers_xml_content += ' </gresource>\n'
pickers_xml_content += ' <gresource prefix="/org/gimp/color-picker-cursors-raw">\n'
foreach cursor : color_picker_cursors
pickers_xml_content+=' <file >'+ cursor +'</file>\n'
endforeach
pickers_xml_content += ' </gresource>\n'
pickers_xml_content += '</gresources>\n'
pickers_xml = configure_file(
output: pickers_resourcename + '.gresource.xml',
command: [ 'echo', pickers_xml_content ],
capture: true,
)
cursors_sources = gnome.compile_resources(
cursors_resourcename,
cursors_xml,
c_name: cursors_resourcename.underscorify(),
)
pickers_sources = gnome.compile_resources(
pickers_resourcename,
pickers_xml,
c_name: pickers_resourcename.underscorify(),
)

22
data/brushes/meson.build Normal file
View File

@@ -0,0 +1,22 @@
brushes_types = [
'Basic',
'gimp-obsolete-files',
'Legacy',
'Media',
'Sketch',
'Splatters',
'Texture',
]
foreach brushes_type : brushes_types
install_subdir(brushes_type,
install_dir: join_paths(gimpdatadir, 'brushes'),
exclude_files: [
'.gitignore',
'Makefile.am',
'Makefile.in',
],
)
endforeach

16
data/dynamics/meson.build Normal file
View File

@@ -0,0 +1,16 @@
install_subdir('.',
install_dir: join_paths(gimpdatadir, 'dynamics'),
exclude_files: [
'.gitignore',
'meson.build',
'Makefile.am',
'Makefile.in',
'Basic/.gitignore',
'Basic/Makefile.am',
'Basic/Makefile.in',
'FX/.gitignore',
'FX/Makefile.am',
'FX/Makefile.in',
],
)

3
data/environ/meson.build Normal file
View File

@@ -0,0 +1,3 @@
install_data('default.env',
install_dir: join_paths(gimpplugindir, 'environ')
)

View File

@@ -0,0 +1,93 @@
gradients = [
'Abstract_1.ggr',
'Abstract_2.ggr',
'Abstract_3.ggr',
'Aneurism.ggr',
'Blinds.ggr',
'Blue_Green.ggr',
'Browns.ggr',
'Brushed_Aluminium.ggr',
'Burning_Paper.ggr',
'Burning_Transparency.ggr',
'Caribbean_Blues.ggr',
'CD_Half.ggr',
'CD.ggr',
'Coffee.ggr',
'Cold_Steel_2.ggr',
'Cold_Steel.ggr',
'Crown_molding.ggr',
'Dark_1.ggr',
'Deep_Sea.ggr',
'Default.ggr',
'Flare_Glow_Angular_1.ggr',
'Flare_Glow_Radial_1.ggr',
'Flare_Glow_Radial_2.ggr',
'Flare_Glow_Radial_3.ggr',
'Flare_Glow_Radial_4.ggr',
'Flare_Radial_101.ggr',
'Flare_Radial_102.ggr',
'Flare_Radial_103.ggr',
'Flare_Rays_Radial_1.ggr',
'Flare_Rays_Radial_2.ggr',
'Flare_Rays_Size_1.ggr',
'Flare_Sizefac_101.ggr',
'Four_bars.ggr',
'Full_saturation_spectrum_CCW.ggr',
'Full_saturation_spectrum_CW.ggr',
'Golden.ggr',
'Greens.ggr',
'Horizon_1.ggr',
'Horizon_2.ggr',
'Incandescent.ggr',
'Land_1.ggr',
'Land_and_Sea.ggr',
'Metallic_Something.ggr',
'Nauseating_Headache.ggr',
'Neon_Cyan.ggr',
'Neon_Green.ggr',
'Neon_Yellow.ggr',
'Pastel_Rainbow.ggr',
'Pastels.ggr',
'Purples.ggr',
'Radial_Eyeball_Blue.ggr',
'Radial_Eyeball_Brown.ggr',
'Radial_Eyeball_Green.ggr',
'Radial_Glow_1.ggr',
'Radial_Rainbow_Hoop.ggr',
'Rounded_edge.ggr',
'Shadows_1.ggr',
'Shadows_2.ggr',
'Shadows_3.ggr',
'Skyline_polluted.ggr',
'Skyline.ggr',
'Square_Wood_Frame.ggr',
'Sunrise.ggr',
'Three_bars_sin.ggr',
'Tropical_Colors.ggr',
'Tube_Red.ggr',
'Wood_1.ggr',
'Wood_2.ggr',
'Yellow_Contrast.ggr',
'Yellow_Orange.ggr',
]
gradients_obsolete = [
'French_flag.ggr',
'French_flag_smooth.ggr',
'German_flag.ggr',
'German_flag_smooth.ggr',
'Mexican_flag.ggr',
'Mexican_flag_smooth.ggr',
'Romanian_flag.ggr',
'Romanian_flag_smooth.ggr',
]
install_data(
gradients,
install_dir: join_paths(gimpdatadir, 'gradients'),
)
install_data(
gradients_obsolete,
install_dir: join_paths(gimpdatadir, 'gradients', 'gimp-obsolete-files'),
)

11
data/images/meson.build Normal file
View File

@@ -0,0 +1,11 @@
images = [
'gimp-splash.png',
'wilber.png',
]
images += stable ? 'gimp-logo.png' : 'gimp-devel-logo.png'
install_data(
images,
install_dir: join_paths(gimpdatadir, 'images'),
)

View File

@@ -0,0 +1,3 @@
install_data('default.interp',
install_dir: join_paths(gimpplugindir, 'interpreters')
)

11
data/meson.build Normal file
View File

@@ -0,0 +1,11 @@
subdir('brushes')
subdir('dynamics')
subdir('environ')
subdir('gradients')
subdir('images')
subdir('interpreters')
subdir('palettes')
subdir('patterns')
subdir('tags')
subdir('tips')
subdir('tool-presets')

47
data/palettes/meson.build Normal file
View File

@@ -0,0 +1,47 @@
palettes = [
'Bears.gpl',
'Bgold.gpl',
'Blues.gpl',
'Borders.gpl',
'Browns_And_Yellows.gpl',
'Caramel.gpl',
'Cascade.gpl',
'China.gpl',
'Coldfire.gpl',
'Cool_Colors.gpl',
'Cranes.gpl',
'Dark_pastels.gpl',
'Default.gpl',
'Ega.gpl',
'Firecode.gpl',
'Gold.gpl',
'Grayblue.gpl',
'Grays.gpl',
'GrayViolet.gpl',
'Greens.gpl',
'Hilite.gpl',
'Khaki.gpl',
'Lights.gpl',
'Muted.gpl',
'Named_Colors.gpl',
'News3.gpl',
'Op2.gpl',
'Paintjet.gpl',
'Pastels.gpl',
'Plasma.gpl',
'Reds.gpl',
'Reds_And_Purples.gpl',
'Royal.gpl',
'Tango.gpl',
'Topographic.gpl',
'Visibone.gpl',
'Visibone_2.gpl',
'Volcano.gpl',
'Warm_Colors.gpl',
'Web.gpl',
]
install_data(palettes,
install_dir: join_paths(gimpdatadir, 'palettes'),
)

25
data/patterns/meson.build Normal file
View File

@@ -0,0 +1,25 @@
patterns_types = [
'Animal',
'Fabric',
'Food',
'Legacy',
'Paper',
'Plant',
'Sky',
'Stone',
'Water',
'Wood',
]
foreach patterns_type : patterns_types
install_subdir(patterns_type,
install_dir: join_paths(gimpdatadir, 'patterns'),
exclude_files: [
'.gitignore',
'Makefile.am',
'Makefile.in',
],
)
endforeach

33
data/tags/meson.build Normal file
View File

@@ -0,0 +1,33 @@
xmlfilename = 'gimp-tags-default.xml'
gimp_tags_default = custom_target(xmlfilename,
input : [ xmlfilename+'.in', ],
output: [ xmlfilename, ],
command: [
intltool_merge,
potags_dir,
'@INPUT@',
'@OUTPUT@',
'--xml-style',
'--utf8',
'--cache='+join_paths('@OUTDIR@', 'intltool-merge-cache'),
],
install: true,
install_dir: join_paths(gimpdatadir, 'tags'),
)
custom_target('validate-tags',
input : [ gimp_tags_default, ],
output: [ 'validate-tags' ],
command: [
xmllint,
'--noout',
'--path', meson.current_source_dir(),
'--valid', '@INPUT@',
],
build_always: false,
build_by_default: false,
)

48
data/tips/meson.build Normal file
View File

@@ -0,0 +1,48 @@
xmlfilename = 'gimp-tips.xml'
gimp_tips = custom_target(xmlfilename,
input : [ xmlfilename+'.in', ],
output: [ xmlfilename, ],
command: [
intltool_merge,
potips_dir,
'@INPUT@',
'@OUTPUT@',
'--xml-style',
'--utf8',
'--cache='+join_paths('@OUTDIR@', 'intltool-merge-cache'),
],
install: true,
install_dir: join_paths(gimpdatadir, 'tips'),
)
custom_target('validate-tips',
input : [ gimp_tips, ],
output: [ 'validate-tips' ],
command: [
xmllint,
'--noout',
'--path', meson.current_source_dir(),
'--valid', '@INPUT@',
],
build_always: false,
build_by_default: false,
)
custom_target('fortunes-tips',
input : [ gimp_tips, 'fortunes.xsl', ],
output: [ 'fortunes-tips' ],
command: [
xsltproc,
'--stringparam', 'lang', 'en',
'--path', meson.current_source_dir(),
'--output', '@OUTPUT@',
'@INPUT1@',
'@INPUT0@',
],
build_always: false,
build_by_default: false,
)

View File

@@ -0,0 +1,20 @@
tools_presets_types = [
'Crop',
'FX',
'Paint',
'Selection',
'Sketch',
]
foreach tools_presets_type : tools_presets_types
install_subdir(tools_presets_type,
install_dir: join_paths(gimpdatadir, 'tools-presets'),
exclude_files: [
'.gitignore',
'Makefile.am',
'Makefile.in',
],
)
endforeach

112
desktop/meson.build Normal file
View File

@@ -0,0 +1,112 @@
sizes = [
'16',
'22',
'24',
'32',
'48',
'64',
'256',
]
foreach size : sizes
sizedir = size+'x'+size
install_data(join_paths(sizedir, 'gimp.png'),
install_dir: join_paths(
get_option('datadir'), 'icons', 'hicolor', sizedir, 'apps'
)
)
endforeach
desktopfilename = 'gimp.desktop'
desktop_conf = configuration_data()
desktop_conf.set('GIMP_APP_VERSION', app_version)
desktop_conf.set('GIMP_COMMAND', gimp_command)
desktop_conf.set('GIMP_VERSION', gimp_version)
desktop_conf.set('MIME_TYPES', ';'.join(MIMEtypes))
desktopfilein = configure_file(
input : desktopfilename+'.in.in',
output: desktopfilename+'.in',
configuration: desktop_conf,
)
desktopfile = custom_target(desktopfilename,
input : [ desktopfilein, ],
output: [ desktopfilename, ],
command: [
intltool_merge,
po_dir,
'@INPUT@',
'@OUTPUT@',
'--desktop-style',
'--utf8',
'--cache='+join_paths('@OUTDIR@', 'intltool-merge-cache'),
],
install: true,
install_dir: join_paths(get_option('datadir'), 'applications'),
)
appdatafilename = 'org.gimp.GIMP.appdata.xml'
appdatafile = custom_target(appdatafilename,
input : [ appdatafilename+'.in.in', ],
output: [ appdatafilename, ],
command: [
intltool_merge,
po_dir,
'@INPUT@',
'@OUTPUT@',
'--xml-style',
'--utf8',
'--cache='+join_paths('@OUTDIR@', 'intltool-merge-cache'),
],
install: true,
install_dir: join_paths(get_option('datadir'), 'metainfo'),
)
metainfofilename = 'gimp-data-extras.metainfo.xml'
metainfofile = custom_target(metainfofilename,
input : [ metainfofilename+'.in', ],
output: [ metainfofilename, ],
command: [
intltool_merge,
po_dir,
'@INPUT@',
'@OUTPUT@',
'--xml-style',
'--utf8',
'--cache='+join_paths('@OUTDIR@', 'intltool-merge-cache'),
],
install: true,
install_dir: join_paths(get_option('datadir'), 'appdata'),
)
custom_target('validate-desktop',
input : [ desktopfile, ],
output: [ 'validate-desktop' ],
command: [
desktop_validate, '@INPUT@',
],
build_always: false,
build_by_default: false,
)
if appstream_util.found()
test('appdata_file',
appstream_util,
args: [ 'validate-relax', appdatafile ],
env: [
'GIMP_TESTING_ABS_TOP_BUILDDIR=' + meson.build_root(),
],
suite: 'desktop',
)
test('metainfo_file',
appstream_util,
args: [ 'validate-relax', metainfofile ],
env: [
'GIMP_TESTING_ABS_TOP_BUILDDIR=' + meson.build_root(),
],
suite: 'desktop',
)
endif

View File

@@ -0,0 +1,42 @@
module_name = 'app'
version_data = configuration_data()
version_data.set('GIMP_VERSION', gimp_version)
configure_file(
input : 'version.in',
output: 'version',
configuration: version_data,
)
gnome.gtkdoc(module_name,
content_files: [],
dependencies: [
fontconfig, freetype2, gtk2, harfbuzz, pangocairo,
],
fixxref_args: [
'--extra-dir=' + join_paths(meson.current_build_dir(), '..', 'libgimpbase', 'html'),
'--extra-dir=' + join_paths(meson.current_build_dir(), '..', 'libgimpcolor', 'html'),
'--extra-dir=' + join_paths(meson.current_build_dir(), '..', 'libgimpconfig', 'html'),
'--extra-dir=' + join_paths(meson.current_build_dir(), '..', 'libgimpmath', 'html'),
'--extra-dir=' + join_paths(meson.current_build_dir(), '..', 'libgimpwidgets', 'html'),
],
gobject_typesfile: join_paths(meson.current_source_dir(), module_name + '.types'),
scanobjs_args: [
'--cflags=-I'+ meson.source_root(),
],
ignore_headers: [
'gimp-intl.h',
'gimpdbusservice-glue.h',
'gimphelp-ids.h',
'gimpimage-convert-data.h',
'gimpimage-convert-fsdither.h',
'gimprc-blurbs.h',
],
html_assets: [],
html_args: [],
main_sgml: module_name + '-docs.sgml',
src_dir: join_paths(meson.source_root(), module_name),
install: true,
# install_dir: ,
)

View File

@@ -0,0 +1,58 @@
module_name = 'libgimp'
version_data = configuration_data()
version_data.set('GIMP_VERSION', gimp_version)
configure_file(
input : 'version.in',
output: 'version',
configuration: version_data,
)
gimp_dep = declare_dependency(
include_directories: rootInclude,
link_with: [
libgimp,
libgimpui,
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmath,
libgimpui,
libgimpwidgets,
]
)
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: join_paths(meson.current_source_dir(), module_name + '.types'),
src_dir: join_paths(meson.source_root(), module_name),
content_files: [
],
ignore_headers: [
'gimptilebackendplugin.h',
'gimpunit_pdb.h',
'gimpunitcache.h',
'libgimp-intl.h',
'stdplugins-intl.h',
],
dependencies: [
fontconfig, freetype2, gtk2, harfbuzz, pangocairo,
gimp_dep,
],
scanobjs_args: [
],
scan_args: [
'--deprecated-guards=GIMP_DISABLE_DEPRECATED',
],
mkdb_args: [
'--name-space=gimp',
],
fixxref_args: [
],
html_assets: [
],
html_args: [
],
)

View File

@@ -0,0 +1,45 @@
module_name = 'libgimpbase'
version_data = configuration_data()
version_data.set('GIMP_VERSION', gimp_version)
configure_file(
input : 'version.in',
output: 'version',
configuration: version_data,
)
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: join_paths(meson.current_source_dir(), module_name + '.types'),
src_dir: join_paths(meson.source_root(), module_name),
content_files: [
],
ignore_headers: [
'gimpbase-private.h',
'gimpbase.h',
'gimpcompatenums.h',
'gimpprotocol.h',
'gimpreloc.h',
'gimpwin32-io.h',
'gimpwire.h',
],
dependencies: [
fontconfig, freetype2, gtk2, harfbuzz, pangocairo,
],
scanobjs_args: [
],
scan_args: [
'--deprecated-guards=GIMP_DISABLE_DEPRECATED',
],
mkdb_args: [
'--name-space=gimp',
],
fixxref_args: [
],
html_assets: [
],
html_args: [
],
)

View File

@@ -0,0 +1,38 @@
module_name = 'libgimpcolor'
version_data = configuration_data()
version_data.set('GIMP_VERSION', gimp_version)
configure_file(
input : 'version.in',
output: 'version',
configuration: version_data,
)
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: join_paths(meson.current_source_dir(), module_name + '.types'),
src_dir: join_paths(meson.source_root(), module_name),
content_files: [
],
ignore_headers: [
],
dependencies: [
fontconfig, freetype2, gtk2, harfbuzz, pangocairo,
],
scanobjs_args: [
],
scan_args: [
'--deprecated-guards=GIMP_DISABLE_DEPRECATED',
],
mkdb_args: [
'--name-space=gimp',
],
fixxref_args: [
],
html_assets: [
],
html_args: [
],
)

View File

@@ -0,0 +1,41 @@
module_name = 'libgimpconfig'
version_data = configuration_data()
version_data.set('GIMP_VERSION', gimp_version)
configure_file(
input : 'version.in',
output: 'version',
configuration: version_data,
)
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: join_paths(meson.current_source_dir(), module_name + '.types'),
src_dir: join_paths(meson.source_root(), module_name),
content_files: [
],
ignore_headers: [
],
dependencies: [
fontconfig, freetype2, gtk2, harfbuzz, pangocairo,
],
scanobjs_args: [
],
scan_args: [
'--deprecated-guards=GIMP_DISABLE_DEPRECATED',
],
mkdb_args: [
'--name-space=gimp',
],
fixxref_args: [
'--extra-dir='+ join_paths(meson.current_build_dir(), '..', 'libgimpbase', 'html'),
'--extra-dir='+ join_paths(meson.current_build_dir(), '..', 'libgimpcolor', 'html'),
'--extra-dir='+ join_paths(meson.current_build_dir(), '..', 'libgimpmath', 'html'),
],
html_assets: [
],
html_args: [
],
)

View File

@@ -0,0 +1,38 @@
module_name = 'libgimpmath'
version_data = configuration_data()
version_data.set('GIMP_VERSION', gimp_version)
configure_file(
input : 'version.in',
output: 'version',
configuration: version_data,
)
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: join_paths(meson.current_source_dir(), module_name + '.types'),
src_dir: join_paths(meson.source_root(), module_name),
content_files: [
],
ignore_headers: [
],
dependencies: [
fontconfig, freetype2, gtk2, harfbuzz, pangocairo,
],
scanobjs_args: [
],
scan_args: [
'--deprecated-guards=GIMP_DISABLE_DEPRECATED',
],
mkdb_args: [
'--name-space=gimp',
],
fixxref_args: [
],
html_assets: [
],
html_args: [
],
)

View File

@@ -0,0 +1,38 @@
module_name = 'libgimpmodule'
version_data = configuration_data()
version_data.set('GIMP_VERSION', gimp_version)
configure_file(
input : 'version.in',
output: 'version',
configuration: version_data,
)
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: join_paths(meson.current_source_dir(), module_name + '.types'),
src_dir: join_paths(meson.source_root(), module_name),
content_files: [
],
ignore_headers: [
],
dependencies: [
fontconfig, freetype2, gtk2, harfbuzz, pangocairo,
],
scanobjs_args: [
],
scan_args: [
'--deprecated-guards=GIMP_DISABLE_DEPRECATED',
],
mkdb_args: [
'--name-space=gimp',
],
fixxref_args: [
],
html_assets: [
],
html_args: [
],
)

View File

@@ -0,0 +1,40 @@
module_name = 'libgimpthumb'
version_data = configuration_data()
version_data.set('GIMP_VERSION', gimp_version)
configure_file(
input : 'version.in',
output: 'version',
configuration: version_data,
)
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: join_paths(meson.current_source_dir(), module_name + '.types'),
src_dir: join_paths(meson.source_root(), module_name),
content_files: [
],
ignore_headers: [
'libgimpthumb.h',
],
dependencies: [
fontconfig, freetype2, gtk2, harfbuzz, pangocairo,
],
scanobjs_args: [
],
scan_args: [
'--deprecated-guards=GIMP_DISABLE_DEPRECATED',
],
mkdb_args: [
'--name-space=gimp',
],
fixxref_args: [
'--extra-dir='+ join_paths(meson.current_build_dir(), '..', 'libgimpmath', 'html'),
],
html_assets: [
],
html_args: [
],
)

View File

@@ -0,0 +1,61 @@
module_name = 'libgimpwidgets'
version_data = configuration_data()
version_data.set('GIMP_VERSION', gimp_version)
configure_file(
input : 'version.in',
output: 'version',
configuration: version_data,
)
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: join_paths(meson.current_source_dir(), module_name + '.types'),
src_dir: join_paths(meson.source_root(), module_name),
content_files: [
'visual-index.html'
],
ignore_headers: [
'gimpcolorprofilestore-private.h',
'gimpeevl.h',
'gimpwidgets-private.h',
],
dependencies: [
fontconfig, freetype2, gtk2, harfbuzz, pangocairo,
],
scanobjs_args: [
'--type-init-func="do { void babl_init (void); babl_init (); } while (0)"',
],
scan_args: [
'--deprecated-guards=GIMP_DISABLE_DEPRECATED',
],
mkdb_args: [
'--name-space=gimp',
],
fixxref_args: [
'--extra-dir='+ join_paths(meson.current_build_dir(), '..', 'libgimp', 'html'),
'--extra-dir='+ join_paths(meson.current_build_dir(), '..', 'libgimpbase', 'html'),
'--extra-dir='+ join_paths(meson.current_build_dir(), '..', 'libgimpcolor', 'html'),
'--extra-dir='+ join_paths(meson.current_build_dir(), '..', 'libgimpconfig','html'),
'--extra-dir='+ join_paths(meson.current_build_dir(), '..', 'libgimpmath', 'html'),
],
html_assets: [
# '$(top_srcdir)/icons/Color/12/gimp-*.png',
# '$(top_srcdir)/icons/Color/16/gimp-*.png',
# '$(top_srcdir)/icons/Color/18/gimp-*.png',
# '$(top_srcdir)/icons/Color/20/gimp-*.png',
# '$(top_srcdir)/icons/Color/22/gimp-*.png',
# '$(top_srcdir)/icons/Color/24/gimp-*.png',
# '$(top_srcdir)/icons/Color/32/gimp-*.png',
# '$(top_srcdir)/icons/Color/48/gimp-*.png',
# '$(top_srcdir)/icons/Color/64/gimp-*.png',
# '$(top_srcdir)/icons/Color/128/gimp-*.png',
# '$(top_srcdir)/icons/Color/192/gimp-*.png',
# '$(top_srcdir)/icons/Color/256/gimp-*.png',
# '$(srcdir)/images/gimp-widget-*.png',
],
html_args: [
],
)

12
devel-docs/meson.build Normal file
View File

@@ -0,0 +1,12 @@
if gtkdoc_scan.found()
# subdir('app')
# subdir('libgimp')
# subdir('libgimpbase')
# subdir('libgimpcolor')
# subdir('libgimpconfig')
# subdir('libgimpmath')
# subdir('libgimpmodule')
# subdir('libgimpthumb')
# subdir('libgimpwidgets')
subdir('tools')
endif

View File

@@ -0,0 +1,30 @@
if have_doc_shooter
doc_shooter_sources = [
'shadow.c',
'shooter.c',
'units.c',
'widgets.c',
]
doc_shooter = executable('doc-shooter',
doc_shooter_sources,
include_directories: [ rootInclude, ],
dependencies: [
gtk2, gdk_pixbuf, gegl, math, x11, xext,
],
c_args: [
'-DTOP_SRCDIR="' + meson.source_root() + '"',
],
link_with: [
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmath,
libgimpmodule,
libgimpwidgets,
],
install: false,
)
endif

63
docs/meson.build Normal file
View File

@@ -0,0 +1,63 @@
# Configure_file is just here to rename the files
manconf = configuration_data()
manconf.set('GIMP_VERSION', gimp_version)
manconf.set('gimpdatadir', join_paths(prefix, gimpdatadir))
manconf.set('gimplocaledir', join_paths(prefix, localedir))
manconf.set('gimpplugindir', join_paths(prefix, gimpplugindir))
manconf.set('manpage_gimpdir', '\fB$XDG_CONFIG_HOME\fP/' + join_paths(gimpdir, user_version))
manconf.set('gimpsysconfdir', gimpsysconfdir)
manconf.set('mypaint_brushes_dir', libmypaint_brushes_dir)
man_files = [
configure_file(
input : 'gimptool.1.in',
output: 'gimptool-' + api_version + '.1',
configuration: manconf,
),
configure_file(
input : 'gimptool.1.in',
output: 'gimptool.1',
configuration: manconf,
),
configure_file(
input : 'gimprc.5.in',
output: 'gimprc-' + app_version + '.5',
configuration: manconf,
),
configure_file(
input : 'gimprc.5.in',
output: 'gimprc.5',
configuration: manconf,
),
]
if enable_console_bin
man_files += configure_file(
input : 'gimp.1.in',
output: 'gimp-console-' + app_version + '.1',
configuration: manconf,
)
man_files += configure_file(
input : 'gimp.1.in',
output: 'gimp-console.1',
configuration: manconf,
)
endif
if enable_default_bin
man_files += configure_file(
input : 'gimp.1.in',
output: 'gimp-' + app_version + '.1',
configuration: manconf,
)
man_files += configure_file(
input : 'gimp.1.in',
output: 'gimp.1',
configuration: manconf,
)
endif
install_man(man_files)

20
etc/meson.build Normal file
View File

@@ -0,0 +1,20 @@
etcconf = configuration_data()
etcconf.set('mypaint_brushes_dir', libmypaint_brushes_dir)
install_data(
[
'controllerrc',
configure_file(
input : 'gimprc.in',
output: 'gimprc',
configuration: etcconf,
),
'gtkrc',
'menurc',
'sessionrc',
'templaterc',
'unitrc',
],
install_dir: gimpsysconfdir,
)

59
icons/Color/meson.build Normal file
View File

@@ -0,0 +1,59 @@
install_data('index.theme',
install_dir: join_paths(gimpiconsdir, theme)
)
foreach icon_info : all_icons
icons_dir = icon_info[0]
icons_list= icon_info[1]
install_data(icons_list,
install_dir: join_paths(gimpiconsdir, theme, icons_dir, 'apps')
)
endforeach
icons_core = [ '64/gimp-question.png', ]
icons_imgs = [ '64/gimp-wilber-eek.png', ]
resourcename = 'gimp-core-pixbufs'
xml_content = '<?xml version="1.0" encoding="UTF-8"?>\n'
xml_content += '<gresources>\n'
xml_content += ' <gresource prefix="/org/gimp/icons">\n'
foreach file : icons_core
xml_content+=' <file preprocess="to-pixdata">'+ file +'</file>\n'
endforeach
xml_content += ' </gresource>\n'
xml_content += '</gresources>\n'
xml_file = configure_file(
output: resourcename + '.gresource.xml',
command: [ 'echo', xml_content ],
capture: true,
)
icons_core_sources = gnome.compile_resources(
resourcename,
xml_file,
c_name: resourcename.underscorify(),
)
resourcename = 'gimp-icon-pixbufs'
xml_content = '<?xml version="1.0" encoding="UTF-8"?>\n'
xml_content += '<gresources>\n'
xml_content += ' <gresource prefix="/org/gimp/icons">\n'
foreach file : icons_imgs
xml_content+=' <file preprocess="to-pixdata">'+ file +'</file>\n'
endforeach
xml_content += ' </gresource>\n'
xml_content += '</gresources>\n'
xml_file = configure_file(
output: resourcename + '.gresource.xml',
command: [ 'echo', xml_content ],
capture: true,
)
icons_imgs_sources = gnome.compile_resources(
resourcename,
xml_file,
c_name: resourcename.underscorify(),
)

556
icons/Legacy/meson.build Normal file
View File

@@ -0,0 +1,556 @@
install_data('index.theme',
install_dir: join_paths(gimpiconsdir, theme)
)
legacy_icons_12 = [
'12/gimp-close.png',
'12/gimp-default-colors.png',
'12/gimp-linked.png',
'12/gimp-menu-left.png',
'12/gimp-menu-right.png',
'12/gimp-quick-mask-off.png',
'12/gimp-quick-mask-on.png',
'12/gimp-swap-colors.png',
'12/gimp-visible.png',
'12/gimp-zoom-follow-window.png',
]
legacy_icons_16 = [
'16/gimp-anchor.png',
'16/gimp-cap-butt.png',
'16/gimp-cap-round.png',
'16/gimp-cap-square.png',
'16/gimp-center.png',
'16/gimp-channel-alpha.png',
'16/gimp-channel-blue.png',
'16/gimp-channel-gray.png',
'16/gimp-channel-green.png',
'16/gimp-channel-indexed.png',
'16/gimp-channel-red.png',
'16/gimp-channel.png',
'16/gimp-channels.png',
'16/gimp-color-pick-from-screen.png',
'16/gimp-color-triangle.png',
'16/gimp-colormap.png',
'16/gimp-controller-keyboard.png',
'16/gimp-controller-linux-input.png',
'16/gimp-controller-midi.png',
'16/gimp-controller-wheel.png',
'16/gimp-controller.png',
'16/gimp-convert-grayscale.png',
'16/gimp-convert-indexed.png',
'16/gimp-convert-rgb.png',
'16/gimp-cursor.png',
'16/gimp-curve-free.png',
'16/gimp-curve-smooth.png',
'16/gimp-device-status.png',
'16/gimp-display-filter-colorblind.png',
'16/gimp-display-filter-contrast.png',
'16/gimp-display-filter-gamma.png',
'16/gimp-display-filter-lcms.png',
'16/gimp-display-filter-proof.png',
'16/gimp-display-filter.png',
'16/gimp-duplicate.png',
'16/gimp-dynamics.png',
'16/gimp-flip-horizontal.png',
'16/gimp-flip-vertical.png',
'16/gimp-floating-selection.png',
'16/gimp-gegl.png',
'16/gimp-gradient-bilinear.png',
'16/gimp-gradient-conical-asymmetric.png',
'16/gimp-gradient-conical-symmetric.png',
'16/gimp-gradient-linear.png',
'16/gimp-gradient-radial.png',
'16/gimp-gradient-shapeburst-angular.png',
'16/gimp-gradient-shapeburst-dimpled.png',
'16/gimp-gradient-shapeburst-spherical.png',
'16/gimp-gradient-spiral-anticlockwise.png',
'16/gimp-gradient-spiral-clockwise.png',
'16/gimp-gradient-square.png',
'16/gimp-grid.png',
'16/gimp-histogram-linear.png',
'16/gimp-histogram-logarithmic.png',
'16/gimp-histogram.png',
'16/gimp-image.png',
'16/gimp-images.png',
'16/gimp-info.png',
'16/gimp-input-device.png',
'16/gimp-invert.png',
'16/gimp-join-bevel.png',
'16/gimp-join-miter.png',
'16/gimp-join-round.png',
'16/gimp-landscape.png',
'16/gimp-layer-mask.png',
'16/gimp-layer-to-imagesize.png',
'16/gimp-layer.png',
'16/gimp-layers.png',
'16/gimp-list.png',
'16/gimp-merge-down.png',
'16/gimp-move-to-screen.png',
'16/gimp-navigation.png',
'16/gimp-paste-as-new.png',
'16/gimp-paste-into.png',
'16/gimp-path-stroke.png',
'16/gimp-path.png',
'16/gimp-paths.png',
'16/gimp-plugin.png',
'16/gimp-portrait.png',
'16/gimp-prefs-folders-brushes.png',
'16/gimp-prefs-folders-dynamics.png',
'16/gimp-prefs-folders-environ.png',
'16/gimp-prefs-folders-fonts.png',
'16/gimp-prefs-folders-gradients.png',
'16/gimp-prefs-folders-icon-themes.png',
'16/gimp-prefs-folders-interp.png',
'16/gimp-prefs-folders-modules.png',
'16/gimp-prefs-folders-palettes.png',
'16/gimp-prefs-folders-patterns.png',
'16/gimp-prefs-folders-plug-ins.png',
'16/gimp-prefs-folders-scripts.png',
'16/gimp-prefs-folders-themes.png',
'16/gimp-prefs-folders-tool-plug-ins.png',
'16/gimp-prefs-folders-tool-presets.png',
'16/gimp-prefs-folders-tools.png',
'16/gimp-prefs-icon-theme.png',
'16/gimp-prefs-image-windows.png',
'16/gimp-prefs-interface.png',
'16/gimp-prefs-theme.png',
'16/gimp-prefs-toolbox.png',
'16/gimp-prefs-window-management.png',
'16/gimp-print-resolution.png',
'16/gimp-reset.png',
'16/gimp-reshow-filter.png',
'16/gimp-resize.png',
'16/gimp-rotate-180.png',
'16/gimp-rotate-270.png',
'16/gimp-rotate-90.png',
'16/gimp-sample-point.png',
'16/gimp-scale.png',
'16/gimp-selection-add.png',
'16/gimp-selection-all.png',
'16/gimp-selection-border.png',
'16/gimp-selection-grow.png',
'16/gimp-selection-intersect.png',
'16/gimp-selection-none.png',
'16/gimp-selection-replace.png',
'16/gimp-selection-shrink.png',
'16/gimp-selection-stroke.png',
'16/gimp-selection-subtract.png',
'16/gimp-selection-to-channel.png',
'16/gimp-selection-to-path.png',
'16/gimp-selection.png',
'16/gimp-shape-circle.png',
'16/gimp-shape-diamond.png',
'16/gimp-shape-square.png',
'16/gimp-template.png',
'16/gimp-text-layer.png',
'16/gimp-toilet-paper.png',
'16/gimp-tool-airbrush.png',
'16/gimp-tool-align.png',
'16/gimp-tool-blur.png',
'16/gimp-tool-brightness-contrast.png',
'16/gimp-tool-bucket-fill.png',
'16/gimp-tool-by-color-select.png',
'16/gimp-tool-cage.png',
'16/gimp-tool-clone.png',
'16/gimp-tool-color-balance.png',
'16/gimp-tool-color-picker.png',
'16/gimp-tool-colorize.png',
'16/gimp-tool-crop.png',
'16/gimp-tool-curves.png',
'16/gimp-tool-desaturate.png',
'16/gimp-tool-dodge.png',
'16/gimp-tool-ellipse-select.png',
'16/gimp-tool-eraser.png',
'16/gimp-tool-flip.png',
'16/gimp-tool-foreground-select.png',
'16/gimp-tool-free-select.png',
'16/gimp-tool-fuzzy-select.png',
'16/gimp-tool-gradient.png',
'16/gimp-tool-handle-transform.png',
'16/gimp-tool-heal.png',
'16/gimp-tool-hue-saturation.png',
'16/gimp-tool-ink.png',
'16/gimp-tool-iscissors.png',
'16/gimp-tool-levels.png',
'16/gimp-tool-measure.png',
'16/gimp-tool-move.png',
'16/gimp-tool-mypaint-brush.png',
'16/gimp-tool-n-point-deformation.png',
'16/gimp-tool-options.png',
'16/gimp-tool-paintbrush.png',
'16/gimp-tool-path.png',
'16/gimp-tool-pencil.png',
'16/gimp-tool-perspective-clone.png',
'16/gimp-tool-perspective.png',
'16/gimp-tool-posterize.png',
'16/gimp-tool-preset.png',
'16/gimp-tool-rect-select.png',
'16/gimp-tool-rotate.png',
'16/gimp-tool-scale.png',
'16/gimp-tool-seamless-clone.png',
'16/gimp-tool-shear.png',
'16/gimp-tool-smudge.png',
'16/gimp-tool-text.png',
'16/gimp-tool-threshold.png',
'16/gimp-tool-unified-transform.png',
'16/gimp-tool-warp.png',
'16/gimp-tool-zoom.png',
'16/gimp-tools.png',
'16/gimp-transparency.png',
'16/gimp-undo-history.png',
'16/gimp-user-manual.png',
'16/gimp-video.png',
'16/gimp-warning.png',
'16/gimp-web.png',
'16/gimp-wilber.png',
'16/gtk-edit.png',
]
legacy_icons_18 = [
'18/gimp-color-picker-black.png',
'18/gimp-color-picker-gray.png',
'18/gimp-color-picker-white.png',
]
legacy_icons_20 = [
'20/gimp-linked.png',
'20/gimp-visible.png',
]
legacy_icons_22 = [
'22/gimp-char-picker.png',
'22/gimp-dynamics.png',
'22/gimp-histogram.png',
'22/gimp-input-device.png',
'22/gimp-letter-spacing.png',
'22/gimp-line-spacing.png',
'22/gimp-path.png',
'22/gimp-paths.png',
'22/gimp-prefs-color-management.png',
'22/gimp-prefs-controllers.png',
'22/gimp-prefs-default-grid.png',
'22/gimp-prefs-display.png',
'22/gimp-prefs-folders-brushes.png',
'22/gimp-prefs-folders-dynamics.png',
'22/gimp-prefs-folders-environ.png',
'22/gimp-prefs-folders-fonts.png',
'22/gimp-prefs-folders-gradients.png',
'22/gimp-prefs-folders-icon-themes.png',
'22/gimp-prefs-folders-interp.png',
'22/gimp-prefs-folders-modules.png',
'22/gimp-prefs-folders-palettes.png',
'22/gimp-prefs-folders-patterns.png',
'22/gimp-prefs-folders-plug-ins.png',
'22/gimp-prefs-folders-scripts.png',
'22/gimp-prefs-folders-themes.png',
'22/gimp-prefs-folders-tool-plug-ins.png',
'22/gimp-prefs-folders-tool-presets.png',
'22/gimp-prefs-folders-tools.png',
'22/gimp-prefs-folders.png',
'22/gimp-prefs-help-system.png',
'22/gimp-prefs-icon-theme.png',
'22/gimp-prefs-image-title.png',
'22/gimp-prefs-image-windows.png',
'22/gimp-prefs-input-devices.png',
'22/gimp-prefs-interface.png',
'22/gimp-prefs-new-image.png',
'22/gimp-prefs-playground.png',
'22/gimp-prefs-session.png',
'22/gimp-prefs-system-resources.png',
'22/gimp-prefs-theme.png',
'22/gimp-prefs-tool-options.png',
'22/gimp-prefs-toolbox.png',
'22/gimp-prefs-window-management.png',
'22/gimp-tool-preset.png',
'22/gimp-wilber.png',
]
legacy_tools_22 = [
'22/gimp-gegl.png',
'22/gimp-tool-airbrush.png',
'22/gimp-tool-align.png',
'22/gimp-tool-blur.png',
'22/gimp-tool-brightness-contrast.png',
'22/gimp-tool-bucket-fill.png',
'22/gimp-tool-by-color-select.png',
'22/gimp-tool-cage.png',
'22/gimp-tool-clone.png',
'22/gimp-tool-color-balance.png',
'22/gimp-tool-color-picker.png',
'22/gimp-tool-colorize.png',
'22/gimp-tool-crop.png',
'22/gimp-tool-curves.png',
'22/gimp-tool-desaturate.png',
'22/gimp-tool-dodge.png',
'22/gimp-tool-ellipse-select.png',
'22/gimp-tool-eraser.png',
'22/gimp-tool-flip.png',
'22/gimp-tool-foreground-select.png',
'22/gimp-tool-free-select.png',
'22/gimp-tool-fuzzy-select.png',
'22/gimp-tool-gradient.png',
'22/gimp-tool-handle-transform.png',
'22/gimp-tool-heal.png',
'22/gimp-tool-hue-saturation.png',
'22/gimp-tool-ink.png',
'22/gimp-tool-iscissors.png',
'22/gimp-tool-levels.png',
'22/gimp-tool-measure.png',
'22/gimp-tool-move.png',
'22/gimp-tool-mypaint-brush.png',
'22/gimp-tool-n-point-deformation.png',
'22/gimp-tool-paintbrush.png',
'22/gimp-tool-path.png',
'22/gimp-tool-pencil.png',
'22/gimp-tool-perspective-clone.png',
'22/gimp-tool-perspective.png',
'22/gimp-tool-posterize.png',
'22/gimp-tool-rect-select.png',
'22/gimp-tool-rotate.png',
'22/gimp-tool-scale.png',
'22/gimp-tool-seamless-clone.png',
'22/gimp-tool-shear.png',
'22/gimp-tool-smudge.png',
'22/gimp-tool-text.png',
'22/gimp-tool-threshold.png',
'22/gimp-tool-unified-transform.png',
'22/gimp-tool-warp.png',
'22/gimp-tool-zoom.png',
]
legacy_icons_24 = [
'24/gimp-center.png',
'24/gimp-channel-alpha.png',
'24/gimp-channel-blue.png',
'24/gimp-channel-gray.png',
'24/gimp-channel-green.png',
'24/gimp-channel-indexed.png',
'24/gimp-channel-red.png',
'24/gimp-channel.png',
'24/gimp-channels.png',
'24/gimp-colormap.png',
'24/gimp-controller-keyboard.png',
'24/gimp-controller-linux-input.png',
'24/gimp-controller-midi.png',
'24/gimp-controller-wheel.png',
'24/gimp-controller.png',
'24/gimp-cursor.png',
'24/gimp-device-status.png',
'24/gimp-display-filter-colorblind.png',
'24/gimp-display-filter-contrast.png',
'24/gimp-display-filter-gamma.png',
'24/gimp-display-filter-lcms.png',
'24/gimp-display-filter-proof.png',
'24/gimp-display-filter.png',
'24/gimp-floating-selection.png',
'24/gimp-gravity-east.png',
'24/gimp-gravity-north-east.png',
'24/gimp-gravity-north-west.png',
'24/gimp-gravity-north.png',
'24/gimp-gravity-south-east.png',
'24/gimp-gravity-south-west.png',
'24/gimp-gravity-south.png',
'24/gimp-gravity-west.png',
'24/gimp-hcenter.png',
'24/gimp-hchain-broken.png',
'24/gimp-hchain.png',
'24/gimp-hfill.png',
'24/gimp-image.png',
'24/gimp-images.png',
'24/gimp-info.png',
'24/gimp-layer-mask.png',
'24/gimp-layer.png',
'24/gimp-layers.png',
'24/gimp-move-to-screen.png',
'24/gimp-print-resolution.png',
'24/gimp-sample-point.png',
'24/gimp-template.png',
'24/gimp-text-dir-ltr.png',
'24/gimp-text-dir-rtl.png',
'24/gimp-text-layer.png',
'24/gimp-toilet-paper.png',
'24/gimp-tool-options.png',
'24/gimp-tools.png',
'24/gimp-transparency.png',
'24/gimp-undo-history.png',
'24/gimp-user-manual.png',
'24/gimp-vcenter.png',
'24/gimp-vchain-broken.png',
'24/gimp-vchain.png',
'24/gimp-vfill.png',
'24/gimp-video.png',
'24/gimp-warning.png',
'24/gimp-web.png',
]
legacy_icons_32 = [
'32/gimp-channel-alpha.png',
'32/gimp-channel-blue.png',
'32/gimp-channel-gray.png',
'32/gimp-channel-green.png',
'32/gimp-channel-indexed.png',
'32/gimp-channel-red.png',
'32/gimp-channel.png',
'32/gimp-floating-selection.png',
'32/gimp-image.png',
'32/gimp-layer-mask.png',
'32/gimp-layer.png',
'32/gimp-text-layer.png',
'32/gimp-user-manual.png',
'32/gimp-wilber.png',
]
legacy_icons_48 = [
'48/gimp-channel-alpha.png',
'48/gimp-channel-blue.png',
'48/gimp-channel-gray.png',
'48/gimp-channel-green.png',
'48/gimp-channel-indexed.png',
'48/gimp-channel-red.png',
'48/gimp-channel.png',
'48/gimp-floating-selection.png',
'48/gimp-image.png',
'48/gimp-layer-mask.png',
'48/gimp-layer.png',
'48/gimp-prefs-color-management.png',
'48/gimp-prefs-controllers.png',
'48/gimp-prefs-default-comment.png',
'48/gimp-prefs-default-grid.png',
'48/gimp-prefs-display.png',
'48/gimp-prefs-folders-brushes.png',
'48/gimp-prefs-folders-dynamics.png',
'48/gimp-prefs-folders-environ.png',
'48/gimp-prefs-folders-fonts.png',
'48/gimp-prefs-folders-gradients.png',
'48/gimp-prefs-folders-icon-themes.png',
'48/gimp-prefs-folders-interp.png',
'48/gimp-prefs-folders-modules.png',
'48/gimp-prefs-folders-palettes.png',
'48/gimp-prefs-folders-patterns.png',
'48/gimp-prefs-folders-plug-ins.png',
'48/gimp-prefs-folders-scripts.png',
'48/gimp-prefs-folders-themes.png',
'48/gimp-prefs-folders-tool-plug-ins.png',
'48/gimp-prefs-folders-tool-presets.png',
'48/gimp-prefs-folders-tools.png',
'48/gimp-prefs-folders.png',
'48/gimp-prefs-help-system.png',
'48/gimp-prefs-icon-theme.png',
'48/gimp-prefs-image-title.png',
'48/gimp-prefs-image-windows.png',
'48/gimp-prefs-input-devices.png',
'48/gimp-prefs-interface.png',
'48/gimp-prefs-new-image.png',
'48/gimp-prefs-playground.png',
'48/gimp-prefs-session.png',
'48/gimp-prefs-system-resources.png',
'48/gimp-prefs-theme.png',
'48/gimp-prefs-tool-options.png',
'48/gimp-prefs-toolbox.png',
'48/gimp-prefs-window-management.png',
'48/gimp-text-layer.png',
'48/gimp-wilber.png',
]
legacy_icons_64 = [
'64/gimp-error.png',
'64/gimp-frame.png',
'64/gimp-info.png',
'64/gimp-question.png',
'64/gimp-texture.png',
'64/gimp-user-manual.png',
'64/gimp-warning.png',
'64/gimp-wilber-eek.png',
'64/gimp-wilber-outline.png',
'64/gimp-wilber.png',
]
legacy_icons_96 = [
'96/gimp-wilber-outline.png',
'96/gimp-wilber.png',
]
legacy_icons_128 = [
'128/gimp-wilber-outline.png',
'128/gimp-wilber.png',
]
legacy_icons_192 = [
'192/gimp-wilber-outline.png',
'192/gimp-wilber.png',
]
legacy_icons_256 = [
'256/gimp-wilber-outline.png',
'256/gimp-wilber.png',
]
all_legacy_icons = [
[ '12x12', legacy_icons_12 ],
[ '16x16', legacy_icons_16 ],
[ '18x18', legacy_icons_18 ],
[ '20x20', legacy_icons_20 ],
[ '22x22', legacy_icons_22 ],
[ '24x24', legacy_icons_24 ],
[ '32x32', legacy_icons_32 ],
[ '48x48', legacy_icons_48 ],
[ '64x64', legacy_icons_64 ],
[ '96x96', legacy_icons_96 ],
[ '128x128', legacy_icons_128 ],
[ '192x192', legacy_icons_192 ],
[ '256x256', legacy_icons_256 ],
]
all_legacy_tools = [
[ '22x22', legacy_tools_22 ],
]
foreach icon_info : all_legacy_icons
icons_dir = icon_info[0]
icons_list= icon_info[1]
install_data(icons_list,
install_dir: join_paths(gimpiconsdir, theme, icons_dir, 'apps')
)
endforeach
foreach icon_info : all_legacy_tools
icons_dir = icon_info[0]
icons_list= icon_info[1]
install_data(icons_list,
install_dir: join_paths(gimpiconsdir, theme, icons_dir, 'tools')
)
endforeach
icons_core = [ '64/gimp-question.png', ]
icons_imgs = [ '64/gimp-wilber-eek.png', ]
resourcename = 'gimp-core-pixbufs'
xml_content = '<?xml version="1.0" encoding="UTF-8"?>\n'
xml_content += '<gresources>\n'
xml_content += ' <gresource prefix="/org/gimp/icons">\n'
foreach file : icons_core
xml_content+=' <file preprocess="to-pixdata">'+ file +'</file>\n'
endforeach
xml_content += ' </gresource>\n'
xml_content += '</gresources>\n'
xml_file = configure_file(
output: resourcename + '.gresource.xml',
command: [ 'echo', xml_content ],
capture: true,
)
# icons_core_sources = gnome.compile_resources(
# resourcename,
# xml_file,
# c_name: resourcename.underscorify(),
# )
resourcename = 'gimp-icon-pixbufs'
xml_content = '<?xml version="1.0" encoding="UTF-8"?>\n'
xml_content += '<gresources>\n'
xml_content += ' <gresource prefix="/org/gimp/icons">\n'
foreach file : icons_imgs
xml_content+=' <file preprocess="to-pixdata">'+ file +'</file>\n'
endforeach
xml_content += ' </gresource>\n'
xml_content += '</gresources>\n'
xml_file = configure_file(
output: resourcename + '.gresource.xml',
command: [ 'echo', xml_content ],
capture: true,
)
# icons_imgs_sources = gnome.compile_resources(
# resourcename,
# xml_file,
# c_name: resourcename.underscorify(),
# )

View File

@@ -0,0 +1,70 @@
install_data('index.theme',
install_dir: join_paths(gimpiconsdir, theme)
)
foreach icon_info : all_icons
icons_dir = icon_info[0]
icons_list= icon_info[1]
# generated_icons_list = []
# foreach icon : icons_list
# generated_icons_list += custom_target(
# 'gen_symbolic_'+icon.underscorify(),
# input : join_paths('..', 'Symbolic', icon),
# output: icon,
# command: [ invert_svg, '@INPUT@', '@OUTPUT@' ]
# )
# endforeach
#
# install_data(generated_icons_list,
# install_dir: join_paths(gimpiconsdir, theme, icons_dir, 'apps')
# )
endforeach
icons_core = [ '64/gimp-question.png', ]
icons_imgs = [ '64/gimp-wilber-eek.png', ]
resourcename = 'gimp-core-pixbufs'
xml_content = '<?xml version="1.0" encoding="UTF-8"?>\n'
xml_content += '<gresources>\n'
xml_content += ' <gresource prefix="/org/gimp/icons">\n'
foreach file : icons_core
xml_content+=' <file preprocess="to-pixdata">'+ file +'</file>\n'
endforeach
xml_content += ' </gresource>\n'
xml_content += '</gresources>\n'
xml_file = configure_file(
output: resourcename + '.gresource.xml',
command: [ 'echo', xml_content ],
capture: true,
)
# icons_core_sources = gnome.compile_resources(
# resourcename,
# xml_file,
# c_name: resourcename.underscorify(),
# )
resourcename = 'gimp-icon-pixbufs'
xml_content = '<?xml version="1.0" encoding="UTF-8"?>\n'
xml_content += '<gresources>\n'
xml_content += ' <gresource prefix="/org/gimp/icons">\n'
foreach file : icons_imgs
xml_content+=' <file preprocess="to-pixdata">'+ file +'</file>\n'
endforeach
xml_content += ' </gresource>\n'
xml_content += '</gresources>\n'
xml_file = configure_file(
output: resourcename + '.gresource.xml',
command: [ 'echo', xml_content ],
capture: true,
)
# icons_imgs_sources = gnome.compile_resources(
# resourcename,
# xml_file,
# c_name: resourcename.underscorify(),
# )

View File

@@ -0,0 +1,59 @@
install_data('index.theme',
install_dir: join_paths(gimpiconsdir, theme)
)
foreach icon_info : all_icons
icons_dir = icon_info[0]
icons_list= icon_info[1]
install_data(icons_list,
install_dir: join_paths(gimpiconsdir, theme, icons_dir, 'apps')
)
endforeach
icons_core = [ '64/gimp-question.png', ]
icons_imgs = [ '64/gimp-wilber-eek.png', ]
resourcename = 'gimp-core-pixbufs'
xml_content = '<?xml version="1.0" encoding="UTF-8"?>\n'
xml_content += '<gresources>\n'
xml_content += ' <gresource prefix="/org/gimp/icons">\n'
foreach file : icons_core
xml_content+=' <file preprocess="to-pixdata">'+ file +'</file>\n'
endforeach
xml_content += ' </gresource>\n'
xml_content += '</gresources>\n'
xml_file = configure_file(
output: resourcename + '.gresource.xml',
command: [ 'echo', xml_content ],
capture: true,
)
# icons_core_sources = gnome.compile_resources(
# resourcename,
# xml_file,
# c_name: resourcename.underscorify(),
# )
resourcename = 'gimp-icon-pixbufs'
xml_content = '<?xml version="1.0" encoding="UTF-8"?>\n'
xml_content += '<gresources>\n'
xml_content += ' <gresource prefix="/org/gimp/icons">\n'
foreach file : icons_imgs
xml_content+=' <file preprocess="to-pixdata">'+ file +'</file>\n'
endforeach
xml_content += ' </gresource>\n'
xml_content += '</gresources>\n'
xml_file = configure_file(
output: resourcename + '.gresource.xml',
command: [ 'echo', xml_content ],
capture: true,
)
# icons_imgs_sources = gnome.compile_resources(
# resourcename,
# xml_file,
# c_name: resourcename.underscorify(),
# )

1123
icons/meson.build Normal file

File diff suppressed because it is too large Load Diff

318
libgimp/meson.build Normal file
View File

@@ -0,0 +1,318 @@
gimpenums_notail = custom_target('gimpenums.c.notail',
input : [ 'gimpenums.h', ],
output: [ 'gimpenums.c.notail', ],
command: [
gimp_mkenums,
'--fhead','#include "config.h"\n'
+ '#include <gio/gio.h>\n'
+ '#include <gegl.h>\n'
+ '#undef GIMP_DISABLE_DEPRECATED\n'
+ '#include "libgimpbase/gimpbase.h"\n'
+ '#include "libgimpbase/gimpbase-private.h"\n'
+ '#include "libgimpconfig/gimpconfigenums.h"\n'
+ '#include "gimpenums.h"\n',
gimp_mkenums_custom_target_commonargs,
],
capture: true,
)
gimpenums = custom_target('gimpenums.c',
input : [ gimpenums_notail, 'gimpenums.c.tail', ],
output: [ 'gimpenums.c', ],
command: [ 'cat', '@INPUT@' ],
capture: true,
)
gimpuimarshal = gnome.genmarshal('gimpuimarshal',
prefix: '_gimpui_marshal',
sources: 'gimpuimarshal.list',
install_header: false,
)
libgimp_top_pdbwrappers = [
'gimp_pdb.c',
'gimpbrush_pdb.c',
'gimpbrushes_pdb.c',
'gimpbrushselect_pdb.c',
'gimpbuffer_pdb.c',
'gimpchannel_pdb.c',
'gimpcolor_pdb.c',
'gimpcontext_pdb.c',
'gimpdebug_pdb.c',
'gimpdisplay_pdb.c',
'gimpdrawable_pdb.c',
'gimpdrawablecolor_pdb.c',
'gimpdrawableedit_pdb.c',
'gimpdrawabletransform_pdb.c',
'gimpdynamics_pdb.c',
'gimpedit_pdb.c',
'gimpfileops_pdb.c',
'gimpfloatingsel_pdb.c',
'gimpfonts_pdb.c',
'gimpfontselect_pdb.c',
'gimpgimprc_pdb.c',
'gimpgradient_pdb.c',
'gimpgradients_pdb.c',
'gimpgradientselect_pdb.c',
'gimphelp_pdb.c',
'gimpimage_pdb.c',
'gimpimagecolorprofile_pdb.c',
'gimpimageconvert_pdb.c',
'gimpimagegrid_pdb.c',
'gimpimageguides_pdb.c',
'gimpimagesamplepoints_pdb.c',
'gimpimageselect_pdb.c',
'gimpimagetransform_pdb.c',
'gimpimageundo_pdb.c',
'gimpitem_pdb.c',
'gimpitemtransform_pdb.c',
'gimplayer_pdb.c',
'gimpmessage_pdb.c',
'gimppainttools_pdb.c',
'gimppalette_pdb.c',
'gimppalettes_pdb.c',
'gimppaletteselect_pdb.c',
'gimppaths_pdb.c',
'gimppattern_pdb.c',
'gimppatterns_pdb.c',
'gimppatternselect_pdb.c',
'gimpplugin_pdb.c',
'gimpproceduraldb_pdb.c',
'gimpprogress_pdb.c',
'gimpselection_pdb.c',
'gimpselectiontools_pdb.c',
'gimptextlayer_pdb.c',
'gimptexttool_pdb.c',
'gimptransformtools_pdb.c',
'gimpunit_pdb.c',
'gimpvectors_pdb.c',
]
libgimp_top_pdbheaders = [
'gimp_pdb_headers.h',
'gimp_pdb.h',
'gimpbrush_pdb.h',
'gimpbrushes_pdb.h',
'gimpbrushselect_pdb.h',
'gimpbuffer_pdb.h',
'gimpchannel_pdb.h',
'gimpcolor_pdb.h',
'gimpcontext_pdb.h',
'gimpdebug_pdb.h',
'gimpdisplay_pdb.h',
'gimpdrawable_pdb.h',
'gimpdrawablecolor_pdb.h',
'gimpdrawabletransform_pdb.h',
'gimpdynamics_pdb.h',
'gimpedit_pdb.h',
'gimpfileops_pdb.h',
'gimpfloatingsel_pdb.h',
'gimpfonts_pdb.h',
'gimpfontselect_pdb.h',
'gimpgimprc_pdb.h',
'gimpgradient_pdb.h',
'gimpgradients_pdb.h',
'gimpgradientselect_pdb.h',
'gimphelp_pdb.h',
'gimpimage_pdb.h',
'gimpimagecolorprofile_pdb.h',
'gimpimageconvert_pdb.h',
'gimpimagegrid_pdb.h',
'gimpimageguides_pdb.h',
'gimpimagesamplepoints_pdb.h',
'gimpimageselect_pdb.h',
'gimpimagetransform_pdb.h',
'gimpimageundo_pdb.h',
'gimpitem_pdb.h',
'gimpitemtransform_pdb.h',
'gimplayer_pdb.h',
'gimpmessage_pdb.h',
'gimppainttools_pdb.h',
'gimppalette_pdb.h',
'gimppalettes_pdb.h',
'gimppaletteselect_pdb.h',
'gimppaths_pdb.h',
'gimppattern_pdb.h',
'gimppatterns_pdb.h',
'gimppatternselect_pdb.h',
'gimpplugin_pdb.h',
'gimpproceduraldb_pdb.h',
'gimpprogress_pdb.h',
'gimpselection_pdb.h',
'gimpselectiontools_pdb.h',
'gimptextlayer_pdb.h',
'gimptexttool_pdb.h',
'gimptransformtools_pdb.h',
'gimpunit_pdb.h',
'gimpvectors_pdb.h',
]
libgimp_top_sources = [
'gimp.c',
'gimpbrushes.c',
'gimpbrushselect.c',
'gimpchannel.c',
'gimpdrawable.c',
'gimpedit.c',
'gimpfontselect.c',
'gimpgimprc.c',
'gimpgradients.c',
'gimpgradientselect.c',
'gimpimage.c',
'gimpimagecolorprofile.c',
'gimplayer.c',
'gimppalette.c',
'gimppalettes.c',
'gimppaletteselect.c',
'gimppatterns.c',
'gimppatternselect.c',
'gimppixbuf.c',
'gimppixelfetcher.c',
'gimppixelrgn.c',
'gimpplugin.c',
'gimpproceduraldb.c',
'gimpprogress.c',
'gimpregioniterator.c',
'gimpselection.c',
'gimptile.c',
'gimptilebackendplugin.c',
'gimpunitcache.c',
'gimpvectors.c',
gimpenums,
libgimp_top_pdbwrappers,
]
libgimpui_sources = [
'gimpaspectpreview.c',
'gimpbrushmenu.c',
'gimpbrushselectbutton.c',
'gimpdrawablepreview.c',
'gimpexport.c',
'gimpfontmenu.c',
'gimpfontselectbutton.c',
'gimpgradientmenu.c',
'gimpgradientselectbutton.c',
'gimpimagecombobox.c',
'gimpimagemetadata.c',
'gimpitemcombobox.c',
'gimpmenu.c',
'gimppalettemenu.c',
'gimppaletteselectbutton.c',
'gimppatternmenu.c',
'gimppatternselectbutton.c',
'gimpprocbrowserdialog.c',
'gimpprocview.c',
'gimpprogressbar.c',
'gimpselectbutton.c',
'gimpui.c',
'gimpzoompreview.c',
gimpuimarshal,
]
libgimp_top_headers = [
'gimp.h',
'gimpaspectpreview.h',
'gimpbrushes.h',
'gimpbrushmenu.h',
'gimpbrushselect.h',
'gimpbrushselectbutton.h',
'gimpchannel.h',
'gimpdrawable.h',
'gimpdrawablepreview.h',
'gimpedit.h',
'gimpenums.h',
'gimpexport.h',
'gimpfontmenu.h',
'gimpfontselect.h',
'gimpfontselectbutton.h',
'gimpgimprc.h',
'gimpgradientmenu.h',
'gimpgradients.h',
'gimpgradientselect.h',
'gimpgradientselectbutton.h',
'gimpimage.h',
'gimpimagecolorprofile.h',
'gimpimagecombobox.h',
'gimpimagemetadata.h',
'gimpitemcombobox.h',
'gimplayer.h',
'gimpmenu.h',
'gimppalette.h',
'gimppalettemenu.h',
'gimppalettes.h',
'gimppaletteselect.h',
'gimppaletteselectbutton.h',
'gimppatternmenu.h',
'gimppatterns.h',
'gimppatternselect.h',
'gimppatternselectbutton.h',
'gimppixbuf.h',
'gimppixelfetcher.h',
'gimppixelrgn.h',
'gimpplugin.h',
'gimpprocbrowserdialog.h',
'gimpproceduraldb.h',
'gimpprocview.h',
'gimpprogress.h',
'gimpprogressbar.h',
'gimpregioniterator.h',
'gimpselectbutton.h',
'gimpselection.h',
'gimptile.h',
'gimptypes.h',
'gimpui.h',
'gimpuitypes.h',
'gimpvectors.h',
'gimpzoompreview.h',
libgimp_top_pdbheaders,
]
libgimp_top_cflags = [
'-DG_LOG_DOMAIN="LibGimp"',
'-DGIMP_COMPILATION',
]
libgimp = library('gimp-'+ api_version,
libgimp_top_sources,
include_directories: rootInclude,
dependencies: [
gegl, gexiv2, gtk2, drmingw,
],
c_args: [ libgimp_top_cflags, ],
link_with: [
libgimpbase,
libgimpcolor,
libgimpconfig,
],
vs_module_defs: 'gimp.def',
install: true,
version: so_version,
)
libgimpui = library('gimpui-'+ api_version,
libgimpui_sources,
include_directories: rootInclude,
dependencies: [
gegl, gexiv2, gtk2,
],
c_args: [ libgimp_top_cflags, ],
link_with: [
libgimp,
libgimpbase,
libgimpcolor,
libgimpmodule,
libgimpwidgets,
],
vs_module_defs: 'gimpui.def',
install: true,
version: so_version,
)
install_headers(
libgimp_top_headers,
subdir: join_paths(gimp_api_name, 'libgimp'),
)

View File

@@ -51,10 +51,10 @@ libgimpbaseincludedir = $(includedir)/gimp-$(GIMP_API_VERSION)/libgimpbase
AM_CPPFLAGS = \
-DPREFIX=\""$(prefix)"\" \
-DGIMPDIR=\""$(gimpdir)"\" \
-DDATADIR=\""$(gimpdatadir)"\" \
-DGIMPDATADIR=\""$(gimpdatadir)"\" \
-DLOCALEDIR=\""$(gimplocaledir)"\" \
-DPLUGINDIR=\""$(gimpplugindir)"\" \
-DSYSCONFDIR=\""$(gimpsysconfdir)"\" \
-DGIMPSYSCONFDIR=\""$(gimpsysconfdir)"\" \
-DGIMP_PACKAGE=\""@PACKAGE@"\" \
-DGIMP_DATA_VERSION=\"$(GIMP_DATA_VERSION)\" \
-DGIMP_USER_VERSION=\"$(GIMP_USER_VERSION)\" \

View File

@@ -65,14 +65,8 @@
#define geteuid() 0
#define getegid() 0
/* This is a hack for Windows known directory support.
* DATADIR (autotools-generated constant) is a type defined in objidl.h
* so we must #undef it before including shlobj.h in order to avoid a
* name clash. */
static const char* datadir = DATADIR;
#undef DATADIR
#include <shlobj.h>
#define DATADIR datadir
/* Constant available since Shell32.dll 4.72 */
#ifndef CSIDL_APPDATA
#define CSIDL_APPDATA 0x001a
@@ -485,7 +479,7 @@ gimp_data_directory (void)
GIMP_DATA_VERSION,
NULL);
gimp_data_dir = gimp_env_get_dir ("GIMP2_DATADIR", DATADIR, tmp);
gimp_data_dir = gimp_env_get_dir ("GIMP2_DATADIR", GIMPDATADIR, tmp);
g_free (tmp);
}
@@ -563,7 +557,7 @@ gimp_sysconf_directory (void)
GIMP_SYSCONF_VERSION,
NULL);
gimp_sysconf_dir = gimp_env_get_dir ("GIMP2_SYSCONFDIR", SYSCONFDIR, tmp);
gimp_sysconf_dir = gimp_env_get_dir ("GIMP2_SYSCONFDIR", GIMPSYSCONFDIR, tmp);
g_free (tmp);
}

View File

@@ -38,29 +38,21 @@
#include <glib/gprintf.h>
#if defined(G_OS_WIN32)
/* This is a hack for Windows known directory support.
* DATADIR (autotools-generated constant) is a type defined in objidl.h
* so we must #undef it before including shlobj.h in order to avoid a
* name clash. */
#undef DATADIR
#include <windows.h>
#include <shlobj.h>
# include <windows.h>
# include <shlobj.h>
#else /* G_OS_WIN32 */
/* For waitpid() */
#include <sys/wait.h>
#include <unistd.h>
#include <errno.h>
/* For waitpid() */
# include <sys/wait.h>
# include <unistd.h>
# include <errno.h>
/* For thread IDs. */
#include <sys/types.h>
#include <sys/syscall.h>
# include <sys/types.h>
# include <sys/syscall.h>
#ifdef HAVE_SYS_PRCTL_H
#include <sys/prctl.h>
#endif
# ifdef HAVE_SYS_PRCTL_H
# include <sys/prctl.h>
# endif
#endif /* G_OS_WIN32 */

View File

@@ -0,0 +1,65 @@
#pragma once
// gimpversion.h.in -> gimpversion.h
// This file is configured by Meson. Please modify meson.build files.
#if !defined (__GIMP_BASE_H_INSIDE__) && !defined (GIMP_BASE_COMPILATION)
#error "Only <libgimpbase/gimpbase.h> can be included directly."
#endif
G_BEGIN_DECLS
/**
* SECTION: gimpversion
* @title: gimpversion
* @short_description: Macros and constants useful for determining
* GIMP's version number and capabilities.
*
* Macros and constants useful for determining GIMP's version number and
* capabilities.
**/
/**
* GIMP_MAJOR_VERSION:
*
* The major GIMP version number.
**/
#define GIMP_MAJOR_VERSION (@GIMP_MAJOR_VERSION@)
/**
* GIMP_MINOR_VERSION:
*
* The minor GIMP version number.
**/
#define GIMP_MINOR_VERSION (@GIMP_MINOR_VERSION@)
/**
* GIMP_MICRO_VERSION:
*
* The micro GIMP version number.
**/
#define GIMP_MICRO_VERSION (@GIMP_MICRO_VERSION@)
/**
* GIMP_VERSION:
*
* The GIMP version as a string.
**/
#define GIMP_VERSION "@GIMP_VERSION@"
/**
* GIMP_API_VERSION:
*
* Since: 2.2
**/
#define GIMP_API_VERSION "@GIMP_API_VERSION@"
#define GIMP_CHECK_VERSION(major, minor, micro) \
(GIMP_MAJOR_VERSION > (major) || \
(GIMP_MAJOR_VERSION == (major) && GIMP_MINOR_VERSION > (minor)) || \
(GIMP_MAJOR_VERSION == (major) && GIMP_MINOR_VERSION == (minor) && \
GIMP_MICRO_VERSION >= (micro)))
G_END_DECLS

119
libgimpbase/meson.build Normal file
View File

@@ -0,0 +1,119 @@
gimpversion = configure_file(
input : 'gimpversion.h.in',
output: 'gimpversion.h',
configuration: versionconfig,
)
gimpbaseenums = custom_target('gimpbaseenums.c',
input : [ 'gimpbaseenums.h', ],
output: [ 'gimpbaseenums.c', ],
command: [
gimp_mkenums,
'--fhead','#include "config.h"\n'
+ '#include <glib-object.h>\n'
+ '#undef GIMP_DISABLE_DEPRECATED\n'
+ '#include "gimpbasetypes.h"\n'
+ '#include "libgimp/libgimp-intl.h"\n',
gimp_mkenums_custom_target_commonargs,
],
capture: true,
)
gimpcompatenums = custom_target('gimpcompatenums.c',
input : [ 'gimpcompatenums.h', ],
output: [ 'gimpcompatenums.c', ],
command: [
gimp_mkenums,
'--fhead','#include "config.h"\n'
+ '#include <glib-object.h>\n'
+ '#include "gimpbasetypes.h"\n'
+ '#include "@INPUT@"\n'
+ '#include "libgimp/libgimp-intl.h"\n',
gimp_mkenums_custom_target_commonargs,
],
capture: true,
)
libgimpbase_sources = [
'gimpbase-private.c',
'gimpbasetypes.c',
'gimpchecks.c',
'gimpcpuaccel.c',
'gimpdatafiles.c',
'gimpenv.c',
'gimpmemsize.c',
'gimpmetadata.c',
'gimpparasite.c',
'gimpparasiteio.c',
'gimpprotocol.c',
'gimprectangle.c',
'gimpreloc.c',
'gimpsignal.c',
'gimpunit.c',
'gimputils.c',
'gimpvaluearray.c',
'gimpwire.c',
gimpbaseenums,
gimpcompatenums,
gimpversion,
]
libgimpbase_headers = [
'gimpbase.h',
'gimpbaseenums.h',
'gimpbasetypes.h',
'gimpcpuaccel.h',
'gimplimits.h',
'gimpparam.h',
'gimpchecks.h',
'gimpdatafiles.h',
'gimpenv.h',
'gimpmemsize.h',
'gimpmetadata.h',
'gimpparasite.h',
'gimpparasiteio.h',
'gimprectangle.h',
'gimpsignal.h',
'gimpunit.h',
'gimputils.h',
'gimpvaluearray.h',
gimpversion,
]
libgimpbase_cflags = [
'-DG_LOG_DOMAIN="LibGimpBase"',
'-DGIMP_BASE_COMPILATION',
]
libgimpbase = library('gimpbase-' + api_version,
libgimpbase_sources,
include_directories: rootInclude,
dependencies: [
gexiv2, gio, math,
],
c_args: [ libgimpbase_cflags, ],
vs_module_defs: 'gimpbase.def',
install: true,
version: so_version,
)
install_headers(
libgimpbase_headers,
subdir: join_paths(gimp_api_name, 'libgimpbase'),
)
# Test program, not installed
executable('test-cpu-accel',
'test-cpu-accel.c',
include_directories: rootInclude,
dependencies: [
glib,
],
c_args: [ libgimpbase_cflags, ],
link_with: [
libgimpbase,
],
install: false,
)

71
libgimpcolor/meson.build Normal file
View File

@@ -0,0 +1,71 @@
libgimpcolor_sources = [
'gimpadaptivesupersample.c',
'gimpbilinear.c',
'gimpcairo.c',
'gimpcmyk.c',
'gimpcolormanaged.c',
'gimpcolorprofile.c',
'gimpcolorspace.c',
'gimpcolortransform.c',
'gimphsl.c',
'gimphsv.c',
'gimppixbuf.c',
'gimprgb-parse.c',
'gimprgb.c',
]
libgimpcolor_headers = [
'gimpcolor.h',
'gimpcolortypes.h',
'gimpadaptivesupersample.h',
'gimpbilinear.h',
'gimpcairo.h',
'gimpcmyk.h',
'gimpcolormanaged.h',
'gimpcolorprofile.h',
'gimpcolorspace.h',
'gimpcolortransform.h',
'gimphsl.h',
'gimphsv.h',
'gimppixbuf.h',
'gimprgb.h',
]
libgimpcolor_cflags = [
'-DG_LOG_DOMAIN="LibGimpColor"',
'-DGIMP_COLOR_COMPILATION',
]
libgimpcolor = library('gimpcolor-' + api_version,
libgimpcolor_sources,
include_directories: rootInclude,
dependencies: [
cairo, gdk_pixbuf, gegl, lcms, math,
],
c_args: [ libgimpcolor_cflags, ],
link_with: [ libgimpbase, ],
vs_module_defs: 'gimpcolor.def',
install: true,
version: so_version,
)
install_headers(
libgimpcolor_headers,
subdir: join_paths(gimp_api_name, 'libgimpcolor'),
)
# Test program, not installed
executable('test-color-parser',
'test-color-parser.c',
include_directories: rootInclude,
dependencies: [
cairo, gdk_pixbuf, gegl, lcms, math,
babl,
# glib,
],
c_args: [ libgimpcolor_cflags, ],
link_with: [ libgimpbase, libgimpcolor, ],
install: false,
)

70
libgimpconfig/meson.build Normal file
View File

@@ -0,0 +1,70 @@
gimpconfigenums = custom_target('gimpconfigenums.c',
input : [ 'gimpconfigenums.h', ],
output: [ 'gimpconfigenums.c', ],
command: [
gimp_mkenums,
'--fhead','#include "config.h"\n'
+ '#include <gio/gio.h>\n'
+ '#include "libgimpbase/gimpbase.h"\n'
+ '#include "@INPUT@"\n'
+ '#include "libgimp/libgimp-intl.h"\n',
gimp_mkenums_custom_target_commonargs,
],
capture: true,
)
libgimpconfig_sources = [
'gimpcolorconfig.c',
'gimpconfig-deserialize.c',
'gimpconfig-error.c',
'gimpconfig-iface.c',
'gimpconfig-path.c',
'gimpconfig-serialize.c',
'gimpconfig-utils.c',
'gimpconfigwriter.c',
'gimpscanner.c',
gimpconfigenums
]
libgimpconfig_headers = [
'gimpcolorconfig.h',
'gimpconfig-deserialize.h',
'gimpconfig-error.h',
'gimpconfig-iface.h',
'gimpconfig-params.h',
'gimpconfig-path.h',
'gimpconfig-serialize.h',
'gimpconfig-utils.h',
'gimpconfig.h',
'gimpconfigenums.h',
'gimpconfigtypes.h',
'gimpconfigwriter.h',
'gimpscanner.h',
]
libgimpconfig = library('gimpconfig-' + api_version,
libgimpconfig_sources,
include_directories: rootInclude,
dependencies: [
cairo, gdk_pixbuf, gegl, gio, gio_specific,
],
c_args: [
'-DG_LOG_DOMAIN="LibGimpConfig"',
'-DGIMP_CONFIG_COMPILATION',
],
link_with: [
libgimpbase,
libgimpcolor,
libgimpmath,
],
vs_module_defs: 'gimpconfig.def',
install: true,
version: so_version,
)
install_headers(
libgimpconfig_headers,
subdir: join_paths(gimp_api_name, 'libgimpconfig'),
)

38
libgimpmath/meson.build Normal file
View File

@@ -0,0 +1,38 @@
libgimpmath_sources = [
'gimpmatrix.c',
'gimpmd5.c',
'gimpvector.c',
]
libgimpmath_headers = [
'gimpmath.h',
'gimpmathtypes.h',
'gimpmatrix.h',
'gimpmd5.h',
'gimpvector.h',
]
libgimpmath = library('gimpmath-' + api_version,
libgimpmath_sources,
include_directories: rootInclude,
dependencies: [
glib, gobject, math,
],
c_args: [
'-DG_LOG_DOMAIN="LibGimpMath"',
'-DGIMP_MATH_COMPILATION',
],
link_with: [
libgimpbase,
],
vs_module_defs: 'gimpmath.def',
install: true,
version: so_version,
)
install_headers(
libgimpmath_headers,
subdir: join_paths(gimp_api_name, 'libgimpmath'),
)

36
libgimpmodule/meson.build Normal file
View File

@@ -0,0 +1,36 @@
libgimpmodule_sources = [
'gimpmodule.c',
'gimpmoduledb.c',
]
libgimpmodule_headers = [
'gimpmodule.h',
'gimpmoduledb.h',
'gimpmoduletypes.h',
]
libgimpmodule = library('gimpmodule-' + api_version,
libgimpmodule_sources,
include_directories: rootInclude,
dependencies: [
gio, glib, gmodule,
],
c_args: [
'-DG_LOG_DOMAIN="LibGimpModule"',
'-DGIMP_MODULE_COMPILATION',
],
link_with: [
libgimpbase,
libgimpconfig,
],
vs_module_defs: 'gimpmodule.def',
install: true,
version: so_version,
)
install_headers(
libgimpmodule_headers,
subdir: join_paths(gimp_api_name, 'libgimpmodule'),
)

88
libgimpthumb/meson.build Normal file
View File

@@ -0,0 +1,88 @@
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@" */\n',
'--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 = [
'gimpthumb-error.c',
'gimpthumb-utils.c',
'gimpthumbnail.c',
gimpthumbenums,
]
libgimpthumb_headers = [
'gimpthumb-enums.h',
'gimpthumb-error.h',
'gimpthumb-types.h',
'gimpthumb-utils.h',
'gimpthumb.h',
'gimpthumbnail.h',
]
libgimpthumb_cflags = [
'-DG_LOG_DOMAIN="LibGimpThumb"',
'-DGIMP_THUMB_COMPILATION',
]
libgimpthumb = library('gimpthumb-'+ api_version,
libgimpthumb_sources,
include_directories: rootInclude,
dependencies: [
gdk_pixbuf, glib, gio, gobject,
],
c_args: [ libgimpthumb_cflags, ],
link_with: [
libgimpbase,
],
vs_module_defs: 'gimpthumb.def',
install: true,
version: so_version,
)
install_headers(
libgimpthumb_headers,
subdir: join_paths(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: [ libgimpthumb_cflags, ],
link_with: [
libgimpbase,
libgimpthumb,
],
install: false,
)

View File

@@ -28,7 +28,11 @@
#undef GIMP_DISABLE_DEPRECATED
#include "gimpicons.h"
#ifdef MESON_BUILD
#include "icons/Color/gimp-icon-pixbufs.h"
#else
#include "icons/Color/gimp-icon-pixbufs.c"
#endif
#include "libgimp/libgimp-intl.h"

217
libgimpwidgets/meson.build Normal file
View File

@@ -0,0 +1,217 @@
gimpwidgetsenums = custom_target('gimpwidgetsenums.c',
input : [ 'gimpwidgetsenums.h', ],
output: [ 'gimpwidgetsenums.c', ],
command: [
gimp_mkenums,
'--fhead','#include "config.h"\n'
+ '#include <gio/gio.h>\n'
+ '#include "libgimpbase/gimpbase.h"\n'
+ '#include "@INPUT@"\n'
+ '#include "libgimp/libgimp-intl.h"\n',
gimp_mkenums_custom_target_commonargs,
],
capture: true,
)
gimpwidgetsmarshal = gnome.genmarshal('gimpwidgetsmarshal',
prefix: '_gimp_widgets_marshal',
sources: 'gimpwidgetsmarshal.list',
install_header: false,
)
libgimpwidgets_sources = [
'gimp3migration.c',
'gimpbrowser.c',
'gimpbutton.c',
'gimpcairo-utils.c',
'gimpcellrenderercolor.c',
'gimpcellrenderertoggle.c',
'gimpchainbutton.c',
'gimpcolorarea.c',
'gimpcolorbutton.c',
'gimpcolordisplay.c',
'gimpcolordisplaystack.c',
'gimpcolorhexentry.c',
'gimpcolornotebook.c',
'gimpcolorprofilechooserdialog.c',
'gimpcolorprofilecombobox.c',
'gimpcolorprofilestore.c',
'gimpcolorprofileview.c',
'gimpcolorscale.c',
'gimpcolorscales.c',
'gimpcolorselect.c',
'gimpcolorselection.c',
'gimpcolorselector.c',
'gimpcontroller.c',
'gimpdialog.c',
'gimpeevl.c',
'gimpenumcombobox.c',
'gimpenumlabel.c',
'gimpenumstore.c',
'gimpenumwidgets.c',
'gimpfileentry.c',
'gimpframe.c',
'gimphelpui.c',
'gimphintbox.c',
'gimpicons.c',
'gimpintcombobox.c',
'gimpintstore.c',
'gimpmemsizeentry.c',
'gimpnumberpairentry.c',
'gimpoffsetarea.c',
'gimpoldwidgets.c',
'gimppageselector.c',
'gimppatheditor.c',
'gimppickbutton.c',
'gimppixmap.c',
'gimppreview.c',
'gimppreviewarea.c',
'gimppropwidgets.c',
'gimpquerybox.c',
'gimpruler.c',
'gimpscaleentry.c',
'gimpscrolledpreview.c',
'gimpsizeentry.c',
'gimpstringcombobox.c',
'gimpunitcombobox.c',
'gimpunitmenu.c',
'gimpunitstore.c',
'gimpwidgets-error.c',
'gimpwidgets-private.c',
'gimpwidgets.c',
'gimpwidgetsutils.c',
'gimpzoommodel.c',
gimpwidgetsenums,
gimpwidgetsmarshal,
icons_imgs_sources,
]
libgimpwidgets_headers = [
'gimp3migration.h',
'gimpbrowser.h',
'gimpbutton.h',
'gimpcairo-utils.h',
'gimpcellrenderercolor.h',
'gimpcellrenderertoggle.h',
'gimpchainbutton.h',
'gimpcolorarea.h',
'gimpcolorbutton.h',
'gimpcolordisplay.h',
'gimpcolordisplaystack.h',
'gimpcolorhexentry.h',
'gimpcolornotebook.h',
'gimpcolorprofilechooserdialog.h',
'gimpcolorprofilecombobox.h',
'gimpcolorprofilestore.h',
'gimpcolorprofileview.h',
'gimpcolorscale.h',
'gimpcolorscales.h',
'gimpcolorselect.h',
'gimpcolorselection.h',
'gimpcolorselector.h',
'gimpcontroller.h',
'gimpdialog.h',
'gimpenumcombobox.h',
'gimpenumlabel.h',
'gimpenumstore.h',
'gimpenumwidgets.h',
'gimpfileentry.h',
'gimpframe.h',
'gimphelpui.h',
'gimphintbox.h',
'gimpicons.h',
'gimpintcombobox.h',
'gimpintstore.h',
'gimpmemsizeentry.h',
'gimpnumberpairentry.h',
'gimpoffsetarea.h',
'gimpoldwidgets.h',
'gimppageselector.h',
'gimppatheditor.h',
'gimppickbutton.h',
'gimppixmap.h',
'gimppreview.h',
'gimppreviewarea.h',
'gimppropwidgets.h',
'gimpquerybox.h',
'gimpruler.h',
'gimpscaleentry.h',
'gimpscrolledpreview.h',
'gimpsizeentry.h',
'gimpstringcombobox.h',
'gimpunitcombobox.h',
'gimpunitmenu.h',
'gimpunitstore.h',
'gimpwidgets-error.h',
'gimpwidgets.h',
'gimpwidgetsenums.h',
'gimpwidgetstypes.h',
'gimpwidgetsutils.h',
'gimpzoommodel.h',
]
libgimpwidgets_cflags = [
'-DG_LOG_DOMAIN="LibGimpWidgets"',
'-DGIMP_WIDGETS_COMPILATION',
]
if gtk2_macos.found()
libgimpwidgets_sources += [
'gimppickbutton-quartz.c',
]
else
libgimpwidgets_sources += [
'gimppickbutton-default.c',
'gimppickbutton-kwin.c',
]
endif
libgimpwidgets = library('gimpwidgets-'+ api_version,
libgimpwidgets_sources,
include_directories: rootInclude,
dependencies: [
gegl, gtk2, lcms, math
],
c_args: [ libgimpwidgets_cflags, ],
link_with: [
libgimpbase,
libgimpcolor,
libgimpconfig,
],
vs_module_defs: 'gimpwidgets.def',
install: true,
version: so_version,
)
install_headers(
libgimpwidgets_headers,
subdir: join_paths(gimp_api_name, 'libgimpwidgets'),
)
# Test programs, not installed
test_preview_area = executable('test-preview-area',
'test-preview-area.c',
include_directories: rootInclude,
dependencies: [
gtk2,
],
c_args: [ libgimpwidgets_cflags, ],
link_with: [ libgimpwidgets, ],
install: false,
build_by_default: false,
)
test_eevl = executable('test-eevl',
'test-eevl.c',
include_directories: rootInclude,
dependencies: [
glib, gtk2,
],
c_args: [ libgimpwidgets_cflags, ],
link_with: [ libgimpwidgets, ],
install: false,
)

5
m4macros/meson.build Normal file
View File

@@ -0,0 +1,5 @@
install_data([
gimp_api_name + '.m4',
],
install_dir: join_paths(get_option('datadir'), 'aclocal')
)

70
menus/meson.build Normal file
View File

@@ -0,0 +1,70 @@
menus_dir = join_paths(prefix, gimpdatadir, 'menus')
menus_files = [
'brush-editor-menu.xml',
'brushes-menu.xml',
'buffers-menu.xml',
'channels-menu.xml',
'colormap-menu.xml',
'cursor-info-menu.xml',
'dashboard-menu.xml',
'documents-menu.xml',
'dynamics-editor-menu.xml',
'dynamics-menu.xml',
'error-console-menu.xml',
'fonts-menu.xml',
'gradient-editor-menu.xml',
'gradients-menu.xml',
'images-menu.xml',
'layers-menu.xml',
'mypaint-brushes-menu.xml',
'palette-editor-menu.xml',
'palettes-menu.xml',
'patterns-menu.xml',
'quick-mask-menu.xml',
'sample-points-menu.xml',
'selection-menu.xml',
'templates-menu.xml',
'text-editor-toolbar.xml',
'text-tool-menu.xml',
'tool-options-menu.xml',
'tool-preset-editor-menu.xml',
'tool-presets-menu.xml',
'undo-menu.xml',
'vectors-menu.xml',
]
install_data(menus_files,
install_dir: menus_dir,
)
unstable_menus_args = stable ? [] : [ '--stringparam', 'unstable-menus', 'yes' ]
foreach menu_filegen : [ 'dockable-menu.xml', 'image-menu.xml', ]
menus_files += custom_target(menu_filegen,
input : [ menu_filegen +'.in', 'menus.xsl', ],
output: [ menu_filegen ],
command: [
xsltproc,
'--xinclude',
unstable_menus_args,
'--output', '@OUTPUT@',
'@INPUT1@',
'@INPUT0@',
],
install: true,
install_dir: menus_dir,
)
endforeach
custom_target('validate_menus',
input : [ menus_files, ],
output: [ 'validate_menus', ],
command: [
xmllint,
'--noout',
'--path', meson.current_source_dir(),
'@INPUT@',
],
)

1526
meson.build Normal file

File diff suppressed because it is too large Load Diff

35
meson_options.txt Normal file
View File

@@ -0,0 +1,35 @@
option('ansi', type: 'boolean', value: false,description: 'Turn on strict ansi')
option('enable-console-bin',type: 'boolean', value: true, description: 'Build a console-only binary which does not link GTK+')
option('enable-default-bin',type: 'boolean', value: true, description: 'Build default Gtk+ binary')
option('enable-multiproc', type: 'boolean', value: true, description: 'Support for multiple processors')
option('gimpdir', type: 'string', value: '', description: 'Change default gimpdir from ~/.config/GIMP/2.9 to ~/.config/DIR/2.9 (if relative), or to DIR (if absolute)')
option('profiling', type: 'boolean', value: true, description: 'Enable profiling')
option('windows-installer', type: 'boolean', value: false,description: 'Generate files needed for the Windows installer')
option('with-aa', type: 'boolean', value: true, description: 'AA plugin')
option('with-alsa', type: 'boolean', value: true, description: 'Alsa support in midi input controller')
option('with-appdata-test', type: 'boolean', value: true, description: 'Validate the appdata file')
option('with-bundled-mypaint-brushes', type: 'boolean', value: false, description: 'Treat MyPaint brushes as bundled in the install prefix')
option('with-cairo-pdf', type: 'boolean', value: true, description: 'Cairo-pdf support')
option('with-directx-sdk', type: 'string', value: '', description: 'Prefix where the DirectX SDK is installed(optional)')
option('with-ghostscript', type: 'boolean', value: true, description: 'Ghostscript support')
option('with-gtk-doc', type: 'boolean', value: true, description: 'Build developer documentation for app')
option('with-gudev', type: 'boolean', value: true, description: 'Gudev support')
option('with-jpeg2000', type: 'boolean', value: true, description: 'Jpeg-2000 support')
option('with-linux-input', type: 'boolean', value: true, description: 'Linux input event controller module')
option('with-mng', type: 'boolean', value: true, description: 'Mng support')
option('with-openexr', type: 'boolean', value: true, description: 'Openexr support')
option('with-poppler', type: 'boolean', value: true, description: 'Poppler support')
option('with-print', type: 'boolean', value: true, description: 'Print support')
option('with-python', type: 'boolean', value: true, description: 'Python2 support')
option('with-screenshot', type: 'boolean', value: true, description: 'Screensh')
option('with-script-fu', type: 'boolean', value: true, description: 'Script-fu extension')
option('with-sendmail', type: 'string', value: '', description: 'Use Sendmail instead of Xdg-email')
option('with-vec-icons', type: 'boolean', value: true, description: 'Use vector icons rather than raster ones')
option('with-webkit', type: 'boolean', value: false,description: 'Help browser and webpage plugins')
option('with-webp', type: 'boolean', value: true, description: 'Webp support')
option('with-wmf', type: 'boolean', value: true, description: 'Wmf support')
option('with-xcursor', type: 'boolean', value: true, description: 'Xcursor support')
option('with-xpm', type: 'boolean', value: true, description: 'XPM support')
option('with-xvfb-run', type: 'boolean', value: true, description: 'Use xvfb-run for UI-dependent automatic tests')
option('shmem-type', type: 'combo', value: 'auto', description: 'Shared memory transport type',
choices: [ 'none', 'sysv', 'posix', 'win32', 'auto' ])

98
modules/meson.build Normal file
View File

@@ -0,0 +1,98 @@
modules_deps = [
gtk2, babl, gegl, math,
]
color_selector_libs = [
libgimpcolor,
libgimpconfig,
libgimpmodule,
libgimpwidgets,
]
controller_libs = [
libgimpmodule,
libgimpwidgets,
]
display_filter_libs = [
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmodule,
libgimpwidgets,
]
# Name, Sources, deps, link.
modules = [
[ 'color-selector-cmyk',
[ 'color-selector-cmyk.c', ],
[], [ color_selector_libs, ],
],
[ 'color-selector-water',
[ 'color-selector-water.c', ],
[ ], [ color_selector_libs, ],
],
[ 'color-selector-wheel',
[ 'color-selector-wheel.c', 'gimpcolorwheel.c', ],
[ ], [ color_selector_libs, ],
],
[ 'display-filter-clip-warning',
[ 'display-filter-clip-warning.c', ],
[], [ display_filter_libs, ],
],
[ 'display-filter-color-blind',
[ 'display-filter-color-blind.c', ],
[], [ display_filter_libs, ],
],
[ 'display-filter-gamma',
[ 'display-filter-gamma.c', ],
[ ], [ display_filter_libs, ],
],
[ 'display-filter-high-contrast',
[ 'display-filter-high-contrast.c', ],
[ ], [ display_filter_libs, ],
],
]
if have_linuxinput
modules += [
[ 'controller-linux-input',
[ 'controller-linux-input.c', 'gimpinputdevicestore-gudev.c', ],
[ gudev, ], [ controller_libs, ],
],
]
endif
if directx.found()
modules += [
[ 'controller-dx-input',
[ 'controller-dx-dinput.c', 'gimpinputdevicestore-dx.c', ],
[ directx, ], [ controller_libs, '-lrpcrt4', ],
],
]
endif
if not platform_win32
modules += [
[ 'controller-midi',
[ 'controller-midi.c', ],
[ alsa, ], [ controller_libs, ],
],
]
endif
foreach module : modules
name = module[0]
srcs = module[1]
deps = module[2]
link = module[3]
library(name,
srcs,
include_directories: rootInclude,
dependencies: modules_deps + deps,
link_with: link,
install: true,
install_dir: join_paths(gimpplugindir, 'modules'),
)
endforeach

151
pdb/meson.build Normal file
View File

@@ -0,0 +1,151 @@
pdbgen_backup = false
pdbgen_groups = false
pdb_names = [
'brush_select',
'brush',
'brushes',
'buffer',
'channel',
'color',
'context',
'debug',
'display',
'drawable_color',
'drawable_edit',
'drawable_transform',
'drawable',
'dynamics',
'edit',
'fileops',
'floating_sel',
'font_select',
'fonts',
'gimp',
'gimprc',
'gradient_select',
'gradient',
'gradients',
'help',
'image_color_profile',
'image_convert',
'image_grid',
'image_guides',
'image_sample_points',
'image_select',
'image_transform',
'image_undo',
'image',
'item_transform',
'item',
'layer',
'message',
'paint_tools',
'palette_select',
'palette',
'palettes',
'paths',
'pattern_select',
'pattern',
'patterns',
'plug_in_compat',
'plug_in',
'procedural_db',
'progress',
'selection_tools',
'selection',
'text_layer',
'text_tool',
'transform_tools',
'unit',
'vectors',
]
pdb_sources = []
pdb_outputs = []
foreach name : pdb_names
pdb_sources += join_paths('pdb', name + '.pdb')
pdb_sources += join_paths('pdb', name + '.pdb')
endforeach
enum_headers = [
gimpbaseenums,
appconfigenums,
appoperationsenums,
appcoreenums,
apppaintenums,
]
# Perl environment
perlsrcdir = meson.current_source_dir()
perlbindir = meson.current_build_dir()
perl_env = [
'PDBGEN_BACKUP=' + (pdbgen_backup ? '1' : '0'),
'PDBGEN_GROUPS=' + (pdbgen_groups ? '1' : '0'),
'rootme=' + perlbindir,
'srcdir=' + perlsrcdir,
'destdir=' + meson.build_root(),
'builddir=' + meson.build_root(),
perl,
'-I', perlbindir,
'-I', perlsrcdir,
]
groups_pl_content = '# This file is autogenerated\n'
groups_pl_content += '@groups = qw(\n'
foreach source : pdb_names
groups_pl_content += ' '+ source +'\n'
endforeach
groups_pl_content += ');\n'
# All perl files
groups_pl = custom_target('groups.pl',
input : [ ],
output: [ 'groups.pl', ],
command: [ 'echo', groups_pl_content, ],
capture: true,
)
enums_pl = custom_target('enums.pl',
input : [ 'enumgen.pl', 'enums-external.pl', enum_headers, ],
output: [ 'enums.pl', ],
command: [
perl_env, '@INPUT0@',
enum_headers,
],
)
pdbgen = custom_target('stamp-pdbgen',
input : [
'pdbgen.pl',
'app.pl',
'lib.pl',
'pdb.pl',
'stddefs.pdb',
'util.pl',
enums_pl,
groups_pl,
pdb_sources,
],
output: [ 'stamp-pdbgen', ],
command: [
perl_env, '@INPUT0@',
'app', 'lib',
],
)
stamp_enumcode = custom_target('stamp-enum-code',
input : [ 'enumcode.pl', ],
output: [ 'stamp-enum-code', ],
command: [
perl_env, '@INPUT0@',
],
)

525
plug-ins/common/meson.build Normal file
View File

@@ -0,0 +1,525 @@
common_exes_list = [
[
'align-layers',
[ 'align-layers.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'animation-optimize',
[ 'animation-optimize.c', ],
[ gtk2, gegl, gdk_pixbuf, cairo ],
],
[
'animation-play',
[ 'animation-play.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'blinds',
[ 'blinds.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'blur',
[ 'blur.c', ],
[ gtk2, gegl, gdk_pixbuf, cairo, ],
],
[
'border-average',
[ 'border-average.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'cartoon',
[ 'cartoon.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'checkerboard',
[ 'checkerboard.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'cml-explorer',
[ 'cml-explorer.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'color-cube-analyze',
[ 'color-cube-analyze.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'color-enhance',
[ 'color-enhance.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'colorify',
[ 'colorify.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'colormap-remap',
[ 'colormap-remap.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'compose',
[ 'compose.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'contrast-normalize',
[ 'contrast-normalize.c', ],
[ gtk2, gegl, gdk_pixbuf, cairo, ],
],
[
'contrast-retinex',
[ 'contrast-retinex.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'crop-zealous',
[ 'crop-zealous.c', ],
[ gtk2, gegl, gdk_pixbuf, cairo, ],
],
[
'curve-bend',
[ 'curve-bend.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'decompose',
[ 'decompose.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'depth-merge',
[ 'depth-merge.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'despeckle',
[ 'despeckle.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'destripe',
[ 'destripe.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'edge-dog',
[ 'edge-dog.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'edge-neon',
[ 'edge-neon.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'emboss',
[ 'emboss.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-cel',
[ 'file-cel.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-compressor',
[ 'file-compressor.c', ],
[ gegl, gdk_pixbuf, cairo, gio, liblzma, bz2, zlib, ],
],
[
'file-csource',
[ 'file-csource.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-desktop-link',
[ 'file-desktop-link.c', ],
[ gtk2, gegl, gdk_pixbuf, cairo, ],
],
[
'file-dicom',
[ 'file-dicom.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-gbr',
[ 'file-gbr.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-gegl',
[ 'file-gegl.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-gif-load',
[ 'file-gif-load.c', ],
[ gtk2, gegl, gdk_pixbuf, cairo, ],
],
[
'file-gif-save',
[ 'file-gif-save.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-gih',
[ 'file-gih.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-glob',
[ 'file-glob.c', ],
[ gtk2, gegl, gdk_pixbuf, cairo, ],
],
[
'file-header',
[ 'file-header.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-html-table',
[ 'file-html-table.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-jp2-load',
[ 'file-jp2-load.c', ],
[ gtk2, gegl, gdk_pixbuf, openjpeg, ],
],
[
'file-mng',
[ 'file-mng.c', ],
[ gtk2, gegl, libmng, libpng, ],
],
[
'file-pat',
[ 'file-pat.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-pcx',
[ 'file-pcx.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-pdf-load',
[ 'file-pdf-load.c', ],
[ gtk2, gegl, gdk_pixbuf, poppler ],
],
[
'file-pdf-save',
[ 'file-pdf-save.c', ],
[ gtk2, gegl, gdk_pixbuf, poppler, cairo ],
],
[
'file-pix',
[ 'file-pix.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-png',
[ 'file-png.c', ],
[ gtk2, gegl, libpng, ],
],
[
'file-pnm',
[ 'file-pnm.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-ps',
[ 'file-ps.c', ],
[ gtk2, gegl, gdk_pixbuf, ghostscript, ],
],
[
'file-psp',
[ 'file-psp.c', ],
[ gtk2, gegl, zlib, ],
],
[
'file-raw-data',
[ 'file-raw-data.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-sunras',
[ 'file-sunras.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-svg',
[ 'file-svg.c', ],
[ gtk2, gegl, rsvg, ],
],
[
'file-tga',
[ 'file-tga.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-xbm',
[ 'file-xbm.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'file-xwd',
[ 'file-xwd.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'film',
[ 'film.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'filter-pack',
[ 'filter-pack.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'fractal-trace',
[ 'fractal-trace.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'goat-exercise',
[ 'goat-exercise.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'gradient-map',
[ 'gradient-map.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'grid',
[ 'grid.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'guillotine',
[ 'guillotine.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'hot',
[ 'hot.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'jigsaw',
[ 'jigsaw.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'max-rgb',
[ 'max-rgb.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'newsprint',
[ 'newsprint.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'nl-filter',
[ 'nl-filter.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'oilify',
[ 'oilify.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'photocopy',
[ 'photocopy.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'plugin-browser',
[ 'plugin-browser.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'procedure-browser',
[ 'procedure-browser.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'qbist',
[ 'qbist.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'ripple',
[ 'ripple.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'sample-colorize',
[ 'sample-colorize.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'sharpen',
[ 'sharpen.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'smooth-palette',
[ 'smooth-palette.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'softglow',
[ 'softglow.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'sparkle',
[ 'sparkle.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'sphere-designer',
[ 'sphere-designer.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'tile-small',
[ 'tile-small.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'tile',
[ 'tile.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'unit-editor',
[ 'unit-editor.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'unsharp-mask',
[ 'unsharp-mask.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'van-gogh-lic',
[ 'van-gogh-lic.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'warp',
[ 'warp.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'wavelet-decompose',
[ 'wavelet-decompose.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
[
'web-browser',
[ 'web-browser.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
]
if platform_win32
common_exes_list += [
[
'mail',
[ 'mail.c', ],
[ gtk2, gegl, gdk_pixbuf, ],
],
]
endif
if wmf.found()
common_exes_list += [
[
'file-wmf',
[ 'file-wmf.c', ],
[ gtk2, gegl, wmf, ],
],
]
endif
if xmc.found()
common_exes_list += [
[
'file-xmc',
[ 'file-xmc.c', ],
[ gtk2, gegl, xmc, ],
],
]
endif
if libxpm.found()
common_exes_list += [
[
'file-xpm',
[ 'file-xpm.c', ],
[ gtk2, gegl, libxpm, ],
],
]
endif
if webkit.found()
common_exes_list += [
[
'web-page',
[ 'web-page.c', ],
[ gtk2, gegl, gdk_pixbuf, webkit, ],
]
]
endif
foreach exe : common_exes_list
exe_name = exe[0]
exe_sources = exe[1]
exe_deps = exe[2]
plugin_name = 'file-exr'
rc_file = platform_win32 ? windows.compile_resources(
gimp_plugins_rc,
args: [
'--define', 'ORIGINALFILENAME_STR="@0@"'.format(exe_name+'.exe'),
'--define', 'INTERNALNAME_STR="@0@"' .format(exe_name),
'--define', 'TOP_SRCDIR="@0@"' .format(meson.source_root()),
],
include_directories: [
rootInclude, appInclude,
],
) : []
executable(exe_name,
[ exe_sources, rc_file ],
include_directories: [ rootInclude, ],
link_with : [
libgimp,
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmath,
libgimpui,
libgimpwidgets,
],
dependencies: [ exe_deps, math ],
install: true,
install_dir: join_paths(gimpplugindir, 'plug-ins'),
)
endforeach

View File

@@ -0,0 +1,37 @@
plugin_name = 'file-bmp'
rc_file = platform_win32 ? windows.compile_resources(
gimp_plugins_rc,
args: [
'--define', 'ORIGINALFILENAME_STR="@0@"'.format(plugin_name+'.exe'),
'--define', 'INTERNALNAME_STR="@0@"' .format(plugin_name),
'--define', 'TOP_SRCDIR="@0@"' .format(meson.source_root()),
],
include_directories: [
rootInclude, appInclude,
],
) : []
executable(plugin_name,
[
'bmp-load.c',
'bmp-save.c',
'bmp.c',
rc_file,
],
include_directories: [ rootInclude, ],
dependencies: [
gtk2, gegl,
],
link_with: [
libgimp,
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmath,
libgimpui,
libgimpwidgets,
],
install: true,
install_dir: join_paths(gimpplugindir, 'plug-ins'),
)

View File

@@ -0,0 +1,40 @@
if openexr.found()
plugin_name = 'file-exr'
rc_file = platform_win32 ? windows.compile_resources(
gimp_plugins_rc,
args: [
'--define', 'ORIGINALFILENAME_STR="@0@"'.format(plugin_name+'.exe'),
'--define', 'INTERNALNAME_STR="@0@"' .format(plugin_name),
'--define', 'TOP_SRCDIR="@0@"' .format(meson.source_root()),
],
include_directories: [
rootInclude, appInclude,
],
) : []
executable(plugin_name,
[
'file-exr.c',
'openexr-wrapper.cc',
rc_file,
],
include_directories: [ rootInclude, ],
dependencies: [
gtk2, gegl, openexr, lcms,
],
link_with: [
libgimp,
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmath,
libgimpui,
libgimpwidgets,
],
install: true,
install_dir: join_paths(gimpplugindir, 'plug-ins'),
)
endif

View File

@@ -0,0 +1,36 @@
plugin_name = 'file-faxg3'
rc_file = platform_win32 ? windows.compile_resources(
gimp_plugins_rc,
args: [
'--define', 'ORIGINALFILENAME_STR="@0@"'.format(plugin_name+'.exe'),
'--define', 'INTERNALNAME_STR="@0@"' .format(plugin_name),
'--define', 'TOP_SRCDIR="@0@"' .format(meson.source_root()),
],
include_directories: [
rootInclude, appInclude,
],
) : []
executable(plugin_name,
[
'faxg3.c',
'g3.c',
rc_file,
],
include_directories: [ rootInclude, ],
dependencies: [
gtk2, gegl, gdk_pixbuf, cairo,
],
link_with: [
libgimp,
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmath,
libgimpui,
libgimpwidgets,
],
install: true,
install_dir: join_paths(gimpplugindir, 'plug-ins'),
)

View File

@@ -0,0 +1,36 @@
plugin_name = 'file-fits'
rc_file = platform_win32 ? windows.compile_resources(
gimp_plugins_rc,
args: [
'--define', 'ORIGINALFILENAME_STR="@0@"'.format(plugin_name+'.exe'),
'--define', 'INTERNALNAME_STR="@0@"' .format(plugin_name),
'--define', 'TOP_SRCDIR="@0@"' .format(meson.source_root()),
],
include_directories: [
rootInclude, appInclude,
],
) : []
executable(plugin_name,
[
'fits-io.c',
'fits.c',
rc_file,
],
include_directories: [ rootInclude, ],
dependencies: [
gtk2, gegl,
],
link_with: [
libgimp,
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmath,
libgimpui,
libgimpwidgets,
],
install: true,
install_dir: join_paths(gimpplugindir, 'plug-ins'),
)

View File

@@ -0,0 +1,36 @@
plugin_name = 'file-fli'
rc_file = platform_win32 ? windows.compile_resources(
gimp_plugins_rc,
args: [
'--define', 'ORIGINALFILENAME_STR="@0@"'.format(plugin_name+'.exe'),
'--define', 'INTERNALNAME_STR="@0@"' .format(plugin_name),
'--define', 'TOP_SRCDIR="@0@"' .format(meson.source_root()),
],
include_directories: [
rootInclude, appInclude,
],
) : []
executable(plugin_name,
[
'fli-gimp.c',
'fli.c',
rc_file,
],
include_directories: [ rootInclude, ],
dependencies: [
gtk2, gegl,
],
link_with: [
libgimp,
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmath,
libgimpui,
libgimpwidgets,
],
install: true,
install_dir: join_paths(gimpplugindir, 'plug-ins'),
)

View File

@@ -0,0 +1,38 @@
plugin_name = 'file-ico'
rc_file = platform_win32 ? windows.compile_resources(
gimp_plugins_rc,
args: [
'--define', 'ORIGINALFILENAME_STR="@0@"'.format(plugin_name+'.exe'),
'--define', 'INTERNALNAME_STR="@0@"' .format(plugin_name),
'--define', 'TOP_SRCDIR="@0@"' .format(meson.source_root()),
],
include_directories: [
rootInclude, appInclude,
],
) : []
executable(plugin_name,
[
'ico-dialog.c',
'ico-load.c',
'ico-save.c',
'ico.c',
rc_file,
],
include_directories: [ rootInclude, ],
dependencies: [
gtk2, gegl, libpng,
],
link_with: [
libgimp,
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmath,
libgimpui,
libgimpwidgets,
],
install: true,
install_dir: join_paths(gimpplugindir, 'plug-ins'),
)

Some files were not shown because too many files have changed in this diff Show More