Meson port.

This commit is contained in:
Félix Piédallu 2017-11-01 14:27:13 +01:00
parent a97bad1cbe
commit 65eff6f150
168 changed files with 11398 additions and 0 deletions
app-tools
app
build/windows
cursors
data
desktop
devel-docs
app
libgimp
libgimpbase
libgimpcolor
libgimpconfig
libgimpmath
libgimpmodule
libgimpthumb
libgimpwidgets
meson.build
tools
docs
etc
icons
libgimp
libgimpbase
libgimpcolor
libgimpconfig
libgimpmath
libgimpmodule
libgimpthumb
libgimpwidgets
m4macros
menus
meson.build

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

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

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

@ -0,0 +1,104 @@
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',
'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, gtk3,
],
)

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

@ -0,0 +1,74 @@
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, gtk3, libmypaint,
],
)
test('app-config',
executable('test-config',
[ 'test-config.c', app_debug_files, ],
include_directories: [ rootInclude, rootAppInclude, ],
dependencies: [
gegl, gio, gio_specific,
appstream_glib,
],
link_with: [
libgimpbase,
libgimpconfig,
libgimpcolor,
libgimpmath,
libgimpmodule,
libgimpthumb,
libappcore,
libappconfig,
libappfile,
libappfiledata,
libappgegl,
libappinternalprocs,
libapplayermodes,
libapplayermodeslegacy,
libappoperations,
libapppaint,
libapppdb,
libappplugin,
libapptext,
libappvectors,
libappxcf,
],
install: false,
),
suite: 'app'
)

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

@ -0,0 +1,263 @@
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-atomic.c',
'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',
'gimpasync.c',
'gimpasyncset.c',
'gimpauxitem.c',
'gimpauxitemundo.c',
'gimpbacktrace-linux.c',
'gimpbacktrace-none.c',
'gimpbacktrace-windows.c',
'gimpbezierdesc.c',
'gimpboundary.c',
'gimpbrush-boundary.c',
'gimpbrush-load.c',
'gimpbrush-save.c',
'gimpbrush-transform.cc',
'gimpbrush.c',
'gimpbrushcache.c',
'gimpbrushclipboard.c',
'gimpbrushgenerated-load.c',
'gimpbrushgenerated-save.c',
'gimpbrushgenerated.c',
'gimpbrushpipe-load.c',
'gimpbrushpipe-save.c',
'gimpbrushpipe.c',
'gimpbuffer.c',
'gimpcancelable.c',
'gimpchannel-combine.c',
'gimpchannel-select.c',
'gimpchannel.c',
'gimpchannelpropundo.c',
'gimpchannelundo.c',
'gimpchunkiterator.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',
'gimpdataloaderfactory.c',
'gimpdisplay.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',
'gimpdrawablepropundo.c',
'gimpdrawablestack.c',
'gimpdrawableundo.c',
'gimpdynamics-load.c',
'gimpdynamics-save.c',
'gimpdynamics.c',
'gimpdynamicsoutput.c',
'gimperror.c',
'gimpextension-error.c',
'gimpextension.c',
'gimpextensionmanager.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-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-transform.c',
'gimpimage-undo-push.c',
'gimpimage-undo.c',
'gimpimage.c',
'gimpimagefile.c',
'gimpimageundo.c',
'gimpimageviewable.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',
'gimplineart.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-save.c',
'gimppattern.c',
'gimppatternclipboard.c',
'gimppdbprogress.c',
'gimppickable-auto-shrink.c',
'gimppickable-contiguous-region.cc',
'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',
'gimptriviallycancelablewaitable.c',
'gimpuncancelablewaitable.c',
'gimpundo.c',
'gimpundostack.c',
'gimpunit.c',
'gimpviewable.c',
'gimpwaitable.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,
appstream_glib,
math,
dl,
libunwind,
],
)

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

@ -0,0 +1,64 @@
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',
'extensions-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',
'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', 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, gtk3,
],
)

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',
'gimpcanvascanvasboundary.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',
'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',
'gimptoolwidgetgroup.c',
appdisplayenums,
gitversion_h,
appcoremarshal,
]
libappdisplay = static_library('appdisplay',
libappdisplay_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: '-DG_LOG_DOMAIN="Gimp-Display"',
dependencies: [
gegl, gtk3,
],
)

21
app/file-data/meson.build Normal file
View File

@ -0,0 +1,21 @@
libappfiledata_sources = [
'file-data-gbr.c',
'file-data-gex.c',
'file-data-gih.c',
'file-data-pat.c',
'file-data.c',
]
libappfiledata = static_library('appfiledata',
libappfiledata_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: '-DG_LOG_DOMAIN="Gimp-File-Data"',
dependencies: [
appstream_glib,
cairo,
gdk_pixbuf,
gegl,
libarchive,
],
)

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

@ -0,0 +1,16 @@
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,
],
)

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

@ -0,0 +1,33 @@
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.cc',
'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@"

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

@ -0,0 +1,35 @@
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, gtk3
],
install: false,
)

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

@ -0,0 +1,20 @@
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, gtk3
],
)

191
app/meson.build Normal file
View File

@ -0,0 +1,191 @@
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('file-data')
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')
# For app/config
app_debug_files = files(
'gimp-debug.c',
'gimp-log.c',
)
# Top-level library
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: [ '-DG_LOG_DOMAIN="Gimp"', '-DGIMP_APP_GLUE_COMPILATION', ],
dependencies: [
gegl, gdk_pixbuf, gtk3,
],
)
# Those subdirs need to link againts the first ones
subdir('config')
# subdir('tests')
app_links = [
libappconfig,
libappcore,
libappfile,
libappfiledata,
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, gtk3, pangocairo, pangoft2, gegl, lcms, gexiv2, drmingw, rpc, dbghelp,
]
# Executables
if platform_windows
console_rc_name = 'gimp-console-'+ gimp_app_version
gimp_app_console_rc = configure_file(
input : gimp_plugins_rc,
output: console_rc_name + '.rc',
copy: true,
)
console_rc_file = windows.compile_resources(
gimp_app_console_rc,
args: [
'--define', 'ORIGINALFILENAME_STR="@0@"'.format(console_rc_name+'.exe'),
'--define', 'INTERNALNAME_STR="@0@"' .format(console_rc_name),
'--define', 'TOP_SRCDIR="@0@"' .format(meson.source_root()),
],
include_directories: [
rootInclude, appInclude,
],
)
gui_rc_name = 'gimp-'+ gimp_app_version
gimp_app_gui_rc = configure_file(
input : gimp_plugins_rc,
output: gui_rc_name + '.rc',
copy: true,
)
gui_rc_file = windows.compile_resources(
gimp_app_rc,
args: [
'--define', 'ORIGINALFILENAME_STR="@0@"'.format(gui_rc_name+'.exe'),
'--define', 'INTERNALNAME_STR="@0@"' .format(gui_rc_name),
'--define', 'TOP_SRCDIR="@0@"' .format(meson.source_root()),
],
include_directories: [
rootInclude, appInclude,
],
)
else
console_rc_file = []
gui_rc_file = []
endif
gimpconsole_exe = executable('gimp-console-'+gimp_app_version,
'main.c',
libapp_sources,
console_rc_file,
c_args: [
'-DG_LOG_DOMAIN="Gimp"',
'-DGIMP_APP_GLUE_COMPILATION',
'-DGIMP_CONSOLE_COMPILATION',
],
include_directories: rootInclude,
dependencies: app_deps,
link_with: [
app_links,
],
install: true,
)
gimpmain_exe = executable('gimp-'+gimp_app_version,
'main.c',
libapp_sources,
gui_rc_file,
c_args: [
'-DG_LOG_DOMAIN="Gimp"',
'-DGIMP_APP_GLUE_COMPILATION',
],
include_directories: rootInclude,
dependencies: app_deps,
link_with: [
app_links,
app_gui_links,
],
install: true,
)

View File

@ -0,0 +1,29 @@
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,27 @@
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',
'gimpoperationfillsource.c',
'gimpoperationflood.c',
'gimpoperationgradient.c',
'gimpoperationgrow.c',
'gimpoperationhistogramsink.c',
'gimpoperationhuesaturation.c',
'gimpoperationlevels.c',
'gimpoperationmaskcomponents.cc',
'gimpoperationoffset.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,
)

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

@ -0,0 +1,58 @@
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,
],
)

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

