diff options
author | Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org> | 2012-08-08 13:50:48 +0000 |
---|---|---|
committer | Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org> | 2012-08-08 13:50:48 +0000 |
commit | 8c2969ae77aaebb4a113792a756d89c592286396 (patch) | |
tree | a7e2fc74b8f8285338924698a09bde5e0d0a5ca9 /x11-libs/glamor | |
parent | Marking stream-0.4.6 ppc for bug 418681 (diff) | |
download | historical-8c2969ae77aaebb4a113792a756d89c592286396.tar.gz historical-8c2969ae77aaebb4a113792a756d89c592286396.tar.bz2 historical-8c2969ae77aaebb4a113792a756d89c592286396.zip |
Fix building against xorg-server-1.13, bug #428786.
Package-Manager: portage-2.2.0_alpha120/cvs/Linux x86_64
Diffstat (limited to 'x11-libs/glamor')
-rw-r--r-- | x11-libs/glamor/ChangeLog | 8 | ||||
-rw-r--r-- | x11-libs/glamor/Manifest | 4 | ||||
-rw-r--r-- | x11-libs/glamor/files/glamor-0.4.1-xorg-server-1.13.patch | 269 | ||||
-rw-r--r-- | x11-libs/glamor/glamor-0.4.1-r1.ebuild | 39 |
4 files changed, 318 insertions, 2 deletions
diff --git a/x11-libs/glamor/ChangeLog b/x11-libs/glamor/ChangeLog index 21fa4e7fd963..445a01bcd2e2 100644 --- a/x11-libs/glamor/ChangeLog +++ b/x11-libs/glamor/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for x11-libs/glamor # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-libs/glamor/ChangeLog,v 1.4 2012/07/31 12:14:31 chithanh Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-libs/glamor/ChangeLog,v 1.5 2012/08/08 13:50:48 chithanh Exp $ + +*glamor-0.4.1-r1 (08 Aug 2012) + + 08 Aug 2012; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org> + +files/glamor-0.4.1-xorg-server-1.13.patch, +glamor-0.4.1-r1.ebuild: + Fix building against xorg-server-1.13, bug #428786. 31 Jul 2012; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org> glamor-0.4.1.ebuild: diff --git a/x11-libs/glamor/Manifest b/x11-libs/glamor/Manifest index 0edc11b221ec..1df0d6de94a5 100644 --- a/x11-libs/glamor/Manifest +++ b/x11-libs/glamor/Manifest @@ -1,4 +1,6 @@ +AUX glamor-0.4.1-xorg-server-1.13.patch 8624 SHA256 57be969aa4b01ab350fc85f314dae1fd177376b062f7b9a12c7b78d5b193e615 SHA512 e12d2d65b0793f53a9e090633d694e8fcf4adee82fbdd9ffe3562d8f3046173906faf3b4bcf1e0285918944c8b1e8a873672c6541b5a51b0db31512e69edd51e WHIRLPOOL a2c3d6bcafa6b23bd5121dadb5a14b307797dff54aa7fea03824cea31c07043ba201818fe2b62a411a9724de16f458c405db78a829919a19130de47fb589587c DIST glamor-0.4.1.tar.gz 90349 SHA256 87d1d7fb81e235a4b7432b7c5b9cc9bf6b3d2ad1d26ded2ce48823037975d94d SHA512 c5ad4e897e976a1997f639f47f44d863ca995275955147b75c74897f7a30461ffe9002cf9d3b4c02a0f5c7e1693a665e548e44d7c2f0be3f157da8425b5366da WHIRLPOOL 2ac4d4821f8868c5ec5c869adf32133805f10a5cbf1372b7d480d14368f7ac778594709c571ddbd07240933c75acdfad1d1610aba4515caf55305b43b2820d32 +EBUILD glamor-0.4.1-r1.ebuild 872 SHA256 7c3b387793fbd0cd0d11e4b27d42c32308ba435c66d13fa0c2c3f1d6b98bfe74 SHA512 ee9d4df36a084d9f5d1d5a27c32fc47ff87faf0545f00c6912e38f594ef7139eac4f59ec7efa77f63cffd9cb58ee0c5db2370f0308955b3d63e6a0440674cbf0 WHIRLPOOL 4bf6e9a277a987dd10cca6123e0f83314174ec2a2bf202eb7092ba44a6d20553b833da21b6b14865c0a4cacc28fa9a8779e9b85a00af18e570ec323a59d3a125 EBUILD glamor-0.4.1.ebuild 845 SHA256 9ee7b34c1a82f30dc95cdb5ee8d75bb3e4de2e4fe15591330a0e9c61bfd9db2b SHA512 5eb47d9fc0b904b0a3aef3ef198ee564d9d0bc0d422836f31f83bf898e84378ced7622e34729a093cad8de8621a4cf47c97a4269d599b85e5abed363cb41433b WHIRLPOOL 20dc76b26c0daff22bdb9f2f5da4d0db85aad72f67073d7b7b843bee75b01437c2033f7fab27c4f4658071b948f052ff8e67db455e1db3acbb3867ee66fcc2a3 -MISC ChangeLog 790 SHA256 26d261778ac36cea440ba26cc9444520500ce13f69e1fa225dd9336eebd77ef7 SHA512 039e5a849ff9194d51e41c20d45b634965cf2e9ede1a16dd78feea440eb1bd3e80d05228681daa893da49d0d245f032c7e2011df7548f1458a1b919c52cde68a WHIRLPOOL 8d5f922bcf08735493d365e0e4810ae561f8f8de475ae43038819430552fddc9b99c26e3d6a27f53ad471e067ca4610673bae28540d78b0b2bdd9dbac86dad8f +MISC ChangeLog 1017 SHA256 b75dbba5cd779d51ae44053434bc01a5d6aaf2414ee0cbec6b9061c1c2f98dd9 SHA512 288fa433e04f439684a8a36b824710bd013968e928a79251b8eec1858278118ad22b8550e75ab59b71f693b1655bf9fc515a59f15e3626167c96358d0b814bdf WHIRLPOOL 46e0fc642e7a58057fbb57daa35a46c7845548023aa87a9165050aa002cb820b98444fe7b8d92265daa2b7b15d7003cfacdaaa10c2f00b64ef3962e1f6c86b37 MISC metadata.xml 223 SHA256 205a40dbb7a17f67f6d4efcda4c5649d9f56f9b27f2e00d370a24f61103bff26 SHA512 5a5214399812d56f3393dc5baa5066e0127c99aeed8cbd3315d1fb3e7119232a5cd94272e46c7ede9a1b25c7f99909754a09962514b9748f3537cd1f7d627033 WHIRLPOOL fe893e5445e4ac431992a98c126ea52ed7495b334e217b992d86a3aa200ba587d1a5ca3ff9e83a68f1216ce47e3093125ca0d4bb572b0654bf0e7a587b1cc57c diff --git a/x11-libs/glamor/files/glamor-0.4.1-xorg-server-1.13.patch b/x11-libs/glamor/files/glamor-0.4.1-xorg-server-1.13.patch new file mode 100644 index 000000000000..4e16ad584694 --- /dev/null +++ b/x11-libs/glamor/files/glamor-0.4.1-xorg-server-1.13.patch @@ -0,0 +1,269 @@ +From 726ad264f485ce1d39aa387e93ac224fb46ed059 Mon Sep 17 00:00:00 2001 +From: Zhigang Gong <zhigang.gong@linux.intel.com> +Date: Mon, 16 Jul 2012 03:25:09 +0000 +Subject: Synch with xorg 1.13 change. + +As xorg 1.13 change the scrn interaces and remove those +global arrays. Some API change cause we can't build. Now +fix it. + +Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com> +--- +diff --git a/src/glamor.c b/src/glamor.c +index 8b7dc93..d51811e 100644 +--- a/src/glamor.c ++++ b/src/glamor.c +@@ -491,7 +491,7 @@ glamor_set_pixmap_private(PixmapPtr pixmap, glamor_pixmap_private *priv) + } + + Bool +-glamor_close_screen(int idx, ScreenPtr screen) ++glamor_close_screen(CLOSE_SCREEN_ARGS_DECL) + { + glamor_screen_private *glamor_priv; + PixmapPtr screen_pixmap; +@@ -533,7 +533,7 @@ glamor_close_screen(int idx, ScreenPtr screen) + + glamor_release_screen_priv(screen); + +- return screen->CloseScreen(idx, screen); ++ return screen->CloseScreen(CLOSE_SCREEN_ARGS); + } + + +diff --git a/src/glamor.h b/src/glamor.h +index fe3e4f8..bafd543 100644 +--- a/src/glamor.h ++++ b/src/glamor.h +@@ -30,9 +30,8 @@ + #define GLAMOR_H + + #include <scrnintstr.h> +-#ifdef GLAMOR_FOR_XORG ++#include <xf86.h> + #include <xf86str.h> +-#endif + #include <pixmapstr.h> + #include <gcstruct.h> + #include <picturestr.h> +@@ -117,7 +116,11 @@ extern _X_EXPORT void glamor_fini(ScreenPtr screen); + * screen pixmap which must be a glamor pixmap and requires + * the internal data structure still exist at that time. + * Otherwise, the glamor internal structure will not be freed.*/ +-extern _X_EXPORT Bool glamor_close_screen(int idx, ScreenPtr screen); ++#ifndef XF86_SCRN_INTERFACE ++extern _X_EXPORT Bool glamor_close_screen(int scrnIndex, ScreenPtr screen); ++#else ++extern _X_EXPORT Bool glamor_close_screen(ScreenPtr screen); ++#endif + + + /* Let glamor to know the screen's fbo. The low level +diff --git a/src/glamor_egl.c b/src/glamor_egl.c +index 07acf1a..da9283b 100644 +--- a/src/glamor_egl.c ++++ b/src/glamor_egl.c +@@ -59,6 +59,7 @@ + #include <EGL/eglext.h> + + #include "glamor.h" ++#include "compat-api.h" + #include "glamor_gl_dispatch.h" + #ifdef GLX_USE_SHARED_DISPATCH + #include "glapi.h" +@@ -365,7 +366,7 @@ glamor_egl_destroy_textured_pixmap(PixmapPtr pixmap) + } + + static Bool +-glamor_egl_close_screen(int idx, ScreenPtr screen) ++glamor_egl_close_screen(CLOSE_SCREEN_ARGS_DECL) + { + ScrnInfoPtr scrn; + struct glamor_egl_screen_private *glamor_egl; +@@ -391,7 +392,7 @@ glamor_egl_close_screen(int idx, ScreenPtr screen) + + screen->CloseScreen = glamor_egl->saved_close_screen; + +- return screen->CloseScreen(idx, screen); ++ return screen->CloseScreen(CLOSE_SCREEN_ARGS); + } + + static Bool +@@ -430,10 +431,15 @@ glamor_egl_screen_init(ScreenPtr screen) + } + + static void +-glamor_egl_free_screen(int scrnIndex, int flags) ++glamor_egl_free_screen(FREE_SCREEN_ARGS_DECL) + { +- ScrnInfoPtr scrn = xf86Screens[scrnIndex]; ++ ScrnInfoPtr scrn; + struct glamor_egl_screen_private *glamor_egl; ++#ifndef XF86_SCRN_INTERFACE ++ scrn = xf86Screens[arg]; ++#else ++ scrn = arg; ++#endif + + glamor_egl = glamor_egl_get_screen_private(scrn); + if (glamor_egl != NULL) { +@@ -447,7 +453,7 @@ glamor_egl_free_screen(int scrnIndex, int flags) + #endif + scrn->FreeScreen = glamor_egl->saved_free_screen; + free(glamor_egl); +- scrn->FreeScreen(scrnIndex, flags); ++ scrn->FreeScreen(FREE_SCREEN_ARGS); + } + } + +diff --git a/src/glamor_priv.h b/src/glamor_priv.h +index 3b64c31..11d09c4 100644 +--- a/src/glamor_priv.h ++++ b/src/glamor_priv.h +@@ -38,6 +38,7 @@ + #define NDEBUG + #endif + #include "glamor.h" ++#include "compat-api.h" + + #define GL_GLEXT_PROTOTYPES + +diff --git a/src/glamor_utils.h b/src/glamor_utils.h +index a282985..eb2e202 100644 +--- a/src/glamor_utils.h ++++ b/src/glamor_utils.h +@@ -798,7 +798,10 @@ region_is_empty(pixman_region16_t *region) + return region->data && region->data->numRects == 0; + } + ++#ifndef ARRAY_SIZE + #define ARRAY_SIZE(x) (sizeof(x) / sizeof(x[0])) ++#endif ++ + #define ALIGN(i,m) (((i) + (m) - 1) & ~((m) - 1)) + #define MIN(a,b) ((a) < (b) ? (a) : (b)) + #define MAX(a,b) ((a) > (b) ? (a) : (b)) +-- +cgit v0.9.0.2-2-gbebe +From ab212d3b90cd288da46af43390feacb489db77b1 Mon Sep 17 00:00:00 2001 +From: Zhigang Gong <zhigang.gong@linux.intel.com> +Date: Mon, 16 Jul 2012 09:27:22 +0000 +Subject: Added the missed header file for xorg 1.13 compat. + +Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com> +--- +diff --git a/src/compat-api.h b/src/compat-api.h +new file mode 100644 +index 0000000..1608478 +--- a/dev/null ++++ b/src/compat-api.h +@@ -0,0 +1,107 @@ ++/* ++ * Copyright 2012 Red Hat, Inc. ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a ++ * copy of this software and associated documentation files (the "Software"), ++ * to deal in the Software without restriction, including without limitation ++ * the rights to use, copy, modify, merge, publish, distribute, sublicense, ++ * and/or sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice (including the next ++ * paragraph) shall be included in all copies or substantial portions of the ++ * Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL ++ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ++ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER ++ * DEALINGS IN THE SOFTWARE. ++ * ++ * Author: Dave Airlie <airlied@redhat.com> ++ */ ++ ++/* this file provides API compat between server post 1.13 and pre it, ++ it should be reused inside as many drivers as possible */ ++#ifndef COMPAT_API_H ++#define COMPAT_API_H ++ ++#ifndef GLYPH_HAS_GLYPH_PICTURE_ACCESSOR ++#define GetGlyphPicture(g, s) GlyphPicture((g))[(s)->myNum] ++#define SetGlyphPicture(g, s, p) GlyphPicture((g))[(s)->myNum] = p ++#endif ++ ++#ifndef XF86_HAS_SCRN_CONV ++#define xf86ScreenToScrn(s) xf86Screens[(s)->myNum] ++#define xf86ScrnToScreen(s) screenInfo.screens[(s)->scrnIndex] ++#endif ++ ++#ifndef XF86_SCRN_INTERFACE ++ ++#define SCRN_ARG_TYPE int ++#define SCRN_INFO_PTR(arg1) ScrnInfoPtr scrn = xf86Screens[(arg1)] ++ ++#define SCREEN_ARG_TYPE int ++#define SCREEN_PTR(arg1) ScreenPtr screen = screenInfo.screens[(arg1)] ++ ++#define SCREEN_INIT_ARGS_DECL int scrnIndex, ScreenPtr screen, int argc, char **argv ++ ++#define BLOCKHANDLER_ARGS_DECL int arg, pointer blockData, pointer timeout, pointer read_mask ++#define BLOCKHANDLER_ARGS arg, blockData, timeout, read_mask ++ ++#define WAKEUPHANDLER_ARGS_DECL int arg, pointer wakeupData, unsigned long result, pointer read_mask ++#define WAKEUPHANDLER_ARGS arg, wakeupData, result, read_mask ++ ++#define CLOSE_SCREEN_ARGS_DECL int scrnIndex, ScreenPtr screen ++#define CLOSE_SCREEN_ARGS scrnIndex, screen ++ ++#define ADJUST_FRAME_ARGS_DECL int arg, int x, int y, int flags ++#define ADJUST_FRAME_ARGS(arg, x, y) (arg)->scrnIndex, x, y, 0 ++ ++#define SWITCH_MODE_ARGS_DECL int arg, DisplayModePtr mode, int flags ++#define SWITCH_MODE_ARGS(arg, m) (arg)->scrnIndex, m, 0 ++ ++#define FREE_SCREEN_ARGS_DECL int arg, int flags ++#define FREE_SCREEN_ARGS arg, flags ++ ++#define VT_FUNC_ARGS_DECL int arg, int flags ++#define VT_FUNC_ARGS(flags) scrn->scrnIndex, (flags) ++ ++#define XF86_ENABLEDISABLEFB_ARG(x) ((x)->scrnIndex) ++ ++#else ++#define SCRN_ARG_TYPE ScrnInfoPtr ++#define SCRN_INFO_PTR(arg1) ScrnInfoPtr scrn = (arg1) ++ ++#define SCREEN_ARG_TYPE ScreenPtr ++#define SCREEN_PTR(arg1) ScreenPtr screen = (arg1) ++ ++#define SCREEN_INIT_ARGS_DECL ScreenPtr screen, int argc, char **argv ++ ++#define BLOCKHANDLER_ARGS_DECL ScreenPtr arg, pointer timeout, pointer read_mask ++#define BLOCKHANDLER_ARGS arg, timeout, read_mask ++ ++#define WAKEUPHANDLER_ARGS_DECL ScreenPtr arg, unsigned long result, pointer read_mask ++#define WAKEUPHANDLER_ARGS arg, result, read_mask ++ ++#define CLOSE_SCREEN_ARGS_DECL ScreenPtr screen ++#define CLOSE_SCREEN_ARGS screen ++ ++#define ADJUST_FRAME_ARGS_DECL ScrnInfoPtr arg, int x, int y ++#define ADJUST_FRAME_ARGS(arg, x, y) arg, x, y ++ ++#define SWITCH_MODE_ARGS_DECL ScrnInfoPtr arg, DisplayModePtr mode ++#define SWITCH_MODE_ARGS(arg, m) arg, m ++ ++#define FREE_SCREEN_ARGS_DECL ScrnInfoPtr arg ++#define FREE_SCREEN_ARGS arg ++ ++#define VT_FUNC_ARGS_DECL ScrnInfoPtr arg ++#define VT_FUNC_ARGS(flags) scrn ++ ++#define XF86_ENABLEDISABLEFB_ARG(x) (x) ++ ++#endif ++#endif +-- +cgit v0.9.0.2-2-gbebe diff --git a/x11-libs/glamor/glamor-0.4.1-r1.ebuild b/x11-libs/glamor/glamor-0.4.1-r1.ebuild new file mode 100644 index 000000000000..bf95cf5e1de6 --- /dev/null +++ b/x11-libs/glamor/glamor-0.4.1-r1.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-libs/glamor/glamor-0.4.1-r1.ebuild,v 1.1 2012/08/08 13:50:48 chithanh Exp $ + +EAPI=4 + +XORG_DRI=always +XORG_EAUTORECONF=yes +inherit xorg-2 + +DESCRIPTION="OpenGL based 2D rendering acceleration library" +SRC_URI="mirror://gentoo/glamor-0.4.1.tar.gz" + +KEYWORDS="~amd64 ~ia64 ~x86" +IUSE="gles" + +RDEPEND=">=x11-base/xorg-server-1.10 + media-libs/mesa[egl,gbm] + gles? ( + || ( media-libs/mesa[gles2] media-libs/mesa[gles] ) + ) + >=x11-libs/pixman-0.21.8" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${P}-xorg-server-1.13.patch +) + +pkg_setup() { + xorg-2_pkg_setup + XORG_CONFIGURE_OPTIONS=( + $(use_enable gles glamor-gles2) + ) +} + +src_prepare() { + sed -i 's/inst_LTLIBRARIES/lib_LTLIBRARIES/' src/Makefile.am || die + xorg-2_src_prepare +} |