From 183f7ea83c7124a44b3d483bc8a20474e0e687ec Mon Sep 17 00:00:00 2001 From: =?utf8?q?Andreas=20H=C3=BCttel?= Date: Mon, 5 Sep 2011 22:18:32 +0000 Subject: [PATCH] Backport fix for Intel DRI mis-detection, bug 380737 Package-Manager: portage-2.1.10.13/cvs/Linux x86_64 --- kde-base/kwin/ChangeLog | 8 ++- kde-base/kwin/Manifest | 30 ++++---- kde-base/kwin/files/kwin-4.6.5-mesadri.patch | 41 +++++++++++ kde-base/kwin/kwin-4.6.5-r1.ebuild | 76 ++++++++++++++++++++ 4 files changed, 140 insertions(+), 15 deletions(-) create mode 100644 kde-base/kwin/files/kwin-4.6.5-mesadri.patch create mode 100644 kde-base/kwin/kwin-4.6.5-r1.ebuild diff --git a/kde-base/kwin/ChangeLog b/kde-base/kwin/ChangeLog index b3d9c21fb09d..ec11c50b7769 100644 --- a/kde-base/kwin/ChangeLog +++ b/kde-base/kwin/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for kde-base/kwin # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/kde-base/kwin/ChangeLog,v 1.239 2011/08/17 20:49:44 dilfridge Exp $ +# $Header: /var/cvsroot/gentoo-x86/kde-base/kwin/ChangeLog,v 1.240 2011/09/05 22:18:32 dilfridge Exp $ + +*kwin-4.6.5-r1 (05 Sep 2011) + + 05 Sep 2011; Andreas K. Huettel +kwin-4.6.5-r1.ebuild, + +files/kwin-4.6.5-mesadri.patch: + Backport fix for Intel DRI mis-detection, bug 380737 17 Aug 2011; Andreas K. Huettel -kwin-4.7.0.ebuild, kwin-4.7.0-r1.ebuild, -files/kwin-4.7.0-xcomposite_cmake_automagic.patch: diff --git a/kde-base/kwin/Manifest b/kde-base/kwin/Manifest index 1d5566a8f09d..f85ab3bd4412 100644 --- a/kde-base/kwin/Manifest +++ b/kde-base/kwin/Manifest @@ -3,29 +3,31 @@ Hash: SHA512 AUX kwin-4.4.2-xinerama_cmake_automagic.patch 923 RMD160 45519a7e51001e6f16cf4bc13f7ef99eeaff793a SHA1 22102eaa95aa07bce19262842fcda69e0bc751f0 SHA256 c1f605148ba9ea606924c934a3b79bb7b415346a3fbe2e7c1732cc6956a44157 AUX kwin-4.6.3-desktopnames.patch 1110 RMD160 627e919a4836973b0c45512101ebb6d7160a084f SHA1 a5dda38663f4c9bf30a5fc27063158d83a6514af SHA256 7883a5e98075b7366a38c7003a7620b7283f13e2c226c20301e4c8c0a06f06ad +AUX kwin-4.6.5-mesadri.patch 1580 RMD160 cf443dd3aaf4405cffe405959beb6efc559c586f SHA1 049150975b9a93df0e3d8f2b9bd58f0ea57913bb SHA256 190404c58b47c829ccd11f6fc89a9939bb181aa8e561e60a0e147a2667a1d452 AUX kwin-fix-opengl.patch 2039 RMD160 4a0d9a0134083ed87277581e77dd63b4386553fe SHA1 9b6bfca1dded2f878a989e83425faa1c2174adee SHA256 079df31ea30250bae85e693c83d7d67a6d5cf637e6baf13cd421caee7934271a DIST kde-workspace-4.7.0.tar.bz2 20049430 RMD160 20520845b336d9485bb2149191ad9f5e6a90824d SHA1 cbc61a20013c746f424681020c29480c6249fd10 SHA256 7e30d1a493b2b8981790a255edf0003bab19bf4dc3e77c37694da495a33a3468 DIST kdebase-workspace-4.6.3.tar.bz2 69349331 RMD160 ae7928eb7f524564890181a8862e657cf13727f6 SHA1 50103b7752defbab08965b665fa95361bb5b3ff6 SHA256 ab11dbfc48b94a4cb867436d91aa80a3677bdb6e49a6df8cc1c70a4f8dd5868d DIST kdebase-workspace-4.6.5.tar.bz2 69241659 RMD160 580bcfe80aeb70dc7c2ef559338a58c41227e476 SHA1 bdcdbf235b3e3941b968f57afd3d490e7ca106e5 SHA256 4df66edf88df327d10d131536e6daebdeae449fb75eebc6bfae67cf3128093c0 EBUILD kwin-4.6.3-r1.ebuild 1774 RMD160 9407c2e5ab194ad6231f0482b14e616a2e7f4a7b SHA1 4d2720f72d3e14500c8e116f62312e9a721391db SHA256 b06642d5fc28e99122f77c20a691c7ac544df78ecd8a75c7167a094e01a141c0 +EBUILD kwin-4.6.5-r1.ebuild 1807 RMD160 304f603f5ae0c8df0896e42f9cff491fa1a78112 SHA1 0ec293178ec0638a09bfa148e6c2811211f840ff SHA256 48c94ac4786b96e665911a1c07f8013057215d63322e9dac51edb445f1d01f31 EBUILD kwin-4.6.5.ebuild 1730 RMD160 65bd55c13d3a82dc04f04ecd9fbf3a7b49f63f2c SHA1 3c42496cd8811dcbffc8b57f2ececee8a5f4122f SHA256 f30d0c21eca9b8ae6186ea0741d59a269d38762e916c1c956223c5728c868072 EBUILD kwin-4.7.0-r1.ebuild 1609 RMD160 c9473ca41c856b0f42b7e9f07ebb2e4316b03532 SHA1 e9a6cfe51aa6c8bdc4da14f923cc51e5995e4851 SHA256 d34983166fe9dd5a8de33a769e0d58023740a24e59de861b6bf81a433dd096e5 -MISC ChangeLog 29199 RMD160 2d1d9ab1e59370aa84f5fec604ea05c8d463ca92 SHA1 56679b5aed6a6bf5f8fcfb911141a64c71f6df27 SHA256 5785feeca27aa7796034432593af9bf8341f52f4b349118fea44d35539f97b09 +MISC ChangeLog 29400 RMD160 be363383e5aaa28bca3bc395913091434afcb890 SHA1 ddc46d5d6ff5f0ab2c9aee5763d7d8601cd8ddd5 SHA256 db01b85141214617f094162e95ba0c25ba528a51f44cca718a64a844a4e2e7f9 MISC metadata.xml 229 RMD160 24787dda60325ca5ed6c320b09effa57d9b2f45b SHA1 98698ac5e37a3ed20414deb0de4eb70da74a2add SHA256 1cd96488355a3e48a2b0b12f09ad8e3ea923e199b4fcbf175590cd317b033af7 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.17 (GNU/Linux) -iQIcBAEBCgAGBQJOTCl3AAoJENwGBM22xffe30cP/iayC0IbfCXy2/M+Y4V95/Lx -5ImYES4oXW3wyDs0HvFxz0jQbqKaeIzlup2D6YG5w8VMaSphDtz/fUx3TXdjIw03 -2utKTHDgmdqZoZX6F4pQwtTqlHkB0xP/aGm7WN5qWtYvItfv6Oolu2Nu9fbRoQSX -+rHABj01asAvP+NEdpKcrut1WkI6Dsptr5f0cnVJsIux6OrPiYOg2ytt392J7ihz -rmbSKvYvW+VkqJrCJEyu6XI7PIU3rigVeONfmXDnIzsLJxV9T8GmsKePnoGH0xK2 -kvDquNbF9KwOn0hcnYKLvQR5bGuHToXEjGl9AQjXqU2AdUvzOjtShLRzbpvt9ZLb -/lqyHl7h+GnikQb+h61q+ddA6s3PxdWXTRV/rT6ZyuVI7tE2bAEAWv4blTuvCjyq -WVOs8BzhLcYrfyt6pu7B/mH9Z1cl71aCySjaiwjUhECE34tP9no6ryC79k+VQxw5 -USZXjM2MhIQ0u5299bpPZ1l2h1oDQoPTfQO3NVtQfYFbutQWZF741go6wiGqNrfx -BQ6KnwBY/blSAPmZK/suZclESFN4VWwWX4nc+7pe0mRjCQR6ghNGR2ryH3yBGkBw -fcN0563telxKjlWQMPJ6KLLCUewLJB2wKzpYgYy4pcnquIBo4U8T0aTx82m/2+1N -mvIYWKqHa7JPryw4sn0A -=bmfU +iQIcBAEBCgAGBQJOZUrQAAoJENwGBM22xffer6QP/A3tneGWAxfp8BRgatLQW9Fz +ftiHJBsNXAP9Wc/WHkNM3zxkt6gKUf7t2NxhoCENEhHX4A8qiWKXb6nUhZYwlBha +MVbVswTeP74sIAUFWQ8yDrxm+oMd2yH+Oh0EZ0GAwbc1FG2o8SOnAtoKTG1IEPPM +mNj9R8SGLawQKiUVKBxFS51LFyhlqzqMgqZ/+/PPqIcit2Iqlew2kTWJQMDfflO8 +FOf84uHqWw07hEnwraDsLDL6XCkjuPzf0Y66JkQOxXRZBwfawHcCxe3OTSg3tuZd +oe8l3nC9fYCfcovLmVGPMcJuLWuOPLiT6g4yjtqQh0UZVpzl4hw4zH2WMWKlSYfj +p4oEQ6Kx0w5oWl8idTVyRO+AdOzuJQMkIPDTtjBmMDoAggFrOsw6fl1J5i46hcwa +Pg/QPS2k+bipzDZ+0AVf1yf5/6+tlunvH5EDegbwBHeYhVOpmw7TBhBrkBKtEFiL +p2yX99pj8161v8XBngWaKViHVq5XaAKD/r9J1trVTxxws+PU0r7zkyalKjGtcJWH +yhDCP3SXXH4t48NTVOnyAhdFMOaYvC98wudFcBBSYqN40Ng7uQH2lfmER/qFQ4C6 +4B43RMeFv0HFlsxyvvupJUV3KjWmuvsm9qPicflxp953tlTUlcXHHB9L9zMrKeWd +IQI5cBz7JbTrCBRIlDV7 +=a426 -----END PGP SIGNATURE----- diff --git a/kde-base/kwin/files/kwin-4.6.5-mesadri.patch b/kde-base/kwin/files/kwin-4.6.5-mesadri.patch new file mode 100644 index 000000000000..41af096feac8 --- /dev/null +++ b/kde-base/kwin/files/kwin-4.6.5-mesadri.patch @@ -0,0 +1,41 @@ +commit afe966579d56f85444c432a3a6adf026d2941bd5 +Author: Martin Gräßlin +Date: Sun May 1 11:49:26 2011 +0200 + + Enable direct rendering for all Mesa drivers + + As KWin requires at least Mesa 7.10 for OpenGL we can be sure + that all Mesa drivers support DRI2 and can enable direct rendering + for it. + + Parsing the version string to identify if it is a mesa driver. + This can cause breakage again in future versions of Mesa. + Unfortunately version, vendor and renderer are the only information + queryable just with OpenGL API. + BUG: 270942 + FIXED-IN: 4.7.0 + +diff --git a/kwin/opengltest/opengltest.cpp b/kwin/opengltest/opengltest.cpp +index d2d8f70..eda7b51 100644 +--- a/kwin/opengltest/opengltest.cpp ++++ b/kwin/opengltest/opengltest.cpp +@@ -81,16 +81,9 @@ int main(int argc, char *argv[]) + if ((major == 1 && minor < 3) && !strstr(glxExtensions, "GLX_EXT_texture_from_pixmap")) + return 1; + +- // Assume that direct rendering works with DRI2 drivers +- const GLubyte *renderer = glGetString(GL_RENDERER); +- if (strstr((const char *)renderer, "DRI2")) +- return 0; +- +- // The Intel driver doesn't have DRI2 in the renderer string +- if (strstr((const char *)renderer, "GEM")) +- return 0; +- +- if (strstr((const char *)renderer, "Gallium")) ++ // Assume that all Mesa drivers support direct rendering ++ const GLubyte *version = glGetString(GL_VERSION); ++ if (strstr((const char *)version, "Mesa")) + return 0; + + // Direct contexts also work with the NVidia driver diff --git a/kde-base/kwin/kwin-4.6.5-r1.ebuild b/kde-base/kwin/kwin-4.6.5-r1.ebuild new file mode 100644 index 000000000000..0408b86f7d3a --- /dev/null +++ b/kde-base/kwin/kwin-4.6.5-r1.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/kde-base/kwin/kwin-4.6.5-r1.ebuild,v 1.1 2011/09/05 22:18:32 dilfridge Exp $ + +EAPI=4 + +KMNAME="kdebase-workspace" +OPENGL_REQUIRED="optional" +inherit kde4-meta + +DESCRIPTION="KDE window manager" +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="debug xcomposite xinerama" + +# NOTE disabled for now: captury? ( media-libs/libcaptury ) +COMMONDEPEND=" + $(add_kdebase_dep kephal) + $(add_kdebase_dep libkworkspace) + $(add_kdebase_dep liboxygenstyle) + x11-libs/libXdamage + x11-libs/libXfixes + >=x11-libs/libXrandr-1.2.1 + x11-libs/libXrender + opengl? ( + virtual/opengl + >=media-libs/mesa-7.10 + ) + xcomposite? ( x11-libs/libXcomposite ) + xinerama? ( x11-libs/libXinerama ) +" +DEPEND="${COMMONDEPEND} + x11-proto/damageproto + x11-proto/fixesproto + x11-proto/randrproto + x11-proto/renderproto + xcomposite? ( x11-proto/compositeproto ) + xinerama? ( x11-proto/xineramaproto ) +" +RDEPEND="${COMMONDEPEND} + x11-apps/scripts +" + +KMEXTRACTONLY=" + ksmserver/ + libs/kephal/ + libs/oxygen/ +" + +PATCHES=( + "${FILESDIR}/${PN}-4.4.2-xinerama_cmake_automagic.patch" + "${FILESDIR}/${PN}-fix-opengl.patch" + "${FILESDIR}/${PN}-4.6.5-mesadri.patch" +) + +src_prepare() { +# NOTE uncomment when enabled again by upstream +# if ! use captury; then +# sed -e 's:^PKGCONFIG..libcaptury:#DONOTFIND &:' \ +# -i kwin/effects/CMakeLists.txt || \ +# die "Making captury optional failed." +# fi + + kde4-meta_src_prepare +} + +src_configure() { + # FIXME Remove when activity API moved away from libkworkspace + append-cppflags "-I${EPREFIX}/usr/include/kworkspace" + + mycmakeargs=( + $(cmake-utils_use_with opengl OpenGL) + $(cmake-utils_use_with xinerama X11_Xinerama) + ) + + kde4-meta_src_configure +} -- 2.26.2