@ -0,0 +1,85 @@
libapppdb_sources = [
'gimp-pdb-compat.c',
'gimppdb-query.c',
'gimppdb-utils.c',
'gimppdb.c',
'gimppdbcontext.c',
'gimppdberror.c',
'gimpprocedure.c',
]
libappinternalprocs_sources = [
'brush-cmds.c',
'brush-select-cmds.c',
'brushes-cmds.c',
'buffer-cmds.c',
'channel-cmds.c',
'context-cmds.c',
'debug-cmds.c',
'display-cmds.c',
'drawable-cmds.c',
'drawable-color-cmds.c',
'drawable-edit-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',
'pattern-cmds.c',
'pattern-select-cmds.c',
'patterns-cmds.c',
'pdb-cmds.c',
'plug-in-cmds.c',
'plug-in-compat-cmds.c',
'progress-cmds.c',
'selection-cmds.c',
'text-layer-cmds.c',
'text-tool-cmds.c',
'unit-cmds.c',
'vectors-cmds.c',
appcoremarshal,
]
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',
'gimpgpparams.c',
'gimpinterpreterdb.c',
'gimpplugin-cleanup.c',
'gimpplugin-context.c',
'gimpplugin-message.c',
'gimpplugin-proc.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-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,
],
)

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

@ -0,0 +1,31 @@
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-motion-blur-circular.c',
'gimppropgui-motion-blur-linear.c',
'gimppropgui-motion-blur-zoom.c',
'gimppropgui-newsprint.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, gtk3,
],
)

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

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

@ -0,0 +1,91 @@
apptests_includes = [
rootInclude, rootAppInclude
]
apptests_deps = [
pangocairo, pangoft2, gtk3, dbus_glib, gegl, appstream_glib,
]
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-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=' + 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'))

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

@ -0,0 +1,36 @@
apptextenums = custom_target('text-enums.c',
input : [ 'text-enums.h', ],
output: [ 'text-enums.c', ],
command: app_mkenums_custom_target_command,
capture: true,
)
libapptext_sources = [
'gimpfont.c',
'gimpfontfactory.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,
],
)

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

@ -0,0 +1,131 @@
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',
'gimp-tool-options-manager.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',
'gimpoffsettool.c',
'gimpoperationtool.c',
'gimppaintbrushtool.c',
'gimppaintoptions-gui.c',
'gimppainttool-paint.c',
'gimppainttool.c',
'gimppenciltool.c',
'gimpperspectiveclonetool.c',
'gimpperspectivetool.c',
'gimppolygonselecttool.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',
'gimptools-utils.c',
'gimptransformgridoptions.c',
'gimptransformgridtool.c',
'gimptransformgridtoolundo.c',
'gimptransformoptions.c',
'gimptransformtool.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, gtk3,
],
)

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',
appcoremarshal,
]
libappvectors = static_library('appvectors',
libappvectors_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: '-DG_LOG_DOMAIN="Gimp-Vectors"',
dependencies: [
cairo, gegl, gdk_pixbuf,
],
)

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

@ -0,0 +1,237 @@
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',
'gimpactionimpl.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',
'gimpcolormapselection.c',
'gimpcolorpanel.c',
'gimpcolorselectorpalette.c',
'gimpcombotagentry.c',
'gimpcomponenteditor.c',
'gimpcontainerbox.c',
'gimpcontainercombobox.c',
'gimpcontainereditor.c',
'gimpcontainerentry.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',
'gimpextensionlist.c',
'gimpextensiondetails.c',
'gimpfgbgeditor.c',
'gimpfgbgview.c',
'gimpfiledialog.c',
'gimpfileprocview.c',
'gimpfilleditor.c',
'gimpfontfactoryview.c',
'gimpfontselect.c',
'gimpgradienteditor.c',
'gimpgradientselect.c',
'gimpgrideditor.c',
'gimphandlebar.c',
'gimphelp.c',
'gimphistogrambox.c',
'gimphistogrameditor.c',
'gimphistogramview.c',
'gimpiconpicker.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',
'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',
appwidgetsenums,
appcoremarshal,
]
libappwidgets = static_library('appwidgets',
libappwidgets_sources,
include_directories: [ rootInclude, rootAppInclude, ],
c_args: '-DG_LOG_DOMAIN="Gimp-Widgets"',
dependencies: [
gegl, gtk3,
],
)

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

@ -0,0 +1,18 @@
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
],
)

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,61 @@
isl_input = custom_target('setup.isl',
input : 'setup.isl.in',
output: 'setup.isl',
command: [
intltool_merge,
'--desktop-style',
'--utf8',
'--multiple-output',
'--cache=' + '@OUTDIR@' / 'intltool-merge-cache',
po_windows_installer_dir,
'@INPUT@',
'@OUTPUT@',
]
)
languages = [
{ 'code': 'ca', },
{ 'code': 'cs', 'encoding': 'WINDOWS-1250', },
{ 'code': 'da', },
{ 'code': 'de', },
{ 'code': 'el', 'encoding': 'WINDOWS-1253', },
{ 'code': 'en', 'prefix': '', },
{ 'code': 'eo', 'encoding': 'ISO-8859-3', },
{ 'code': 'es', },
{ 'code': 'eu', },
{ 'code': 'fr', },
{ 'code': 'hu', 'encoding': 'WINDOWS-1250', },
{ 'code': 'id', 'encoding': 'ISO-8859-1', },
{ 'code': 'is', },
{ 'code': 'it', },
{ 'code': 'ko', 'encoding': 'EUC-KR', },
{ 'code': 'lv', 'encoding': 'ISO-8859-13', },
{ 'code': 'nl', },
{ 'code': 'pl', 'encoding': 'WINDOWS-1250', },
{ 'code': 'pt_BR', },
{ 'code': 'ru', 'encoding': 'WINDOWS-1251', },
{ 'code': 'sl', 'encoding': 'WINDOWS-1250', },
{ 'code': 'sv', },
{ 'code': 'tr', 'encoding': 'WINDOWS-1254', },
{ 'code': 'zh_CN', 'encoding': 'WINDOWS-936', },
{ 'code': 'zh_TW', 'encoding': 'CP950', },
]
extractlang = find_program('extractlang.sh')
all_isl = []
foreach language : languages
lang_code = language.get('code')
lang_prefix = language.get('prefix', '[@0@]'.format(code))
lang_encoding= language.get('encoding', 'WINDOWS-1252')
islfile = '@0@.setup.isl'.format(lang_code)
all_isl += custom_target(islfile,
input : isl_input,
output: islfile,
command: [ extractlang, lang_prefix, lang_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,
)

1
cursors/dummy_file.xml Normal file
View File

@ -0,0 +1 @@
@DATA@

214
cursors/meson.build Normal file
View File

@ -0,0 +1,214 @@
tool_cursors = [
'cursor-bad.png',
'cursor-bad-x2.png',
'cursor-color-picker.png',
'cursor-color-picker-x2.png',
'cursor-corner-bottom-left.png',
'cursor-corner-bottom-left-x2.png',
'cursor-corner-bottom-right.png',
'cursor-corner-bottom-right-x2.png',
'cursor-corner-bottom.png',
'cursor-corner-bottom-x2.png',
'cursor-corner-left.png',
'cursor-corner-left-x2.png',
'cursor-corner-right.png',
'cursor-corner-right-x2.png',
'cursor-corner-top-left.png',
'cursor-corner-top-left-x2.png',
'cursor-corner-top-right.png',
'cursor-corner-top-right-x2.png',
'cursor-corner-top.png',
'cursor-corner-top-x2.png',
'cursor-crosshair-small.png',
'cursor-crosshair-small-x2.png',
'cursor-crosshair.png',
'cursor-crosshair-x2.png',
'cursor-mouse.png',
'cursor-mouse-x2.png',
'cursor-move.png',
'cursor-move-x2.png',
'cursor-none.png',
'cursor-none-x2.png',
'cursor-side-bottom-left.png',
'cursor-side-bottom-left-x2.png',
'cursor-side-bottom-right.png',
'cursor-side-bottom-right-x2.png',
'cursor-side-bottom.png',
'cursor-side-bottom-x2.png',
'cursor-side-left.png',
'cursor-side-left-x2.png',
'cursor-side-right.png',
'cursor-side-right-x2.png',
'cursor-side-top-left.png',
'cursor-side-top-left-x2.png',
'cursor-side-top-right.png',
'cursor-side-top-right-x2.png',
'cursor-side-top.png',
'cursor-side-top-x2.png',
'cursor-zoom.png',
'cursor-zoom-x2.png',
'modifier-anchor.png',
'modifier-anchor-x2.png',
'modifier-background.png',
'modifier-background-x2.png',
'modifier-bad.png',
'modifier-bad-x2.png',
'modifier-control.png',
'modifier-control-x2.png',
'modifier-foreground.png',
'modifier-foreground-x2.png',
'modifier-intersect.png',
'modifier-intersect-x2.png',
'modifier-join.png',
'modifier-join-x2.png',
'modifier-minus.png',
'modifier-minus-x2.png',
'modifier-move.png',
'modifier-move-x2.png',
'modifier-pattern.png',
'modifier-pattern-x2.png',
'modifier-plus.png',
'modifier-plus-x2.png',
'modifier-resize.png',
'modifier-resize-x2.png',
'modifier-rotate.png',
'modifier-rotate-x2.png',
'modifier-select.png',
'modifier-select-x2.png',
'modifier-zoom.png',
'modifier-zoom-x2.png',
'tool-airbrush.png',
'tool-airbrush-x2.png',
'tool-blur.png',
'tool-blur-x2.png',
'tool-bucket-fill.png',
'tool-bucket-fill-x2.png',
'tool-burn.png',
'tool-burn-x2.png',
'tool-clone.png',
'tool-clone-x2.png',
'tool-color-picker.png',
'tool-color-picker-x2.png',
'tool-crop.png',
'tool-crop-x2.png',
'tool-dodge.png',
'tool-dodge-x2.png',
'tool-ellipse-select.png',
'tool-ellipse-select-x2.png',
'tool-eraser.png',
'tool-eraser-x2.png',
'tool-flip-horizontal.png',
'tool-flip-horizontal-x2.png',
'tool-flip-vertical.png',
'tool-flip-vertical-x2.png',
'tool-free-select.png',
'tool-free-select-x2.png',
'tool-fuzzy-select.png',
'tool-fuzzy-select-x2.png',
'tool-gradient.png',
'tool-gradient-x2.png',
'tool-hand.png',
'tool-hand-x2.png',
'tool-heal.png',
'tool-heal-x2.png',
'tool-ink.png',
'tool-ink-x2.png',
'tool-iscissors.png',
'tool-iscissors-x2.png',
'tool-measure.png',
'tool-measure-x2.png',
'tool-move.png',
'tool-move-x2.png',
'tool-paintbrush.png',
'tool-paintbrush-x2.png',
'tool-paths-anchor.png',
'tool-paths-anchor-x2.png',
'tool-paths-control.png',
'tool-paths-control-x2.png',
'tool-paths-segment.png',
'tool-paths-segment-x2.png',
'tool-paths.png',
'tool-paths-x2.png',
'tool-pencil.png',
'tool-pencil-x2.png',
'tool-perspective.png',
'tool-perspective-x2.png',
'tool-polygon-select.png',
'tool-polygon-select-x2.png',
'tool-rect-select.png',
'tool-rect-select-x2.png',
'tool-resize.png',
'tool-resize-x2.png',
'tool-rotate.png',
'tool-rotate-x2.png',
'tool-shear.png',
'tool-shear-x2.png',
'tool-smudge.png',
'tool-smudge-x2.png',
'tool-text.png',
'tool-text-x2.png',
'tool-warp.png',
'tool-warp-x2.png',
'tool-zoom.png',
'tool-zoom-x2.png',
]
color_picker_cursors = [
'cursor-color-picker.png',
]
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_data = configuration_data()
cursors_xml_data.set('DATA', cursors_xml_content)
cursors_xml = configure_file(
input : 'dummy_file.xml',
output: cursors_resourcename + '.gresource.xml',
configuration: cursors_xml_data,
)
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_data = configuration_data()
pickers_xml_data.set('DATA', pickers_xml_content)
pickers_xml = configure_file(
input : 'dummy_file.xml',
output: pickers_resourcename + '.gresource.xml',
configuration: pickers_xml_data,
)
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(),
)

