[gimp/meson: 805/805] Merge branch 'master' into meson. Backport autotools modifs into Meson files.
- From: Félix Piédallu <fpiedallu src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp/meson: 805/805] Merge branch 'master' into meson. Backport autotools modifs into Meson files.
- Date: Fri, 2 Feb 2018 15:25:49 +0000 (UTC)
commit 4936c7cb12e770eabbfe309a5c45a3492b29a1bc
Merge: 78c8693 1750d97
Author: Félix Piédallu <felix piedallu me>
Date: Fri Feb 2 16:10:54 2018 +0100
Merge branch 'master' into meson. Backport autotools modifs into Meson files.
.gitignore | 52 +
INSTALL.in | 13 +-
Makefile.am | 41 +
NEWS | 80 +-
app/.gitignore | 1 -
app/Makefile.am | 52 +-
app/actions/debug-commands.c | 26 +-
app/actions/filters-actions.c | 25 +
app/actions/filters-commands.c | 31 +-
app/actions/gimpgeglprocedure.c | 56 +-
app/actions/image-actions.c | 2 +-
app/actions/layers-actions.c | 4 +-
app/app.c | 9 +-
app/app.h | 3 +-
app/config/gimpcoreconfig.c | 60 +
app/config/gimpcoreconfig.h | 4 +
app/config/gimpguiconfig.c | 12 +-
app/config/gimprc-blurbs.h | 12 +
app/core/gimp-gui.c | 11 +-
app/core/gimp-gui.h | 6 +-
app/core/gimp-internal-data.c | 4 +-
app/core/gimp-transform-resize.c | 552 +-
app/core/gimp-transform-utils.c | 253 +-
app/core/gimp-transform-utils.h | 30 +-
app/core/gimp-utils.c | 2 +-
app/core/gimp.c | 4 +-
app/core/gimpbrush-load.c | 4 +-
app/core/gimpbrushcache.c | 2 +-
app/core/gimpbrushclipboard.c | 2 +-
app/core/gimpbrushpipe-load.c | 2 +-
app/core/gimpchannelpropundo.c | 6 +-
app/core/gimpchannelundo.c | 2 +-
app/core/gimpcontext.c | 2 +-
app/core/gimpdrawable-transform.c | 26 +-
app/core/gimpdrawablemodundo.c | 2 +-
app/core/gimpdrawablestack.c | 4 +-
app/core/gimpdrawableundo.c | 4 +-
app/core/gimpfilteredcontainer.c | 2 +-
app/core/gimpfilterstack.c | 4 +-
app/core/gimpfloatingselectionundo.c | 6 +-
app/core/gimpgrouplayer.c | 4 +-
app/core/gimpgrouplayerundo.c | 6 +-
app/core/gimpguideundo.c | 2 +-
app/core/gimpimage-arrange.c | 5 +-
app/core/gimpimage-convert-indexed.c | 12 +-
app/core/gimpimage-merge.c | 33 +-
app/core/gimpimage-rotate.c | 17 +-
app/core/gimpimage.c | 6 +-
app/core/gimpimageundo.c | 8 +-
app/core/gimpitem.c | 4 +-
app/core/gimpitempropundo.c | 6 +-
app/core/gimpitemstack.c | 4 +-
app/core/gimpitemtree.c | 8 +-
app/core/gimpitemundo.c | 2 +-
app/core/gimplayermaskpropundo.c | 6 +-
app/core/gimplayermaskundo.c | 4 +-
app/core/gimplayerpropundo.c | 6 +-
app/core/gimplayerstack.c | 6 +-
app/core/gimplayerundo.c | 2 +-
app/core/gimpmaskundo.c | 2 +-
app/core/gimppatternclipboard.c | 2 +-
app/core/gimppdbprogress.c | 4 +-
app/core/gimpsamplepointundo.c | 2 +-
app/core/gimptoolpreset.c | 2 +-
app/core/gimpundo.c | 2 +-
app/dialogs/about-dialog.c | 2 -
app/dialogs/dialogs-constructors.c | 10 +
app/dialogs/dialogs-constructors.h | 4 +
app/dialogs/dialogs.c | 2 +
app/dialogs/preferences-dialog.c | 123 +-
app/display/gimpcanvasboundary.c | 67 +-
app/display/gimpcanvashandle.c | 3 +
app/display/gimpcanvastransformguides.c | 246 +-
app/display/gimpcanvastransformguides.h | 6 +-
app/display/gimpcanvastransformpreview.c | 1110 +--
app/display/gimpdisplayshell-callbacks.c | 11 +
app/display/gimpdisplayshell-render.c | 1 -
app/display/gimpdisplayshell.c | 4 +-
app/display/gimpstatusbar.c | 2 +-
app/display/gimptoolcompass.c | 2 +-
app/display/gimptoolhandlegrid.c | 265 +-
app/display/gimptooltransformgrid.c | 35 +-
app/display/gimptoolwidget.c | 5 +-
app/display/gimptoolwidget.h | 3 +-
app/errors.c | 317 +-
app/errors.h | 3 +-
app/gegl/gimp-gegl-apply-operation.c | 11 +-
app/gegl/gimp-gegl-apply-operation.h | 1 -
app/gimp-version.c | 217 +
app/{version.h => gimp-version.h} | 15 +-
app/gui/gui-message.c | 118 +-
app/gui/gui-message.h | 3 +-
app/gui/splash.c | 208 +-
app/main.c | 50 +-
app/meson.build | 24 +-
app/operations/gimpoperationbrightnesscontrast.c | 4 +-
app/operations/gimpoperationcurves.c | 4 +-
app/operations/gimpoperationlevels.c | 4 +-
app/operations/gimpoperationthreshold.c | 2 +-
app/pdb/message-cmds.c | 2 +-
app/plug-in/gimppluginmanager-call.c | 6 +-
app/plug-in/gimppluginmanager.c | 6 +-
app/sanity.c | 4 +-
app/signals.c | 106 +-
app/signals.h | 2 +-
app/tools/Makefile.am | 2 +
app/tools/gimpbrightnesscontrasttool.c | 2 +-
app/tools/gimpcurvestool.c | 9 +-
app/tools/gimpgenerictransformtool.c | 187 +
app/tools/gimpgenerictransformtool.h | 60 +
app/tools/gimphandletransformtool.c | 191 +-
app/tools/gimphandletransformtool.h | 10 +-
app/tools/gimplevelstool.c | 9 +-
app/tools/gimpmeasuretool.c | 19 +-
app/tools/gimppainttool.c | 6 +-
app/tools/gimpperspectivetool.c | 133 +-
app/tools/gimpperspectivetool.h | 8 +-
app/tools/gimpscaletool.c | 4 +
app/tools/gimpthresholdtool.c | 2 +-
app/tools/gimptool.c | 10 +-
app/tools/gimptransformoptions.c | 126 +-
app/tools/gimptransformtool.c | 36 +-
app/tools/gimptransformtool.h | 1 +
app/tools/gimpunifiedtransformtool.c | 132 +-
app/tools/gimpunifiedtransformtool.h | 8 +-
app/tools/meson.build | 1 +
app/tools/tools-types.h | 1 +
app/version.c | 150 -
app/widgets/Makefile.am | 2 +
app/widgets/gimpaction-history.c | 13 +-
app/widgets/gimpaction.c | 14 +
app/widgets/gimpcontainereditor.c | 7 +-
app/widgets/gimpcriticaldialog.c | 477 +
app/widgets/gimpcriticaldialog.h | 69 +
app/widgets/gimpdashboard.c | 407 +-
app/widgets/gimphelp-ids.h | 1 +
app/widgets/gimpmeter.c | 252 +-
app/widgets/gimpmeter.h | 134 +-
app/widgets/meson.build | 1 +
app/widgets/widgets-types.h | 1 +
build/flatpak/org.gimp.GIMP-dev.json | 1 -
build/flatpak/org.gimp.GIMP-nightly.json | 1 -
build/windows/installer/gimp3264.iss | 2 +
build/windows/installer/lang/Makefile.am | 2 +
configure.ac | 22 +-
desktop/.gitignore | 3 +-
desktop/Makefile.am | 4 +-
desktop/meson.build | 11 +-
...data.xml.in => org.gimp.GIMP.appdata.xml.in.in} | 47 +-
desktop/test-appdata.sh | 6 +-
devel-docs/release-howto.txt | 10 +-
devel-docs/release-stats.sh | 130 +
libgimp/gimp.c | 72 +
libgimp/gimp.def | 4 +
libgimp/gimp.h | 7 +
libgimp/gimpimagemetadata.c | 22 +-
libgimpbase/gimpdatafiles.c | 2 +-
libgimpbase/gimpmetadata.c | 7 +-
libgimpbase/gimpprotocol.c | 12 +-
libgimpbase/gimpprotocol.h | 8 +-
libgimpmath/gimpmath.def | 1 -
libgimpmath/gimpmatrix.c | 36 -
libgimpmath/gimpmatrix.h | 6 -
libgimpwidgets/gimpcolorscales.c | 230 +-
libgimpwidgets/gimpcolorscales.h | 4 -
libgimpwidgets/gimpcolorselect.c | 185 +-
libgimpwidgets/gimpcolorselector.c | 123 +-
libgimpwidgets/gimpcolorselector.h | 15 +-
libgimpwidgets/gimpwidgets.def | 5 +-
libgimpwidgets/gimpwidgetsenums.c | 32 +
libgimpwidgets/gimpwidgetsenums.h | 19 +
menus/image-menu.xml.in | 8 +-
meson.build | 54 +-
pdb/README | 4 +-
pdb/groups/message.pdb | 2 +-
plug-ins/common/file-compressor.c | 5 +-
plug-ins/common/file-gegl.c | 14 +
plug-ins/common/file-gih.c | 6 +-
plug-ins/common/file-png.c | 42 +-
plug-ins/common/file-svg.c | 2 +-
plug-ins/file-jpeg/jpeg-save.c | 23 +-
plug-ins/file-jpeg/jpeg-save.h | 1 +
plug-ins/file-jpeg/jpeg.c | 9 +-
plug-ins/file-psd/psd-save.c | 6 +
plug-ins/file-tiff/file-tiff.c | 8 +-
plug-ins/file-webp/file-webp-save.c | 26 +-
plug-ins/file-webp/file-webp-save.h | 16 +-
plug-ins/file-webp/file-webp.c | 28 +-
plug-ins/metadata/metadata-editor.c | 296 +-
plug-ins/pygimp/plug-ins/python-console.py | 9 +
plug-ins/screenshot/screenshot-kwin.c | 9 +-
po-libgimp/eu.po | 1904 ++-
po-libgimp/fr.po | 2367 +++--
po-libgimp/pl.po | 117 +-
po-plug-ins/ca.po | 922 +-
po-plug-ins/eu.po | 7979 +++++------
po-plug-ins/fr.po | 4995 +++++---
po-plug-ins/pl.po | 117 +-
po-plug-ins/sv.po | 110 +-
po-python/eu.po | 154 +-
po-script-fu/eu.po | 2524 ++--
po-windows-installer/LINGUAS | 2 +
po-windows-installer/POTFILES.skip | 1 +
po-windows-installer/ca.po | 6 +-
po-windows-installer/el.po | 399 +
po-windows-installer/eu.po | 402 +
po-windows-installer/tr.po | 123 +-
po/POTFILES.in | 11 +-
po/POTFILES.skip | 1 +
po/ca.po | 4357 ++++---
po/de.po | 5282 +++++---
po/es.po | 2778 +++--
po/eu.po | 1810 ++--
po/fr.po |14858 +++++++++++++-------
po/pl.po | 2105 ++--
po/ru.po | 3040 +++--
themes/Dark/gtkrc | 8 +
themes/Darker/gtkrc | 8 +
themes/Gray/gtkrc | 8 +
themes/Light/gtkrc | 8 +
themes/Lighter/gtkrc | 8 +
tools/Makefile.am | 34 +-
tools/gimp-debug-resume.c | 10 +-
tools/gimpdebug.c | 137 +
tools/meson.build | 26 +-
225 files changed, 39943 insertions(+), 25326 deletions(-)
---
diff --cc .gitignore
index f636766,5273caf..0bbc1bd
--- a/.gitignore
+++ b/.gitignore
@@@ -1,5 -1,52 +1,57 @@@
+ *.la
+ *.lo
+ *.o
+ *~
+ /*.config
+ /*.creator
+ /*.creator.user
+ /*.files
+ /*.includes
+ /ChangeLog
+ /INSTALL
+ /Makefile
+ /Makefile.in
+ /aclocal.m4
+ /authors.md
+ /autom4te.cache
+ /compile
+ /config.cache
+ /config.guess
+ /config.h
+ /config.h.in
+ /config.log
+ /config.status
+ /config.status.lineno
+ /config.sub
+ /configure
+ /cscope.files
+ /cscope.out
+ /depcomp
+ /gimp-2.0.pc
+ /gimp-zip
+ /gimpthumb-2.0.pc
+ /gimpui-2.0.pc
+ /git-version.h
+ /gtk-doc.make
+ /install-sh
+ /intltool-extract
+ /intltool-extract.in
+ /intltool-merge
+ /intltool-merge.in
+ /intltool-modules
+ /intltool-update
+ /intltool-update.in
+ /libtool
+ /ltmain.sh
+ /missing
+ /mkinstalldirs
+ /py-compile
+ /stamp-h
+ /stamp-h.in
+ /stamp-h1
+ /test-driver
+/build/archlinux/build
+/build/archlinux/gimp*
+/build/archlinux/src
+/build/archlinux/pkg
+/build_m
diff --cc app/meson.build
index 9448045,0000000..dd78045
mode 100644,000000..100644
--- a/app/meson.build
+++ b/app/meson.build
@@@ -1,181 -1,0 +1,159 @@@
+rootAppInclude = include_directories('.')
+
- gitversion_h1 = vcs_tag(
- input : 'git-version.h.in',
- output: 'git-version.h.in.1',
- command: [ 'git', 'describe', '--always', ],
- replace_string: '@GIMP_GIT_VERSION@',
- fallback: '',
- )
- gitversion_h2 = vcs_tag(
- input : gitversion_h1,
- output: 'git-version.h.in.2',
- command: [ 'git', 'rev-parse', '--short', 'HEAD', ],
- replace_string: '@GIMP_GIT_VERSION_ABBREV@',
- fallback: '',
- )
- gitversion_h = vcs_tag(
- input : gitversion_h2,
- output: 'git-version.h',
- command: [ 'git', 'log', '-n1', '--date=format:%Y', '--pretty=%cd', ],
- replace_string: '@GIMP_GIT_LAST_COMMIT_YEAR@',
- fallback: '',
- )
-
+app_mkenums_custom_target_command = [
+ gimp_mkenums,
+ '--fhead','#include "config.h"\n'
+ + '#include <gio/gio.h>\n'
+ + '#include "libgimpbase/gimpbase.h"\n'
+ + '#include "core/core-enums.h"\n'
+ + '#include "@INPUT@"\n'
+ + '#include "gimp-intl.h"\n',
+ gimp_mkenums_custom_target_commonargs,
+]
+
+subdir('actions')
+subdir('core')
+subdir('dialogs')
+subdir('display')
+subdir('file')
+subdir('gegl')
+subdir('gui')
+subdir('menus')
+subdir('operations')
+subdir('paint')
+subdir('pdb')
+subdir('plug-in')
+subdir('propgui')
+subdir('text')
+subdir('tools')
+subdir('vectors')
+subdir('widgets')
+subdir('xcf')
+
+
+app_debug_files = files(
+ 'gimp-debug.c',
+ 'gimp-log.c',
+)
+
+# Top-level library
+app_cflags = [
+ '-DG_LOG_DOMAIN="Gimp"',
+ '-DGIMP_APP_GLUE_COMPILATION',
+]
+
+libapp_sources = [
+ 'app.c',
+ 'errors.c',
+ 'gimp-debug.c',
+ 'gimp-log.c',
++ 'gimp-version.c',
+ 'language.c',
+ 'sanity.c',
+ 'signals.c',
+ 'tests.c',
+ 'unique.c',
- 'version.c',
+ gitversion_h,
+ gimpdbusservice_gen,
+]
+
+libapp = static_library('app',
+ libapp_sources,
+ include_directories: [ rootInclude, rootAppInclude, configInclude, ],
+ c_args: app_cflags,
+ dependencies: [
+ gegl, gdk_pixbuf, gtk2,
+ ],
+)
+
+
+# Those subdirs need to link againts the first ones
+subdir('config')
+subdir('tests')
+
+
+
+app_links = [
+ libappconfig,
+ libappcore,
+ libappfile,
+ libappgegl,
+ libappinternalprocs,
+ libapplayermodes,
+ libapplayermodeslegacy,
+ libappoperations,
+ libapppaint,
+ libapppdb,
+ libappplugin,
+ libapptext,
+ libappvectors,
+ libappxcf,
+ libgimpbase,
+ libgimpcolor,
+ libgimpconfig,
+ libgimpmath,
+ libgimpmodule,
+ libgimpthumb,
+]
+
+app_gui_links = [
+ libappactions,
+ libappdialogs,
+ libappdisplay,
+ libappgui,
+ libappmenus,
+ libapppropgui,
+ libapptools,
+ libappwidgets,
+ libgimpwidgets,
+]
+
+app_deps = [
+ gio, gtk2, pangocairo, pangoft2, gegl, lcms, gexiv2,
+]
+
+# Executables
+
+rc_name = 'gimp-'+ app_version
+rc_file = platform_win32 ? windows.compile_resources(
+ gimp_app_rc,
+ args: [
+ '--define', 'ORIGINALFILENAME_STR="@0@"'.format(rc_name+'.exe'),
+ '--define', 'INTERNALNAME_STR="@0@"' .format(rc_name),
+ '--define', 'TOP_SRCDIR="@0@"' .format(meson.source_root()),
+ ],
+ include_directories: [
+ appInclude,
+ ],
+) : []
+
+gimpconsole_exe = executable('gimp-console-'+app_version,
+ libapp_sources + [ 'main.c', rc_file, ],
+ c_args: app_cflags + [ '-DGIMP_CONSOLE_COMPILATION', ],
+ include_directories: [ rootInclude, ],
+ dependencies: app_deps,
+ link_with: app_links,
+ install: true,
+)
+
+rc_name = 'gimp-console-'+ app_version
+rc_file = platform_win32 ? windows.compile_resources(
+ gimp_app_rc,
+ args: [
+ '--define', 'ORIGINALFILENAME_STR="@0@"'.format(rc_name+'.exe'),
+ '--define', 'INTERNALNAME_STR="@0@"' .format(rc_name),
+ '--define', 'TOP_SRCDIR="@0@"' .format(meson.source_root()),
+ ],
+ include_directories: [
+ appInclude,
+ ],
+) : []
+
+gimpmain_exe = executable('gimp-'+app_version,
+ libapp_sources + [ 'main.c', rc_file, ],
+ c_args: app_cflags + [ ],
+ include_directories: [ rootInclude, ],
+ dependencies: app_deps,
+ link_with: app_links + app_gui_links,
+ install: true,
+)
diff --cc app/tools/meson.build
index 5fb21f8,0000000..5e5110b
mode 100644,000000..100644
--- a/app/tools/meson.build
+++ b/app/tools/meson.build
@@@ -1,124 -1,0 +1,125 @@@
+
+apptoolsenums = custom_target('tools-enums.c',
+ input : [ 'tools-enums.h', ],
+ output: [ 'tools-enums.c', ],
+ command: app_mkenums_custom_target_command,
+ capture: true,
+)
+
+libapptools_sources = [
+ 'gimp-tools.c',
+ 'gimpairbrushtool.c',
+ 'gimpalignoptions.c',
+ 'gimpaligntool.c',
+ 'gimpblendoptions.c',
+ 'gimpblendtool-editor.c',
+ 'gimpblendtool.c',
+ 'gimpbrightnesscontrasttool.c',
+ 'gimpbrushtool.c',
+ 'gimpbucketfilloptions.c',
+ 'gimpbucketfilltool.c',
+ 'gimpbycolorselecttool.c',
+ 'gimpcageoptions.c',
+ 'gimpcagetool.c',
+ 'gimpcloneoptions-gui.c',
+ 'gimpclonetool.c',
+ 'gimpcoloroptions.c',
+ 'gimpcolorpickeroptions.c',
+ 'gimpcolorpickertool.c',
+ 'gimpcolortool.c',
+ 'gimpconvolvetool.c',
+ 'gimpcropoptions.c',
+ 'gimpcroptool.c',
+ 'gimpcurvestool.c',
+ 'gimpdodgeburntool.c',
+ 'gimpdrawtool.c',
+ 'gimpeditselectiontool.c',
+ 'gimpellipseselecttool.c',
+ 'gimperasertool.c',
+ 'gimpfilteroptions.c',
+ 'gimpfiltertool-settings.c',
+ 'gimpfiltertool-widgets.c',
+ 'gimpfiltertool.c',
+ 'gimpflipoptions.c',
+ 'gimpfliptool.c',
+ 'gimpforegroundselectoptions.c',
+ 'gimpforegroundselecttool.c',
+ 'gimpforegroundselecttoolundo.c',
+ 'gimpfreeselecttool.c',
+ 'gimpfuzzyselecttool.c',
+ 'gimpgegltool.c',
++ 'gimpgenerictransformtool.c',
+ 'gimpguidetool.c',
+ 'gimphandletransformoptions.c',
+ 'gimphandletransformtool.c',
+ 'gimphealtool.c',
+ 'gimphistogramoptions.c',
+ 'gimpinkoptions-gui.c',
+ 'gimpinktool.c',
+ 'gimpiscissorsoptions.c',
+ 'gimpiscissorstool.c',
+ 'gimplevelstool.c',
+ 'gimpmagnifyoptions.c',
+ 'gimpmagnifytool.c',
+ 'gimpmeasureoptions.c',
+ 'gimpmeasuretool.c',
+ 'gimpmoveoptions.c',
+ 'gimpmovetool.c',
+ 'gimpmybrushoptions-gui.c',
+ 'gimpmybrushtool.c',
+ 'gimpnpointdeformationoptions.c',
+ 'gimpnpointdeformationtool.c',
+ 'gimpoperationtool.c',
+ 'gimppaintbrushtool.c',
+ 'gimppaintoptions-gui.c',
+ 'gimppainttool.c',
+ 'gimppenciltool.c',
+ 'gimpperspectiveclonetool.c',
+ 'gimpperspectivetool.c',
+ 'gimprectangleoptions.c',
+ 'gimprectangleselectoptions.c',
+ 'gimprectangleselecttool.c',
+ 'gimpregionselectoptions.c',
+ 'gimpregionselecttool.c',
+ 'gimprotatetool.c',
+ 'gimpsamplepointtool.c',
+ 'gimpscaletool.c',
+ 'gimpseamlesscloneoptions.c',
+ 'gimpseamlessclonetool.c',
+ 'gimpselectionoptions.c',
+ 'gimpselectiontool.c',
+ 'gimpsheartool.c',
+ 'gimpsmudgetool.c',
+ 'gimpsourcetool.c',
+ 'gimptextoptions.c',
+ 'gimptexttool-editor.c',
+ 'gimptexttool.c',
+ 'gimpthresholdtool.c',
+ 'gimptilehandleriscissors.c',
+ 'gimptool-progress.c',
+ 'gimptool.c',
+ 'gimptoolcontrol.c',
+ 'gimptooloptions-gui.c',
+ 'gimptransformoptions.c',
+ 'gimptransformtool.c',
+ 'gimptransformtoolundo.c',
+ 'gimpunifiedtransformtool.c',
+ 'gimpvectoroptions.c',
+ 'gimpvectortool.c',
+ 'gimpwarpoptions.c',
+ 'gimpwarptool.c',
+ 'tool_manager.c',
+ apptoolsenums,
+ appcoremarshal,
+]
+
+libapptools = static_library('apptools',
+ libapptools_sources,
+ include_directories: [ rootInclude, rootAppInclude, ],
+ c_args: [
+ '-DG_LOG_DOMAIN="Gimp-Tools"',
+ ],
+ dependencies: [
+ gegl, gtk2,
+ ],
+)
diff --cc app/widgets/meson.build
index 3a18395,0000000..1a910d6
mode 100644,000000..100644
--- a/app/widgets/meson.build
+++ b/app/widgets/meson.build
@@@ -1,238 -1,0 +1,239 @@@
+
+appwidgetsenums = custom_target('widgets-enums.c',
+ input : [ 'widgets-enums.h', ],
+ output: [ 'widgets-enums.c', ],
+ command: app_mkenums_custom_target_command,
+ capture: true,
+)
+
+
+libappwidgets_sources = [
+ 'gimpaction-history.c',
+ 'gimpaction.c',
+ 'gimpactioneditor.c',
+ 'gimpactionfactory.c',
+ 'gimpactiongroup.c',
+ 'gimpactionview.c',
+ 'gimpblobeditor.c',
+ 'gimpbrusheditor.c',
+ 'gimpbrushfactoryview.c',
+ 'gimpbrushselect.c',
+ 'gimpbuffersourcebox.c',
+ 'gimpbufferview.c',
+ 'gimpcairo-wilber.c',
+ 'gimpcellrendererbutton.c',
+ 'gimpcellrendererdashes.c',
+ 'gimpcellrendererviewable.c',
+ 'gimpchanneltreeview.c',
+ 'gimpcircle.c',
+ 'gimpclipboard.c',
+ 'gimpcolorbar.c',
+ 'gimpcolordialog.c',
+ 'gimpcolordisplayeditor.c',
+ 'gimpcoloreditor.c',
+ 'gimpcolorframe.c',
+ 'gimpcolorhistory.c',
+ 'gimpcolormapeditor.c',
+ 'gimpcolorpanel.c',
+ 'gimpcolorselectorpalette.c',
+ 'gimpcombotagentry.c',
+ 'gimpcomponenteditor.c',
+ 'gimpcontainerbox.c',
+ 'gimpcontainercombobox.c',
+ 'gimpcontainereditor.c',
+ 'gimpcontainerentry.c',
+ 'gimpcontainergridview.c',
+ 'gimpcontainericonview.c',
+ 'gimpcontainerpopup.c',
+ 'gimpcontainertreestore.c',
+ 'gimpcontainertreeview-dnd.c',
+ 'gimpcontainertreeview.c',
+ 'gimpcontainerview-utils.c',
+ 'gimpcontainerview.c',
+ 'gimpcontrollereditor.c',
+ 'gimpcontrollerinfo.c',
+ 'gimpcontrollerkeyboard.c',
+ 'gimpcontrollerlist.c',
+ 'gimpcontrollermouse.c',
+ 'gimpcontrollers.c',
+ 'gimpcontrollerwheel.c',
++ 'gimpcriticaldialog.c',
+ 'gimpcursor.c',
+ 'gimpcurveview.c',
+ 'gimpdashboard.c',
+ 'gimpdasheditor.c',
+ 'gimpdataeditor.c',
+ 'gimpdatafactoryview.c',
+ 'gimpdeviceeditor.c',
+ 'gimpdeviceinfo-coords.c',
+ 'gimpdeviceinfo.c',
+ 'gimpdeviceinfoeditor.c',
+ 'gimpdevicemanager.c',
+ 'gimpdevices.c',
+ 'gimpdevicestatus.c',
+ 'gimpdial.c',
+ 'gimpdialogfactory.c',
+ 'gimpdnd-xds.c',
+ 'gimpdnd.c',
+ 'gimpdock.c',
+ 'gimpdockable.c',
+ 'gimpdockbook.c',
+ 'gimpdockcolumns.c',
+ 'gimpdockcontainer.c',
+ 'gimpdocked.c',
+ 'gimpdockwindow.c',
+ 'gimpdocumentview.c',
+ 'gimpdrawabletreeview.c',
+ 'gimpdynamicseditor.c',
+ 'gimpdynamicsfactoryview.c',
+ 'gimpdynamicsoutputeditor.c',
+ 'gimpeditor.c',
+ 'gimpenumaction.c',
+ 'gimperrorconsole.c',
+ 'gimperrordialog.c',
+ 'gimpexportdialog.c',
+ 'gimpfgbgeditor.c',
+ 'gimpfgbgview.c',
+ 'gimpfiledialog.c',
+ 'gimpfileprocview.c',
+ 'gimpfilleditor.c',
+ 'gimpfontselect.c',
+ 'gimpfontview.c',
+ 'gimpgradienteditor.c',
+ 'gimpgradientselect.c',
+ 'gimpgrideditor.c',
+ 'gimphandlebar.c',
+ 'gimphelp.c',
+ 'gimphistogrambox.c',
+ 'gimphistogrameditor.c',
+ 'gimphistogramview.c',
+ 'gimpiconpicker.c',
+ 'gimpiconsizescale.c',
+ 'gimpimagecommenteditor.c',
+ 'gimpimageeditor.c',
+ 'gimpimageparasiteview.c',
+ 'gimpimageprofileview.c',
+ 'gimpimagepropview.c',
+ 'gimpimageview.c',
+ 'gimpitemtreeview.c',
+ 'gimplanguagecombobox.c',
+ 'gimplanguageentry.c',
+ 'gimplanguagestore-parser.c',
+ 'gimplanguagestore.c',
+ 'gimplayermodebox.c',
+ 'gimplayermodecombobox.c',
+ 'gimplayertreeview.c',
+ 'gimpmenudock.c',
+ 'gimpmenufactory.c',
+ 'gimpmessagebox.c',
+ 'gimpmessagedialog.c',
+ 'gimpmeter.c',
+ 'gimpnavigationview.c',
+ 'gimpopendialog.c',
+ 'gimpoverlaybox.c',
+ 'gimpoverlaychild.c',
+ 'gimpoverlaydialog.c',
+ 'gimpoverlayframe.c',
+ 'gimppaletteeditor.c',
+ 'gimppaletteselect.c',
+ 'gimppaletteview.c',
+ 'gimppanedbox.c',
+ 'gimppatternfactoryview.c',
+ 'gimppatternselect.c',
+ 'gimppdbdialog.c',
+ 'gimppickablebutton.c',
+ 'gimppickablepopup.c',
+ 'gimppixbuf.c',
+ 'gimppluginview.c',
+ 'gimppolar.c',
+ 'gimppopup.c',
+ 'gimpprefsbox.c',
+ 'gimpprocedureaction.c',
+ 'gimpprogressbox.c',
+ 'gimpprogressdialog.c',
+ 'gimppropwidgets.c',
+ 'gimpradioaction.c',
+ 'gimprender.c',
+ 'gimpsamplepointeditor.c',
+ 'gimpsavedialog.c',
+ 'gimpscalebutton.c',
+ 'gimpsearchpopup.c',
+ 'gimpselectiondata.c',
+ 'gimpselectioneditor.c',
+ 'gimpsessioninfo-aux.c',
+ 'gimpsessioninfo-book.c',
+ 'gimpsessioninfo-dock.c',
+ 'gimpsessioninfo-dockable.c',
+ 'gimpsessioninfo.c',
+ 'gimpsessionmanaged.c',
+ 'gimpsettingsbox.c',
+ 'gimpsettingseditor.c',
+ 'gimpsizebox.c',
+ 'gimpspinscale.c',
+ 'gimpstringaction.c',
+ 'gimpstrokeeditor.c',
+ 'gimpsymmetryeditor.c',
+ 'gimptagentry.c',
+ 'gimptagpopup.c',
+ 'gimptemplateeditor.c',
+ 'gimptemplateview.c',
+ 'gimptextbuffer-serialize.c',
+ 'gimptextbuffer.c',
+ 'gimptexteditor.c',
+ 'gimptextproxy.c',
+ 'gimptextstyleeditor.c',
+ 'gimptexttag.c',
+ 'gimpthumbbox.c',
+ 'gimptoggleaction.c',
+ 'gimptoolbox-color-area.c',
+ 'gimptoolbox-dnd.c',
+ 'gimptoolbox-image-area.c',
+ 'gimptoolbox-indicator-area.c',
+ 'gimptoolbox.c',
+ 'gimptooleditor.c',
+ 'gimptooloptionseditor.c',
+ 'gimptoolpalette.c',
+ 'gimptoolpreseteditor.c',
+ 'gimptoolpresetfactoryview.c',
+ 'gimptranslationstore.c',
+ 'gimpuimanager.c',
+ 'gimpundoeditor.c',
+ 'gimpvectorstreeview.c',
+ 'gimpview-popup.c',
+ 'gimpview.c',
+ 'gimpviewablebox.c',
+ 'gimpviewablebutton.c',
+ 'gimpviewabledialog.c',
+ 'gimpviewrenderer-frame.c',
+ 'gimpviewrenderer-utils.c',
+ 'gimpviewrenderer.c',
+ 'gimpviewrendererbrush.c',
+ 'gimpviewrendererbuffer.c',
+ 'gimpviewrendererdrawable.c',
+ 'gimpviewrenderergradient.c',
+ 'gimpviewrendererimage.c',
+ 'gimpviewrendererimagefile.c',
+ 'gimpviewrendererlayer.c',
+ 'gimpviewrendererpalette.c',
+ 'gimpviewrenderervectors.c',
+ 'gimpwidgets-constructors.c',
+ 'gimpwidgets-utils.c',
+ 'gimpwindow.c',
+ 'gimpwindowstrategy.c',
+ 'gtkhwrapbox.c',
+ 'gtkwrapbox.c',
+ appwidgetsenums,
+ appcoremarshal,
+]
+
+
+libappwidgets = static_library('appwidgets',
+ libappwidgets_sources,
+ include_directories: [ rootInclude, rootAppInclude, ],
+ c_args: [
+ '-DG_LOG_DOMAIN="Gimp-Widgets"',
+ ],
+ dependencies: [
+ gegl, gtk2,
+ ],
+)
diff --cc desktop/meson.build
index 5e3f6a5,0000000..96393ea
mode 100644,000000..100644
--- a/desktop/meson.build
+++ b/desktop/meson.build
@@@ -1,92 -1,0 +1,99 @@@
+sizes = [
+ '16',
+ '22',
+ '24',
+ '32',
+ '48',
+ '64',
+ '256',
+]
+
+foreach size : sizes
+ sizedir = size+'x'+size
+ install_data(join_paths(sizedir, 'gimp.png'),
+ install_dir: join_paths(
+ get_option('datadir'), 'icons', 'hicolor', sizedir, 'apps'
+ )
+ )
+endforeach
+
+desktopfilename = 'gimp.desktop'
+
+desktop_conf = configuration_data()
+desktop_conf.set('GIMP_APP_VERSION', app_version)
+desktop_conf.set('GIMP_COMMAND', gimp_command)
+desktop_conf.set('GIMP_VERSION', gimp_version)
+desktop_conf.set('MIME_TYPES', ';'.join(MIMEtypes))
+
+desktopfilein = configure_file(
+ input : desktopfilename+'.in.in',
+ output: desktopfilename+'.in',
+ configuration: desktop_conf,
+)
+
+desktopfile = custom_target(desktopfilename,
+ input : [ desktopfilein, ],
+ output: [ desktopfilename, ],
+ command: [
+ intltool_merge,
+ po_dir,
+ '@INPUT@',
+ '@OUTPUT@',
+ '--desktop-style',
+ '--utf8',
+ '--cache='+join_paths('@OUTDIR@', 'intltool-merge-cache'),
+ ],
+ install: true,
+ install_dir: join_paths(get_option('datadir'), 'applications'),
+)
+
- appdatafilename = 'gimp.appdata.xml'
++appdatafilename = 'org.gimp.GIMP.appdata.xml'
+appdatafile = custom_target(appdatafilename,
- input : [ appdatafilename+'.in', ],
++ input : [ appdatafilename+'.in.in', ],
+ output: [ appdatafilename, ],
+ command: [
+ intltool_merge,
+ po_dir,
+ '@INPUT@',
+ '@OUTPUT@',
+ '--xml-style',
+ '--utf8',
+ '--cache='+join_paths('@OUTDIR@', 'intltool-merge-cache'),
+ ],
+ install: true,
+ install_dir: join_paths(get_option('datadir'), 'appdata'),
+)
+
+appdatafilename = 'gimp-data-extras.metainfo.xml'
+appdatafile = custom_target(appdatafilename,
+ input : [ appdatafilename+'.in', ],
+ output: [ appdatafilename, ],
+ command: [
+ intltool_merge,
+ po_dir,
+ '@INPUT@',
+ '@OUTPUT@',
+ '--xml-style',
+ '--utf8',
+ '--cache='+join_paths('@OUTDIR@', 'intltool-merge-cache'),
+ ],
+ install: true,
+ install_dir: join_paths(get_option('datadir'), 'appdata'),
+)
+
+custom_target('validate-desktop',
+ input : [ desktopfile, ],
+ output: [ 'validate-desktop' ],
+ command: [
+ desktop_validate, '@INPUT@',
+ ],
+ build_always: false,
+ build_by_default: false,
+)
++
++test('test-appdata',
++ find_program('test-appdata.sh'),
++ env: [
++ 'GIMP_TESTING_ABS_TOP_BUILDDIR='+ meson.build_root(),
++ ],
++)
diff --cc meson.build
index 9c2c424,0000000..fd62442
mode 100644,000000..100644
--- a/meson.build
+++ b/meson.build
@@@ -1,1071 -1,0 +1,1099 @@@
+# Meson build file
+
+# http://bugzilla.gnome.org/enter_bug.cgi?product=GIMP
+project('gimp', ['c', 'cpp'], version: '2.9.9',
+ meson_version: '>=0.44.0',
+ default_options: [
+ 'sysconfdir=/etc',
+ 'localstatedir=/var',
+ 'sharedstatedir=/var/lib'
+ ],
+)
+
+conf = configuration_data()
+
+pkgconfig = import('pkgconfig')
+i18n = import('i18n')
+gnome = import('gnome')
+pythonmod = import('python3')
+
+cc = meson.get_compiler('c')
+cxx = meson.get_compiler('cpp')
+prefix = get_option('prefix')
+buildtype = get_option('buildtype')
+
+profiling = get_option('profiling')
+ansi = get_option('ansi')
+
+################################################################################
+# Project info
+
+prettyname = 'GIMP'
+full_name = 'GNU Image Manipulation Program'
+
+# Making releases on the stable branch:
+# micro_version += 1;
+# interface_age += 1;
+#
+# For a description of libtool version variables, see:
+# devel-docs/libtool-instructions.txt
+
+version = meson.project_version().split('.')
+major_version = version[0].to_int()
+minor_version = version[1].to_int()
+micro_version = version[2].to_int()
+interface_age = 0
+
+api_version = '@0@.0' .format(major_version)
+app_version = '@0@.@1@'.format(major_version, minor_version)
+user_version = '@0@.@1@'.format(major_version, minor_version)
+gimp_version = meson.project_version()
+
+gimp_command = 'gimp-' + app_version
+gimp_api_name = 'gimp-' + api_version
+package_string= prettyname + ' ' + gimp_version
+
+
+# TODO cleanup all this versions mess
+binary_age = 100 * minor_version + micro_version
+
+lt_current = 100 * minor_version + micro_version - interface_age
+lt_revision = interface_age
+lt_age = binary_age - interface_age
+lt_version_info = '@0@:@1@:@2@'.format(lt_current, lt_revision, lt_age)
+lt_current_minus_age = lt_current - lt_age
+
+so_version = '@0@.@1@.@2@'.format(lt_revision, lt_current, lt_current_minus_age)
+
+
+stable = (minor_version % 2 == 0)
+conf.set10('GIMP_UNSTABLE', not stable)
+
+versionconfig = configuration_data()
+versionconfig.set('GIMP_FULL_NAME', full_name)
+versionconfig.set('GIMP_MAJOR_VERSION', major_version)
+versionconfig.set('GIMP_MINOR_VERSION', minor_version)
+versionconfig.set('GIMP_MICRO_VERSION', micro_version)
+versionconfig.set('GIMP_VERSION', gimp_version)
+versionconfig.set('GIMP_API_VERSION', api_version)
+
+################################################################################
+# Host system detection
+
+host_cpu = host_machine.cpu().to_lower()
+message('Architecture: ' + host_cpu)
+
+if host_cpu.startswith('i') and host_cpu.endswith('86')
+ have_x86 = true
+ conf.set10('ARCH_X86', true)
+elif host_cpu == 'x86_64'
+ have_x86 = true
+ conf.set10('ARCH_X86', true)
+ conf.set10('ARCH_X86_64', true)
+elif host_cpu == 'ppc' or host_cpu == 'powerpc'
+ have_ppc = true
+ conf.set10('ARCH_PPC', true)
+elif host_cpu == 'ppc64' or host_cpu == 'powerpc64'
+ have_ppc = true
+ conf.set10('ARCH_PPC', true)
+ conf.set10('ARCH_PPC64', true)
+else
+ error('Unknown host architecture')
+endif
+
+
+host_os = host_machine.system().to_lower()
+message('Host os: ' + host_os)
+
+platform_win32= host_os.contains('mingw') or host_os.contains('cygwin') or host_os.contains('windows')
+platform_osx = host_os.contains('darwin')
+
+conf.set('PLATFORM_OSX', platform_osx)
+
+if platform_win32
+ windows = import('windows')
+endif
+
+################################################################################
+# Dependencies
+math = cc.find_library('m')
+
+atk = dependency('atk', version: '>=2.2.0')
+
- babl_minver = '>=0.1.38'
++babl_minver = '>=0.1.42'
+babl = dependency('babl', version: babl_minver)
+
+cairo_minver = '>=1.12.2'
+cairo = dependency('cairo', version: cairo_minver)
+
+dbus_glib = dependency('dbus-glib-1')
+
+fontconfig_minver = platform_win32 ? '>=2.11.1' : '>=2.2.0'
+# fontconfig_name = platform_win32 ? 'fontconfig_win32' : 'fontconfig'
+fontconfig_name = 'fontconfig'
+fontconfig = dependency(fontconfig_name, version: fontconfig_minver)
+
+freetype2 = dependency('freetype2', version: '>=2.1.7')
+
+gdk_pixbuf_minver = '>=2.30.8'
+gdk_pixbuf = dependency('gdk-pixbuf-2.0', version: gdk_pixbuf_minver)
+
+gegl_minver = '>=0.3.27'
+gegl = dependency('gegl-0.3', version: gegl_minver)
+
+gexiv2 = dependency('gexiv2', version: '>=0.10.6')
+
+gio = dependency('gio-2.0')
+gio_specific_name = platform_win32 ? 'gio-windows-2.0' : 'gio-unix-2.0'
+gio_specific = dependency(gio_specific_name)
+
+glib = dependency('glib-2.0', version: '>=2.54.2')
+gobject = dependency('gobject-2.0', version: '>=2.54.2')
+gmodule = dependency('gmodule-no-export-2.0')
+
+gtk2_minver = '>=2.24.10'
+gtk2 = dependency('gtk+-2.0', version: gtk2_minver)
+
+harfbuzz = dependency('harfbuzz', version: '>=0.9.19')
+lcms = dependency('lcms2', version: '>=2.8')
+
+libmypaint_name = platform_win32 ? 'libmypaint' : 'libmypaint-1.3'
+libmypaint = dependency(libmypaint_name, version: '>=1.3.0')
+libmypaint_brushes= dependency('mypaint-brushes-1.0',required: false)
+pangocairo = dependency('pangocairo', version: '>=1.29.4')
+pangoft2 = dependency('pangoft2', version: '>=1.29.4')
+rsvg = dependency('librsvg-2.0', version: '>=2.40.6')
+
+# xgettext = dependency('xgettext', version: '>=0.19')
+
+# Mypaint-brushes not available on MingW
+mypaint_brushes = libmypaint_brushes.found() ? [
+ libmypaint_brushes,
+] : []
+mypaint_args = libmypaint_brushes.found() ? [] : [
+ '-DMYPAINT_BRUSHES_DIR="/usr/share/mypaint-data/1.0/brushes"',
+]
+
+
+################################################################################
+# Check for GLib Networking
+
+glib_networking_works_run = cc.run(
+ '''#include <gio/gio.h>
+ int main() {
+ return !g_tls_backend_supports_tls (g_tls_backend_get_default ());
+ }''',
+ dependencies: gio,
+)
+glib_networking_works =(glib_networking_works_run.compiled()
+ and glib_networking_works_run.returncode() == 0)
+
+if not glib_networking_works
+ error('Test for glib-networking failed. This is required.')
+# TODO check if cross-compiling
+endif
+
+################################################################################
+# Check if Pango is built with a recent fontconfig
+
+pango_check_run = cc.run(
+ '''#include <fontconfig/fontconfig.h>
+ int main() {
+ FcObjectSet *os; os = FcObjectSetBuild (FC_FAMILY, FC_WIDTH);
+ }''',
+ dependencies: fontconfig,
+)
+pango_check =(pango_check_run.compiled()
+ and pango_check_run.returncode() == 0)
+
+if not pango_check
+ message('''
+ *** You have a fontconfig >= fontconfig_required_version installed on your system, but your
+ *** Pango library is using an older version. This old version is probably in
+ *** /usr/X11R6. Look at the above output, and note that the result for
+ *** FONTCONFIG_CFLAGS is not in the result for PANGOCAIRO_CFLAGS, and that
+ *** there is likely an extra -I line, other than the ones for GLIB,
+ *** Freetype, and Pango itself. That's where your old fontconfig files are.
+ *** Rebuild pango, and make sure that it uses the newer fontconfig. The
+ *** easiest way be sure of this is to simply get rid of the old fontconfig.
+ *** When you rebuild pango, make sure the result for FONTCONFIG_CFLAGS is
+ *** the same as the result here.''')
+endif
+
+# Check for Dr. Mingw
+# TODO check if that works
+have_drmingw = false
+if platform_win32
+ exchndl = cc.find_library('exchndl')
+ if exchndl.found()
+ have_drmingw = cc.has_function(
+ 'ExcHndlSetLogFileNameA',
+ prefix: '',
+ dependencies: exchndl,
+ )
+ endif
+endif
+
+# Check for finite or isfinite
+conf.set('HAVE_FINITE', cc.has_function('finite', prefix: '#include <math.h>'))
+conf.set('HAVE_ISFINITE', cc.has_function('isfinite', prefix: '#include <math.h>'))
+
+# Check for compiler CPU extensions
+cpuext_args = [
+ '-mfpmath=sse',
+ '-mmmx',
+ '-msse',
+ '-msse2',
+ '-msse4.1',
+]
+add_project_arguments(cc .get_supported_arguments(cpuext_args), language: 'c')
+add_project_arguments(cxx.get_supported_arguments(cpuext_args), language: 'cpp')
+
+conf.set10('USE_MMX', cc.has_argument('-mmmx'))
+conf.set10('USE_SSE', cc.has_argument('-msse'))
+conf.set10('COMPILE_SSE2_INTRINISICS', cc.has_argument('-msse2'))
+conf.set10('COMPILE_SSE4_1_INTRINISICS',cc.has_argument('-msse4.1'))
+
+
+# TODO altivec
+has_altivec = cc.has_argument('-faltivec')
+cc.has_argument('-maltivec')
+cc.has_argument('-mabi=altivec')
+
+# TODO shared memory handling
+
+# OpenMP
+conf.set10('ENABLE_MP', get_option('enable-openmp'))
+
+# Check if X11
+enable_doc_shooter = false
+
+if gtk2.get_pkgconfig_variable('target') == 'x11'
+ x11 = dependency('x11')
+ xmu = dependency('xmu')
+ xt = dependency('xt')
+ xext = dependency('xext')
+ xfixes= dependency('xfixes')
+
+ enable_doc_shooter = true
+
+ x11_headers = [ 'X11/Xmu/WinUtil.h', 'X11/extensions/shape.h', ]
+ x11_functions = [ 'XmuClientWindow', 'XShapeGetRectangles', ]
+ foreach header : x11_headers
+ if not cc.has_header(header, dependencies: [ xext, xmu ])
+ error('x11 install does not provide required header ' + header)
+ endif
+ endforeach
+ foreach function : x11_functions
+ if not cc.has_function(function, dependencies: [ xext, xmu ])
+ error('x11 install does not provide required function ' + function)
+ endif
+ endforeach
+ have_xlibs = true
+else
+ x11 = dependency('', required: false)
+ xmu = dependency('', required: false)
+ xt = dependency('', required: false)
+ xext = dependency('', required: false)
+ xfixes = dependency('', required: false)
+ have_xlibs = false
+endif
+
+# Print support
+have_print = get_option('with-print')
+have_screenshot = get_option('with-screenshot')
+if have_print and not have_xlibs
+ error('Printing requires x libs')
+endif
+if have_screenshot and not have_xlibs
+ error('Screenshot requires x libs')
+endif
+
++if not cc.has_header('execinfo.h')
++ error('The compiler does not provide required header ' + header)
++endif
++
+################################################################################
+# MIME types
+# The list of MIME types that are supported by plug-ins
+
+MIMEtypes = [
+ 'image/bmp',
+ 'image/g3fax',
+ 'image/gif',
+ 'image/svg+xml',
+ 'image/x-compressed-xcf',
+ 'image/x-fits',
+ 'image/x-gimp-gbr',
+ 'image/x-gimp-gih',
+ 'image/x-gimp-pat',
+ 'image/x-pcx',
+ 'image/x-portable-anymap',
+ 'image/x-portable-bitmap',
+ 'image/x-portable-graymap',
+ 'image/x-portable-pixmap',
+ 'image/x-psd',
+ 'image/x-sgi',
+ 'image/x-tga',
+ 'image/x-xbitmap',
+ 'image/x-xcf',
+ 'image/x-xwindowdump',
+]
+
+
+
+libtiff = dependency('libtiff-4', required: false)
+if libtiff.found()
+ MIMEtypes += 'image/tiff'
+endif
+
+
+libjpeg = dependency('libjpeg', required: false)
+if libjpeg.found()
+ MIMEtypes += 'image/jpeg'
+endif
+
+
+zlib = dependency('zlib', required: false)
+if zlib.found()
+ MIMEtypes += 'image/x-psp'
+endif
+
+
+bz2 = cc.find_library('bz2', required: false)
+
+
+liblzma = dependency('liblzma', version: '>=5.0.0', required: false)
+
+
+if get_option('with-ghostscript')
+ ghostscript = cc.find_library('gs')
+ MIMEtypes += 'application/postscript'
+else
+ ghostscript = dependency('', required: false)
+endif
+
+
+libpng = dependency('libpng', version: '>=1.6.25', required: false)
+if libpng.found()
+ MIMEtypes += [ 'image/png', 'image/x-icon']
+endif
+
+
+if get_option('with-mng')
+ libmng = cc.find_library('mng')
+else
+ libmng = dependency('', required: false)
+endif
+
+
+if get_option('with-aa')
+ libaa = cc.find_library('aa')
+else
+ libaa = dependency('', required: false)
+endif
+
+
+if get_option('with-xpm')
+ libxpm = dependency('xpm')
+ MIMEtypes += 'image/x-xpixmap'
+else
+ libxpm = dependency('', required: false)
+endif
+
+
+if get_option('with-openexr')
+ openexr = dependency('OpenEXR', version: '>=1.6.1')
+ MIMEtypes += 'image/x-exr'
+else
+ openexr = dependency('', required: false)
+endif
+
+
+if get_option('with-webp')
+ webp_deps = [
+ dependency('libwebp', version: '>=0.6.0'),
+ dependency('libwebpmux', version: '>=0.6.0'),
+ dependency('libwebpdemux',version: '>=0.6.0'),
+ ]
+ webp = declare_dependency(
+ dependencies: webp_deps,
+ version: webp_deps[0].version(),
+ )
+ MIMEtypes += 'image/x-webp'
+else
+ webp = dependency('', required: false)
+endif
+
+
+if get_option('with-webkit')
+ webkit = dependency('webkit-1.0', version: '>=1.6.1')
+else
+ webkit = dependency('', required: false)
+endif
+
+
+if get_option('with-poppler')
++ # All modern distributions have at least this version and CJK/Cyrillic
++ # support should not be considered as "second-zone citizen".
+ poppler = [
+ dependency('poppler-glib', version: '>=0.44.0'),
+ dependency('poppler-data', version: '>=0.4.7'),
+ ]
+else
+ poppler = dependency('', required: false)
+endif
+
+
+if get_option('with-cairo-pdf')
+ cairopdf = dependency('cairo-pdf', version: '>=1.12.2')
+else
+ cairopdf = dependency('', required: false)
+endif
+
+
+# PDF import support is a granted feature.
+MIMEtypes += 'application/pdf'
+
+
+if get_option('with-wmf')
+ wmf = [ cc.find_library('wmf'), cc.find_library('wmflite') ]
+ wmf = dependency('libwmf', version: '>=0.2.8')
+ MIMEtypes += [ 'image/x-wmf', ]
+else
+ wmf = dependency('', required: false)
+endif
+
+
+if get_option('with-jasper')
+ jasper = cc.find_library('jasper')
+ MIMEtypes += [ 'image/jp2', 'image/jpeg2000', 'image/jpx', ]
+else
+ jasper =
+endif
+
+
+if get_option('with-xmc')
+ xmc = dependency('xcursor')
+ MIMEtypes += [ 'image/x-xcursor', ]
+else
+ xmc = dependency('', required: false)
+endif
+
+
+if get_option('with-alsa')
+ alsa = dependency('alsa', version: '>=1.0.0')
+else
+ alsa = dependency('', required: false)
+endif
+
+
+have_linuxinput = false
+if get_option('with-linux-input')
+ if not cc.has_header('linux/input.h')
+ error('linux/input.h header not found.')
+ endif
+ have_linuxinput = true
+endif
+
+# DirectX DirectInput
+have_directXinput = false
+directx_sdk_path = get_option('with-directx-sdk')
+if directx_sdk_path != '' and platform_win32
+ if directx_sdk_path.contains(' ')
+ message('Warning: The DirectX SDK should be accessible through a path without spaces. Use MSYS mounts.'
+ + '\nIgnoring your with-directx-sdk switch.'
+ )
+ elif directx_sdk_path.contains('\\')
+ message('Warning: Use plain (forward) slashes only for the DirectX SDK path.'
+ + '\nIgnoring your with-directx-sdk switch.'
+ )
+ else
+ have_directXinput = true
+ conf.set10('HAVE_DX_DINPUT', have_directXinput)
+ dxguid = cc.find_library('dxguid',
+ dirs: join_paths(directx_sdk_path, 'Lib', 'x86'),
+ )
+ directx = declare_dependency(link_with: dxguid,
+ include_directories: join_paths(directx_sdk_path, 'Include'),
+ )
+ endif
+endif
+
+
+if get_option('with-gudev')
+ gudev = dependency('gudev-1.0', version: '>=167')
+else
+ gudev = dependency('', required: false)
+endif
+
+
+# sendmail TODO
+have_email = true
+
+# perl
+perl = find_program('perl5', 'perl', 'perl5.005', 'perl5.004', 'perl')
+
+
+# python
+have_python = false
+if get_option('with-python')
+ python2 = find_program('python2')
+ pygobjectcodegen = find_program('pygobject-codegen-2.0')
+
+ libpython2= dependency('python2', version: '>=2.5.0')
+ pygobject = dependency('pygobject-2.0', version: '>=2.10.4')
+ pygtk2 = dependency('pygtk-2.0', version: '>=2.10.4')
+ pycairo = dependency('pycairo', version: '>=1.0.2')
+
+ pygtk_defsdir = pygtk2.get_pkgconfig_variable('defsdir')
+ have_python = true
+endif
+
+
+# Script-fu
+have_scriptfu = get_option('with-script-fu')
+
+
+# Check for GTK Mac Integration
+gtk_mac_integration_ok = false
+if platform_osx and (gtk2.get_pkgconfig_variable('target') == 'xquartz')
+ gtk2_macos = dependency('gtk-mac-integration-gtk2', version: '>=2.0.0', required: false)
+ if not gtk2_macos.found()
+ gtk2_macos = dependency('gtk-mac-integration' , version: '>=2.0.0', required: false)
+ endif
+ gtk_mac_integration_ok = gtk2_macos.found()
+endif
+
+# Check for XML tools
+xmllint = find_program('xmllint', required: false)
+xsltproc= find_program('xsltproc',required: false)
+intltool_merge = find_program('intltool-merge')
+desktop_validate = find_program('desktop-file-validate')
+gdk_pixbuf_csource = find_program('gdk-pixbuf-csource')
+
+
+# Check for vector icons
+# TODO
+have_vector_icons = true
+# if get_option('with-vec-icons')
+# # shared-mime-info is needed to correctly detect SVG files
+# # (except on Windows, apparently).
+# shared_mime_info = dependency('shared-mime-info', required: false)
+# if shared_mime_info.found() or platform_win32
+#
+# endif
+# endif
+
+if get_option('with-xvfb-run')
+ xvfb_run = find_program('xvfb-run')
+else
+ xvfb_run = dependency('', required: false)
+endif
+
+
+if get_option('with-appdata-test')
+ appstream_util = find_program('appstream-util')
+else
+ appstream_util = dependency('', required: false)
+endif
+
+
+if get_option('with-gtk-doc')
+ gtkdoc_scan = find_program('gtkdoc-scan', required : true)
+else
+ gtkdoc_scan = dependency('', required: false)
+endif
+
+enable_default_bin = get_option('enable-default-bin')
+enable_console_bin = get_option('enable-console-bin')
+
+
+# Possibly change default gimpdir from $XDG_CONFIG_HOME/GIMP/gimp_user_version
+gimpdir = get_option('gimpdir')
+if gimpdir == ''
+ # Default value
+ gimpdir = meson.project_name().to_upper()
+endif
+
+gimpdatadir = join_paths(get_option('datadir'), meson.project_name(), api_version)
+gimpplugindir = join_paths(get_option('libdir'), meson.project_name(), api_version)
+gimpsysconfdir = join_paths(get_option('sysconfdir'), meson.project_name(), api_version)
+gimpmanpagedir = gimpdir
+localedir = join_paths(get_option('datadir'), 'locale')
+
+
+
+# Disable deprecated APIs
+add_project_arguments([
+ '-DGIMP_DISABLE_DEPRECATED',
+ '-DBABL_DISABLE_DEPRECATED',
+ '-DGSEAL_ENABLE'
+ ],
+ language: 'c',
+)
+
+if glib.version().version_compare('>=2.43')
+ add_project_arguments([
+ '-DG_DISABLE_DEPRECATED',
+ ],
+ language: 'c',
+ )
+endif
+if gtk2.version().version_compare('>=2.26')
+ add_project_arguments([
+ '-DGDK_DISABLE_DEPRECATED',
+ '-DGTK_DISABLE_DEPRECATED',
+ ],
+ language: 'c',
+ )
+endif
+if glib.version().version_compare('>=1.32')
+ add_project_arguments([
+ '-DPANGO_DISABLE_DEPRECATED',
+ ],
+ language: 'c',
+ )
+endif
+
+
+# Require multihead safe API
+add_project_arguments([
+ '-DGDK_MULTIHEAD_SAFE',
+ '-DGTK_MULTIHEAD_SAFE',
+ ],
+ language: 'c',
+)
+
+
+# Check for internal tools
+defcheck = find_program(join_paths('tools', 'defcheck.py'))
+extract_vector_icon = find_program(join_paths('tools', 'extract-vector-icon.sh'))
+generate_changelog = find_program(join_paths('tools', 'generate_changelog.sh'))
+generate_news = find_program(join_paths('tools', 'generate-news'))
+gimppath2svg = find_program(join_paths('tools', 'gimppath2svg.py'))
+module_dependencies = find_program(join_paths('tools', 'module-dependencies.py'))
+
+gimp_mkenums = find_program(join_paths('tools', 'gimp-mkenums'))
+gimp_mkenums_custom_target_commonargs = [
+ '--fprod','/* enumerations from "@basename@" */\n',
+ '--vhead','GType\n'+
+ '@enum_name@_get_type (void)\n'+
+ '{\n'+
+ ' static const G@Type@Value values[] =\n'+
+ ' {',
+ '--vprod',' { @VALUENAME@, "@VALUENAME@", "@valuenick@" },',
+ '--vtail',' { 0, NULL, NULL }\n'+
+ ' };\n',
+ '--dhead',' static const Gimp@Type@Desc descs[] =\n'+
+ ' {',
+ '--dprod',' { @VALUENAME@, @valuedesc@, @valuehelp@ },@if (\'@valueabbrev@\' ne \'NULL\')@\n'+
+ ' /* Translators: this is an abbreviated version of @valueudesc@.\n'+
+ ' Keep it short. */\n'+
+ ' { @VALUENAME@, @valueabbrev@, NULL },@endif@',
+ '--dtail',' { 0, NULL, NULL }\n'+
+ ' };\n'+
+ '\n'+
+ ' static GType type = 0;\n'+
+ '\n'+
+ ' if (G_UNLIKELY (! type))\n'+
+ ' {\n'+
+ ' type = g_@type@_register_static ("@EnumName@", values);\n'+
+ ' gimp_type_set_translation_context (type, "@enumnick@");\n'+
+ ' gimp_@type@_set_value_descriptions (type, descs);\n'+
+ ' }\n'+
+ '\n'+
+ ' return type;\n'+
+ '}\n',
+ '@INPUT@',
+]
+
+
+################################################################################
+# Localisation
+gettext_package = 'gimp20'
+
+conf.set_quoted('GETTEXT_PACKAGE',gettext_package)
+
+# localedir = join_paths(get_option('prefix'), get_option('localedir'))
+
+
+################################################################################
+# ISO codes
+
+isocodes = dependency('iso-codes')
+isocodes_prefix = isocodes.get_pkgconfig_variable('prefix')
+isocodes_location = join_paths(isocodes_prefix,get_option('datadir'),'xml','iso-codes')
+isocodes_localedir= join_paths(isocodes_prefix,get_option('datadir'),'locale')
+
+
+################################################################################
+# CFlags
+
+if profiling and cc.get_id() == 'gcc'
+ add_project_arguments ('-pg', language: [ 'c', 'cpp', ])
+ add_project_link_arguments('-pg', language: [ 'c', 'cpp', ])
+endif
+
+if ansi
+ add_project_arguments('-ansi', '-pedantic', language: 'c')
+endif
+
+add_project_arguments(
+ '-fdiagnostics-show-option',
+ '-fno-common',
+
+ '-Wmissing-prototypes',
+ '-Werror=missing-prototypes',
+
+ '-Wdeclaration-after-statement',
+ '-Wformat-security',
+ '-Winit-self',
+ # '-Wlogical-op',
+ '-Wmissing-declarations',
+ '-Wmissing-format-attribute',
+ '-Wold-style-definition',
+ '-Wpointer-arith',
+ '-Wreturn-type',
+ # '-Wstrict-prototypes',
+ '-Wtype-limits',
+
+ # '--omg-optimized',
+ # '--disable-instructions',
+ language: [ 'c', 'cpp', ],
+)
+
+# Ensure MSVC-compatible struct packing convention is used when
+# compiling for Win32 with gcc.
+if platform_win32
+ add_project_arguments(
+ cc.first_supported_argument('-fnative-struct', '-mms-bitfields'),
+ language: [ 'c', 'cpp' ],
+ )
+endif
+
+has_nl_measurement = cc.has_function(
+ 'nl_langinfo',
+ prefix: '#include<langinfo.h>',
+)
+
+################################################################################
+# Set/regroup common CFlags for subdirs
+
+# Global arguments
+# Should be moved into config.h someday
+
+config_defines = [
+ # Compiler
+ '-DCC=' +'"'+ cc.get_id() +'"',
+ '-DCC_VERSION=' +'"'+ cc.version() +'"',
+
+ # Names
+ '-DGIMP_PACKAGE=' +'"'+ meson.project_name() +'"',
+ '-DPACKAGE_STRING=' +'"'+ package_string +'"',
+ '-DGIMP_COMMAND=' +'"'+ gimp_command +'"',
+
+ # Versions
+ '-DGIMP_APP_VERSION=' +'"'+ app_version +'"',
+ '-DGIMP_DATA_VERSION=' +'"'+ api_version +'"',
+ '-DGIMP_PLUGIN_VERSION=' +'"'+ api_version +'"',
+ '-DGIMP_SYSCONF_VERSION=' +'"'+ api_version +'"',
+ '-DGIMP_USER_VERSION=' +'"'+ user_version +'"',
+ '-DGIMP_APP_VERSION_STRING="' + app_version +'"',
+
+ # Directories
+ '-DPREFIX=' +'"'+ prefix +'"',
+ '-DEXEC_PREFIX=' +'"'+ prefix +'"',
+ '-DGIMPDIR=' +'"'+ gimpdir +'"',
+ '-DGIMPSYSCONFDIR=' +'"'+ gimpsysconfdir +'"',
+ '-DGIMPDATADIR=' +'"'+ join_paths(prefix, gimpdatadir) +'"',
+ '-DGIMPPLUGINDIR=' +'"'+ join_paths(prefix, gimpplugindir) +'"',
+ '-DPLUGINDIR=' +'"'+ join_paths(prefix, gimpplugindir) +'"',
+ '-DLOCALEDIR=' +'"'+ join_paths(prefix, localedir) +'"',
+
+ '-DLOCALSTATEDIR=' +'"'+ get_option('localstatedir') +'"',
+ '-DSHAREDSTATEDIR=' +'"'+ get_option('sharedstatedir') +'"', # HUH ? /usr/com
+ '-DSYSCONFDIR=' +'"'+ get_option('sysconfdir') +'"',
+ '-DBINDIR=' +'"'+ join_paths(prefix, get_option('bindir')) +'"',
+ '-DDATAROOTDIR=' +'"'+ join_paths(prefix, get_option('datadir')) +'"',
+ '-DINFODIR=' +'"'+ join_paths(prefix, get_option('infodir')) +'"',
+ '-DLIBDIR=' +'"'+ join_paths(prefix, get_option('libdir')) +'"',
+ '-DLIBEXECDIR=' +'"'+ join_paths(prefix, get_option('libexecdir')) +'"',
+ '-DMANDIR=' +'"'+ join_paths(prefix, get_option('mandir')) +'"',
+ '-DSBINDIR=' +'"'+ join_paths(prefix, get_option('sbindir')) +'"',
+ '-DSYSDATADIR=' +'"'+ join_paths(prefix, get_option('datadir')) +'"',
+
+ # Third-party/Misc
+ '-DISO_CODES_LOCATION=' +'"'+ isocodes_location +'"',
+ '-DISO_CODES_LOCALEDIR=' +'"'+ isocodes_localedir +'"',
+
+ '-DHAVE_CONFIG_H',
+]
+
+
+if platform_osx
+ # libgimp_cflags += '-xobjective-c'
+ # libgimp_lflags += ['-framework', 'Cocoa']
+endif
+
+add_project_arguments(
+ config_defines,
+ language: [ 'c', 'cpp', ],
+)
+
+rootInclude = include_directories('.')
+appInclude = include_directories('app')
+
++
++configure_file(
++ input : 'INSTALL.in',
++ output: 'INSTALL',
++ configuration: conf
++)
++
++configure_file(
++ output: 'config.h',
++ configuration: conf
++)
++
++gitversion_h1 = vcs_tag(
++ input : 'app/git-version.h.in',
++ output: 'git-version.h.in.1',
++ command: [ 'git', 'describe', '--always', ],
++ replace_string: '@GIMP_GIT_VERSION@',
++ fallback: '',
++)
++gitversion_h2 = vcs_tag(
++ input : gitversion_h1,
++ output: 'git-version.h.in.2',
++ command: [ 'git', 'rev-parse', '--short', 'HEAD', ],
++ replace_string: '@GIMP_GIT_VERSION_ABBREV@',
++ fallback: '',
++)
++gitversion_h = vcs_tag(
++ input : gitversion_h2,
++ output: 'git-version.h',
++ command: [ 'git', 'log', '-n1', '--date=format:%Y', '--pretty=%cd', ],
++ replace_string: '@GIMP_GIT_LAST_COMMIT_YEAR@',
++ fallback: '',
++)
++
+################################################################################
+# Subdirs
+subdir('build/windows')
+
+# Tools (need libgimpbase now)
+subdir('libgimpbase')
+subdir('tools')
+
+# Translations
+subdir('po')
+subdir('po-libgimp')
+subdir('po-plug-ins')
+subdir('po-python')
+subdir('po-script-fu')
+subdir('po-tags')
+subdir('po-tips')
+# subdir('po-windows-installer')
+
+# Data / Desktop / xml files
+subdir('cursors')
+subdir('data')
+subdir('desktop')
+subdir('etc')
+subdir('icons')
+subdir('m4macros')
+subdir('menus')
+subdir('themes')
+
+# Libraries (order here is important!)
+subdir('libgimpcolor')
+subdir('libgimpmath')
+subdir('libgimpconfig')
+subdir('libgimpmodule')
+subdir('libgimpthumb')
+subdir('libgimpwidgets')
+subdir('libgimp')
+
+# Executables, plugins
+subdir('modules')
+subdir('plug-ins')
+subdir('app')
+
+subdir('pdb')
+
+# subdir('build/windows/installer')
+# subdir('po-windows-installer')
+
+# Docs
+subdir('devel-docs')
+subdir('docs')
+
+
- # configure_file(
- # input : 'INSTALL.in',
- # output: 'INSTALL',
- # configuration: conf
- # )
-
- configure_file(
- output: 'config.h',
- configuration: conf
- )
-
-
+pkgconfig.generate(filebase: 'gimp-' + api_version,
+ name: prettyname,
+ description: 'GIMP Library',
+ version: gimp_version,
+ requires: [
+ 'gdk-pixbuf-2.0 ' + gdk_pixbuf_minver,
+ 'cairo ' + cairo_minver,
+ 'gegl-0.3 ' + gegl_minver,
+ ],
+ libraries: [
+ '-L${libdir}',
+ '-lgimp-' + api_version,
+ '-lgimpmath-' + api_version,
+ '-lgimpconfig-' + api_version,
+ '-lgimpcolor-' + api_version,
+ '-lgimpbase-' + api_version,
+ ],
+ subdirs: [
+ gimp_api_name,
+ ],
+ variables: [
+ 'datarootdir=' +'${prefix}/'+ get_option('datadir'),
+ 'gimpdatadir=' +'${prefix}/'+ gimpdatadir,
+ 'gimplibdir=' +'${prefix}/'+ gimpplugindir,
+ 'gimpsysconfdir=' + gimpsysconfdir,
+ 'gimplocaledir=' +'${prefix}/'+ localedir,
+ ],
+)
+pkgconfig.generate(filebase: 'gimpthumb-' + api_version,
+ name: 'GIMP Thumb',
+ description: 'GIMP Thumbnail Library',
+ version: gimp_version,
+ requires: [
+ 'gdk-pixbuf-2.0 ' + gdk_pixbuf_minver,
+ ],
+ libraries: [
+ '-L${libdir}',
+ '-lgimpthumb-' + api_version,
+ ],
+ subdirs: [
+ gimp_api_name,
+ ],
+)
+pkgconfig.generate(filebase: 'gimpui-' + api_version,
+ name: 'GIMP UI',
+ description: 'GIMP User Interface Library',
+ version: gimp_version,
+ requires: [
+ 'gimp-' + api_version + ' >= ' + app_version,
+ 'gtk+-2.0 ' + gtk2_minver,
+ ],
+ libraries: [
+ '-L${libdir}',
+ '-lgimpui-' + api_version,
+ '-lgimpwidgets-' + api_version,
+ '-lgimpmodule-' + api_version,
+ ],
+ subdirs: [
+ gimp_api_name,
+ ],
+)
+
+
+# Print a summary of features enabled/disabled:
+
+message('''
+Extra Binaries:
+ gimp-console: @0@'''.format(enable_console_bin) +'''
+
+Optional Features:
+ Language selection: @0@'''.format(isocodes.found()) +'''
+ Vector icons: @0@'''.format(have_vector_icons) +'''
+ Dr. Mingw (Win32): @0@'''.format(have_drmingw) +'''
+
+Optional Plug-Ins:
+ Ascii Art: @0@'''.format(libaa.found()) +'''
+ Ghostscript: @0@'''.format(ghostscript.found()) +'''
+ Help Browser: @0@'''.format(webkit.found()) +'''
+ JPEG 2000: @0@'''.format(jasper.found()) +'''
+ MNG: @0@'''.format(libmng.found()) +'''
+ OpenEXR: @0@'''.format(openexr.found()) +'''
+ WebP: @0@'''.format(webp.found()) +'''
+ PDF (export): @0@'''.format(cairopdf.found()) +'''
+ Print: @0@'''.format(have_print) +'''
+ Python 2: @0@'''.format(have_python) +'''
+ Script-Fu: @0@'''.format(have_scriptfu) +'''
+ TWAIN (Win32): @0@'''.format(platform_win32) +'''
+ Webpage: @0@'''.format(webkit.found()) +'''
+ WMF: @0@'''.format(wmf.found()) +'''
+ X11 Mouse Cursor: @0@'''.format(xmc.found()) +'''
+ XPM: @0@'''.format(libxpm.found()) +'''
+ Email: @0@'''.format(have_email) +'''
+
+Optional Modules:
+ ALSA (MIDI Input): @0@'''.format(alsa.found()) +'''
+ Linux Input: @0@'''.format(have_linuxinput) +''' (GUdev support: @0@'''.format(gudev.found())
+''')
+ DirectInput (Win32): @0@'''.format(have_directXinput) +'''
+
+Tests:
+ Use xvfb-run @0@'''.format(xvfb_run.found()) +'''
+ Test appdata @0@'''.format(appstream_util.found()) +'''
+'''
+)
+
+
+# Miscelaneous targets
+
+if xsltproc.found()
+ custom_target('AUTHORS',
+ input : [ 'authors.xsl', 'authors.xml', ],
+ output: 'AUTHORS',
+ command: [
+ xsltproc.path(),
+ '-o', '@OUTPUT@',
+ '@INPUT@',
+ ],
+ build_by_default: false,
+ )
+ custom_target('authors.md',
+ input : [ 'authors4gimp-web.xsl', 'authors.xml', ],
+ output: 'authors.md',
+ command: [
+ xsltproc.path(),
+ '--stringparam', 'today', '`date --iso-8601=seconds`',
+ '-o', '@OUTPUT@',
+ '@INPUT@',
+ ],
+ build_by_default: false,
+ )
+endif
+
+if xmllint.found()
+ custom_target('validate-authors',
+ input : [ 'authors.xml', ],
+ output: [ 'validate-authors', ],
+ command: [
+ xmllint.path(),
+ '--noout',
+ '--valid', '@INPUT@',
+ ],
+ build_by_default: false,
+ )
+endif
+
+# TODO this python script is waiting for autotools directory/files structure
+custom_target('check-defs',
+ input : [ ],
+ output: [ 'check-defs', ],
+ command: [
+ python2.path(),
+ join_paths(meson.source_root(), 'tools','defcheck.py'),
+ meson.source_root(),
+ ],
+ build_by_default: false,
+)
+
+
+custom_target('Changelog',
+ input : [ ],
+ output: [ 'Changelog', ],
+ command: [
+ join_paths(meson.source_root(), 'tools','generate_changelog.sh'),
+ meson.source_root(),
+ '@OUTPUT@'
+ ],
+ build_by_default: false,
+)
diff --cc tools/meson.build
index 9ec481f,0000000..2502fcf
mode 100644,000000..100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@@ -1,45 -1,0 +1,65 @@@
+
+if platform_win32
- gimp_debug_resume = executable('gimp-debug-resume', 'gimp-debug-resume.c')
++ gimp_debug_resume = executable('gimp-debug-resume',
++ 'gimp-debug-resume.c',
++ )
+endif
+
+
- gimptool = executable('gimptool-2.0',
++gimptool = executable('gimptool-' + api_version,
+ 'gimptool.c',
-
+ include_directories: rootInclude,
+ dependencies: [
+ gtk2,
+ ],
+ link_with: [
+ libgimpbase,
+ ],
+ install: true,
+)
+
+
++gimp_debug = executable('gimpdebug-' + api_version,
++ [
++ '../app/gimp-version.c',
++ '../app/gimp-version.h',
++ '../app/widgets/gimpcriticaldialog.c',
++ 'gimpdebug.c',
++ ],
++ include_directories: [
++ rootInclude,
++ appInclude,
++ ],
++ dependencies: [
++ fontconfig,
++ gegl,
++ gio,
++ gtk2,
++ ],
++)
++
+executable('kernelgen',
+ 'kernelgen.c',
+ include_directories: rootInclude,
+ install: false,
+)
+
+executable('test-clipboard',
+ 'test-clipboard.c',
+ include_directories: rootInclude,
+ dependencies: [
+ gtk2,
+ ],
+ install: false,
+)
+
+if have_vector_icons
+ invert_svg = generator(
+ executable('invert-svg',
+ 'invert-svg.c',
+ dependencies: gio,
+ ),
+ output: '@BASENAME@',
+ arguments: [ '@INPUT@', '@OUTPUT@' ],
+ )
+endif
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]