Message ID | 20250328004446.472090-1-f_l_k@t-online.de |
---|---|
State | Accepted |
Headers | show |
Series | [meta-gnome,PATCHv7] gimp: update 2.10.38 - 3.0.2 | expand |
Next failure it on musl it looks for backtrace API see http://0x0.st/8e_L.24457 It should perhaps link with libexecinfo On Thu, Mar 27, 2025 at 5:44 PM Markus Volk <f_l_k@t-online.de> wrote: > > At long last, the first release of GIMP 3.0 is here! This is the end result of seven years of hard work > by volunteer developers, designers, artists, and community members (for reference, GIMP 2.10 > was first published in 2018 and the initial development version of GIMP 3.0 was released in 2020). > With GIMP 3.0 you can do more than ever before, more easily, more quickly! > > Highlights > > - Need to tweak a filter you applied hours ago? New in GIMP 3.0 is non-destructive editing for most commonly-used filters. See the changes in real time with on-canvas preview. > - Exchange files with more applications, including BC7 DDS files as well as better PSD export and many new formats. > - Don’t know how big to make your drawing? Simply set your paint tool to expand layers automatically as needed. > - Making pro-quality text got easier, too. Style your text, apply outlines, shadows, bevels, and more, and you can still edit your text, change font and size, and even tweak the style settings. > - Organizing your layers has become much easier with the ability to select multiple items at once, move them or transform them all together! > - Color Management was again improved, as our long-term project to make GIMP an advanced image editor for all usages. > - Updated graphical toolkit (GTK3) for modern desktop usage. > - New Wilber logo! > > https://gitlab.gnome.org/GNOME/gimp/-/blob/GIMP_3_0_0/NEWS?ref_type=tags > > Signed-off-by: Markus Volk <f_l_k@t-online.de> > Signed-off-by: Khem Raj <raj.khem@gmail.com> > --- > ...irst-line-of-compiler-version-string.patch | 30 ---- > ...f-load-fix-mismatching-variable-type.patch | 24 ---- > .../0001-gimp-cross-compile-fix-for-bz2.patch | 30 ++++ > ...1-gimptool-allow-default-CC-override.patch | 85 ----------- > ...dd-build-time-library-paths-to-LD_LI.patch | 34 ----- > .../0001-meson.build-dont-check-for-lgi.patch | 35 +++++ > ...meson.build-require-iso-codes-native.patch | 34 +++++ > ...001-metadata-shut-up-a-weird-warning.patch | 22 --- > ...0002-meson.build-reproducibility-fix.patch | 56 ++++++++ > meta-gnome/recipes-gimp/gimp/gimp_2.10.38.bb | 101 -------------- > meta-gnome/recipes-gimp/gimp/gimp_3.0.2.bb | 132 ++++++++++++++++++ > 11 files changed, 287 insertions(+), 296 deletions(-) > delete mode 100644 meta-gnome/recipes-gimp/gimp/gimp/0001-configure-Keep-first-line-of-compiler-version-string.patch > delete mode 100644 meta-gnome/recipes-gimp/gimp/gimp/0001-file-tiff-load-fix-mismatching-variable-type.patch > create mode 100644 meta-gnome/recipes-gimp/gimp/gimp/0001-gimp-cross-compile-fix-for-bz2.patch > delete mode 100644 meta-gnome/recipes-gimp/gimp/gimp/0001-gimptool-allow-default-CC-override.patch > delete mode 100644 meta-gnome/recipes-gimp/gimp/gimp/0001-libtool-Do-not-add-build-time-library-paths-to-LD_LI.patch > create mode 100644 meta-gnome/recipes-gimp/gimp/gimp/0001-meson.build-dont-check-for-lgi.patch > create mode 100644 meta-gnome/recipes-gimp/gimp/gimp/0001-meson.build-require-iso-codes-native.patch > delete mode 100644 meta-gnome/recipes-gimp/gimp/gimp/0001-metadata-shut-up-a-weird-warning.patch > create mode 100644 meta-gnome/recipes-gimp/gimp/gimp/0002-meson.build-reproducibility-fix.patch > delete mode 100644 meta-gnome/recipes-gimp/gimp/gimp_2.10.38.bb > create mode 100644 meta-gnome/recipes-gimp/gimp/gimp_3.0.2.bb > > diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-configure-Keep-first-line-of-compiler-version-string.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-configure-Keep-first-line-of-compiler-version-string.patch > deleted file mode 100644 > index 618b4cc7a7..0000000000 > --- a/meta-gnome/recipes-gimp/gimp/gimp/0001-configure-Keep-first-line-of-compiler-version-string.patch > +++ /dev/null > @@ -1,30 +0,0 @@ > -From 5711ccfab40e304ced7f5be39a4083e3fcecff91 Mon Sep 17 00:00:00 2001 > -From: Khem Raj <raj.khem@gmail.com> > -Date: Wed, 24 May 2023 22:22:41 -0700 > -Subject: [PATCH] configure: Keep first line of compiler version string > - > -Full output of cc -v may contain additional information which could > -contain build path information, which is unnessasary > - > -Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gimp/-/merge_requests/926] > -Signed-off-by: Khem Raj <raj.khem@gmail.com> > ---- > - configure.ac | 2 +- > - 1 file changed, 1 insertion(+), 1 deletion(-) > - > -diff --git a/configure.ac b/configure.ac > -index c25415d..68707a0 100644 > ---- a/configure.ac > -+++ b/configure.ac > -@@ -599,7 +599,7 @@ fi > - for CC_VERSION_OPT in $CC_VERSION_OPTS; do > - # We run $CC, and escape and format its output, in a single step, > - # since some shells expand escape sequences in "echo" arguments. > -- CC_VERSION="`$CC $CC_VERSION_OPT 2>&1 | sed -e 's/\\\\/\\\\\\\\\\\\\\\\/g;s/^/\\\\t/;s/$/\\\\n/' | tr -d '\n'`" > -+ CC_VERSION="`$CC $CC_VERSION_OPT 2>&1 | head -1 | sed -e 's/\\\\/\\\\\\\\\\\\\\\\/g;s/^/\\\\t/;s/$/\\\\n/' | tr -d '\n'`" > - if test $? -eq 0; then > - break > - fi > --- > -2.40.1 > - > diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-file-tiff-load-fix-mismatching-variable-type.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-file-tiff-load-fix-mismatching-variable-type.patch > deleted file mode 100644 > index 13b3dda144..0000000000 > --- a/meta-gnome/recipes-gimp/gimp/gimp/0001-file-tiff-load-fix-mismatching-variable-type.patch > +++ /dev/null > @@ -1,24 +0,0 @@ > -From a2458f1528e5733574bb26ff5452b1329116e6db Mon Sep 17 00:00:00 2001 > -From: Simon Budig <simon@budig.de> > -Date: Sat, 20 May 2023 18:40:41 +0200 > -Subject: [PATCH] file-tiff-load: fix mismatching variable type > - > -Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gimp/-/commit/a2458f1528e5733574bb26ff5452b1329116e6db] > -Signed-off-by: Khem Raj <raj.khem@gmai.com> > ---- > - plug-ins/file-tiff/file-tiff-load.c | 6 +++--- > - 1 file changed, 3 insertions(+), 3 deletions(-) > - > ---- a/plug-ins/file-tiff/file-tiff-load.c > -+++ b/plug-ins/file-tiff/file-tiff-load.c > -@@ -1301,8 +1301,8 @@ load_image (GFile *file, > - > - /* any resolution info in the file? */ > - { > -- gfloat xres = 72.0; > -- gfloat yres = 72.0; > -+ gdouble xres = 72.0; > -+ gdouble yres = 72.0; > - gushort read_unit; > - GimpUnit unit = GIMP_UNIT_PIXEL; /* invalid unit */ > - > diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-gimp-cross-compile-fix-for-bz2.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-gimp-cross-compile-fix-for-bz2.patch > new file mode 100644 > index 0000000000..721225c8b3 > --- /dev/null > +++ b/meta-gnome/recipes-gimp/gimp/gimp/0001-gimp-cross-compile-fix-for-bz2.patch > @@ -0,0 +1,30 @@ > +From a7e40e19d17404cf5ec4135fc1becd5a90f5e1e1 Mon Sep 17 00:00:00 2001 > +From: Markus Volk <f_l_k@t-online.de> > +Date: Wed, 25 Dec 2024 07:27:04 +0100 > +Subject: [PATCH] gimp: cross-compile fix for bz2 > + > +autotools bzip2 build does not create pkgconfig files so looking for the dependency fails. > + > +Signed-off-by: Markus Volk <f_l_k@t-online.de> > + > +Upstream-Status: Inappropriate [can probably be removed once bzip2 is built with meson or cmake] > +--- > + meson.build | 2 +- > + 1 file changed, 1 insertion(+), 1 deletion(-) > + > +diff --git a/meson.build b/meson.build > +index 4e48f8c64c..d5dce47015 100644 > +--- a/meson.build > ++++ b/meson.build > +@@ -765,7 +765,7 @@ zlib = dependency('zlib') > + MIMEtypes += 'image/x-psp' > + > + # Compiler-provided headers can't be found in crossroads environment > +-if not meson.is_cross_build() > ++if true > + bz2 = cc.find_library('bz2') > + else > + bz2 = dependency('bzip2') > +-- > +2.47.1 > + > diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-gimptool-allow-default-CC-override.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-gimptool-allow-default-CC-override.patch > deleted file mode 100644 > index b04a16cec7..0000000000 > --- a/meta-gnome/recipes-gimp/gimp/gimp/0001-gimptool-allow-default-CC-override.patch > +++ /dev/null > @@ -1,85 +0,0 @@ > -From 7e5b986cb7797a6535fe2471b9a5fb7c00821f51 Mon Sep 17 00:00:00 2001 > -From: Yoann Congal <yoann.congal@smile.fr> > -Date: Sun, 13 Oct 2024 01:00:10 +0200 > -Subject: [PATCH] gimptool: allow default CC override > - > -From: Yoann Congal <yoann.congal@smile.fr> > - > -In OE, CC contains sysroot path. Storing CC in binary then leads to > -non-reproducibility. > - > -This commit add a new configure option "--with-default-cc='cmd'" for > -force the CC stored in gimptool to a reproducible value. > - > -Upstream-Status: Inappropriate [does not apply on master (upstream has moved to meson)] > -Signed-off-by: Yoann Congal <yoann.congal@smile.fr> > ---- > - app-tools/Makefile.am | 2 +- > - configure.ac | 13 +++++++++++++ > - tools/Makefile.am | 2 +- > - tools/gimptool.c | 2 +- > - 4 files changed, 16 insertions(+), 3 deletions(-) > - > -diff --git a/app-tools/Makefile.am b/app-tools/Makefile.am > -index a7cd4ce..81a3a00 100644 > ---- a/app-tools/Makefile.am > -+++ b/app-tools/Makefile.am > -@@ -67,7 +67,7 @@ AM_CPPFLAGS = \ > - -DMANDIR=\""$(mandir)"\" \ > - -DGIMPPLUGINDIR=\""$(gimpplugindir)"\" \ > - -DGIMPDATADIR=\""$(gimpdatadir)"\" \ > -- -DCC=\""$(CC)"\" \ > -+ -DDEFAULT_CC=\""@DEFAULT_CC@"\" \ > - -DGIMPDIR=\""$(gimpdir)"\" \ > - -DGIMP_PLUGIN_VERSION=\""$(GIMP_PLUGIN_VERSION)"\" \ > - -I$(top_srcdir) \ > -diff --git a/configure.ac b/configure.ac > -index a88b7cc..d90b6db 100644 > ---- a/configure.ac > -+++ b/configure.ac > -@@ -2457,6 +2457,19 @@ fi > - AM_CONDITIONAL(DESKTOP_DATADIR, test "x$with_desktop_dir" != xno) > - AC_SUBST(DESKTOP_DATADIR) > - > -+###################### > -+# Determine default CC > -+###################### > -+ > -+AC_ARG_WITH(default-cc, [ --with-default-cc="cmd" default CC to print in gimptool (default=CC)]) > -+ > -+if test "x$with_default_cc" != x; then > -+ DEFAULT_CC=$with_default_cc > -+else > -+ DEFAULT_CC=CC > -+fi > -+ > -+AC_SUBST(DEFAULT_CC) > - > - ##################### > - # Check for XML tools > -diff --git a/tools/Makefile.am b/tools/Makefile.am > -index 420b9b1..ccabde8 100644 > ---- a/tools/Makefile.am > -+++ b/tools/Makefile.am > -@@ -87,7 +87,7 @@ AM_CPPFLAGS = \ > - -DMANDIR=\""$(mandir)"\" \ > - -DGIMPPLUGINDIR=\""$(gimpplugindir)"\" \ > - -DGIMPDATADIR=\""$(gimpdatadir)"\" \ > -- -DCC=\""$(CC)"\" \ > -+ -DDEFAULT_CC=\""@DEFAULT_CC@"\" \ > - -DGIMPDIR=\""$(gimpdir)"\" \ > - -DGIMP_PLUGIN_VERSION=\""$(GIMP_PLUGIN_VERSION)"\" \ > - -I$(top_srcdir) \ > -diff --git a/tools/gimptool.c b/tools/gimptool.c > -index 21fc043..bbf3fa5 100644 > ---- a/tools/gimptool.c > -+++ b/tools/gimptool.c > -@@ -280,7 +280,7 @@ find_out_env_flags (void) > - else if (msvc_syntax) > - env_cc = "cl -MD"; > - else > -- env_cc = CC; > -+ env_cc = DEFAULT_CC; > - > - if (g_ascii_strncasecmp (env_cc, "cl", 2) == 0 && > - g_ascii_strncasecmp (env_cc, "clang", 5) != 0) > diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-libtool-Do-not-add-build-time-library-paths-to-LD_LI.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-libtool-Do-not-add-build-time-library-paths-to-LD_LI.patch > deleted file mode 100644 > index cec0055284..0000000000 > --- a/meta-gnome/recipes-gimp/gimp/gimp/0001-libtool-Do-not-add-build-time-library-paths-to-LD_LI.patch > +++ /dev/null > @@ -1,34 +0,0 @@ > -From c720df90dfe3a3e92e34bfb36a04cc792064a501 Mon Sep 17 00:00:00 2001 > -From: Khem Raj <raj.khem@gmail.com> > -Date: Wed, 24 May 2023 22:39:02 -0700 > -Subject: [PATCH] libtool: Do not add build time library paths to > - LD_LIBRARY_PATH > - > -This does not serve much purpose on cross builds as it will add build > -time paths which are only useful when trying to run these tools from > -build area but when they are cross built this is not possible to run > -them like this. > - > -Upstream-Status: Inappropriate [Cross-compile specific] > - > -Signed-off-by: Khem Raj <raj.khem@gmail.com> > ---- > - ltmain.sh | 2 +- > - 1 file changed, 1 insertion(+), 1 deletion(-) > - > -diff --git a/ltmain.sh b/ltmain.sh > -index 134902c..068d74a 100644 > ---- a/ltmain.sh > -+++ b/ltmain.sh > -@@ -5748,7 +5748,7 @@ func_exec_program () > - if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then > - $ECHO "\ > - # Add our own library path to $shlibpath_var > -- $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" > -+ $shlibpath_var=\"$shlibpath_var\" > - > - # Some systems cannot cope with colon-terminated $shlibpath_var > - # The second colon is a workaround for a bug in BeOS R4 sed > --- > -2.40.1 > - > diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-meson.build-dont-check-for-lgi.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-meson.build-dont-check-for-lgi.patch > new file mode 100644 > index 0000000000..63a9159a43 > --- /dev/null > +++ b/meta-gnome/recipes-gimp/gimp/gimp/0001-meson.build-dont-check-for-lgi.patch > @@ -0,0 +1,35 @@ > +From e56a6330f1e29e489601ea3e7cb31bfd2ebb787a Mon Sep 17 00:00:00 2001 > +From: Markus Volk <f_l_k@t-online.de> > +Date: Thu, 27 Mar 2025 21:02:22 +0100 > +Subject: [PATCH] meson.build: dont check for lgi > + > +Checking if host can run lgi is pointless for cross-compile > +Set to be always true because we ensure to install lgi via PACKAGECONFIG > + > +Signed-off-by: Markus Volk <f_l_k@t-online.de> > + > +Upstream-Status: Inappropriate [oe-specific] > +--- > + meson.build | 6 +----- > + 1 file changed, 1 insertion(+), 5 deletions(-) > + > +diff --git a/meson.build b/meson.build > +index c91e8fc97d..efbc2d8175 100644 > +--- a/meson.build > ++++ b/meson.build > +@@ -1235,11 +1235,7 @@ if have_lua > + endif > + > + if is_supported_lua > +- have_lua_lgi = run_command(lua, '-e', > +- ''' > +- local lgi = require 'lgi' > +- ''', > +- check: false).returncode() == 0 > ++ have_lua_lgi = true > + endif > + > + if have_lua_lgi > +-- > +2.49.0 > + > diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-meson.build-require-iso-codes-native.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-meson.build-require-iso-codes-native.patch > new file mode 100644 > index 0000000000..c91b25a914 > --- /dev/null > +++ b/meta-gnome/recipes-gimp/gimp/gimp/0001-meson.build-require-iso-codes-native.patch > @@ -0,0 +1,34 @@ > +From 8ccd12d6ec3330e9646ae9db6fd491226d516dc3 Mon Sep 17 00:00:00 2001 > +From: Markus Volk <f_l_k@t-online.de> > +Date: Fri, 28 Mar 2025 01:33:00 +0100 > +Subject: [PATCH] meson.build: require iso-codes-native > + > +This fixes: > +FAILED: app/widgets/gimplanguagestore-data.h > +/mnt/b/yoe/master/build/tmp/work/core2-64-yoe-linux-musl/gimp/3.0.2/build/tools/gen-languages > +gimp_language_store_parser_init: 0.006277 seconds > +ERROR: parse_iso_codes: error parsing '/usr/share/xml/iso-codes/iso_639_3.xml': No such file or directory > + > +Upstream-Status: Pending > + > +Signed-off-by: Markus Volk <f_l_k@t-online.de> > +--- > + meson.build | 2 +- > + 1 file changed, 1 insertion(+), 1 deletion(-) > + > +diff --git a/meson.build b/meson.build > +index efbc2d8175..fd050f4d3c 100644 > +--- a/meson.build > ++++ b/meson.build > +@@ -1135,7 +1135,7 @@ endif > + ################################################################################ > + # ISO codes > + > +-isocodes = dependency('iso-codes', required: false) > ++isocodes = dependency('iso-codes', required: false, native: true) > + if isocodes.found() > + isocodes_prefix = isocodes.get_variable(pkgconfig: 'prefix') > + isocodes_location = isocodes_prefix / 'share' / 'xml' / 'iso-codes' > +-- > +2.49.0 > + > diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-metadata-shut-up-a-weird-warning.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-metadata-shut-up-a-weird-warning.patch > deleted file mode 100644 > index 4f04ac8250..0000000000 > --- a/meta-gnome/recipes-gimp/gimp/gimp/0001-metadata-shut-up-a-weird-warning.patch > +++ /dev/null > @@ -1,22 +0,0 @@ > -From 51311f913d9f417d121f59b83d560c7b4b853d1c Mon Sep 17 00:00:00 2001 > -From: Simon Budig <simon@budig.de> > -Date: Sat, 20 May 2023 22:25:40 +0200 > -Subject: [PATCH] metadata: shut up a weird warning > - > -Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gimp/-/commit/51311f913d9f417d121f59b83d560c7b4b853d1c] > -Signed-off-by: Khem Raj <raj.khem@gmail.com> > ---- > - plug-ins/metadata/metadata-editor.c | 2 +- > - 1 file changed, 1 insertion(+), 1 deletion(-) > - > ---- a/plug-ins/metadata/metadata-editor.c > -+++ b/plug-ins/metadata/metadata-editor.c > -@@ -2140,7 +2140,7 @@ metadata_dialog_editor_set_metadata (GEx > - } > - else > - { > -- if (! g_strv_contains (values, equiv_values[evi])) > -+ if (! g_strv_contains ((const gchar * const *) values, equiv_values[evi])) > - { > - gchar *tmpvalue; > - > diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0002-meson.build-reproducibility-fix.patch b/meta-gnome/recipes-gimp/gimp/gimp/0002-meson.build-reproducibility-fix.patch > new file mode 100644 > index 0000000000..532715d588 > --- /dev/null > +++ b/meta-gnome/recipes-gimp/gimp/gimp/0002-meson.build-reproducibility-fix.patch > @@ -0,0 +1,56 @@ > +From bf19c5687703769e406a8086036d4ed6421c33cb Mon Sep 17 00:00:00 2001 > +From: Markus Volk <f_l_k@t-online.de> > +Date: Mon, 13 Jan 2025 10:04:33 +0100 > +Subject: [PATCH] meson.build: reproducibility fix > + > +Signed-off-by: Markus Volk <f_l_k@t-online.de> > + > +Upstream-Status: Inappropriate [oe-specific] > +--- > + meson.build | 28 ++++++++++++++-------------- > + 1 file changed, 14 insertions(+), 14 deletions(-) > + > +diff --git a/meson.build b/meson.build > +index 97cd621780..e47180db87 100644 > +--- a/meson.build > ++++ b/meson.build > +@@ -1599,23 +1599,23 @@ conf.set('HAVE_FUNC_ATTRIBUTE_DESTRUCTOR', > + conf.set_quoted('CC', cc.get_id()) > + > + cc_version='' > +-if cc.get_id() == 'gcc' or cc.get_id() == 'clang' > +- cc_cmd = run_command(cc, '-v', check: false) > ++#if cc.get_id() == 'gcc' or cc.get_id() == 'clang' > ++# cc_cmd = run_command(cc, '-v', check: false) > + # Note: the call might actually fail when using ccache. > + # See: https://github.com/mesonbuild/meson/issues/6174 > +- if cc_cmd.returncode() == 0 > +- cc_version = cc_cmd.stdout() + cc_cmd.stderr() > +- endif > +-else > ++# if cc_cmd.returncode() == 0 > ++# cc_version = cc_cmd.stdout() + cc_cmd.stderr() > ++# endif > ++#else > + # Various compilers have various options. Try most common ones. This > + # list of options comes from autotools checks. > +- foreach arg : [ '--version', '-v', '-V', '-qversion' ] > +- cc_cmd = run_command(cc, arg, check: false) > +- if cc_cmd.returncode() == 0 > +- cc_version = cc_cmd.stdout() > +- endif > +- endforeach > +-endif > ++# foreach arg : [ '--version', '-v', '-V', '-qversion' ] > ++# cc_cmd = run_command(cc, arg, check: false) > ++# if cc_cmd.returncode() == 0 > ++# cc_version = cc_cmd.stdout() > ++# endif > ++# endforeach > ++#endif > + if cc_version == '' > + # We didn't manage to get a meaningful verbose version from the > + # compiler. Just save its name and version. > +-- > +2.47.1 > + > diff --git a/meta-gnome/recipes-gimp/gimp/gimp_2.10.38.bb b/meta-gnome/recipes-gimp/gimp/gimp_2.10.38.bb > deleted file mode 100644 > index 0272e05e96..0000000000 > --- a/meta-gnome/recipes-gimp/gimp/gimp_2.10.38.bb > +++ /dev/null > @@ -1,101 +0,0 @@ > -SUMMARY = "The GIMP is the GNU Image Manipulation Program" > -HOMEPAGE = "http://www.gimp.org" > -SECTION = "x11/graphics" > -LICENSE = "GPL-3.0-only" > -LIC_FILES_CHKSUM = "file://COPYING;md5=c678957b0c8e964aa6c70fd77641a71e" > - > -DEPENDS = " \ > - alsa-lib \ > - atk \ > - cairo \ > - fontconfig \ > - freetype \ > - gdk-pixbuf-native \ > - intltool-native \ > - libxslt-native \ > - gegl-native \ > - dbus-glib \ > - gtk+ \ > - babl \ > - gegl \ > - libmypaint \ > - mypaint-brushes-1.0 \ > - gexiv2 \ > - jpeg \ > - libmng \ > - libpng \ > - libexif \ > - tiff \ > - lcms \ > - poppler \ > - poppler-data \ > - jasper \ > - bzip2 \ > - libgudev \ > - libmng \ > - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libxmu libxpm', '', d)} \ > -" > -DEPENDS:append:libc-musl = " libexecinfo" > - > -GNOMEBASEBUILDCLASS = "autotools" > -inherit features_check gnomebase gtk-icon-cache gtk-doc mime-xdg > - > -REQUIRED_DISTRO_FEATURES = "x11" > - > -SHPV = "${@gnome_verdir("${PV}")}" > - > -SRC_URI = "https://download.gimp.org/pub/${BPN}/v${SHPV}/${BP}.tar.bz2 \ > - file://0001-configure-Keep-first-line-of-compiler-version-string.patch \ > - file://0001-libtool-Do-not-add-build-time-library-paths-to-LD_LI.patch \ > - file://0001-file-tiff-load-fix-mismatching-variable-type.patch \ > - file://0001-metadata-shut-up-a-weird-warning.patch \ > - file://0001-gimptool-allow-default-CC-override.patch \ > - " > -SRC_URI[sha256sum] = "50a845eec11c8831fe8661707950f5b8446e35f30edfb9acf98f85c1133f856e" > - > -EXTRA_OECONF = "--disable-python \ > - --without-webkit \ > - --disable-check-update \ > - --without-wmf" > - > -EXTRA_OECONF += "${@oe.utils.conditional('SITEINFO_BITS', '32', ' --disable-vector-icons', '', d)}" > - > -do_configure:append() { > - find ${B} -name Makefile | xargs sed -i s:'-I$(includedir)':'-I.':g > - find ${B} -name Makefile | xargs sed -i s:'-I/usr/include':'-I${STAGING_INCDIR}':g > -} > - > -do_compile:prepend() { > - # Let native babl/gegl find their plugins > - export BABL_PATH=`find ${STAGING_LIBDIR_NATIVE} -maxdepth 1 -name 'babl-*'` > - export GEGL_PATH=`find ${STAGING_LIBDIR_NATIVE} -maxdepth 1 -name 'gegl-*'` > -} > - > -FILES:${PN} += "${datadir}/metainfo" > - > -RDEPENDS:${PN} += "mypaint-brushes-1.0" > - > - > -# gimptool > - > -# gimptool needs a CC definition, use current CC without sysroot > -python __anonymous() { > - import shlex > - CC_WITHOUT_SYSROOT = shlex.join(filter(lambda x: not x.startswith("--sysroot="), shlex.split(d.getVar("CC")))) > - d.setVar("CC_WITHOUT_SYSROOT", CC_WITHOUT_SYSROOT) > -} > -EXTRA_OECONF += "--with-default-cc='${CC_WITHOUT_SYSROOT}'" > - > -# Split gimptool in its own package > -PACKAGE_BEFORE_PN += "${PN}-gimptool" > -FILES:${PN}-gimptool += "${bindir}/gimptool-2.0" > - > -# gimptool depends on gimp .pc file being installed and tools to build the plugin. > -RDEPENDS:${PN}-gimptool += "${PN}-dev packagegroup-core-buildessential" > -INSANE_SKIP:${PN}-gimptool += "dev-deps" > - > - > -CVE_STATUS[CVE-2007-3741] = "not-applicable-platform: This only applies for Mandriva Linux" > -CVE_STATUS[CVE-2009-0581] = "cpe-incorrect: The current version (2.10.38) is not affected." > -CVE_STATUS[CVE-2009-0723] = "cpe-incorrect: The current version (2.10.38) is not affected." > -CVE_STATUS[CVE-2009-0733] = "cpe-incorrect: The current version (2.10.38) is not affected." > diff --git a/meta-gnome/recipes-gimp/gimp/gimp_3.0.2.bb b/meta-gnome/recipes-gimp/gimp/gimp_3.0.2.bb > new file mode 100644 > index 0000000000..2018ea04c4 > --- /dev/null > +++ b/meta-gnome/recipes-gimp/gimp/gimp_3.0.2.bb > @@ -0,0 +1,132 @@ > +SUMMARY = "The GIMP is the GNU Image Manipulation Program" > +HOMEPAGE = "http://www.gimp.org" > +SECTION = "graphics" > +LICENSE = "GPL-3.0-only" > +LIC_FILES_CHKSUM = "file://COPYING;md5=c678957b0c8e964aa6c70fd77641a71e" > + > +DEPENDS = " \ > + appstream-glib \ > + atk \ > + babl \ > + bzip2 \ > + bison-native \ > + cairo \ > + fontconfig \ > + freetype \ > + gdk-pixbuf-native \ > + gegl \ > + gexiv2 \ > + glib-2.0 \ > + glib-2.0-native \ > + gtk+3 \ > + harfbuzz \ > + iso-codes-native \ > + jpeg \ > + json-glib \ > + lcms \ > + libarchive \ > + libexif \ > + libmypaint \ > + libpng \ > + librsvg \ > + librsvg-native \ > + libxmu \ > + libxslt-native \ > + mypaint-brushes-1.0 \ > + pango \ > + poppler \ > + poppler-data \ > + python3-pygobject-native \ > + tiff \ > + xz \ > + zlib \ > +" > + > +DEPENDS:append:libc-musl = " libexecinfo" > + > +inherit meson gtk-icon-cache mime-xdg pkgconfig gettext gobject-introspection vala > + > +GIR_MESON_OPTION = 'can-crosscompile-gir' > +VALA_MESON_OPTION = "vala" > +VALA_MESON_ENABLE_FLAG = "enabled" > +VALA_MESON_DISABLE_FLAG = "disabled" > +GIDOCGEN_MESON_OPTION = "gi-docgen" > +GIDOCGEN_MESON_ENABLE_FLAG = "enabled" > +GIDOCGEN_MESON_DISABLE_FLAG = "disabled" > + > +SRC_URI = "https://download.gimp.org/gimp/v${@oe.utils.trim_version('${PV}', 2)}/gimp-${PV}.tar.xz" > +SRC_URI += "file://0001-gimp-cross-compile-fix-for-bz2.patch" > +SRC_URI += "file://0002-meson.build-reproducibility-fix.patch" > +SRC_URI += "file://0001-meson.build-dont-check-for-lgi.patch" > +SRC_URI += "file://0001-meson.build-require-iso-codes-native.patch" > +SRC_URI[sha256sum] = "546ddc30cb2d0e79123c7fcb4d78211e1ee7a6aace91a6a0ad8cbcbf6ea571a2" > + > +PACKAGECONFIG[aa] = "-Daa=enabled,-Daa=disabled,aalib" > +PACKAGECONFIG[alsa] = "-Dalsa=enabled,-Dalsa=disabled,alsa-lib" > +PACKAGECONFIG[appdata-test] = "-Dappdata-test=enabled,-Dappdata-test=disabled,appstream-native" > +PACKAGECONFIG[cairo-pdf] = "-Dcairo-pdf=enabled,-Dcairo-pdf=disabled" > +PACKAGECONFIG[check-update] = "-Dcheck-update=yes,-Dcheck-update=no" > +PACKAGECONFIG[ghostscript] = "-Dghostscript=enabled,-Dghostscript=disabled,ghostscript,ghostscript" > +PACKAGECONFIG[gudev] = "-Dgudev=enabled,-Dgudev=disabled,libgudev" > +PACKAGECONFIG[heif] = "-Dheif=enabled,-Dheif=disabled,libheif" > +PACKAGECONFIG[javascript] = "-Djavascript=enabled,-Djavascript=disabled,,gjs" > +PACKAGECONFIG[jpeg2000] = "-Djpeg2000=enabled,-Djpeg2000=disabled,jasper" > +PACKAGECONFIG[jpeg-xl] = "-Djpeg-xl=enabled,-Djpeg-xl=disabled,libjxl" > +PACKAGECONFIG[libunwind] = "-Dlibunwind=true,-Dlibunwind=false,libunwind" > +PACKAGECONFIG[libbacktrace] = "-Dlibbacktrace=true,-Dlibbacktrace=false,libbacktrace" > +PACKAGECONFIG[lua] = "-Dlua=true,-Dlua=false,,luajit lua-lgi" > +PACKAGECONFIG[mng] = "-Dmng=enabled,-Dmng=disabled,libmng" > +PACKAGECONFIG[openmp] = "-Dopenmp=enabled,-Dopenmp=disabled,gcc-runtime" > +PACKAGECONFIG[vector-icons] = "-Dvector-icons=true,-Dvector-icons=false,librsvg shared-mime-info" > +PACKAGECONFIG[webp] = "-Dwebp=enabled,-Dwebp=disabled,libwebp" > +PACKAGECONFIG[xcursor] = "-Dxcursor=enabled,-Dxcursor=disabled,libxcursor" > +PACKAGECONFIG[x11] = "-Dxpm=enabled,-Dxpm=disabled,libxpm libxext libxfixes" > + > +PACKAGECONFIG ?= " \ > + alsa \ > + cairo-pdf \ > + ghostscript \ > + gudev \ > + javascript \ > + jpeg2000 \ > + jpeg-xl \ > + lua \ > + mng \ > + webp \ > + ${@oe.utils.conditional('SITEINFO_BITS', '32', '', 'vector-icons', d)} \ > + ${@bb.utils.contains('LICENSE_FLAGS_ACCEPTED', 'commercial', 'heif', '', d)} \ > + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcursor', '', d)} \ > +" > + > +PACKAGECONFIG:remove:riscv32 = "lua" > +PACKAGECONFIG:remove:riscv64 = "lua" > +PACKAGECONFIG:remove:powerpc64 = "lua" > +PACKAGECONFIG:remove:powerpc64le = "lua" > + > +EXTRA_OEMESON += " \ > + -Dshmem-type=posix \ > + -Dlinux-input=enabled \ > + --buildtype release \ > + --cross-file=${WORKDIR}/meson-${PN}.cross \ > +" > + > +do_write_config:append() { > + cat >${WORKDIR}/meson-${PN}.cross <<EOF > +[binaries] > +gjs = '${bindir}/gjs' > +luajit = '${bindir}/luajit' > +EOF > +} > + > +do_configure:append () { > + sed -i -e "s|build_by_default: true|build_by_default: false|" ${S}/gimp-data/images/meson.build > +} > + > +do_install:prepend() { > + sed -i -e "s|${B}||" ${B}/app/widgets/gimplanguagestore-data.h > + sed -i -e "s|${B}||" ${B}/plug-ins/file-bmp/huffman.h > +} > + > +FILES:${PN} += "${datadir}/metainfo" > + > +RDEPENDS:${PN} = "mypaint-brushes-1.0 glib-networking python3-pygobject" > -- > 2.49.0 >
diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-configure-Keep-first-line-of-compiler-version-string.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-configure-Keep-first-line-of-compiler-version-string.patch deleted file mode 100644 index 618b4cc7a7..0000000000 --- a/meta-gnome/recipes-gimp/gimp/gimp/0001-configure-Keep-first-line-of-compiler-version-string.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 5711ccfab40e304ced7f5be39a4083e3fcecff91 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Wed, 24 May 2023 22:22:41 -0700 -Subject: [PATCH] configure: Keep first line of compiler version string - -Full output of cc -v may contain additional information which could -contain build path information, which is unnessasary - -Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gimp/-/merge_requests/926] -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index c25415d..68707a0 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -599,7 +599,7 @@ fi - for CC_VERSION_OPT in $CC_VERSION_OPTS; do - # We run $CC, and escape and format its output, in a single step, - # since some shells expand escape sequences in "echo" arguments. -- CC_VERSION="`$CC $CC_VERSION_OPT 2>&1 | sed -e 's/\\\\/\\\\\\\\\\\\\\\\/g;s/^/\\\\t/;s/$/\\\\n/' | tr -d '\n'`" -+ CC_VERSION="`$CC $CC_VERSION_OPT 2>&1 | head -1 | sed -e 's/\\\\/\\\\\\\\\\\\\\\\/g;s/^/\\\\t/;s/$/\\\\n/' | tr -d '\n'`" - if test $? -eq 0; then - break - fi --- -2.40.1 - diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-file-tiff-load-fix-mismatching-variable-type.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-file-tiff-load-fix-mismatching-variable-type.patch deleted file mode 100644 index 13b3dda144..0000000000 --- a/meta-gnome/recipes-gimp/gimp/gimp/0001-file-tiff-load-fix-mismatching-variable-type.patch +++ /dev/null @@ -1,24 +0,0 @@ -From a2458f1528e5733574bb26ff5452b1329116e6db Mon Sep 17 00:00:00 2001 -From: Simon Budig <simon@budig.de> -Date: Sat, 20 May 2023 18:40:41 +0200 -Subject: [PATCH] file-tiff-load: fix mismatching variable type - -Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gimp/-/commit/a2458f1528e5733574bb26ff5452b1329116e6db] -Signed-off-by: Khem Raj <raj.khem@gmai.com> ---- - plug-ins/file-tiff/file-tiff-load.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - ---- a/plug-ins/file-tiff/file-tiff-load.c -+++ b/plug-ins/file-tiff/file-tiff-load.c -@@ -1301,8 +1301,8 @@ load_image (GFile *file, - - /* any resolution info in the file? */ - { -- gfloat xres = 72.0; -- gfloat yres = 72.0; -+ gdouble xres = 72.0; -+ gdouble yres = 72.0; - gushort read_unit; - GimpUnit unit = GIMP_UNIT_PIXEL; /* invalid unit */ - diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-gimp-cross-compile-fix-for-bz2.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-gimp-cross-compile-fix-for-bz2.patch new file mode 100644 index 0000000000..721225c8b3 --- /dev/null +++ b/meta-gnome/recipes-gimp/gimp/gimp/0001-gimp-cross-compile-fix-for-bz2.patch @@ -0,0 +1,30 @@ +From a7e40e19d17404cf5ec4135fc1becd5a90f5e1e1 Mon Sep 17 00:00:00 2001 +From: Markus Volk <f_l_k@t-online.de> +Date: Wed, 25 Dec 2024 07:27:04 +0100 +Subject: [PATCH] gimp: cross-compile fix for bz2 + +autotools bzip2 build does not create pkgconfig files so looking for the dependency fails. + +Signed-off-by: Markus Volk <f_l_k@t-online.de> + +Upstream-Status: Inappropriate [can probably be removed once bzip2 is built with meson or cmake] +--- + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 4e48f8c64c..d5dce47015 100644 +--- a/meson.build ++++ b/meson.build +@@ -765,7 +765,7 @@ zlib = dependency('zlib') + MIMEtypes += 'image/x-psp' + + # Compiler-provided headers can't be found in crossroads environment +-if not meson.is_cross_build() ++if true + bz2 = cc.find_library('bz2') + else + bz2 = dependency('bzip2') +-- +2.47.1 + diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-gimptool-allow-default-CC-override.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-gimptool-allow-default-CC-override.patch deleted file mode 100644 index b04a16cec7..0000000000 --- a/meta-gnome/recipes-gimp/gimp/gimp/0001-gimptool-allow-default-CC-override.patch +++ /dev/null @@ -1,85 +0,0 @@ -From 7e5b986cb7797a6535fe2471b9a5fb7c00821f51 Mon Sep 17 00:00:00 2001 -From: Yoann Congal <yoann.congal@smile.fr> -Date: Sun, 13 Oct 2024 01:00:10 +0200 -Subject: [PATCH] gimptool: allow default CC override - -From: Yoann Congal <yoann.congal@smile.fr> - -In OE, CC contains sysroot path. Storing CC in binary then leads to -non-reproducibility. - -This commit add a new configure option "--with-default-cc='cmd'" for -force the CC stored in gimptool to a reproducible value. - -Upstream-Status: Inappropriate [does not apply on master (upstream has moved to meson)] -Signed-off-by: Yoann Congal <yoann.congal@smile.fr> ---- - app-tools/Makefile.am | 2 +- - configure.ac | 13 +++++++++++++ - tools/Makefile.am | 2 +- - tools/gimptool.c | 2 +- - 4 files changed, 16 insertions(+), 3 deletions(-) - -diff --git a/app-tools/Makefile.am b/app-tools/Makefile.am -index a7cd4ce..81a3a00 100644 ---- a/app-tools/Makefile.am -+++ b/app-tools/Makefile.am -@@ -67,7 +67,7 @@ AM_CPPFLAGS = \ - -DMANDIR=\""$(mandir)"\" \ - -DGIMPPLUGINDIR=\""$(gimpplugindir)"\" \ - -DGIMPDATADIR=\""$(gimpdatadir)"\" \ -- -DCC=\""$(CC)"\" \ -+ -DDEFAULT_CC=\""@DEFAULT_CC@"\" \ - -DGIMPDIR=\""$(gimpdir)"\" \ - -DGIMP_PLUGIN_VERSION=\""$(GIMP_PLUGIN_VERSION)"\" \ - -I$(top_srcdir) \ -diff --git a/configure.ac b/configure.ac -index a88b7cc..d90b6db 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -2457,6 +2457,19 @@ fi - AM_CONDITIONAL(DESKTOP_DATADIR, test "x$with_desktop_dir" != xno) - AC_SUBST(DESKTOP_DATADIR) - -+###################### -+# Determine default CC -+###################### -+ -+AC_ARG_WITH(default-cc, [ --with-default-cc="cmd" default CC to print in gimptool (default=CC)]) -+ -+if test "x$with_default_cc" != x; then -+ DEFAULT_CC=$with_default_cc -+else -+ DEFAULT_CC=CC -+fi -+ -+AC_SUBST(DEFAULT_CC) - - ##################### - # Check for XML tools -diff --git a/tools/Makefile.am b/tools/Makefile.am -index 420b9b1..ccabde8 100644 ---- a/tools/Makefile.am -+++ b/tools/Makefile.am -@@ -87,7 +87,7 @@ AM_CPPFLAGS = \ - -DMANDIR=\""$(mandir)"\" \ - -DGIMPPLUGINDIR=\""$(gimpplugindir)"\" \ - -DGIMPDATADIR=\""$(gimpdatadir)"\" \ -- -DCC=\""$(CC)"\" \ -+ -DDEFAULT_CC=\""@DEFAULT_CC@"\" \ - -DGIMPDIR=\""$(gimpdir)"\" \ - -DGIMP_PLUGIN_VERSION=\""$(GIMP_PLUGIN_VERSION)"\" \ - -I$(top_srcdir) \ -diff --git a/tools/gimptool.c b/tools/gimptool.c -index 21fc043..bbf3fa5 100644 ---- a/tools/gimptool.c -+++ b/tools/gimptool.c -@@ -280,7 +280,7 @@ find_out_env_flags (void) - else if (msvc_syntax) - env_cc = "cl -MD"; - else -- env_cc = CC; -+ env_cc = DEFAULT_CC; - - if (g_ascii_strncasecmp (env_cc, "cl", 2) == 0 && - g_ascii_strncasecmp (env_cc, "clang", 5) != 0) diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-libtool-Do-not-add-build-time-library-paths-to-LD_LI.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-libtool-Do-not-add-build-time-library-paths-to-LD_LI.patch deleted file mode 100644 index cec0055284..0000000000 --- a/meta-gnome/recipes-gimp/gimp/gimp/0001-libtool-Do-not-add-build-time-library-paths-to-LD_LI.patch +++ /dev/null @@ -1,34 +0,0 @@ -From c720df90dfe3a3e92e34bfb36a04cc792064a501 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Wed, 24 May 2023 22:39:02 -0700 -Subject: [PATCH] libtool: Do not add build time library paths to - LD_LIBRARY_PATH - -This does not serve much purpose on cross builds as it will add build -time paths which are only useful when trying to run these tools from -build area but when they are cross built this is not possible to run -them like this. - -Upstream-Status: Inappropriate [Cross-compile specific] - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - ltmain.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ltmain.sh b/ltmain.sh -index 134902c..068d74a 100644 ---- a/ltmain.sh -+++ b/ltmain.sh -@@ -5748,7 +5748,7 @@ func_exec_program () - if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then - $ECHO "\ - # Add our own library path to $shlibpath_var -- $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" -+ $shlibpath_var=\"$shlibpath_var\" - - # Some systems cannot cope with colon-terminated $shlibpath_var - # The second colon is a workaround for a bug in BeOS R4 sed --- -2.40.1 - diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-meson.build-dont-check-for-lgi.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-meson.build-dont-check-for-lgi.patch new file mode 100644 index 0000000000..63a9159a43 --- /dev/null +++ b/meta-gnome/recipes-gimp/gimp/gimp/0001-meson.build-dont-check-for-lgi.patch @@ -0,0 +1,35 @@ +From e56a6330f1e29e489601ea3e7cb31bfd2ebb787a Mon Sep 17 00:00:00 2001 +From: Markus Volk <f_l_k@t-online.de> +Date: Thu, 27 Mar 2025 21:02:22 +0100 +Subject: [PATCH] meson.build: dont check for lgi + +Checking if host can run lgi is pointless for cross-compile +Set to be always true because we ensure to install lgi via PACKAGECONFIG + +Signed-off-by: Markus Volk <f_l_k@t-online.de> + +Upstream-Status: Inappropriate [oe-specific] +--- + meson.build | 6 +----- + 1 file changed, 1 insertion(+), 5 deletions(-) + +diff --git a/meson.build b/meson.build +index c91e8fc97d..efbc2d8175 100644 +--- a/meson.build ++++ b/meson.build +@@ -1235,11 +1235,7 @@ if have_lua + endif + + if is_supported_lua +- have_lua_lgi = run_command(lua, '-e', +- ''' +- local lgi = require 'lgi' +- ''', +- check: false).returncode() == 0 ++ have_lua_lgi = true + endif + + if have_lua_lgi +-- +2.49.0 + diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-meson.build-require-iso-codes-native.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-meson.build-require-iso-codes-native.patch new file mode 100644 index 0000000000..c91b25a914 --- /dev/null +++ b/meta-gnome/recipes-gimp/gimp/gimp/0001-meson.build-require-iso-codes-native.patch @@ -0,0 +1,34 @@ +From 8ccd12d6ec3330e9646ae9db6fd491226d516dc3 Mon Sep 17 00:00:00 2001 +From: Markus Volk <f_l_k@t-online.de> +Date: Fri, 28 Mar 2025 01:33:00 +0100 +Subject: [PATCH] meson.build: require iso-codes-native + +This fixes: +FAILED: app/widgets/gimplanguagestore-data.h +/mnt/b/yoe/master/build/tmp/work/core2-64-yoe-linux-musl/gimp/3.0.2/build/tools/gen-languages +gimp_language_store_parser_init: 0.006277 seconds +ERROR: parse_iso_codes: error parsing '/usr/share/xml/iso-codes/iso_639_3.xml': No such file or directory + +Upstream-Status: Pending + +Signed-off-by: Markus Volk <f_l_k@t-online.de> +--- + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index efbc2d8175..fd050f4d3c 100644 +--- a/meson.build ++++ b/meson.build +@@ -1135,7 +1135,7 @@ endif + ################################################################################ + # ISO codes + +-isocodes = dependency('iso-codes', required: false) ++isocodes = dependency('iso-codes', required: false, native: true) + if isocodes.found() + isocodes_prefix = isocodes.get_variable(pkgconfig: 'prefix') + isocodes_location = isocodes_prefix / 'share' / 'xml' / 'iso-codes' +-- +2.49.0 + diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-metadata-shut-up-a-weird-warning.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-metadata-shut-up-a-weird-warning.patch deleted file mode 100644 index 4f04ac8250..0000000000 --- a/meta-gnome/recipes-gimp/gimp/gimp/0001-metadata-shut-up-a-weird-warning.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 51311f913d9f417d121f59b83d560c7b4b853d1c Mon Sep 17 00:00:00 2001 -From: Simon Budig <simon@budig.de> -Date: Sat, 20 May 2023 22:25:40 +0200 -Subject: [PATCH] metadata: shut up a weird warning - -Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gimp/-/commit/51311f913d9f417d121f59b83d560c7b4b853d1c] -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - plug-ins/metadata/metadata-editor.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/plug-ins/metadata/metadata-editor.c -+++ b/plug-ins/metadata/metadata-editor.c -@@ -2140,7 +2140,7 @@ metadata_dialog_editor_set_metadata (GEx - } - else - { -- if (! g_strv_contains (values, equiv_values[evi])) -+ if (! g_strv_contains ((const gchar * const *) values, equiv_values[evi])) - { - gchar *tmpvalue; - diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0002-meson.build-reproducibility-fix.patch b/meta-gnome/recipes-gimp/gimp/gimp/0002-meson.build-reproducibility-fix.patch new file mode 100644 index 0000000000..532715d588 --- /dev/null +++ b/meta-gnome/recipes-gimp/gimp/gimp/0002-meson.build-reproducibility-fix.patch @@ -0,0 +1,56 @@ +From bf19c5687703769e406a8086036d4ed6421c33cb Mon Sep 17 00:00:00 2001 +From: Markus Volk <f_l_k@t-online.de> +Date: Mon, 13 Jan 2025 10:04:33 +0100 +Subject: [PATCH] meson.build: reproducibility fix + +Signed-off-by: Markus Volk <f_l_k@t-online.de> + +Upstream-Status: Inappropriate [oe-specific] +--- + meson.build | 28 ++++++++++++++-------------- + 1 file changed, 14 insertions(+), 14 deletions(-) + +diff --git a/meson.build b/meson.build +index 97cd621780..e47180db87 100644 +--- a/meson.build ++++ b/meson.build +@@ -1599,23 +1599,23 @@ conf.set('HAVE_FUNC_ATTRIBUTE_DESTRUCTOR', + conf.set_quoted('CC', cc.get_id()) + + cc_version='' +-if cc.get_id() == 'gcc' or cc.get_id() == 'clang' +- cc_cmd = run_command(cc, '-v', check: false) ++#if cc.get_id() == 'gcc' or cc.get_id() == 'clang' ++# cc_cmd = run_command(cc, '-v', check: false) + # Note: the call might actually fail when using ccache. + # See: https://github.com/mesonbuild/meson/issues/6174 +- if cc_cmd.returncode() == 0 +- cc_version = cc_cmd.stdout() + cc_cmd.stderr() +- endif +-else ++# if cc_cmd.returncode() == 0 ++# cc_version = cc_cmd.stdout() + cc_cmd.stderr() ++# endif ++#else + # Various compilers have various options. Try most common ones. This + # list of options comes from autotools checks. +- foreach arg : [ '--version', '-v', '-V', '-qversion' ] +- cc_cmd = run_command(cc, arg, check: false) +- if cc_cmd.returncode() == 0 +- cc_version = cc_cmd.stdout() +- endif +- endforeach +-endif ++# foreach arg : [ '--version', '-v', '-V', '-qversion' ] ++# cc_cmd = run_command(cc, arg, check: false) ++# if cc_cmd.returncode() == 0 ++# cc_version = cc_cmd.stdout() ++# endif ++# endforeach ++#endif + if cc_version == '' + # We didn't manage to get a meaningful verbose version from the + # compiler. Just save its name and version. +-- +2.47.1 + diff --git a/meta-gnome/recipes-gimp/gimp/gimp_2.10.38.bb b/meta-gnome/recipes-gimp/gimp/gimp_2.10.38.bb deleted file mode 100644 index 0272e05e96..0000000000 --- a/meta-gnome/recipes-gimp/gimp/gimp_2.10.38.bb +++ /dev/null @@ -1,101 +0,0 @@ -SUMMARY = "The GIMP is the GNU Image Manipulation Program" -HOMEPAGE = "http://www.gimp.org" -SECTION = "x11/graphics" -LICENSE = "GPL-3.0-only" -LIC_FILES_CHKSUM = "file://COPYING;md5=c678957b0c8e964aa6c70fd77641a71e" - -DEPENDS = " \ - alsa-lib \ - atk \ - cairo \ - fontconfig \ - freetype \ - gdk-pixbuf-native \ - intltool-native \ - libxslt-native \ - gegl-native \ - dbus-glib \ - gtk+ \ - babl \ - gegl \ - libmypaint \ - mypaint-brushes-1.0 \ - gexiv2 \ - jpeg \ - libmng \ - libpng \ - libexif \ - tiff \ - lcms \ - poppler \ - poppler-data \ - jasper \ - bzip2 \ - libgudev \ - libmng \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libxmu libxpm', '', d)} \ -" -DEPENDS:append:libc-musl = " libexecinfo" - -GNOMEBASEBUILDCLASS = "autotools" -inherit features_check gnomebase gtk-icon-cache gtk-doc mime-xdg - -REQUIRED_DISTRO_FEATURES = "x11" - -SHPV = "${@gnome_verdir("${PV}")}" - -SRC_URI = "https://download.gimp.org/pub/${BPN}/v${SHPV}/${BP}.tar.bz2 \ - file://0001-configure-Keep-first-line-of-compiler-version-string.patch \ - file://0001-libtool-Do-not-add-build-time-library-paths-to-LD_LI.patch \ - file://0001-file-tiff-load-fix-mismatching-variable-type.patch \ - file://0001-metadata-shut-up-a-weird-warning.patch \ - file://0001-gimptool-allow-default-CC-override.patch \ - " -SRC_URI[sha256sum] = "50a845eec11c8831fe8661707950f5b8446e35f30edfb9acf98f85c1133f856e" - -EXTRA_OECONF = "--disable-python \ - --without-webkit \ - --disable-check-update \ - --without-wmf" - -EXTRA_OECONF += "${@oe.utils.conditional('SITEINFO_BITS', '32', ' --disable-vector-icons', '', d)}" - -do_configure:append() { - find ${B} -name Makefile | xargs sed -i s:'-I$(includedir)':'-I.':g - find ${B} -name Makefile | xargs sed -i s:'-I/usr/include':'-I${STAGING_INCDIR}':g -} - -do_compile:prepend() { - # Let native babl/gegl find their plugins - export BABL_PATH=`find ${STAGING_LIBDIR_NATIVE} -maxdepth 1 -name 'babl-*'` - export GEGL_PATH=`find ${STAGING_LIBDIR_NATIVE} -maxdepth 1 -name 'gegl-*'` -} - -FILES:${PN} += "${datadir}/metainfo" - -RDEPENDS:${PN} += "mypaint-brushes-1.0" - - -# gimptool - -# gimptool needs a CC definition, use current CC without sysroot -python __anonymous() { - import shlex - CC_WITHOUT_SYSROOT = shlex.join(filter(lambda x: not x.startswith("--sysroot="), shlex.split(d.getVar("CC")))) - d.setVar("CC_WITHOUT_SYSROOT", CC_WITHOUT_SYSROOT) -} -EXTRA_OECONF += "--with-default-cc='${CC_WITHOUT_SYSROOT}'" - -# Split gimptool in its own package -PACKAGE_BEFORE_PN += "${PN}-gimptool" -FILES:${PN}-gimptool += "${bindir}/gimptool-2.0" - -# gimptool depends on gimp .pc file being installed and tools to build the plugin. -RDEPENDS:${PN}-gimptool += "${PN}-dev packagegroup-core-buildessential" -INSANE_SKIP:${PN}-gimptool += "dev-deps" - - -CVE_STATUS[CVE-2007-3741] = "not-applicable-platform: This only applies for Mandriva Linux" -CVE_STATUS[CVE-2009-0581] = "cpe-incorrect: The current version (2.10.38) is not affected." -CVE_STATUS[CVE-2009-0723] = "cpe-incorrect: The current version (2.10.38) is not affected." -CVE_STATUS[CVE-2009-0733] = "cpe-incorrect: The current version (2.10.38) is not affected." diff --git a/meta-gnome/recipes-gimp/gimp/gimp_3.0.2.bb b/meta-gnome/recipes-gimp/gimp/gimp_3.0.2.bb new file mode 100644 index 0000000000..2018ea04c4 --- /dev/null +++ b/meta-gnome/recipes-gimp/gimp/gimp_3.0.2.bb @@ -0,0 +1,132 @@ +SUMMARY = "The GIMP is the GNU Image Manipulation Program" +HOMEPAGE = "http://www.gimp.org" +SECTION = "graphics" +LICENSE = "GPL-3.0-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=c678957b0c8e964aa6c70fd77641a71e" + +DEPENDS = " \ + appstream-glib \ + atk \ + babl \ + bzip2 \ + bison-native \ + cairo \ + fontconfig \ + freetype \ + gdk-pixbuf-native \ + gegl \ + gexiv2 \ + glib-2.0 \ + glib-2.0-native \ + gtk+3 \ + harfbuzz \ + iso-codes-native \ + jpeg \ + json-glib \ + lcms \ + libarchive \ + libexif \ + libmypaint \ + libpng \ + librsvg \ + librsvg-native \ + libxmu \ + libxslt-native \ + mypaint-brushes-1.0 \ + pango \ + poppler \ + poppler-data \ + python3-pygobject-native \ + tiff \ + xz \ + zlib \ +" + +DEPENDS:append:libc-musl = " libexecinfo" + +inherit meson gtk-icon-cache mime-xdg pkgconfig gettext gobject-introspection vala + +GIR_MESON_OPTION = 'can-crosscompile-gir' +VALA_MESON_OPTION = "vala" +VALA_MESON_ENABLE_FLAG = "enabled" +VALA_MESON_DISABLE_FLAG = "disabled" +GIDOCGEN_MESON_OPTION = "gi-docgen" +GIDOCGEN_MESON_ENABLE_FLAG = "enabled" +GIDOCGEN_MESON_DISABLE_FLAG = "disabled" + +SRC_URI = "https://download.gimp.org/gimp/v${@oe.utils.trim_version('${PV}', 2)}/gimp-${PV}.tar.xz" +SRC_URI += "file://0001-gimp-cross-compile-fix-for-bz2.patch" +SRC_URI += "file://0002-meson.build-reproducibility-fix.patch" +SRC_URI += "file://0001-meson.build-dont-check-for-lgi.patch" +SRC_URI += "file://0001-meson.build-require-iso-codes-native.patch" +SRC_URI[sha256sum] = "546ddc30cb2d0e79123c7fcb4d78211e1ee7a6aace91a6a0ad8cbcbf6ea571a2" + +PACKAGECONFIG[aa] = "-Daa=enabled,-Daa=disabled,aalib" +PACKAGECONFIG[alsa] = "-Dalsa=enabled,-Dalsa=disabled,alsa-lib" +PACKAGECONFIG[appdata-test] = "-Dappdata-test=enabled,-Dappdata-test=disabled,appstream-native" +PACKAGECONFIG[cairo-pdf] = "-Dcairo-pdf=enabled,-Dcairo-pdf=disabled" +PACKAGECONFIG[check-update] = "-Dcheck-update=yes,-Dcheck-update=no" +PACKAGECONFIG[ghostscript] = "-Dghostscript=enabled,-Dghostscript=disabled,ghostscript,ghostscript" +PACKAGECONFIG[gudev] = "-Dgudev=enabled,-Dgudev=disabled,libgudev" +PACKAGECONFIG[heif] = "-Dheif=enabled,-Dheif=disabled,libheif" +PACKAGECONFIG[javascript] = "-Djavascript=enabled,-Djavascript=disabled,,gjs" +PACKAGECONFIG[jpeg2000] = "-Djpeg2000=enabled,-Djpeg2000=disabled,jasper" +PACKAGECONFIG[jpeg-xl] = "-Djpeg-xl=enabled,-Djpeg-xl=disabled,libjxl" +PACKAGECONFIG[libunwind] = "-Dlibunwind=true,-Dlibunwind=false,libunwind" +PACKAGECONFIG[libbacktrace] = "-Dlibbacktrace=true,-Dlibbacktrace=false,libbacktrace" +PACKAGECONFIG[lua] = "-Dlua=true,-Dlua=false,,luajit lua-lgi" +PACKAGECONFIG[mng] = "-Dmng=enabled,-Dmng=disabled,libmng" +PACKAGECONFIG[openmp] = "-Dopenmp=enabled,-Dopenmp=disabled,gcc-runtime" +PACKAGECONFIG[vector-icons] = "-Dvector-icons=true,-Dvector-icons=false,librsvg shared-mime-info" +PACKAGECONFIG[webp] = "-Dwebp=enabled,-Dwebp=disabled,libwebp" +PACKAGECONFIG[xcursor] = "-Dxcursor=enabled,-Dxcursor=disabled,libxcursor" +PACKAGECONFIG[x11] = "-Dxpm=enabled,-Dxpm=disabled,libxpm libxext libxfixes" + +PACKAGECONFIG ?= " \ + alsa \ + cairo-pdf \ + ghostscript \ + gudev \ + javascript \ + jpeg2000 \ + jpeg-xl \ + lua \ + mng \ + webp \ + ${@oe.utils.conditional('SITEINFO_BITS', '32', '', 'vector-icons', d)} \ + ${@bb.utils.contains('LICENSE_FLAGS_ACCEPTED', 'commercial', 'heif', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcursor', '', d)} \ +" + +PACKAGECONFIG:remove:riscv32 = "lua" +PACKAGECONFIG:remove:riscv64 = "lua" +PACKAGECONFIG:remove:powerpc64 = "lua" +PACKAGECONFIG:remove:powerpc64le = "lua" + +EXTRA_OEMESON += " \ + -Dshmem-type=posix \ + -Dlinux-input=enabled \ + --buildtype release \ + --cross-file=${WORKDIR}/meson-${PN}.cross \ +" + +do_write_config:append() { + cat >${WORKDIR}/meson-${PN}.cross <<EOF +[binaries] +gjs = '${bindir}/gjs' +luajit = '${bindir}/luajit' +EOF +} + +do_configure:append () { + sed -i -e "s|build_by_default: true|build_by_default: false|" ${S}/gimp-data/images/meson.build +} + +do_install:prepend() { + sed -i -e "s|${B}||" ${B}/app/widgets/gimplanguagestore-data.h + sed -i -e "s|${B}||" ${B}/plug-ins/file-bmp/huffman.h +} + +FILES:${PN} += "${datadir}/metainfo" + +RDEPENDS:${PN} = "mypaint-brushes-1.0 glib-networking python3-pygobject"