View File

@ -0,0 +1,12 @@
brushes = files(
'1-pixel.vbr',
'Block-01.vbr',
'Block-02.vbr',
'Block-03.vbr',
'Hardness-025.vbr',
'Hardness-050.vbr',
'Hardness-075.vbr',
'Hardness-100.vbr',
'pixel.gbr',
'Star.vbr',
)

View File

@ -0,0 +1,5 @@
brushes = files(
'GEGL-goat.gih',
'pepper.gbr',
'Wilber.gih',
)

View File

@ -0,0 +1,5 @@
brushes = files(
'confetti.gbr',
'confetti.gih',
'vine.gih',
)

View File

@ -0,0 +1,13 @@
brushes = files(
'Acrylic-01.gih',
'Acrylic-02.gih',
'Acrylic-03.gih',
'Acrylic-04.gih',
'Acrylic-05.gih',
'Bristles-01.gbr',
'Bristles-02.gbr',
'Bristles-03.gbr',
'Oils-01.gbr',
'Oils-02.gbr',
'Oils-03.gbr',
)

View File

@ -0,0 +1,12 @@
brushes = files(
'Chalk-01.gih',
'Chalk-02.gih',
'Chalk-03.gih',
'Charcoal-01.gbr',
'Charcoal-02.gbr',
'Charcoal-03.gih',
'Pencil-01.gih',
'Pencil-02.gih',
'Pencil-03.gih',
'Pencil-Scratch.gbr',
)

View File

@ -0,0 +1,10 @@
brushes = files(
'Grunge-01.gih',
'Sparks-Hose.gih',
'Splats-01.gih',
'Splats-02.gih',
'Sponge-01.gbr',
'Sponge-01.gbr',
'Sponge-02.gbr',
'Sponge-02.gbr',
)

View File

@ -0,0 +1,15 @@
brushes = files(
'Cell-01.gbr',
'Cell-02.gbr',
'Hatch-Pen-01.gbr',
'Smoke.gbr',
'Texture-01.gbr',
'Texture-02.gbr',
'Vegetation-01.gbr',
'Grass.gih',
'Stone-Work-01.gih',
'Texture-Hose-01.gih',
'Texture-Hose-02.gih',
'Texture-Hose-03.gih',
'Vegetation-02.gih',
)

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

@ -0,0 +1,17 @@
brushes_types = [
'Basic',
'Fun',
'Legacy',
'Media',
'Sketch',
'Splatters',
'Texture',
]
foreach brushes_type : brushes_types
subdir(brushes_type)
install_data(
brushes,
install_dir: gimpdatadir / 'brushes' / brushes_type,
)
endforeach

View File

@ -0,0 +1,10 @@
dynamics = files(
'Basic-Simple.gdyn',
'Dynamics-Random.gdyn',
'Negative-Size-Pressure.gdyn',
'Pen-Generic.gdyn',
'Pencil-Generic.gdyn',
'Pencil-Shader.gdyn',
'Pressure-Opacity.gdyn',
'Pressure-Size.gdyn',
)

View File

@ -0,0 +1,5 @@
dynamics = files(
'Confetti.gdyn',
'Perspective.gdyn',
'Speed_Size_Opacity.gdyn',
)

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

@ -0,0 +1,26 @@
dynamics = files(
'Basic-Dynamics.gdyn',
'Color-From-Gradient.gdyn',
'Dynamics-Off.gdyn',
'Fade-Tapering.gdyn',
'Random-Color.gdyn',
'Tilt-Angle.gdyn',
'Track-Direction.gdyn',
'Velocity-Tapering.gdyn',
)
install_data(dynamics,
install_dir: gimpdatadir / 'dynamics',
)
dynamics_types = [
'Basic',
'FX',
]
foreach dynamics_type : dynamics_types
subdir(dynamics_type)
install_data(
dynamics,
install_dir: gimpdatadir / 'dynamics' / dynamics_type,
)
endforeach

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

@ -0,0 +1,5 @@
install_data(
'default.env',
'python.env',
install_dir: gimpplugindir / 'environ',
)

View File

@ -0,0 +1,93 @@
gradients = files(
'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 = files(
'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: gimpdatadir / 'gradients',
)
install_data(
gradients_obsolete,
install_dir: 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: gimpdatadir / 'images',
)

View File

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

16
data/meson.build Normal file
View File

@ -0,0 +1,16 @@
subdir('brushes')
subdir('dynamics')
subdir('environ')
subdir('gradients')
subdir('images')
subdir('interpreters')
subdir('palettes')
subdir('patterns')
subdir('tags')
subdir('tips')
subdir('tool-presets')
meson.add_install_script('sh', '-c',
'mkdir -p $MESON_INSTALL_DESTDIR_PREFIX/@0@'.format(gimpdatadir / 'fonts')
)

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

