diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
commit | 4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch) | |
tree | ba5f07bf3f9d22d82e54a462313f5d244036c768 /media-libs/cogl |
reinit the tree, so we can have metadata
Diffstat (limited to 'media-libs/cogl')
-rw-r--r-- | media-libs/cogl/Manifest | 8 | ||||
-rw-r--r-- | media-libs/cogl/cogl-1.22.2.ebuild | 136 | ||||
-rw-r--r-- | media-libs/cogl/files/cogl-1.22.0-fglrx.patch | 10 | ||||
-rw-r--r-- | media-libs/cogl/files/cogl-1.22.0-initial-output.patch | 46 | ||||
-rw-r--r-- | media-libs/cogl/files/cogl-1.22.0-wait-flip.patch | 42 | ||||
-rw-r--r-- | media-libs/cogl/metadata.xml | 13 |
6 files changed, 255 insertions, 0 deletions
diff --git a/media-libs/cogl/Manifest b/media-libs/cogl/Manifest new file mode 100644 index 000000000000..4268289359ce --- /dev/null +++ b/media-libs/cogl/Manifest @@ -0,0 +1,8 @@ +AUX cogl-1.22.0-fglrx.patch 468 SHA256 88c3723c4bd295ba1847c7d4696ddf31e33d19a13918d78644561af5effb4457 SHA512 8587cd9cd7dfe4399333bbe46cda77e6d336fc382493594be809437401f63a61067695e0f7e6d74378cd1b7e3b7310a82530f6e2f693cbe65b32c127003ddab3 WHIRLPOOL e389ab67def02a3703e5eb4a49c6c822361f277ec1182e14843c0d521e7fea0ce6322ba76ec29bd04876434d457226b7290bcc5915b0fd2111a238b951466cf8 +AUX cogl-1.22.0-initial-output.patch 1416 SHA256 308a32de8b0360d9e50c3e9065064ebe400813ca50b6182048ad7f16016bcf76 SHA512 ba8ada5084d7bf8f49f1d9630c0f9c58161b96ac8f33d570385051c791a81315724aa369d8d85fc28ca91153723313aa9c70207c0ccf57c05d9eed28031dba27 WHIRLPOOL b70f6ab4adddcbf40347f8fb8ca100ecbc17b4e3a126e2730b74932f86e7dc6076c7ccebff455a233ff5506f4a01df234d6ef347afdd1d8c87a82277eb240f1b +AUX cogl-1.22.0-wait-flip.patch 1319 SHA256 f380fd702baa4aa3296a7080a4e26d8e9b5a5a2cd7711649e23ac334187980b9 SHA512 269fb862a90b69bceb2604cc30bd02b6c6ec7dc38884fd88cc166039100fda885c5e0e2bd714157b42d725371be10d5b097293f77f48295d1037840d088dc2a1 WHIRLPOOL deed5e6e0e947d61189405e6cc2b1d71e8754c1f39ece2391787bed94bd412c7ddc74b4dd690ac745d6100be3c5e7402735b6ece11364806481ebe3999ca9d4b +DIST cogl-1.22.2.tar.xz 1682360 SHA256 39a718cdb64ea45225a7e94f88dddec1869ab37a21b339ad058a9d898782c00d SHA512 2ec99f5ff22683d12925b9a1f748387b47c4506aaf3c5afec851b3b6fe6b7cdfd211fb7e4359bd7a1d1b7cb3cb7fbd257efbcb7d2941d0f133a60bad1c9645e3 WHIRLPOOL 548deef9a92fba1ee183f84eb581add8f366ecb0829467025a48c0eb26e85f86ee85dbffded1174fc426f2e85ed5ede3aea75131dfe6a0df547d1440c2b0e53e +EBUILD cogl-1.22.2.ebuild 4034 SHA256 d3ca411dfbfdf8dd29abb36a5fc4143e4a080e1a72b1703180ea6b1cf02a2c17 SHA512 7cacd1ada49ecff55757c9d6950d82c7f6794de3ea565228770575bb45d9de15a3c2812d89be024be1d2f7fbc509464b7a3b1c49dc2d5056db3603724f04308b WHIRLPOOL e6cd3eef068f471da2a2aabf52a78606e2ed03ec637e749498524be6e65a4891173e8c4e041edf81808af3aa3ff1b1d1a185da18a2e1e7e660d0d89cd5a45113 +MISC ChangeLog 4685 SHA256 cd2cc0b0abf87126e144abf206c24c9358bbfbbf35fc327c5244ddd86bace945 SHA512 3705b7d49fb0b7ce4c1423525785394914d49aae541e568cd3cfa7cab982fbe50f4ef56c7b054ee666893d5c8438aa4f592ef35b80a3a23191fc589cce9027e2 WHIRLPOOL 0494d02633879237cd074864e7054592a4b4bd1bc94023465598e0070902928376addab88baf67d8ecd5cbbf3f598007fcf9b2bdaea04a9bc2473c147583e3d9 +MISC ChangeLog-2015 9035 SHA256 8b8656c7cf28061acd68c639343fd12b07665728397c8da3a47a86222230e7b9 SHA512 626bba18add6e61964a055886ab1fbe365bc75ffe3288accd21f1662e9a831e0dd2bdf095355dbaa6a64aad4d13357d068a2069c3537fd5782c36e864656fe0e WHIRLPOOL e2e0f272c3be585c057889e31065d56a5f21562b165ccef36e1bb40161b7cd26ba32db9b53daed8efbef68a810ffc890db35da5f5334ef828986678a61aa5d6d +MISC metadata.xml 457 SHA256 6f41a22c2787290ee170105e277929cdc854030fd7f28df64a1eec2897cc1930 SHA512 e0e4be51119ec98c906ca2f5df69c9024d77855fafa53ec00bc30b481f33dfd98708c2c9021737f84a46121788079fdc1d9ecffc2693a3257819f05879318a44 WHIRLPOOL 6c922b316629d60731491120abdf218b61ea78e6df4d7a425a9819761ba4f767246ab8e43ae939ccda3a73ef0015637d90898e517b4de306526468feb0169f94 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 000000000000..0419b0b73888 --- /dev/null +++ b/media-libs/cogl/cogl-1.22.2.ebuild @@ -0,0 +1,136 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit gnome2 multilib virtualx + +DESCRIPTION="A library for using 3D graphics hardware to draw pretty pictures" +HOMEPAGE="https://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 ~arm64 ~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 new file mode 100644 index 000000000000..dac1419a58bc --- /dev/null +++ b/media-libs/cogl/files/cogl-1.22.0-fglrx.patch @@ -0,0 +1,10 @@ +--- 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 + * 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 000000000000..d7f9d0ff99f4 --- /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 000000000000..b7c4d99a2812 --- /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 + diff --git a/media-libs/cogl/metadata.xml b/media-libs/cogl/metadata.xml new file mode 100644 index 000000000000..009b6abd0cb6 --- /dev/null +++ b/media-libs/cogl/metadata.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer type="project"> + <email>gnome@gentoo.org</email> + <name>Gentoo GNOME Desktop</name> +</maintainer> +<use> + <flag name="gles2">Enable OpenGL ES 2.0 support</flag> + <flag name="kms">Enable KMS support.</flag> + <flag name="pango">Build cogl-pango library for <pkg>x11-libs/pango</pkg> integration</flag> +</use> +</pkgmetadata> |