* [gentoo-commits] repo/gentoo:master commit in: media-libs/cogl/, media-libs/cogl/files/
@ 2016-01-23 13:28 Pacho Ramos
0 siblings, 0 replies; 4+ messages in thread
From: Pacho Ramos @ 2016-01-23 13:28 UTC (permalink / raw
To: gentoo-commits
commit: a56306e9127a0550c308b49f4ea58c6f4351724f
Author: Pacho Ramos <pacho <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 23 13:28:10 2016 +0000
Commit: Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Sat Jan 23 13:28:10 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a56306e9
media-libs/cogl: Apply upstream fixes, also fix cogl not working at all with fglrx drivers, we need to apply the fix conditionally until someone figures out how to properly check for fglrx presence for the patch (#567168, upstream bug #756306, thanks to Olcay for reporting and testing this).
Package-Manager: portage-2.2.26
media-libs/cogl/cogl-1.22.0-r1.ebuild | 144 +++++++++++++++++++++
media-libs/cogl/files/cogl-1.22.0-fglrx.patch | 10 ++
.../cogl/files/cogl-1.22.0-initial-output.patch | 46 +++++++
media-libs/cogl/files/cogl-1.22.0-wait-flip.patch | 42 ++++++
4 files changed, 242 insertions(+)
diff --git a/media-libs/cogl/cogl-1.22.0-r1.ebuild b/media-libs/cogl/cogl-1.22.0-r1.ebuild
new file mode 100644
index 0000000..6252c25
--- /dev/null
+++ b/media-libs/cogl/cogl-1.22.0-r1.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="yes"
+
+inherit eutils gnome2 multilib virtualx
+
+DESCRIPTION="A library for using 3D graphics hardware to draw pretty pictures"
+HOMEPAGE="http://www.cogl3d.org/"
+
+LICENSE="MIT BSD"
+SLOT="1.0/20" # subslot = .so version
+
+# doc and profile disable for now due to bugs #484750 and #483332
+IUSE="examples gles2 gstreamer +introspection +kms +opengl +pango test video_cards_fglrx wayland" # doc profile
+REQUIRED_USE="
+ wayland? ( gles2 )
+ || ( gles2 opengl )
+"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+
+COMMON_DEPEND="
+ >=dev-libs/glib-2.32:2
+ x11-libs/cairo:=
+ >=x11-libs/gdk-pixbuf-2:2
+ x11-libs/libX11
+ >=x11-libs/libXcomposite-0.4
+ x11-libs/libXdamage
+ x11-libs/libXext
+ >=x11-libs/libXfixes-3
+ >=x11-libs/libXrandr-1.2
+ virtual/opengl
+ gles2? ( media-libs/mesa[gles2] )
+ gstreamer? (
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0 )
+ introspection? ( >=dev-libs/gobject-introspection-1.34.2:= )
+ kms? (
+ media-libs/mesa[gbm]
+ x11-libs/libdrm:= )
+ pango? ( >=x11-libs/pango-1.20.0[introspection?] )
+ wayland? (
+ >=dev-libs/wayland-1.1.90
+ media-libs/mesa[egl,wayland] )
+"
+# before clutter-1.7, cogl was part of clutter
+RDEPEND="${COMMON_DEPEND}
+ !<media-libs/clutter-1.7
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-util/gtk-doc-am-1.13
+ sys-devel/gettext
+ virtual/pkgconfig
+ test? (
+ app-eselect/eselect-opengl
+ media-libs/mesa[classic] )
+"
+
+# Need classic mesa swrast for tests, llvmpipe causes a test failure
+# For some reason GL3 conformance test all fails again...
+RESTRICT="test"
+
+src_prepare() {
+ # Upstream fixes from 1.22 branch
+ # winsys-egl-kms: bypass initial output setup if kms fd passed in
+ epatch "${FILESDIR}"/${P}-initial-output.patch
+
+ # kms-winsys: don't wait for a flip when page flipping fails
+ epatch "${FILESDIR}"/${P}-wait-flip.patch
+
+ # Let cogl work with fglrx driver, bug #567168
+ # https://bugzilla.gnome.org/show_bug.cgi?id=756306
+ use video_cards_fglrx && epatch "${FILESDIR}"/${PN}-1.22.0-fglrx.patch
+
+ # Do not build examples
+ sed -e "s/^\(SUBDIRS +=.*\)examples\(.*\)$/\1\2/" \
+ -i Makefile.am Makefile.in || die
+
+ if ! use test ; then
+ # For some reason the configure switch will not completely disable
+ # tests being built
+ sed -e "s/^\(SUBDIRS =.*\)test-fixtures\(.*\)$/\1\2/" \
+ -e "s/^\(SUBDIRS +=.*\)tests\(.*\)$/\1\2/" \
+ -e "s/^\(.*am__append.* \)tests\(.*\)$/\1\2/" \
+ -i Makefile.am Makefile.in || die
+ fi
+
+ gnome2_src_prepare
+}
+
+src_configure() {
+ # TODO: think about quartz, sdl
+ # Prefer gl over gles2 if both are selected
+ # Profiling needs uprof, which is not available in portage yet, bug #484750
+ # FIXME: Doesn't provide prebuilt docs, but they can neither be rebuilt, bug #483332
+ gnome2_src_configure \
+ --disable-examples-install \
+ --disable-maintainer-flags \
+ --enable-cairo \
+ --enable-deprecated \
+ --enable-gdk-pixbuf \
+ --enable-glib \
+ $(use_enable opengl glx) \
+ $(use_enable opengl gl) \
+ $(use_enable gles2) \
+ $(use_enable gles2 cogl-gles2) \
+ $(use_enable gles2 xlib-egl-platform) \
+ $(usex gles2 --with-default-driver=$(usex opengl gl gles2)) \
+ $(use_enable gstreamer cogl-gst) \
+ $(use_enable introspection) \
+ $(use_enable kms kms-egl-platform) \
+ $(use_enable pango cogl-pango) \
+ $(use_enable test unit-tests) \
+ $(use_enable wayland wayland-egl-platform) \
+ $(use_enable wayland wayland-egl-server) \
+ --disable-profile
+# $(use_enable profile)
+}
+
+src_test() {
+ # Use swrast for tests, llvmpipe is incomplete and "test_sub_texture" fails
+ # NOTE: recheck if this is needed after every mesa bump
+ if [[ "$(eselect opengl show)" != "xorg-x11" ]]; then
+ ewarn "Skipping tests because a binary OpenGL library is enabled. To"
+ ewarn "run tests for ${PN}, you need to enable the Mesa library:"
+ ewarn "# eselect opengl set xorg-x11"
+ return
+ fi
+ LIBGL_DRIVERS_PATH="${EROOT}/usr/$(get_libdir)/mesa" Xemake check
+}
+
+src_install() {
+ if use examples; then
+ insinto /usr/share/doc/${PF}/examples
+ doins examples/{*.c,*.jpg}
+ fi
+
+ gnome2_src_install
+
+ # Remove silly examples-data directory
+ rm -rvf "${ED}/usr/share/cogl/examples-data/" || die
+}
diff --git a/media-libs/cogl/files/cogl-1.22.0-fglrx.patch b/media-libs/cogl/files/cogl-1.22.0-fglrx.patch
new file mode 100644
index 0000000..e213d58
--- /dev/null
+++ b/media-libs/cogl/files/cogl-1.22.0-fglrx.patch
@@ -0,0 +1,10 @@
+--- 122/cogl/driver/gl/gl/cogl-driver-gl.c 2015-09-02 18:39:02.000000000 +0200
++++ 122b/cogl/driver/gl/gl/cogl-driver-gl.c 2015-10-18 10:37:14.052350142 +0200
+@@ -419,7 +419,7 @@
+ if (COGL_CHECK_GL_VERSION (ctx->glsl_major, ctx->glsl_minor, 1, 2))
+ /* We want to use version 120 if it is available so that the
+ * gl_PointCoord can be used. */
+- ctx->glsl_version_to_use = 120;
++ ctx->glsl_version_to_use = 150;
+ else
+ ctx->glsl_version_to_use = 110;
diff --git a/media-libs/cogl/files/cogl-1.22.0-initial-output.patch b/media-libs/cogl/files/cogl-1.22.0-initial-output.patch
new file mode 100644
index 0000000..d7f9d0f
--- /dev/null
+++ b/media-libs/cogl/files/cogl-1.22.0-initial-output.patch
@@ -0,0 +1,46 @@
+From 188752158701e3a406e7fd5850b3eaf9c4798cd7 Mon Sep 17 00:00:00 2001
+From: Ray Strode <rstrode@redhat.com>
+Date: Fri, 13 Nov 2015 13:35:05 -0500
+Subject: winsys-egl-kms: bypass initial output setup if kms fd passed in
+
+if mutter is handling the output setup, then we shouldn't do it,
+too.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=758073
+---
+ cogl/winsys/cogl-winsys-egl-kms.c | 12 ++++++++----
+ 1 file changed, 8 insertions(+), 4 deletions(-)
+
+diff --git a/cogl/winsys/cogl-winsys-egl-kms.c b/cogl/winsys/cogl-winsys-egl-kms.c
+index b460907..6d7049d 100644
+--- a/cogl/winsys/cogl-winsys-egl-kms.c
++++ b/cogl/winsys/cogl-winsys-egl-kms.c
+@@ -663,6 +663,14 @@ _cogl_winsys_egl_display_setup (CoglDisplay *display,
+ return FALSE;
+ }
+
++ /* Force a full modeset / drmModeSetCrtc on
++ * the first swap buffers call.
++ */
++ kms_display->pending_set_crtc = TRUE;
++
++ if (kms_renderer->opened_fd < 0)
++ return TRUE;
++
+ output0 = find_output (0,
+ kms_renderer->fd,
+ resources,
+@@ -736,10 +744,6 @@ _cogl_winsys_egl_display_setup (CoglDisplay *display,
+ kms_display->width = output0->mode.hdisplay;
+ kms_display->height = output0->mode.vdisplay;
+
+- /* We defer setting the crtc modes until the first swap_buffers request of a
+- * CoglOnscreen framebuffer. */
+- kms_display->pending_set_crtc = TRUE;
+-
+ return TRUE;
+ }
+
+--
+cgit v0.11.2
+
diff --git a/media-libs/cogl/files/cogl-1.22.0-wait-flip.patch b/media-libs/cogl/files/cogl-1.22.0-wait-flip.patch
new file mode 100644
index 0000000..b7c4d99
--- /dev/null
+++ b/media-libs/cogl/files/cogl-1.22.0-wait-flip.patch
@@ -0,0 +1,42 @@
+From a583492ea2aa3ea8e78c269bd5db3f52f82aa79c Mon Sep 17 00:00:00 2001
+From: Ray Strode <rstrode@redhat.com>
+Date: Wed, 21 Oct 2015 15:47:01 -0400
+Subject: kms-winsys: don't wait for a flip when page flipping fails
+
+If we get EACCES from drmPageFlip we're not going to get
+a flip event and shouldn't wait for one.
+
+This commit changes the EACCES path to silently ignore the
+failed flip request and just clean up the fb.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=756926
+---
+ cogl/winsys/cogl-winsys-egl-kms.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/cogl/winsys/cogl-winsys-egl-kms.c b/cogl/winsys/cogl-winsys-egl-kms.c
+index 20c325c..b460907 100644
+--- a/cogl/winsys/cogl-winsys-egl-kms.c
++++ b/cogl/winsys/cogl-winsys-egl-kms.c
+@@ -590,7 +590,7 @@ flip_all_crtcs (CoglDisplay *display, CoglFlipKMS *flip, int fb_id)
+ for (l = kms_display->crtcs; l; l = l->next)
+ {
+ CoglKmsCrtc *crtc = l->data;
+- int ret;
++ int ret = 0;
+
+ if (crtc->count == 0 || crtc->ignore)
+ continue;
+@@ -610,7 +610,8 @@ flip_all_crtcs (CoglDisplay *display, CoglFlipKMS *flip, int fb_id)
+ }
+ }
+
+- flip->pending++;
++ if (ret == 0)
++ flip->pending++;
+ }
+
+ if (kms_renderer->page_flips_not_supported && needs_flip)
+--
+cgit v0.11.2
+
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/cogl/, media-libs/cogl/files/
@ 2016-09-07 7:26 Gilles Dartiguelongue
0 siblings, 0 replies; 4+ messages in thread
From: Gilles Dartiguelongue @ 2016-09-07 7:26 UTC (permalink / raw
To: gentoo-commits
commit: ed1459945ee449ca13353f6f58ffb90f4cbe8c05
Author: Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 7 07:22:28 2016 +0000
Commit: Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
CommitDate: Wed Sep 7 07:26:24 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ed145994
media-libs/cogl: version bump from 1.22.0-r1 to 1.22.2
Package-Manager: portage-2.3.0
media-libs/cogl/Manifest | 1 +
media-libs/cogl/cogl-1.22.2.ebuild | 137 ++++++++++++++++++++++++++
media-libs/cogl/files/cogl-1.22.0-fglrx.patch | 4 +-
3 files changed, 140 insertions(+), 2 deletions(-)
diff --git a/media-libs/cogl/Manifest b/media-libs/cogl/Manifest
index 00ddf7f..8c87210 100644
--- a/media-libs/cogl/Manifest
+++ b/media-libs/cogl/Manifest
@@ -1,2 +1,3 @@
DIST cogl-1.20.0.tar.xz 1669620 SHA256 729e35495829e7d31fafa3358e47b743ba21a2b08ff9b6cd28fb74c0de91192b SHA512 a7c50072ef5660a4fff8d3843ede86178e5c4bcc635eb24c1e16f73422f57596b91a2c78a73a5e01f6f4b9c96509c7c648729f748b2fec4b8ad0f332cd5e0bd1 WHIRLPOOL 9756e8b0c1503ff9e06b926d82620692d0e22ac7acf68f90461d4ae982d758733de47084fa4a80c531500f47b2ff109e07b3f0300aa9fcaf5b05f607a8252fa1
DIST cogl-1.22.0.tar.xz 1654120 SHA256 689dfb5d14fc1106e9d2ded0f7930dcf7265d0bc84fa846b4f03941633eeaa91 SHA512 b19edced4282bd2b828357391fd6175feb483acfec87e344b7719215924dc8996dc8162d7b39d62a108d4f3ebd426caeefeab4e16b6c1962cc3383c239d6c359 WHIRLPOOL 4e77a005e51b928668be8efb85a27f679fa653d8d23ff078256141a452aa880c2d228b30d3cb406ae940d255d626f1a57741f3647a6efbb890a5f083b07bd62a
+DIST cogl-1.22.2.tar.xz 1682360 SHA256 39a718cdb64ea45225a7e94f88dddec1869ab37a21b339ad058a9d898782c00d SHA512 2ec99f5ff22683d12925b9a1f748387b47c4506aaf3c5afec851b3b6fe6b7cdfd211fb7e4359bd7a1d1b7cb3cb7fbd257efbcb7d2941d0f133a60bad1c9645e3 WHIRLPOOL 548deef9a92fba1ee183f84eb581add8f366ecb0829467025a48c0eb26e85f86ee85dbffded1174fc426f2e85ed5ede3aea75131dfe6a0df547d1440c2b0e53e
diff --git a/media-libs/cogl/cogl-1.22.2.ebuild b/media-libs/cogl/cogl-1.22.2.ebuild
new file mode 100644
index 00000000..aefbb71
--- /dev/null
+++ b/media-libs/cogl/cogl-1.22.2.ebuild
@@ -0,0 +1,137 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit eutils gnome2 multilib virtualx
+
+DESCRIPTION="A library for using 3D graphics hardware to draw pretty pictures"
+HOMEPAGE="http://www.cogl3d.org/"
+
+LICENSE="MIT BSD"
+SLOT="1.0/20" # subslot = .so version
+
+# doc and profile disable for now due to bugs #484750 and #483332
+IUSE="debug examples gles2 gstreamer +introspection +kms +opengl +pango test video_cards_fglrx wayland" # doc profile
+REQUIRED_USE="
+ wayland? ( gles2 )
+ || ( gles2 opengl )
+"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+
+COMMON_DEPEND="
+ >=dev-libs/glib-2.32:2
+ x11-libs/cairo:=
+ >=x11-libs/gdk-pixbuf-2:2
+ x11-libs/libX11
+ >=x11-libs/libXcomposite-0.4
+ x11-libs/libXdamage
+ x11-libs/libXext
+ >=x11-libs/libXfixes-3
+ >=x11-libs/libXrandr-1.2
+ virtual/opengl
+ gles2? ( media-libs/mesa[gles2] )
+ gstreamer? (
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0 )
+ introspection? ( >=dev-libs/gobject-introspection-1.34.2:= )
+ kms? (
+ media-libs/mesa[gbm]
+ x11-libs/libdrm:= )
+ pango? ( >=x11-libs/pango-1.20.0[introspection?] )
+ wayland? (
+ >=dev-libs/wayland-1.1.90
+ media-libs/mesa[egl,wayland] )
+"
+# before clutter-1.7, cogl was part of clutter
+RDEPEND="${COMMON_DEPEND}
+ !<media-libs/clutter-1.7
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-util/gtk-doc-am-1.13
+ >=sys-devel/gettext-0.19
+ virtual/pkgconfig
+ test? (
+ app-eselect/eselect-opengl
+ media-libs/mesa[classic] )
+"
+
+# Need classic mesa swrast for tests, llvmpipe causes a test failure
+# For some reason GL3 conformance test all fails again...
+RESTRICT="test"
+
+src_prepare() {
+ # Let cogl work with fglrx driver, bug #567168
+ # https://bugzilla.gnome.org/show_bug.cgi?id=756306
+ use video_cards_fglrx && eapply "${FILESDIR}"/${PN}-1.22.0-fglrx.patch
+
+ # Do not build examples
+ sed -e "s/^\(SUBDIRS +=.*\)examples\(.*\)$/\1\2/" \
+ -i Makefile.am Makefile.in || die
+
+ if ! use test ; then
+ # For some reason the configure switch will not completely disable
+ # tests being built
+ sed -e "s/^\(SUBDIRS =.*\)test-fixtures\(.*\)$/\1\2/" \
+ -e "s/^\(SUBDIRS +=.*\)tests\(.*\)$/\1\2/" \
+ -e "s/^\(.*am__append.* \)tests\(.*\)$/\1\2/" \
+ -i Makefile.am Makefile.in || die
+ fi
+
+ gnome2_src_prepare
+}
+
+src_configure() {
+ # TODO: think about quartz, sdl
+ # Prefer gl over gles2 if both are selected
+ # Profiling needs uprof, which is not available in portage yet, bug #484750
+ # FIXME: Doesn't provide prebuilt docs, but they can neither be rebuilt, bug #483332
+ gnome2_src_configure \
+ --disable-examples-install \
+ --disable-maintainer-flags \
+ --enable-cairo \
+ --enable-deprecated \
+ --enable-gdk-pixbuf \
+ --enable-glib \
+ $(use_enable debug) \
+ $(use_enable opengl glx) \
+ $(use_enable opengl gl) \
+ $(use_enable gles2) \
+ $(use_enable gles2 cogl-gles2) \
+ $(use_enable gles2 xlib-egl-platform) \
+ $(usex gles2 --with-default-driver=$(usex opengl gl gles2)) \
+ $(use_enable gstreamer cogl-gst) \
+ $(use_enable introspection) \
+ $(use_enable kms kms-egl-platform) \
+ $(use_enable pango cogl-pango) \
+ $(use_enable test unit-tests) \
+ $(use_enable wayland wayland-egl-platform) \
+ $(use_enable wayland wayland-egl-server) \
+ --disable-profile
+# $(use_enable profile)
+}
+
+src_test() {
+ # Use swrast for tests, llvmpipe is incomplete and "test_sub_texture" fails
+ # NOTE: recheck if this is needed after every mesa bump
+ if [[ "$(eselect opengl show)" != "xorg-x11" ]]; then
+ ewarn "Skipping tests because a binary OpenGL library is enabled. To"
+ ewarn "run tests for ${PN}, you need to enable the Mesa library:"
+ ewarn "# eselect opengl set xorg-x11"
+ return
+ fi
+ virtx emake check LIBGL_DRIVERS_PATH="${EROOT}/usr/$(get_libdir)/mesa"
+}
+
+src_install() {
+ if use examples; then
+ insinto /usr/share/doc/${PF}/examples
+ doins examples/{*.c,*.jpg}
+ fi
+
+ gnome2_src_install
+
+ # Remove silly examples-data directory
+ rm -rvf "${ED}/usr/share/cogl/examples-data/" || die
+}
diff --git a/media-libs/cogl/files/cogl-1.22.0-fglrx.patch b/media-libs/cogl/files/cogl-1.22.0-fglrx.patch
index e213d58..dac1419 100644
--- a/media-libs/cogl/files/cogl-1.22.0-fglrx.patch
+++ b/media-libs/cogl/files/cogl-1.22.0-fglrx.patch
@@ -1,5 +1,5 @@
---- 122/cogl/driver/gl/gl/cogl-driver-gl.c 2015-09-02 18:39:02.000000000 +0200
-+++ 122b/cogl/driver/gl/gl/cogl-driver-gl.c 2015-10-18 10:37:14.052350142 +0200
+--- a/cogl/driver/gl/gl/cogl-driver-gl.c 2015-09-02 18:39:02.000000000 +0200
++++ b/cogl/driver/gl/gl/cogl-driver-gl.c 2015-10-18 10:37:14.052350142 +0200
@@ -419,7 +419,7 @@
if (COGL_CHECK_GL_VERSION (ctx->glsl_major, ctx->glsl_minor, 1, 2))
/* We want to use version 120 if it is available so that the
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/cogl/, media-libs/cogl/files/
@ 2019-11-23 19:45 Matt Turner
0 siblings, 0 replies; 4+ messages in thread
From: Matt Turner @ 2019-11-23 19:45 UTC (permalink / raw
To: gentoo-commits
commit: 95cabb346af451e99b89c1d2dc728551855cf6af
Author: Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 23 18:14:45 2019 +0000
Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sat Nov 23 19:44:06 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=95cabb34
media-libs/cogl: Add patch to build with mesa-19.3
Closes: https://bugs.gentoo.org/692212
Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>
media-libs/cogl/cogl-1.22.2.ebuild | 5 ++
media-libs/cogl/cogl-1.22.4.ebuild | 5 ++
.../cogl/files/cogl-eglmesaext-include.patch | 60 ++++++++++++++++++++++
3 files changed, 70 insertions(+)
diff --git a/media-libs/cogl/cogl-1.22.2.ebuild b/media-libs/cogl/cogl-1.22.2.ebuild
index c3702f70dec..eae9521a25c 100644
--- a/media-libs/cogl/cogl-1.22.2.ebuild
+++ b/media-libs/cogl/cogl-1.22.2.ebuild
@@ -3,6 +3,7 @@
EAPI=6
+GNOME2_EAUTORECONF="yes"
inherit gnome2 multilib
DESCRIPTION="A library for using 3D graphics hardware to draw pretty pictures"
@@ -58,6 +59,10 @@ DEPEND="${COMMON_DEPEND}
# For some reason GL3 conformance test all fails again...
RESTRICT="test"
+PATCHES=(
+ "${FILESDIR}"/${PN}-eglmesaext-include.patch
+)
+
src_prepare() {
# Do not build examples
sed -e "s/^\(SUBDIRS +=.*\)examples\(.*\)$/\1\2/" \
diff --git a/media-libs/cogl/cogl-1.22.4.ebuild b/media-libs/cogl/cogl-1.22.4.ebuild
index 3265c8399cc..f79e884927e 100644
--- a/media-libs/cogl/cogl-1.22.4.ebuild
+++ b/media-libs/cogl/cogl-1.22.4.ebuild
@@ -3,6 +3,7 @@
EAPI=6
+GNOME2_EAUTORECONF="yes"
inherit gnome2 multilib
DESCRIPTION="A library for using 3D graphics hardware to draw pretty pictures"
@@ -58,6 +59,10 @@ DEPEND="${COMMON_DEPEND}
# For some reason GL3 conformance test all fails again...
RESTRICT="test"
+PATCHES=(
+ "${FILESDIR}"/${PN}-eglmesaext-include.patch
+)
+
src_prepare() {
# Do not build examples
sed -e "s/^\(SUBDIRS +=.*\)examples\(.*\)$/\1\2/" \
diff --git a/media-libs/cogl/files/cogl-eglmesaext-include.patch b/media-libs/cogl/files/cogl-eglmesaext-include.patch
new file mode 100644
index 00000000000..eff5c6841e1
--- /dev/null
+++ b/media-libs/cogl/files/cogl-eglmesaext-include.patch
@@ -0,0 +1,60 @@
+From 9c4764224aded552fb855b1c2b85b26d2b894adf Mon Sep 17 00:00:00 2001
+From: Alexander Tsoy <alexander@tsoy.me>
+Date: Tue, 29 Oct 2019 18:17:51 +0300
+Subject: [PATCH] Fix building against libglvnd-provided EGL headers
+
+Add missing EGL/eglmesaext.h include. When building against mesa-provided
+headers, this header is included indirectly via EGL/eglext.h.
+
+Also fix typo COGL_EGL_INCLUDE -> COGL_EGL_INCLUDES
+---
+ configure.ac | 16 ++++++++++++++--
+ 1 file changed, 14 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index da188edd..b0b0c94d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -670,10 +670,15 @@ AS_IF([test "x$enable_gles1" = "xyes"],
+ AC_SUBST([COGL_EGL_INCLUDES])
+
+ AC_CHECK_HEADERS([EGL/eglext.h],
+- [COGL_EGL_INCLUDES="$COGL_EGL_INCLUDE
++ [COGL_EGL_INCLUDES="$COGL_EGL_INCLUDES
+ #include <EGL/eglext.h>"],
+ [],
+ [$COGL_EGL_INCLUDES])
++ AC_CHECK_HEADERS([EGL/eglmesaext.h],
++ [COGL_EGL_INCLUDES="$COGL_EGL_INCLUDES
++#include <EGL/eglmesaext.h>"],
++ [],
++ [$COGL_EGL_INCLUDES])
+
+ # Check for a GLES 1.x Common Profile library with/without EGL.
+ #
+@@ -1178,6 +1183,12 @@ AS_IF([test "x$NEED_EGL" = "xyes" && test "x$EGL_CHECKED" != "xyes"],
+ [],
+ [AC_MSG_ERROR([Unable to locate required EGL headers])],
+ [#include <EGL/egl.h>])
++ AC_CHECK_HEADERS(
++ [EGL/eglmesaext.h],
++ [],
++ [AC_MSG_ERROR([Unable to locate required EGL headers])],
++ [#include <EGL/egl.h>
++#include <EGL/eglext.h>])
+
+ AC_CHECK_LIB(EGL, [eglInitialize],
+ [COGL_EXTRA_LDFLAGS="$COGL_EXTRA_LDFLAGS -lEGL"],
+@@ -1188,7 +1199,8 @@ AS_IF([test "x$NEED_EGL" = "xyes" && test "x$EGL_CHECKED" != "xyes"],
+ )
+
+ COGL_EGL_INCLUDES="#include <EGL/egl.h>
+-#include <EGL/eglext.h>"
++#include <EGL/eglext.h>
++#include <EGL/eglmesaext.h>"
+ AC_SUBST([COGL_EGL_INCLUDES])
+ ])
+
+--
+2.22.0
+
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/cogl/, media-libs/cogl/files/
@ 2021-03-27 2:58 Sam James
0 siblings, 0 replies; 4+ messages in thread
From: Sam James @ 2021-03-27 2:58 UTC (permalink / raw
To: gentoo-commits
commit: 0098ec8fad775917aeaeddc0fa4d2f7f2ad992e7
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 27 01:37:14 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Mar 27 02:57:37 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0098ec8f
media-libs/cogl: fix build with slibtool
(Closing the NEEDED bug too which I filed
in the past as I can't reproduce right now.
Possibly fixed by this.)
Thanks-to: orbea <orbea <AT> riseup.net>
Closes: https://bugs.gentoo.org/778041
Closes: https://bugs.gentoo.org/739644
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-libs/cogl/cogl-1.22.8.ebuild | 8 ++++++++
media-libs/cogl/files/cogl-1.22.8-slibtool.patch | 26 ++++++++++++++++++++++++
2 files changed, 34 insertions(+)
diff --git a/media-libs/cogl/cogl-1.22.8.ebuild b/media-libs/cogl/cogl-1.22.8.ebuild
index 9396a6fa5d4..c2fb848a363 100644
--- a/media-libs/cogl/cogl-1.22.8.ebuild
+++ b/media-libs/cogl/cogl-1.22.8.ebuild
@@ -3,6 +3,10 @@
EAPI=6
+# Temporarily needed for slibtool patch
+# It's upstreamed so should be able to drop in future
+# bug #778041
+GNOME2_EAUTORECONF="yes"
inherit gnome2 multilib
DESCRIPTION="A library for using 3D graphics hardware to draw pretty pictures"
@@ -57,6 +61,10 @@ DEPEND="${COMMON_DEPEND}
# For some reason GL3 conformance test all fails again...
RESTRICT="test"
+PATCHES=(
+ "${FILESDIR}"/${P}-slibtool.patch
+)
+
src_prepare() {
# Do not build examples
sed -e "s/^\(SUBDIRS +=.*\)examples\(.*\)$/\1\2/" \
diff --git a/media-libs/cogl/files/cogl-1.22.8-slibtool.patch b/media-libs/cogl/files/cogl-1.22.8-slibtool.patch
new file mode 100644
index 00000000000..631ba13c563
--- /dev/null
+++ b/media-libs/cogl/files/cogl-1.22.8-slibtool.patch
@@ -0,0 +1,26 @@
+https://gitlab.gnome.org/GNOME/cogl/-/merge_requests/35
+https://bugs.gentoo.org/778041
+
+From 2bd3cbed45d633fb15625d58e6b7cb8721b0ba98 Mon Sep 17 00:00:00 2001
+From: orbea <orbea@riseup.net>
+Date: Thu, 25 Mar 2021 07:17:20 -0700
+Subject: [PATCH] cogl-gles2: Fix undefined references.
+
+---
+ cogl-gles2/Makefile.am | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/cogl-gles2/Makefile.am b/cogl-gles2/Makefile.am
+index 72ec1eae..1328444e 100644
+--- a/cogl-gles2/Makefile.am
++++ b/cogl-gles2/Makefile.am
+@@ -17,6 +17,7 @@ endif
+ AM_CFLAGS = $(COGL_DEP_CFLAGS) $(COGL_EXTRA_CFLAGS) $(MAINTAINER_CFLAGS)
+
+ libcogl_gles2_la_SOURCES = cogl-gles2-api.c
++libcogl_gles2_la_LIBADD = $(top_builddir)/cogl/libcogl.la
+ libcogl_gles2_la_LDFLAGS = \
+ -no-undefined \
+ -version-info @COGL_LT_CURRENT@:@COGL_LT_REVISION@:@COGL_LT_AGE@ \
+--
+GitLab
^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-03-27 2:58 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-03-27 2:58 [gentoo-commits] repo/gentoo:master commit in: media-libs/cogl/, media-libs/cogl/files/ Sam James
-- strict thread matches above, loose matches on Subject: below --
2019-11-23 19:45 Matt Turner
2016-09-07 7:26 Gilles Dartiguelongue
2016-01-23 13:28 Pacho Ramos
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox