All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-gnome][PATCH v2] gimp: add recipe for current developement version
@ 2021-09-03 11:23 Markus Volk
  2021-09-09 16:37 ` [oe] " Khem Raj
  0 siblings, 1 reply; 3+ messages in thread
From: Markus Volk @ 2021-09-03 11:23 UTC (permalink / raw)
  To: openembedded-devel; +Cc: MarkusVolk

Reworked the gimp recipe to use the latest developement release.
Switched buildsystem to meson.

Signed-off-by: MarkusVolk <f_l_k@t-online.de>
---
 .../gimp/0001-meson-make-gir-buildable.patch  |  43 +++++++
 meta-gnome/recipes-gimp/gimp/gimp_2.99.6.bb   | 109 ++++++++++++++++++
 2 files changed, 152 insertions(+)
 create mode 100644 meta-gnome/recipes-gimp/gimp/gimp/0001-meson-make-gir-buildable.patch
 create mode 100644 meta-gnome/recipes-gimp/gimp/gimp_2.99.6.bb

diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-meson-make-gir-buildable.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-meson-make-gir-buildable.patch
new file mode 100644
index 000000000..632ae17c2
--- /dev/null
+++ b/meta-gnome/recipes-gimp/gimp/gimp/0001-meson-make-gir-buildable.patch
@@ -0,0 +1,43 @@
+From c8f73f57d63779cfaad140e0521be40972fbec8f Mon Sep 17 00:00:00 2001
+From: Markus Volk <f_l_k@t-online.de>
+Date: Wed, 1 Sep 2021 16:44:13 +0200
+Subject: [PATCH] meson: make gir buildable
+
+yocto/oe is capable of building gobject introspection despite cross-compiling.
+add an option to enable gir build even if cross-compiling
+
+Signed-off-by: Markus Volk <f_l_k@t-online.de>
+---
+ libgimp/meson.build | 2 +-
+ meson_options.txt   | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/libgimp/meson.build b/libgimp/meson.build
+index 9e7b4fbbe3..99614733d7 100644
+--- a/libgimp/meson.build
++++ b/libgimp/meson.build
+@@ -384,7 +384,7 @@ libgimpui_introspectable_files = [
+   libgimpwidgets_introspectable,
+ ]
+ 
+-if meson.is_cross_build()
++if meson.is_cross_build() and not get_option('introspection')
+   have_gobject_introspection = false
+   gobject_introspection_warning = '\n      '.join(['',
+     'GObject Introspection is disabled while cross-compiling because',
+diff --git a/meson_options.txt b/meson_options.txt
+index 7b6ad78045..c29fdb5b40 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -52,7 +52,7 @@ option('headless-tests',    type: 'feature', value: 'auto', description: 'Use xv
+ option('gtk-doc',           type: 'boolean', value: true,   description: 'Build developer documentation')
+ option('gtk-doc-app',       type: 'boolean', value: false,  description: 'Build developer documentation for app')
+ option('g-ir-doc',          type: 'boolean', value: false,  description: 'Build developer documentation for introspected API')
+-
++option('introspection',   type: 'boolean', value: false,  description: 'GIR is buildable even if crosscompiling')
+ option('linux-input',       type: 'feature', value: 'auto', description: 'Linux input event controller module')
+ option('vec-icons',         type: 'boolean', value: true,   description: 'Use vector icons rather than raster ones')
+ 
+-- 
+2.25.1
+
diff --git a/meta-gnome/recipes-gimp/gimp/gimp_2.99.6.bb b/meta-gnome/recipes-gimp/gimp/gimp_2.99.6.bb
new file mode 100644
index 000000000..c1e33d23d
--- /dev/null
+++ b/meta-gnome/recipes-gimp/gimp/gimp_2.99.6.bb
@@ -0,0 +1,109 @@
+SUMMARY = "The GIMP is the GNU Image Manipulation Program"
+HOMEPAGE = "http://www.gimp.org"
+SECTION = "graphics"
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=c678957b0c8e964aa6c70fd77641a71e"
+
+REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
+
+DEPENDS = " \
+    appstream-glib \
+    atk \
+    babl \
+    bison-native \
+    cairo \
+    dbus-glib \
+    fontconfig \
+    freetype \
+    gdk-pixbuf-native \
+    gegl \
+    gegl-native \
+    gexiv2 \
+    gtk+3 \
+    harfbuzz \
+    intltool-native \
+    json-glib \
+    lcms \
+    libarchive \
+    libexif \
+    libmypaint \
+    libxslt-native \
+    mypaint-brushes-1.0 \
+    pango \
+    poppler \
+    poppler-data \
+"
+
+DEPENDS:append:libc-musl = " libexecinfo"
+RDEPENDS:${PN} = "mypaint-brushes-1.0 glib-networking"
+
+inherit meson gtk-icon-cache mime-xdg pkgconfig features_check gobject-introspection
+
+SRC_URI = " \
+    git://github.com/GNOME/gimp.git;protocol=https \
+    file://0001-meson-make-gir-buildable.patch \
+"
+
+S = "${WORKDIR}/git"
+SRCREV = "GIMP_2_99_6"
+
+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-glib-native"
+PACKAGECONFIG[bzip2] = ",,bzip2"
+PACKAGECONFIG[cairo-pdf] = "-Dcairo-pdf=enabled,-Dcairo-pdf=disabled"
+PACKAGECONFIG[check-update] = "-Dcheck-update=true,-Dcheck-update=false"
+PACKAGECONFIG[enable-console-bin] = "-Denable-console-bin=true,-Denable-console-bin=false"
+PACKAGECONFIG[ghostscript] = "-Dghostscript=enabled,-Dghostscript=disabled,ghostscript"
+PACKAGECONFIG[gtk-doc] = "-Dgtk-doc=true,-Dgtk-doc=false,gtk-doc-native"
+PACKAGECONFIG[gtk-doc-app] = "-Dgtk-doc-app=true,-Dgtk-doc-app=false,gtk-doc-native"
+PACKAGECONFIG[gudev] = "-Dgudev=enabled,-Dgudev=disabled,libgudev"
+PACKAGECONFIG[javascript] = "-Djavascript=true,-Djavascript=false,,openjre-8"
+PACKAGECONFIG[jpeg2000] = "-Djpeg2000=enabled,-Djpeg2000=disabled,jasper"
+PACKAGECONFIG[jpeg] = ",,jpeg"
+PACKAGECONFIG[lua] = "-Dlua=true,-Dlua=false,,luajit lgi"
+PACKAGECONFIG[lzma] = ",,xz"
+PACKAGECONFIG[mng] = "-Dmng=enabled,-Dmng=disabled,libmng"
+PACKAGECONFIG[png] = "-Dpng=enabled,-Dpng=disabled,libpng"
+PACKAGECONFIG[python] = "-Dpython=true,-Dpython=false,,python3 python3-pygobject"
+PACKAGECONFIG[rsvg] = ",,librsvg"
+PACKAGECONFIG[tiff] = ",,tiff"
+PACKAGECONFIG[vala-plugins] = "-Dvala-plugins=enabled,-Dvala-plugins=disabled"
+PACKAGECONFIG[webkit] = "-Dwebkit=enabled,-Dwebkit=disabled,webkitgtk"
+PACKAGECONFIG[webp] = "-Dwebp=enabled,-Dwebp=disabled,libwebp"
+PACKAGECONFIG[xcursor] = "-Dxcursor=enabled,-Dxcursor=disabled,libxcursor"
+PACKAGECONFIG[x11] = "-Dxpm=enabled,-Dxpm=disabled,libxpm libxmu"
+PACKAGECONFIG[zlib] = ",,zlib"
+
+PACKAGECONFIG ?= " \
+    ${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} \
+    alsa \
+    bzip2 \
+    cairo-pdf \
+    gtk-doc-app \
+    gudev \
+    jpeg \
+    jpeg2000 \
+    lua \
+    lzma \
+    mng \
+    png \
+    python \
+    rsvg \
+    tiff \
+    webp \
+    zlib \
+"
+
+FILES:${PN} += " \
+    ${datadir}/metainfo \
+    ${datadir}/gir-1.0 \
+    ${datadir}/appdata \
+    ${libdir}/girepository-1.0 \
+"
+
+EXTRA_OEMESON += " \
+    -Dshmem-type=posix \
+    --buildtype release \
+"
+
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [oe] [meta-gnome][PATCH v2] gimp: add recipe for current developement version
  2021-09-03 11:23 [meta-gnome][PATCH v2] gimp: add recipe for current developement version Markus Volk
@ 2021-09-09 16:37 ` Khem Raj
       [not found]   ` <301b5ec1-5fe8-dc43-541a-18d4311a14f7@t-online.de>
  0 siblings, 1 reply; 3+ messages in thread
From: Khem Raj @ 2021-09-09 16:37 UTC (permalink / raw)
  To: Markus Volk, openembedded-devel



On 9/3/21 4:23 AM, Markus Volk wrote:
> Reworked the gimp recipe to use the latest developement release.
> Switched buildsystem to meson.
> 

seems ok, can we also add DEFAULT_PREFERENCE = "-1" since we do not want 
this to be picked as default.

> Signed-off-by: MarkusVolk <f_l_k@t-online.de>
> ---
>   .../gimp/0001-meson-make-gir-buildable.patch  |  43 +++++++
>   meta-gnome/recipes-gimp/gimp/gimp_2.99.6.bb   | 109 ++++++++++++++++++
>   2 files changed, 152 insertions(+)
>   create mode 100644 meta-gnome/recipes-gimp/gimp/gimp/0001-meson-make-gir-buildable.patch
>   create mode 100644 meta-gnome/recipes-gimp/gimp/gimp_2.99.6.bb
> 
> diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-meson-make-gir-buildable.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-meson-make-gir-buildable.patch
> new file mode 100644
> index 000000000..632ae17c2
> --- /dev/null
> +++ b/meta-gnome/recipes-gimp/gimp/gimp/0001-meson-make-gir-buildable.patch
> @@ -0,0 +1,43 @@
> +From c8f73f57d63779cfaad140e0521be40972fbec8f Mon Sep 17 00:00:00 2001
> +From: Markus Volk <f_l_k@t-online.de>
> +Date: Wed, 1 Sep 2021 16:44:13 +0200
> +Subject: [PATCH] meson: make gir buildable
> +
> +yocto/oe is capable of building gobject introspection despite cross-compiling.
> +add an option to enable gir build even if cross-compiling
> +
> +Signed-off-by: Markus Volk <f_l_k@t-online.de>
> +---
> + libgimp/meson.build | 2 +-
> + meson_options.txt   | 2 +-
> + 2 files changed, 2 insertions(+), 2 deletions(-)
> +
> +diff --git a/libgimp/meson.build b/libgimp/meson.build
> +index 9e7b4fbbe3..99614733d7 100644
> +--- a/libgimp/meson.build
> ++++ b/libgimp/meson.build
> +@@ -384,7 +384,7 @@ libgimpui_introspectable_files = [
> +   libgimpwidgets_introspectable,
> + ]
> +
> +-if meson.is_cross_build()
> ++if meson.is_cross_build() and not get_option('introspection')
> +   have_gobject_introspection = false
> +   gobject_introspection_warning = '\n      '.join(['',
> +     'GObject Introspection is disabled while cross-compiling because',
> +diff --git a/meson_options.txt b/meson_options.txt
> +index 7b6ad78045..c29fdb5b40 100644
> +--- a/meson_options.txt
> ++++ b/meson_options.txt
> +@@ -52,7 +52,7 @@ option('headless-tests',    type: 'feature', value: 'auto', description: 'Use xv
> + option('gtk-doc',           type: 'boolean', value: true,   description: 'Build developer documentation')
> + option('gtk-doc-app',       type: 'boolean', value: false,  description: 'Build developer documentation for app')
> + option('g-ir-doc',          type: 'boolean', value: false,  description: 'Build developer documentation for introspected API')
> +-
> ++option('introspection',   type: 'boolean', value: false,  description: 'GIR is buildable even if crosscompiling')
> + option('linux-input',       type: 'feature', value: 'auto', description: 'Linux input event controller module')
> + option('vec-icons',         type: 'boolean', value: true,   description: 'Use vector icons rather than raster ones')
> +
> +--
> +2.25.1
> +
> diff --git a/meta-gnome/recipes-gimp/gimp/gimp_2.99.6.bb b/meta-gnome/recipes-gimp/gimp/gimp_2.99.6.bb
> new file mode 100644
> index 000000000..c1e33d23d
> --- /dev/null
> +++ b/meta-gnome/recipes-gimp/gimp/gimp_2.99.6.bb
> @@ -0,0 +1,109 @@
> +SUMMARY = "The GIMP is the GNU Image Manipulation Program"
> +HOMEPAGE = "http://www.gimp.org"
> +SECTION = "graphics"
> +LICENSE = "GPLv3"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=c678957b0c8e964aa6c70fd77641a71e"
> +
> +REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
> +
> +DEPENDS = " \
> +    appstream-glib \
> +    atk \
> +    babl \
> +    bison-native \
> +    cairo \
> +    dbus-glib \
> +    fontconfig \
> +    freetype \
> +    gdk-pixbuf-native \
> +    gegl \
> +    gegl-native \
> +    gexiv2 \
> +    gtk+3 \
> +    harfbuzz \
> +    intltool-native \
> +    json-glib \
> +    lcms \
> +    libarchive \
> +    libexif \
> +    libmypaint \
> +    libxslt-native \
> +    mypaint-brushes-1.0 \
> +    pango \
> +    poppler \
> +    poppler-data \
> +"
> +
> +DEPENDS:append:libc-musl = " libexecinfo"
> +RDEPENDS:${PN} = "mypaint-brushes-1.0 glib-networking"
> +
> +inherit meson gtk-icon-cache mime-xdg pkgconfig features_check gobject-introspection
> +
> +SRC_URI = " \
> +    git://github.com/GNOME/gimp.git;protocol=https \
> +    file://0001-meson-make-gir-buildable.patch \
> +"
> +
> +S = "${WORKDIR}/git"
> +SRCREV = "GIMP_2_99_6"
> +
> +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-glib-native"
> +PACKAGECONFIG[bzip2] = ",,bzip2"
> +PACKAGECONFIG[cairo-pdf] = "-Dcairo-pdf=enabled,-Dcairo-pdf=disabled"
> +PACKAGECONFIG[check-update] = "-Dcheck-update=true,-Dcheck-update=false"
> +PACKAGECONFIG[enable-console-bin] = "-Denable-console-bin=true,-Denable-console-bin=false"
> +PACKAGECONFIG[ghostscript] = "-Dghostscript=enabled,-Dghostscript=disabled,ghostscript"
> +PACKAGECONFIG[gtk-doc] = "-Dgtk-doc=true,-Dgtk-doc=false,gtk-doc-native"
> +PACKAGECONFIG[gtk-doc-app] = "-Dgtk-doc-app=true,-Dgtk-doc-app=false,gtk-doc-native"
> +PACKAGECONFIG[gudev] = "-Dgudev=enabled,-Dgudev=disabled,libgudev"
> +PACKAGECONFIG[javascript] = "-Djavascript=true,-Djavascript=false,,openjre-8"
> +PACKAGECONFIG[jpeg2000] = "-Djpeg2000=enabled,-Djpeg2000=disabled,jasper"
> +PACKAGECONFIG[jpeg] = ",,jpeg"
> +PACKAGECONFIG[lua] = "-Dlua=true,-Dlua=false,,luajit lgi"
> +PACKAGECONFIG[lzma] = ",,xz"
> +PACKAGECONFIG[mng] = "-Dmng=enabled,-Dmng=disabled,libmng"
> +PACKAGECONFIG[png] = "-Dpng=enabled,-Dpng=disabled,libpng"
> +PACKAGECONFIG[python] = "-Dpython=true,-Dpython=false,,python3 python3-pygobject"
> +PACKAGECONFIG[rsvg] = ",,librsvg"
> +PACKAGECONFIG[tiff] = ",,tiff"
> +PACKAGECONFIG[vala-plugins] = "-Dvala-plugins=enabled,-Dvala-plugins=disabled"
> +PACKAGECONFIG[webkit] = "-Dwebkit=enabled,-Dwebkit=disabled,webkitgtk"
> +PACKAGECONFIG[webp] = "-Dwebp=enabled,-Dwebp=disabled,libwebp"
> +PACKAGECONFIG[xcursor] = "-Dxcursor=enabled,-Dxcursor=disabled,libxcursor"
> +PACKAGECONFIG[x11] = "-Dxpm=enabled,-Dxpm=disabled,libxpm libxmu"
> +PACKAGECONFIG[zlib] = ",,zlib"
> +
> +PACKAGECONFIG ?= " \
> +    ${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} \
> +    alsa \
> +    bzip2 \
> +    cairo-pdf \
> +    gtk-doc-app \
> +    gudev \
> +    jpeg \
> +    jpeg2000 \
> +    lua \
> +    lzma \
> +    mng \
> +    png \
> +    python \
> +    rsvg \
> +    tiff \
> +    webp \
> +    zlib \
> +"
> +
> +FILES:${PN} += " \
> +    ${datadir}/metainfo \
> +    ${datadir}/gir-1.0 \
> +    ${datadir}/appdata \
> +    ${libdir}/girepository-1.0 \
> +"
> +
> +EXTRA_OEMESON += " \
> +    -Dshmem-type=posix \
> +    --buildtype release \
> +"
> +
> 
> 
> 
> 
> 

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [oe] [meta-gnome][PATCH v2] gimp: add recipe for current developement version
       [not found]   ` <301b5ec1-5fe8-dc43-541a-18d4311a14f7@t-online.de>
@ 2021-09-09 19:54     ` Khem Raj
  0 siblings, 0 replies; 3+ messages in thread
From: Khem Raj @ 2021-09-09 19:54 UTC (permalink / raw)
  To: Markus Volk; +Cc: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 391 bytes --]

On Thu, Sep 9, 2021 at 12:49 PM Markus Volk <f_l_k@t-online.de> wrote:

> sure, the dev version shouldn't be the default. Do i need to send
> another patch for that?


Just make the change on this recipe and send a v2

>
>
> Am 09.09.21 um 18:37 schrieb Khem Raj:
> > seems ok, can we also add DEFAULT_PREFERENCE = "-1" since we do not
> > want this to be picked as default.
>

[-- Attachment #2: Type: text/html, Size: 852 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-09-09 19:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-03 11:23 [meta-gnome][PATCH v2] gimp: add recipe for current developement version Markus Volk
2021-09-09 16:37 ` [oe] " Khem Raj
     [not found]   ` <301b5ec1-5fe8-dc43-541a-18d4311a14f7@t-online.de>
2021-09-09 19:54     ` Khem Raj

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.