@ -0,0 +1,47 @@
palettes = files(
'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_And_Purples.gpl',
'Reds.gpl',
'Royal.gpl',
'Tango.gpl',
'Topographic.gpl',
'Visibone_2.gpl',
'Visibone.gpl',
'Volcano.gpl',
'Warm_Colors.gpl',
'Web.gpl',
)
install_data(palettes,
install_dir: gimpdatadir / 'palettes',
)

View File

@ -0,0 +1,4 @@
patterns = files(
'leather.pat',
'leopard.pat',
)

View File

@ -0,0 +1,3 @@
patterns = files(
'burlap.pat',
)

View File

@ -0,0 +1,4 @@
patterns = files(
'choc_swirl.pat',
'java.pat',
)

View File

@ -0,0 +1,17 @@
patterns = files(
'3dgreen.pat',
'blue.pat',
'bluegrid.pat',
'bluesquares.pat',
'blueweb.pat',
'fibers.pat',
'nops.pat',
'pastel.pat',
'qube1.pat',
'recessed.pat',
'redcube.pat',
'sm_squares.pat',
'Stripes1px.pat',
'Stripes2px.pat',
'warning.pat',
)

View File

@ -0,0 +1,4 @@
patterns = files(
'crinklepaper.pat',
'paper.pat',
)

View File

@ -0,0 +1,3 @@
patterns = files(
'leaves.pat',
)

View File

@ -0,0 +1,5 @@
patterns = files(
'lightning.pat',
'sky.pat',
'starfield.pat',
)

View File

@ -0,0 +1,17 @@
patterns = files(
'amethyst.pat',
'brick.pat',
'cracked.pat',
'Craters.pat',
'granite1.pat',
'ground1.pat',
'marble1.pat',
'marble2.pat',
'marble3.pat',
'Moonfoot.pat',
'pink_marble.pat',
'rock.pat',
'slate.pat',
'stone33.pat',
'terra.pat',
)

View File

@ -0,0 +1,6 @@
patterns = files(
'electric.pat',
'ice.pat',
'pool.pat',
'rain.pat',
)

View File

@ -0,0 +1,15 @@
patterns = files(
'bark.pat',
'burlwood.pat',
'corkboard.pat',
'parque1.pat',
'parque2.pat',
'parque3.pat',
'pine.pat',
'walnut.pat',
'wood1.pat',
'wood2.pat',
'wood3.pat',
'wood4.pat',
'wood5.pat',
)

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

@ -0,0 +1,20 @@
patterns_types = [
'Animal',
'Fabric',
'Food',
'Legacy',
'Paper',
'Plant',
'Sky',
'Stone',
'Water',
'Wood',
]
foreach patterns_type : patterns_types
subdir(patterns_type)
install_data(
patterns,
install_dir: gimpdatadir / 'patterns' / patterns_type,
)
endforeach

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

@ -0,0 +1,30 @@
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=' + '@OUTDIR@' / 'intltool-merge-cache',
],
install: true,
install_dir: gimpdatadir / 'tags',
)
if xmllint.found()
run_target('validate-tags',
command: [
xmllint,
'--noout',
'--path', meson.current_source_dir(),
'--valid', gimp_tags_default,
],
)
endif

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

@ -0,0 +1,43 @@
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=' + '@OUTDIR@' / 'intltool-merge-cache',
],
install: true,
install_dir: gimpdatadir / 'tips',
)
fortunes_tips = 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@',
],
)
if xmllint.found()
run_target('validate-tips',
command: [
xmllint,
'--noout',
'--path', meson.current_source_dir(),
'--valid', gimp_tips,
],
)
endif

View File

@ -0,0 +1,9 @@
tool_presets = files(
'16_10.gtp',
'16_9.gtp',
'3_2-Landscape.gtp',
'3_2-Portrait.gtp',
'4_3-Landscape.gtp',
'4_3-Portrait.gtp',
'Square.gtp',
)

View File

@ -0,0 +1,10 @@
tool_presets = files(
'Crop-16-9.gtp',
'Crop-Composition.gtp',
'Fill-Paper.gtp',
'FX-Confetti.gtp',
'FX-Radial-Softlight.gtp',
'Glow-Lights.gtp',
'Smooth-Clone.gtp',
'Vignette.gtp',
)

View File

@ -0,0 +1,18 @@
tool_presets = files(
'Airbrush-Color-From-Gradient.gtp',
'Airbrush.gtp',
'Basic-Knife.gtp',
'Basic-Round-Detail.gtp',
'Basic-Round.gtp',
'Bristles.gtp',
'Eraser-Hard.gtp',
'Noise.gtp',
'Paintbrush-Color-From-Gradient.gtp',
'Pencil-Color-From-Gradient.gtp',
'Smudge-Rough.gtp',
'Smudge-Soft.gtp',
'Soft-Oil.gtp',
'Splatters.gtp',
'Structure.gtp',
'Vegetal.gtp',
)

View File

@ -0,0 +1,4 @@
tool_presets = files(
'Circle-200px.gtp',
'Feathered-Selection.gtp',
)

View File

@ -0,0 +1,8 @@
tool_presets = files(
'Blue-Pen.gtp',
'Eraser-Soft.gtp',
'Ink-Smooth.gtp',
'Ink-Thin.gtp',
'Pencil-Soft.gtp',
'Pencil.gtp',
)

View File

@ -0,0 +1,15 @@
tool_presets_types = [
'Crop',
'FX',
'Paint',
'Selection',
'Sketch',
]
foreach tool_presets_type : tool_presets_types
subdir(tool_presets_type)
install_data(
tool_presets,
install_dir: gimpdatadir / 'tool-presets' / tool_presets_type,
)
endforeach

125
desktop/meson.build Normal file
View File

@ -0,0 +1,125 @@
sizes = [
'16',
'22',
'24',
'32',
'48',
'64',
'256',
]
foreach size : sizes
sizedir = size+'x'+size
install_data(sizedir / 'gimp.png',
install_dir: get_option('datadir') / 'icons' / 'hicolor' / sizedir / 'apps'
)
endforeach
desktopfilename = 'gimp.desktop'
desktop_conf = configuration_data()
desktop_conf.set('GIMP_COMMAND', gimp_command)
desktop_conf.set('GIMP_VERSION', gimp_version)
desktop_conf.set('GIMP_APP_VERSION', gimp_app_version)
desktop_conf.set('MIME_TYPES', ';'.join(MIMEtypes))
desktop_conf.set('BUG_REPORT_URL', bug_report_url)
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=' + '@OUTDIR@' / 'intltool-merge-cache',
],
install: true,
install_dir: get_option('datadir') / 'applications',
)
appdatafilename = 'org.gimp.GIMP.appdata.xml'
appdatafilein = configure_file(
input : appdatafilename+'.in.in',
output: appdatafilename+'.in',
configuration: desktop_conf,
)
appdatafile = custom_target(appdatafilename,
input : [ appdatafilein, ],
output: [ appdatafilename, ],
command: [
intltool_merge,
po_dir,
'@INPUT@',
'@OUTPUT@',
'--xml-style',
'--utf8',
'--cache=' + '@OUTDIR@' / 'intltool-merge-cache',
],
install: true,
install_dir: get_option('datadir') / 'metainfo',
)
metainfofilename = 'gimp-data-extras.metainfo.xml'
metainfofilein = configure_file(
input : metainfofilename+'.in.in',
output: metainfofilename+'.in',
configuration: desktop_conf,
)
metainfofile = custom_target(metainfofilename,
input : [ metainfofilein, ],
output: [ metainfofilename, ],
command: [
intltool_merge,
po_dir,
'@INPUT@',
'@OUTPUT@',
'--xml-style',
'--utf8',
'--cache=' + '@OUTDIR@' / 'intltool-merge-cache',
],
install: true,
install_dir: get_option('datadir') / 'appdata',
)
if desktop_validate.found()
run_target('validate-desktop',
command: [ desktop_validate, desktopfile ],
)
endif
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',
)
test('desktop_file',
find_program('test-desktop.sh'),
env: [
'GIMP_TESTING_ABS_TOP_BUILDDIR=' + meson.build_root(),
],
suite: 'desktop',
)
endif

View File

@ -0,0 +1,98 @@
module_name = 'app'
app_libs = shared_library('app',
include_directories: [ rootInclude, rootAppInclude, configInclude, ],
link_whole: [
libappconfig,
libappcore,
libappfile,
libappfiledata,
libappgegl,
libappinternalprocs,
libapplayermodes,
libapplayermodeslegacy,
libappoperations,
libapppaint,
libapppdb,
libappplugin,
libapptext,
libappvectors,
libappxcf,
libappactions,
libappdialogs,
libappdisplay,
libappgui,
libappmenus,
libapppropgui,
libapptools,
libappwidgets,
],
link_with: [
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmath,
libgimpmodule,
libgimpthumb,
libgimpwidgets,
],
dependencies: [
gegl, gdk_pixbuf, gtk3,
],
)
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: files(module_name + '.types'),
src_dir: meson.source_root() / 'app',
content_files: [],
ignore_headers: [
'gimp-intl.h',
'gimpdbusservice-glue.h',
'gimphelp-ids.h',
'gimpimage-convert-data.h',
'gimpimage-convert-fsdither.h',
'gimprc-blurbs.h',
],
dependencies: [
fontconfig, freetype2, gtk3, harfbuzz, pangocairo,
gegl,
declare_dependency(
include_directories: rootInclude,
link_with: [
app_libs,
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmath,
libgimpmodule,
libgimpthumb,
libgimpwidgets,
])
],
scan_args: scan_args_common,
mkdb_args: mkdb_args_common,
c_args: [
'-UGTK_DISABLE_SINGLE_INCLUDES',
'-fdiagnostics-color=always',
],
fixxref_args: [
'--extra-dir=' + devel_docs_build_root / 'libgimpbase' / 'html',
'--extra-dir=' + devel_docs_build_root / 'libgimpcolor' / 'html',
'--extra-dir=' + devel_docs_build_root / 'libgimpconfig' / 'html',
'--extra-dir=' + devel_docs_build_root / 'libgimpmath' / 'html',
'--extra-dir=' + devel_docs_build_root / 'libgimpwidgets' / 'html',
],
install: true,
)

View File

@ -0,0 +1,49 @@
module_name = 'libgimp3'
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: files(module_name + '.types'),
src_dir: meson.source_root() / 'libgimp',
ignore_headers: [
'gimp-debug.h',
'gimp-private.h',
'gimp-shm.h',
'gimppdb-private.h',
'gimppdbprocedure.h',
'gimptilebackendplugin.h',
'gimpunit_pdb.h',
'gimpunitcache.h',
'libgimp-intl.h',
'stdplugins-intl.h',
],
dependencies: [
fontconfig, freetype2, gtk3, harfbuzz, pangocairo,
declare_dependency(
include_directories: rootInclude,
link_with: [
libgimp,
libgimpui,
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmath,
libgimpui,
libgimpwidgets,
]
)
],
scan_args: scan_args_common,
mkdb_args: mkdb_args_common,
fixxref_args: [
'--extra-dir='+ devel_docs_build_root / 'libgimpbase' / 'html',
'--extra-dir='+ devel_docs_build_root / 'libgimpcolor' / 'html',
'--extra-dir='+ devel_docs_build_root / 'libgimpconfig' / 'html',
'--extra-dir='+ devel_docs_build_root / 'libgimpmath' / 'html',
'--extra-dir='+ devel_docs_build_root / 'libgimpwidgets' / 'html',
],
)

View File

@ -0,0 +1,39 @@
module_name = 'libgimpbase3'
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: files(module_name + '.types'),
src_dir: meson.source_root() / 'libgimpbase',
content_files: [
],
ignore_headers: [
'gimpbase-private.h',
'gimpbase.h',
'gimpcompatenums.h',
'gimpprotocol.h',
'gimpreloc.h',
'gimpwin32-io.h',
'gimpwire.h',
],
dependencies: [
fontconfig, freetype2, gtk3, harfbuzz, pangocairo,
declare_dependency(link_with: [
libgimpbase,
]),
],
scanobjs_args: [
],
scan_args: scan_args_common,
mkdb_args: mkdb_args_common,
fixxref_args: [
],
html_assets: [
],
html_args: [
],
)

View File

@ -0,0 +1,21 @@
module_name = 'libgimpcolor3'
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: files(module_name + '.types'),
src_dir: meson.source_root() / 'libgimpcolor',
ignore_headers: [
],
dependencies: [
fontconfig, freetype2, gtk3, harfbuzz, pangocairo,
declare_dependency(link_with: [
libgimpbase,
libgimpcolor,
]),
],
scan_args: scan_args_common,
mkdb_args: mkdb_args_common,
)

View File

@ -0,0 +1,30 @@
module_name = 'libgimpconfig3'
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: files(module_name + '.types'),
src_dir: meson.source_root() / 'libgimpconfig',
ignore_headers: [
],
dependencies: [
fontconfig, freetype2, gtk3, harfbuzz, pangocairo,
declare_dependency(
include_directories: rootInclude,
link_with: [
libgimpbase,
libgimpcolor,
libgimpmath,
libgimpconfig,
]),
],
scan_args: scan_args_common,
mkdb_args: mkdb_args_common,
fixxref_args: [
'--extra-dir='+ devel_docs_build_root / 'libgimpbase' / 'html',
'--extra-dir='+ devel_docs_build_root / 'libgimpcolor' / 'html',
'--extra-dir='+ devel_docs_build_root / 'libgimpmath' / 'html',
],
)

View File

@ -0,0 +1,14 @@
module_name = 'libgimpmath3'
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: files(module_name + '.types'),
src_dir: meson.source_root() / 'libgimpmath',
dependencies: [
fontconfig, freetype2, gtk3, harfbuzz, pangocairo,
],
scan_args: scan_args_common,
mkdb_args: mkdb_args_common,
)

View File

@ -0,0 +1,23 @@
module_name = 'libgimpmodule3'
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: files(module_name + '.types'),
src_dir: meson.source_root() / 'libgimpmodule',
dependencies: [
fontconfig, freetype2, gtk3, harfbuzz, pangocairo,
declare_dependency(
include_directories: rootInclude,
link_with: [
libgimpmodule,
],
)
],
scan_args: scan_args_common + [
'--deprecated-guards="GIMP_DISABLE_DEPRECATED"'
],
mkdb_args: mkdb_args_common,
)

View File

@ -0,0 +1,28 @@
module_name = 'libgimpthumb3'
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: files(module_name + '.types'),
src_dir: meson.source_root() / 'libgimpthumb',
ignore_headers: [
'libgimpthumb.h',
],
dependencies: [
fontconfig, freetype2, gtk3, harfbuzz, pangocairo,
declare_dependency(
include_directories: rootInclude,
link_with: [
libgimpmath,
libgimpthumb,
]),
],
scan_args: scan_args_common,
mkdb_args: mkdb_args_common,
fixxref_args: [
'--extra-dir='+ devel_docs_build_root / 'libgimpmath' / 'html',
],
)

View File

@ -0,0 +1,81 @@
module_name = 'libgimpwidgets3'
gnome.gtkdoc(module_name,
main_sgml: module_name + '-docs.sgml',
gobject_typesfile: files(module_name + '.types'),
src_dir: meson.source_root() / 'libgimpwidgets',
content_files: [
'visual-index.xml'
],
ignore_headers: [
'gimp-color-picker-cursors.h',
'gimp-icon-pixbufs.h',
'gimpcolorprofilestore-private.h',
'gimpeevl.h',
'gimpwidgets-private.h',
],
dependencies: [
fontconfig, freetype2, gtk3, harfbuzz, pangocairo,
declare_dependency(
include_directories: rootInclude,
link_with: [
libgimpbase,
libgimpcolor,
libgimpmath,
libgimpconfig,
libgimpwidgets,
]),
],
scanobjs_args: [
'--type-init-func=do { void babl_init (void); babl_init (); } while (0)',
],
c_args: [
'-DGIMP_ENABLE_CONTROLLER_UNDER_CONSTRUCTION',
'-UGIMP_DISABLE_DEPRECATED',
],
scan_args: scan_args_common,
mkdb_args: mkdb_args_common,
fixxref_args: [
'--extra-dir='+ devel_docs_build_root / 'libgimp' / 'html',
'--extra-dir='+ devel_docs_build_root / 'libgimpbase' / 'html',
'--extra-dir='+ devel_docs_build_root / 'libgimpcolor' / 'html',
'--extra-dir='+ devel_docs_build_root / 'libgimpconfig' / 'html',
'--extra-dir='+ devel_docs_build_root / 'libgimpmath' / 'html',
],
html_assets: [
'images' / 'gimp-widget-browser.png',
'images' / 'gimp-widget-busy-box.png',
'images' / 'gimp-widget-button.png',
'images' / 'gimp-widget-chain-button.png',
'images' / 'gimp-widget-color-area.png',
'images' / 'gimp-widget-color-button.png',
'images' / 'gimp-widget-color-hex-entry.png',
'images' / 'gimp-widget-color-notebook.png',
'images' / 'gimp-widget-color-profile-combo-box.png',
'images' / 'gimp-widget-color-profile-view.png',
'images' / 'gimp-widget-color-scale.png',
'images' / 'gimp-widget-color-scales.png',
'images' / 'gimp-widget-color-select.png',
'images' / 'gimp-widget-color-selection.png',
'images' / 'gimp-widget-dialog.png',
'images' / 'gimp-widget-enum-combo-box.png',
'images' / 'gimp-widget-enum-label.png',
'images' / 'gimp-widget-file-entry.png',
'images' / 'gimp-widget-frame.png',
'images' / 'gimp-widget-hint-box.png',
'images' / 'gimp-widget-int-combo-box.png',
'images' / 'gimp-widget-memsize-entry.png',
'images' / 'gimp-widget-number-pair-entry.png',
'images' / 'gimp-widget-offset-area.png',
'images' / 'gimp-widget-page-selector.png',
'images' / 'gimp-widget-path-editor.png',
'images' / 'gimp-widget-pick-button.png',
'images' / 'gimp-widget-preview-area.png',
'images' / 'gimp-widget-ruler.png',
'images' / 'gimp-widget-string-combo-box.png',
'images' / 'gimp-widget-unit-combo-box.png',
],
)

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

@ -0,0 +1,32 @@
devel_docs_build_root = meson.current_build_dir()
version_data = configuration_data()
version_data.set('GIMP_VERSION', gimp_version)
configure_file(
input : 'version.in',
output: 'version',
configuration: version_data,
)
scan_args_common = [
'--deprecated-guards=GIMP_DISABLE_DEPRECATED',
]
mkdb_args_common = [
'--name-space=gimp',
]
if get_option('gtk-doc-app')
subdir('app')
endif
subdir('libgimp')
subdir('libgimpbase')
subdir('libgimpcolor')
subdir('libgimpconfig')
subdir('libgimpmath')
subdir('libgimpmodule')
subdir('libgimpthumb')
subdir('libgimpwidgets')
subdir('tools')

View File

@ -0,0 +1,28 @@
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: [
gtk3, gdk_pixbuf, gegl, fontconfig, math,
],
c_args: '-DTOP_SRCDIR="@0@"'.format(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', prefix / gimpdatadir)
manconf.set('gimplocaledir', prefix / localedir)
manconf.set('gimpplugindir', prefix / gimpplugindir)
manconf.set('manpage_gimpdir', '$XDG_CONFIG_HOME/' + gimpdir / gimp_app_version)
manconf.set('gimpsysconfdir', prefix / gimpsysconfdir)
manconf.set('mypaint_brushes_dir', libmypaint_brushes_dir)
man_files = [
configure_file(
input : 'gimptool.1.in',
output: 'gimptool-' + gimp_app_version + '.1',
configuration: manconf,
),
configure_file(
input : 'gimptool.1.in',
output: 'gimptool.1',
configuration: manconf,
),
configure_file(
input : 'gimprc.5.in',
output: 'gimprc-' + gimp_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-' + gimp_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-' + 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,
),
'gimp.css',
'menurc',
'sessionrc',
'templaterc',
'unitrc',
],
install_dir: gimpsysconfdir,
)

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

@ -0,0 +1,84 @@
if have_vector_icons
all_icons = [
[ 'scalable', color_vector_scalable ],
[ '24x24', color_vector_24 ],
[ '64x64', bitmap_64system ],
]
else
all_icons = [
[ '12x12', bitmap_12 ],
[ '16x16', bitmap_16 ],
[ '18x18', bitmap_18 ],
[ '20x20', bitmap_20 ],
[ '22x22', bitmap_22 ],
[ '24x24', bitmap_24 ],
[ '32x32', bitmap_32 ],
[ '48x48', bitmap_48 ],
[ '64x64', bitmap_64 + bitmap_64system ],
[ '96x96', bitmap_96 ],
[ '128x128', bitmap_128 ],
[ '192x192', bitmap_192 ],
[ '256x256', bitmap_256 ],
]
endif
install_data('index.theme',
install_dir: gimpiconsdir / theme,
)
foreach icon_info : all_icons
icons_dir = icon_info[0]
icons_list= icon_info[1]
install_data(icons_list,
install_dir: gimpiconsdir / theme / icons_dir / 'apps',
)
endforeach
icons_core = [ '64/dialog-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: 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: 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: 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,84 @@
if have_vector_icons
all_icons = [
[ 'scalable', symbolic_vector_scalable ],
[ '24x24', symbolic_vector_24 ],
# [ '64x64', bitmap_64system ],
]
else
all_icons = [
[ '12x12', bitmap_12 ],
[ '16x16', bitmap_16 ],
[ '18x18', bitmap_18 ],
[ '20x20', bitmap_20 ],
[ '22x22', bitmap_22 ],
[ '24x24', bitmap_24 ],
[ '32x32', bitmap_32 ],
[ '48x48', bitmap_48 ],
[ '64x64', bitmap_64 + bitmap_64system ],
[ '96x96', bitmap_96 ],
[ '128x128', bitmap_128 ],
[ '192x192', bitmap_192 ],
[ '256x256', bitmap_256 ],
]
endif
install_data('index.theme',
install_dir: gimpiconsdir / theme,
)
foreach icon_info : all_icons
icons_dir = icon_info[0]
icons_list= icon_info[1]
install_data(icons_list,
install_dir: 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(),
# )

1613
icons/meson.build Normal file

File diff suppressed because it is too large Load Diff

381
libgimp/meson.build Normal file
View File

@ -0,0 +1,381 @@
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,
)
pdb_wrappers_sources = [
'gimp_pdb.c',
'gimpbrush_pdb.c',
'gimpbrushes_pdb.c',
'gimpbrushselect_pdb.c',
'gimpbuffer_pdb.c',
'gimpchannel_pdb.c',
'gimpcontext_pdb.c',
'gimpdebug_pdb.c',
'gimpdisplay_pdb.c',
'gimpdrawable_pdb.c',
'gimpdrawablecolor_pdb.c',
'gimpdrawableedit_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',
'gimppattern_pdb.c',
'gimppatterns_pdb.c',
'gimppatternselect_pdb.c',
'gimpprogress_pdb.c',
'gimpselection_pdb.c',
'gimptextlayer_pdb.c',
'gimptexttool_pdb.c',
'gimpvectors_pdb.c',
]
pdb_wrappers_headers = [
'gimp_pdb_headers.h',
'gimp_pdb.h',
'gimpbrush_pdb.h',
'gimpbrushes_pdb.h',
'gimpbrushselect_pdb.h',
'gimpbuffer_pdb.h',
'gimpchannel_pdb.h',
'gimpcontext_pdb.h',
'gimpdebug_pdb.h',
'gimpdisplay_pdb.h',
'gimpdrawable_pdb.h',
'gimpdrawablecolor_pdb.h',
'gimpdrawableedit_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',
'gimppattern_pdb.h',
'gimppatterns_pdb.h',
'gimppatternselect_pdb.h',
'gimpprogress_pdb.h',
'gimpselection_pdb.h',
'gimptextlayer_pdb.h',
'gimptexttool_pdb.h',
'gimpvectors_pdb.h',
]
libgimp_sources_introspectable = [
'gimp.c',
'gimpbrushselect.c',
'gimpchannel.c',
'gimpdisplay.c',
'gimpdrawable.c',
'gimpfileprocedure.c',
'gimpfontselect.c',
'gimpgimprc.c',
'gimpgradientselect.c',
'gimpimage.c',
'gimpimagecolorprofile.c',
'gimpimageprocedure.c',
'gimpitem.c',
'gimplayer.c',
'gimplayermask.c',
'gimploadprocedure.c',
'gimppaletteselect.c',
'gimpparamspecs.c',
'gimppatternselect.c',
'gimppdb.c',
'gimpplugin.c',
'gimpprocedure.c',
'gimpprogress.c',
'gimpsaveprocedure.c',
'gimpselection.c',
'gimpthumbnailprocedure.c',
'gimpvectors.c',
gimpenums,
pdb_wrappers_sources,
]
libgimp_sources = [
libgimp_sources_introspectable,
'gimp-debug.c',
'gimp-shm.c',
'gimpgpparams.c',
'gimppdb_pdb.c',
'gimppdbprocedure.c',
'gimppixbuf.c',
'gimpplugin_pdb.c',
'gimpunit_pdb.c',
'gimpunitcache.c',
'gimptilebackendplugin.c',
]
libgimp_headers_introspectable = [
'gimp.h',
'gimpbrushselect.h',
'gimpchannel.h',
'gimpdisplay.h',
'gimpdrawable.h',
'gimpenums.h',
'gimpfileprocedure.h',
'gimpfontselect.h',
'gimpgimprc.h',
'gimpgradientselect.h',
'gimpimage.h',
'gimpimagecolorprofile.h',
'gimpimageprocedure.h',
'gimplayer.h',
'gimplayermask.h',
'gimploadprocedure.h',
'gimppaletteselect.h',
'gimpparamspecs.h',
'gimppatternselect.h',
'gimppdb.h',
'gimpplugin.h',
'gimpprocedure.h',
'gimpprogress.h',
'gimpsaveprocedure.h',
'gimpselection.h',
'gimpthumbnailprocedure.h',
'gimptypes.h',
'gimpvectors.h',
]
libgimp_headers = [
libgimp_headers_introspectable,
'gimpprocedure-params.h',
]
libgimpui_sources_introspectable = [
'gimpaspectpreview.c',
'gimpbrushselectbutton.c',
'gimpdrawablepreview.c',
'gimpexport.c',
'gimpfontselectbutton.c',
'gimpgradientselectbutton.c',
'gimpimagecombobox.c',
'gimpimagemetadata.c',
'gimpitemcombobox.c',
'gimppaletteselectbutton.c',
'gimppatternselectbutton.c',
'gimpprocbrowserdialog.c',
'gimpprocview.c',
'gimpprogressbar.c',
'gimpselectbutton.c',
'gimpui.c',
'gimpzoompreview.c',
]
libgimpui_sources = [
libgimpui_sources_introspectable,
gimpuimarshal,
]
libgimpui_headers_introspectable = [
'gimpaspectpreview.h',
'gimpbrushselectbutton.h',
'gimpdrawablepreview.h',
'gimpexport.h',
'gimpfontselectbutton.h',
'gimpgradientselectbutton.h',
'gimpimagecombobox.h',
'gimpimagemetadata.h',
'gimpitemcombobox.h',
'gimppaletteselectbutton.h',
'gimppatternselectbutton.h',
'gimpprocbrowserdialog.h',
'gimpprocview.h',
'gimpprogressbar.h',
'gimpselectbutton.h',
'gimpui.h',
'gimpuitypes.h',
'gimpzoompreview.h',
]
libgimp_introspectable = [
libgimp_sources_introspectable,
libgimp_headers_introspectable,
]
libgimpui_introspectable = [
libgimpui_sources_introspectable,
libgimpui_headers_introspectable,
]
libgimp = library('gimp-'+ gimp_api_version,
libgimp_sources,
include_directories: rootInclude,
dependencies: [
gegl, gexiv2, gtk3, drmingw,
],
c_args: [ '-DG_LOG_DOMAIN="LibGimp"', '-DGIMP_COMPILATION', ],
link_with: [
libgimpbase,
libgimpcolor,
libgimpconfig,
],
vs_module_defs: 'gimp.def',
install: true,
version: so_version,
)
libgimpui = library('gimpui-'+ gimp_api_version,
libgimpui_sources,
include_directories: rootInclude,
dependencies: [
gegl, gexiv2, gtk3,
],
c_args: [ '-DG_LOG_DOMAIN="LibGimpUI"', '-DGIMP_COMPILATION', ],
link_with: [
libgimp,
libgimpbase,
libgimpcolor,
libgimpmodule,
libgimpwidgets,
],
vs_module_defs: 'gimpui.def',
install: true,
version: so_version,
)
install_headers(
libgimp_headers,
libgimpui_headers_introspectable,
subdir: gimp_api_name / 'libgimp',
)
### GObject introspection
introspectable_files = [
libgimp_introspectable,
libgimpui_introspectable,
libgimpbase_introspectable,
libgimpcolor_introspectable,
libgimpconfig_introspectable,
libgimpmath_introspectable,
libgimpmodule_introspectable,
libgimpthumb_introspectable,
libgimpwidgets_introspectable,
'gimpparamspecs-body.c',
]
libgimp_gir = gnome.generate_gir(
libgimp,
libgimpui,
libgimpbase,
libgimpcolor,
libgimpconfig,
libgimpmath,
libgimpmodule,
libgimpthumb,
libgimpwidgets,
sources: introspectable_files,
nsversion: gimp_api_version,
namespace: 'Gimp',
identifier_prefix: 'Gimp',
# symbol_prefix: 'gimp',
extra_args: [
'-DGIMP_COMPILATION',
'-DGIMP_BASE_COMPILATION',
'-DGIMP_COLOR_COMPILATION',
'-DGIMP_CONFIG_COMPILATION',
'-DGIMP_MATH_COMPILATION',
'-DGIMP_MODULE_COMPILATION',
'-DGIMP_THUMB_COMPILATION',
'-DGIMP_WIDGETS_COMPILATION',
],
includes: [
'Babl-0.1',
'cairo-1.0',
'GdkPixbuf-2.0',
'Gegl-0.4',
'Gio-2.0',
'GLib-2.0',
'GObject-2.0',
'Gtk-3.0',
],
link_with: [
libgimpthumb,
],
include_directories: rootInclude,
install: true,
)

View File

@ -0,0 +1,68 @@
#ifndef __GIMP_VERSION_H__
#define __GIMP_VERSION_H__
/* 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
#endif /* __GIMP_VERSION_H__ */

134
libgimpbase/meson.build Normal file
View File

@ -0,0 +1,134 @@
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_introspectable = files(
'gimpbasetypes.c',
'gimpchecks.c',
'gimpcpuaccel.c',
'gimpenv.c',
'gimpmemsize.c',
'gimpmetadata.c',
'gimpparamspecs.c',
'gimpparasite.c',
'gimpparasiteio.c',
'gimprectangle.c',
'gimpsignal.c',
'gimpunit.c',
'gimputils.c',
'gimpvaluearray.c',
)
libgimpbase_sources = [
libgimpbase_sources_introspectable,
'gimpbase-private.c',
'gimpprotocol.c',
'gimpreloc.c',
'gimpwire.c',
gimpbaseenums,
gimpcompatenums,
]
libgimpbase_headers_introspectable = files(
'gimpbaseenums.h',
'gimpbasetypes.h',
'gimpchecks.h',
'gimpcpuaccel.h',
'gimpenv.h',
'gimplimits.h',
'gimpmemsize.h',
'gimpmetadata.h',
'gimpparamspecs.h',
'gimpparasite.h',
'gimpparasiteio.h',
'gimprectangle.h',
'gimpsignal.h',
'gimpunit.h',
'gimputils.h',
'gimpvaluearray.h',
) + [
gimpversion,
]
libgimpbase_headers = [
libgimpbase_headers_introspectable,
'gimpbase.h',
gimpversion,
]
libgimpbase_introspectable = [
libgimpbase_sources_introspectable,
libgimpbase_headers_introspectable,
]
libgimpbase = library('gimpbase-' + gimp_api_version,
libgimpbase_sources,
include_directories: rootInclude,
dependencies: [
gexiv2, gio, math,
],
c_args: [
'-DG_LOG_DOMAIN="LibGimpBase"',
'-DGIMP_BASE_COMPILATION',
],
vs_module_defs: 'gimpbase.def',
install: true,
version: so_version,
)
install_headers(
libgimpbase_headers,
subdir: gimp_api_name / 'libgimpbase',
)
# Test program, not installed
executable('test-cpu-accel',
'test-cpu-accel.c',
include_directories: rootInclude,
dependencies: [
glib,
],
c_args: [
'-DG_LOG_DOMAIN="LibGimpBase"',
'-DGIMP_BASE_COMPILATION',
],
link_with: [
libgimpbase,
],
install: false,
)

76
libgimpcolor/meson.build Normal file
View File

@ -0,0 +1,76 @@
libgimpcolor_sources = files(
'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_introspectable = files(
'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_headers = [
libgimpcolor_headers_introspectable,
'gimpcolor.h',
]
libgimpcolor_introspectable = [
libgimpcolor_sources,
libgimpcolor_headers_introspectable,
]
libgimpcolor = library('gimpcolor-' + gimp_api_version,
libgimpcolor_sources,
include_directories: rootInclude,
dependencies: [
cairo, gdk_pixbuf, gegl, lcms, math,
],
c_args: [ '-DG_LOG_DOMAIN="LibGimpColor"', '-DGIMP_COLOR_COMPILATION', ],
link_with: [ libgimpbase, ],
vs_module_defs: 'gimpcolor.def',
install: true,
version: so_version,
)
install_headers(
libgimpcolor_headers,
subdir: 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: '-DG_LOG_DOMAIN="LibGimpColor"',
link_with: [ libgimpbase, libgimpcolor, ],
install: false,
)

79
libgimpconfig/meson.build Normal file
View File

@ -0,0 +1,79 @@
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_introspectable = files(
'gimpcolorconfig.c',
'gimpconfig-deserialize.c',
'gimpconfig-error.c',
'gimpconfig-iface.c',
'gimpconfig-path.c',
'gimpconfig-serialize.c',
'gimpconfig-utils.c',
'gimpconfigwriter.c',
'gimpscanner.c',
)
libgimpconfig_sources = [
libgimpconfig_sources_introspectable,
gimpconfigenums,
]
libgimpconfig_headers_introspectable = files(
'gimpcolorconfig.h',
'gimpconfig-deserialize.h',
'gimpconfig-error.h',
'gimpconfig-iface.h',
'gimpconfig-params.h',
'gimpconfig-path.h',
'gimpconfig-serialize.h',
'gimpconfig-utils.h',
'gimpconfigenums.h',
'gimpconfigtypes.h',
'gimpconfigwriter.h',
'gimpscanner.h',
)
libgimpconfig_headers = [
libgimpconfig_headers_introspectable,
'gimpconfig.h',
]
libgimpconfig_introspectable = [
libgimpconfig_headers_introspectable,
libgimpconfig_sources_introspectable,
]
libgimpconfig = library('gimpconfig-' + gimp_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: gimp_api_name / 'libgimpconfig',
)

46
libgimpmath/meson.build Normal file
View File

@ -0,0 +1,46 @@
libgimpmath_sources_introspectable = files(
'gimpmatrix.c',
'gimpvector.c',
)
libgimpmath_sources = [
libgimpmath_sources_introspectable,
]
libgimpmath_headers_introspectable = files(
'gimpmathtypes.h',
'gimpmatrix.h',
'gimpvector.h',
)
libgimpmath_headers = [
libgimpmath_headers_introspectable,
'gimpmath.h',
]
libgimpmath_introspectable = [
libgimpmath_sources_introspectable,
libgimpmath_headers_introspectable,
]
libgimpmath = library('gimpmath-' + gimp_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: gimp_api_name / 'libgimpmath',
)

37
libgimpmodule/meson.build Normal file
View File

@ -0,0 +1,37 @@
libgimpmodule_sources = files(
'gimpmodule.c',
'gimpmoduledb.c',
)
libgimpmodule_headers = files(
'gimpmodule.h',
'gimpmoduledb.h',
'gimpmoduletypes.h',
)
libgimpmodule_introspectable = [
libgimpmodule_sources,
libgimpmodule_headers,
]
libgimpmodule = library('gimpmodule-' + gimp_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: gimp_api_name / 'libgimpmodule',
)

95
libgimpthumb/meson.build Normal file
View File

@ -0,0 +1,95 @@
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_introspectable = files(
'gimpthumb-error.c',
'gimpthumb-utils.c',
'gimpthumbnail.c',
)
libgimpthumb_sources = [
libgimpthumb_sources_introspectable,
gimpthumbenums,
]
libgimpthumb_headers_introspectable = files(
'gimpthumb-enums.h',
'gimpthumb-error.h',
'gimpthumb-types.h',
'gimpthumb-utils.h',
'gimpthumbnail.h',
)
libgimpthumb_headers = [
libgimpthumb_headers_introspectable,
'gimpthumb.h',
]
libgimpthumb_introspectable = [
libgimpthumb_sources_introspectable,
libgimpthumb_headers_introspectable,
]
libgimpthumb = library('gimpthumb-'+ gimp_api_version,
libgimpthumb_sources,
include_directories: rootInclude,
dependencies: [
glib, gobject, gdk_pixbuf, gio,
],
c_args: [ '-DG_LOG_DOMAIN="LibGimpThumb"', '-DGIMP_THUMB_COMPILATION', ],
link_with: [
libgimpbase,
],
vs_module_defs: 'gimpthumb.def',
install: true,
version: so_version,
)
install_headers(
libgimpthumb_headers,
subdir: gimp_api_name / 'libgimpthumb',
)
# Test program, not installed
gimp_thumbnail_list = executable('gimp-thumbnail-list',
'gimp-thumbnail-list.c',
include_directories: rootInclude,
dependencies: [
gdk_pixbuf,
],
c_args: '-DG_LOG_DOMAIN="LibGimpThumb"',
link_with: [
libgimpbase,
libgimpthumb,
],
install: false,
)

206
libgimpwidgets/meson.build Normal file
View File

@ -0,0 +1,206 @@
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_introspectable = files(
'gimpbrowser.c',
'gimpbusybox.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',
'gimpcolorselection.c',
'gimpcolorselector.c',
'gimpdialog.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',
'gimppageselector.c',
'gimppatheditor.c',
'gimppickbutton.c',
'gimppreview.c',
'gimppreviewarea.c',
'gimppropwidgets.c',
'gimpquerybox.c',
'gimpruler.c',
'gimpscaleentry.c',
'gimpscrolledpreview.c',
'gimpsizeentry.c',
'gimpspinbutton.c',
'gimpstringcombobox.c',
'gimpunitcombobox.c',
'gimpunitstore.c',
'gimpwidgets-error.c',
'gimpwidgets.c',
'gimpwidgetsutils.c',
'gimpzoommodel.c',
)
libgimpwidgets_sources = [
libgimpwidgets_sources_introspectable,
'gimpcolorscale.c',
'gimpcolorscales.c',
'gimpcolorselect.c',
'gimpcontroller.c',
'gimpeevl.c',
'gimpwidgets-private.c',
gimpwidgetsenums,
gimpwidgetsmarshal,
icons_imgs_sources,
cursors_sources,
pickers_sources,
]
libgimpwidgets_headers_introspectable = files(
'gimpcolorselection.h',
'gimpcolorselector.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',
'gimppageselector.h',
'gimppatheditor.h',
'gimppickbutton.h',
'gimppreview.h',
'gimppreviewarea.h',
'gimppropwidgets.h',
'gimpquerybox.h',
'gimpruler.h',
'gimpscaleentry.h',
'gimpscrolledpreview.h',
'gimpsizeentry.h',
'gimpspinbutton.h',
'gimpstringcombobox.h',
'gimpunitcombobox.h',
'gimpunitstore.h',
'gimpwidgets-error.h',
'gimpwidgets.h',
'gimpwidgetsenums.h',
'gimpwidgetstypes.h',
'gimpwidgetsutils.h',
'gimpzoommodel.h',
)
libgimpwidgets_headers = [
libgimpwidgets_headers_introspectable,
'gimpcolorscale.h',
'gimpcolorscales.h',
'gimpcolorselect.h',
'gimpcontroller.h',
]
libgimpwidgets_introspectable = [
libgimpwidgets_sources_introspectable,
libgimpwidgets_headers_introspectable,
]
if gtk3_macos.found()
libgimpwidgets_sources += [
'gimppickbutton-quartz.c',
]
else
libgimpwidgets_sources += [
'gimppickbutton-default.c',
'gimppickbutton-kwin.c',
]
endif
libgimpwidgets = library('gimpwidgets-'+ gimp_api_version,
libgimpwidgets_sources,
include_directories: rootInclude,
dependencies: [
gegl, gtk3, lcms, math
],
c_args: [ '-DG_LOG_DOMAIN="LibGimpWidgets"', '-DGIMP_WIDGETS_COMPILATION', ],
link_with: [
libgimpbase,
libgimpcolor,
libgimpconfig,
],
vs_module_defs: 'gimpwidgets.def',
install: true,
version: so_version,
)
install_headers(
libgimpwidgets_headers,
subdir: gimp_api_name / 'libgimpwidgets',
)
# Test programs, not installed
test_preview_area = executable('test-preview-area',
'test-preview-area.c',
include_directories: rootInclude,
dependencies: [
gtk3,
],
c_args: '-DG_LOG_DOMAIN="LibGimpWidgets"',
link_with: [ libgimpwidgets, ],
install: false,
build_by_default: false,
)
test_eevl = executable('test-eevl',
'test-eevl.c',
include_directories: rootInclude,
dependencies: [
glib, gtk3,
],
c_args: '-DG_LOG_DOMAIN="LibGimpWidgets"',
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: get_option('datadir') / 'aclocal',
)

69
menus/meson.build Normal file
View File

@ -0,0 +1,69 @@
menus_dir = 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
if xmllint.found()
run_target('validate_menus',
command: [
xmllint,
'--noout',
'--path', meson.current_source_dir(),
'@INPUT@', menus_files,
],
)
endif

1578
meson.build Normal file

File diff suppressed because it is too large Load Diff

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