diff options
author | 2013-08-06 11:07:00 -0500 | |
---|---|---|
committer | 2013-08-06 11:07:00 -0500 | |
commit | 02e3d806270278cc36d9e94950f21b1e353366ab (patch) | |
tree | 71b207fd6499ed00bad2d589dffcb5795d81ba72 | |
parent | mali-drivers-bin: Chromebook EGL/GLES drivers (diff) | |
download | arm-02e3d806270278cc36d9e94950f21b1e353366ab.tar.gz arm-02e3d806270278cc36d9e94950f21b1e353366ab.tar.bz2 arm-02e3d806270278cc36d9e94950f21b1e353366ab.zip |
xf86-video-armsoc: ARM Chromebook Xorg driver
4 files changed, 452 insertions, 0 deletions
diff --git a/x11-drivers/xf86-video-armsoc/Manifest b/x11-drivers/xf86-video-armsoc/Manifest new file mode 100644 index 0000000..6ae27fa --- /dev/null +++ b/x11-drivers/xf86-video-armsoc/Manifest @@ -0,0 +1,3 @@ +AUX 0001-Import-patch-from-Marcin.patch 13238 SHA256 58b4d31abd7c3bf79e9d8ce8d13d089fbf40d41c75bbf917df32d9a85029e147 SHA512 86f1396ab74b26ee93a1090ab06be0d2eb012805c2dcbf1a7ecd671dbb0d5be5b1d1bb5d0f3e1c59bd686aaac0e38a49da98c1c9c3dc4ad6bb7ca7a581d6ceb6 WHIRLPOOL 6b486ae6b24036403291a3b095fc28897dd28f2508182986e28aa0a1a9f5761413e57c03c71dfbd6840959e8cf1bb35c2dfaa9221bf455a3cc4e11e811593a13 +AUX remove-mibstore-header-include.patch 638 SHA256 bb52aed4eca3cc7b358c77302ada1452845fba3364fbe064d9fe114c5708ed77 SHA512 8bad45bb731c1d1cc7d6ccf3b62a40bdbb4683f7097f5c780a665f82559d6716b3b9475b412f5042654625ccdfa4d164b6fa3bd9d26b7bea5dd18b9f483cf664 WHIRLPOOL 04ad57ee42362190921e807d4ce25096a980edac1c3bf0fdbbcd40c9a1b6fa67f3de87928d0e8f12a419c63122111b9e944cddc43637e2f7e49a1f8764f90f2a +EBUILD xf86-video-armsoc-9999.ebuild 762 SHA256 77d1efddf2d07a3313f311666cc5d8230dee193804a02a04bf62beb6e4c26369 SHA512 023c9eb498b28a7d109f4160a892d06ca8273321786c23eda1ef1bff26954e4c2aba97e60c019a6422801be951539aecb4b87f291c74d66f55ca4304ca1fde52 WHIRLPOOL 6f38714f48d0502f43ff674cbf2cb1948fb67ddd5e8645636cdc6e220f3b661c5056af44ac73cd5f1fb8959524f8b69352e66e20a20e1dece3ec6bf817bd3d79 diff --git a/x11-drivers/xf86-video-armsoc/files/0001-Import-patch-from-Marcin.patch b/x11-drivers/xf86-video-armsoc/files/0001-Import-patch-from-Marcin.patch new file mode 100644 index 0000000..f32228e --- /dev/null +++ b/x11-drivers/xf86-video-armsoc/files/0001-Import-patch-from-Marcin.patch @@ -0,0 +1,395 @@ +From 085eef562ac36a0ec298220023b60ad12059285c Mon Sep 17 00:00:00 2001 +From: Steev Klimaszewski <steev@gentoo.org> +Date: Mon, 5 Aug 2013 22:13:07 -0500 +Subject: [PATCH] Import patch from Marcin + +--- + src/compat-api.h | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++ + src/drmmode_display.c | 4 +-- + src/omap_driver.c | 67 ++++++++++++++++------------------ + src/omap_driver.h | 3 +- + src/omap_exa.h | 6 ++-- + src/omap_exa_null.c | 4 +-- + 6 files changed, 139 insertions(+), 44 deletions(-) + create mode 100644 src/compat-api.h + +diff --git a/src/compat-api.h b/src/compat-api.h +new file mode 100644 +index 0000000..ad15fa3 +--- /dev/null ++++ b/src/compat-api.h +@@ -0,0 +1,99 @@ ++/* ++ * 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 pScrn = xf86Screens[(arg1)] ++ ++#define SCREEN_ARG_TYPE int ++#define SCREEN_PTR(arg1) ScreenPtr pScreen = screenInfo.screens[(arg1)] ++ ++#define SCREEN_INIT_ARGS_DECL int index, ScreenPtr pScreen, int argc, char **argv ++ ++#define BLOCKHANDLER_ARGS_DECL int arg, pointer blockData, pointer pTimeout, pointer pReadmask ++#define BLOCKHANDLER_ARGS arg, blockData, pTimeout, pReadmask ++ ++#define CLOSE_SCREEN_ARGS_DECL int scrnIndex, ScreenPtr pScreen ++#define CLOSE_SCREEN_ARGS scrnIndex, pScreen ++ ++#define ADJUST_FRAME_ARGS_DECL int arg, int x, int y, int flags ++ ++#define SWITCH_MODE_ARGS_DECL int arg, DisplayModePtr mode, int flags ++ ++#define FREE_SCREEN_ARGS_DECL int arg, int flags ++#define FREE_SCREEN_ARGS(x) (x)->scrnIndex, 0 ++ ++#define VT_FUNC_ARGS_DECL int arg, int flags ++#define VT_FUNC_ARGS(flags) pScrn->scrnIndex, (flags) ++ ++#define XF86_ENABLEDISABLEFB_ARG(x) ((x)->scrnIndex) ++#else ++#define SCRN_ARG_TYPE ScrnInfoPtr ++#define SCRN_INFO_PTR(arg1) ScrnInfoPtr pScrn = (arg1) ++ ++#define SCREEN_ARG_TYPE ScreenPtr ++#define SCREEN_PTR(arg1) ScreenPtr pScreen = (arg1) ++ ++#define SCREEN_INIT_ARGS_DECL ScreenPtr pScreen, int argc, char **argv ++ ++#define BLOCKHANDLER_ARGS_DECL ScreenPtr arg, pointer pTimeout, pointer pReadmask ++#define BLOCKHANDLER_ARGS arg, pTimeout, pReadmask ++ ++#define CLOSE_SCREEN_ARGS_DECL ScreenPtr pScreen ++#define CLOSE_SCREEN_ARGS pScreen ++// old ones just because ++//#define CLOSE_SCREEN_ARGS_DECL int scrnIndex, ScreenPtr pScreen ++//#define CLOSE_SCREEN_ARGS scrnIndex, pScreen ++ ++#define ADJUST_FRAME_ARGS_DECL ScrnInfoPtr arg, int x, int y ++#define SWITCH_MODE_ARGS_DECL ScrnInfoPtr arg, DisplayModePtr mode ++ ++#define FREE_SCREEN_ARGS_DECL ScrnInfoPtr arg ++#define FREE_SCREEN_ARGS(x) (x) ++ ++#define VT_FUNC_ARGS_DECL ScrnInfoPtr arg ++#define VT_FUNC_ARGS(flags) pScrn ++ ++#define XF86_ENABLEDISABLEFB_ARG(x) (x) ++ ++#endif ++ ++#endif +diff --git a/src/drmmode_display.c b/src/drmmode_display.c +index 46425d7..57533ee 100644 +--- a/src/drmmode_display.c ++++ b/src/drmmode_display.c +@@ -1540,8 +1540,6 @@ Bool drmmode_pre_init(ScrnInfoPtr pScrn, int fd, int cpp) + + TRACE_ENTER(); + +- pScrn->canDoBGNoneRoot = TRUE; +- + drmmode = calloc(1, sizeof *drmmode); + drmmode->fd = fd; + +@@ -1580,7 +1578,7 @@ Bool drmmode_pre_init(ScrnInfoPtr pScrn, int fd, int cpp) + } + + void +-drmmode_adjust_frame(ScrnInfoPtr pScrn, int x, int y, int flags) ++drmmode_adjust_frame(ScrnInfoPtr pScrn, int x, int y) + { + xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(pScrn); + xf86OutputPtr output = config->output[config->compat_output]; +diff --git a/src/omap_driver.c b/src/omap_driver.c +index 8d52f9a..4463d6d 100644 +--- a/src/omap_driver.c ++++ b/src/omap_driver.c +@@ -47,19 +47,17 @@ static const OptionInfoRec *OMAPAvailableOptions(int chipid, int busid); + static void OMAPIdentify(int flags); + static Bool OMAPProbe(DriverPtr drv, int flags); + static Bool OMAPPreInit(ScrnInfoPtr pScrn, int flags); +-static Bool OMAPScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, +- char **argv); ++static Bool OMAPScreenInit(SCREEN_INIT_ARGS_DECL); + static void OMAPLoadPalette(ScrnInfoPtr pScrn, int numColors, int *indices, + LOCO * colors, VisualPtr pVisual); +-static Bool OMAPCloseScreen(int scrnIndex, ScreenPtr pScreen); ++static Bool OMAPCloseScreen(CLOSE_SCREEN_ARGS_DECL); + static Bool OMAPCreateScreenResources(ScreenPtr pScreen); +-static void OMAPBlockHandler(int i, pointer blockData, pointer pTimeout, +- pointer pReadmask); +-static Bool OMAPSwitchMode(int scrnIndex, DisplayModePtr mode, int flags); +-static void OMAPAdjustFrame(int scrnIndex, int x, int y, int flags); +-static Bool OMAPEnterVT(int scrnIndex, int flags); +-static void OMAPLeaveVT(int scrnIndex, int flags); +-static void OMAPFreeScreen(int scrnIndex, int flags); ++static void OMAPBlockHandler(BLOCKHANDLER_ARGS_DECL); ++static Bool OMAPSwitchMode(SWITCH_MODE_ARGS_DECL); ++static void OMAPAdjustFrame(ADJUST_FRAME_ARGS_DECL); ++static Bool OMAPEnterVT(VT_FUNC_ARGS_DECL); ++static void OMAPLeaveVT(VT_FUNC_ARGS_DECL); ++static void OMAPFreeScreen(FREE_SCREEN_ARGS_DECL); + + + +@@ -668,7 +666,7 @@ OMAPAccelInit(ScreenPtr pScreen) + * save state, initialize the mode, etc. + */ + static Bool +-OMAPScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) ++OMAPScreenInit(SCREEN_INIT_ARGS_DECL) + { + ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; + OMAPPtr pOMAP = OMAPPTR(pScrn); +@@ -786,10 +784,7 @@ OMAPScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + /* Take over the virtual terminal from the console, set the desired mode, + * etc.: + */ +- if (!OMAPEnterVT(scrnIndex, 0)) { +- ERROR_MSG("OMAPEnterVT() failed!"); +- goto fail; +- } ++ OMAPEnterVT(VT_FUNC_ARGS(0)); + + /* Do some XRandR initialization: */ + if (!xf86CrtcScreenInit(pScreen)) { +@@ -856,9 +851,9 @@ OMAPLoadPalette(ScrnInfoPtr pScrn, int numColors, int *indices, + * held by pScrn). + */ + static Bool +-OMAPCloseScreen(int scrnIndex, ScreenPtr pScreen) ++OMAPCloseScreen(CLOSE_SCREEN_ARGS_DECL) + { +- ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + OMAPPtr pOMAP = OMAPPTR(pScrn); + Bool ret; + +@@ -867,18 +862,18 @@ OMAPCloseScreen(int scrnIndex, ScreenPtr pScreen) + drmmode_screen_fini(pScrn); + + if (pScrn->vtSema == TRUE) { +- OMAPLeaveVT(scrnIndex, 0); ++ OMAPLeaveVT(VT_FUNC_ARGS(0)); + } + + unwrap(pOMAP, pScreen, CloseScreen); + unwrap(pOMAP, pScreen, BlockHandler); + unwrap(pOMAP, pScreen, CreateScreenResources); + +- ret = (*pScreen->CloseScreen)(scrnIndex, pScreen); ++ ret = (*pScreen->CloseScreen)(CLOSE_SCREEN_ARGS); + + if (pOMAP->pOMAPEXA) { + if (pOMAP->pOMAPEXA->CloseScreen) { +- pOMAP->pOMAPEXA->CloseScreen(scrnIndex, pScreen); ++ pOMAP->pOMAPEXA->CloseScreen(CLOSE_SCREEN_ARGS); + } + } + +@@ -923,14 +918,14 @@ OMAPCreateScreenResources(ScreenPtr pScreen) + + + static void +-OMAPBlockHandler(int i, pointer blockData, pointer pTimeout, pointer pReadmask) ++OMAPBlockHandler(BLOCKHANDLER_ARGS_DECL) + { +- ScreenPtr pScreen = screenInfo.screens[i]; +- ScrnInfoPtr pScrn = xf86Screens[i]; ++ SCREEN_PTR(arg); ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + OMAPPtr pOMAP = OMAPPTR(pScrn); + + swap(pOMAP, pScreen, BlockHandler); +- (*pScreen->BlockHandler) (i, blockData, pTimeout, pReadmask); ++ (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS); + swap(pOMAP, pScreen, BlockHandler); + + /* TODO OMAPVideoBlockHandler(), etc.. */ +@@ -943,9 +938,9 @@ OMAPBlockHandler(int i, pointer blockData, pointer pTimeout, pointer pReadmask) + * Screen. + */ + static Bool +-OMAPSwitchMode(int scrnIndex, DisplayModePtr mode, int flags) ++OMAPSwitchMode(SWITCH_MODE_ARGS_DECL) + { +- ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; ++ SCRN_INFO_PTR(arg); + return xf86SetSingleMode(pScrn, mode, RR_Rotate_0); + } + +@@ -957,10 +952,10 @@ OMAPSwitchMode(int scrnIndex, DisplayModePtr mode, int flags) + * buffer within the "viewport" of the monitor. + */ + static void +-OMAPAdjustFrame(int scrnIndex, int x, int y, int flags) ++OMAPAdjustFrame(ADJUST_FRAME_ARGS_DECL) + { +- ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; +- drmmode_adjust_frame(pScrn, x, y, flags); ++ SCRN_INFO_PTR(arg); ++ drmmode_adjust_frame(pScrn, x, y); + } + + +@@ -972,9 +967,9 @@ OMAPAdjustFrame(int scrnIndex, int x, int y, int flags) + * HW state as needed by the X server. + */ + static Bool +-OMAPEnterVT(int scrnIndex, int flags) ++OMAPEnterVT(VT_FUNC_ARGS_DECL) + { +- ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; ++ SCRN_INFO_PTR(arg); + OMAPPtr pOMAP = OMAPPTR(pScrn); + int ret; + +@@ -1003,9 +998,9 @@ OMAPEnterVT(int scrnIndex, int flags) + * need to restore the console's HW state. + */ + static void +-OMAPLeaveVT(int scrnIndex, int flags) ++OMAPLeaveVT(VT_FUNC_ARGS_DECL) + { +- ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; ++ SCRN_INFO_PTR(arg); + OMAPPtr pOMAP = OMAPPTR(pScrn); + int ret; + +@@ -1027,9 +1022,9 @@ OMAPLeaveVT(int scrnIndex, int flags) + * up-to-and-including an unsuccessful ScreenInit() call. + */ + static void +-OMAPFreeScreen(int scrnIndex, int flags) ++OMAPFreeScreen(FREE_SCREEN_ARGS_DECL) + { +- ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; ++ SCRN_INFO_PTR(arg); + OMAPPtr pOMAP = OMAPPTR(pScrn); + + TRACE_ENTER(); +@@ -1041,7 +1036,7 @@ OMAPFreeScreen(int scrnIndex, int flags) + + if (pOMAP->pOMAPEXA) { + if (pOMAP->pOMAPEXA->FreeScreen) { +- pOMAP->pOMAPEXA->FreeScreen(scrnIndex, flags); ++ pOMAP->pOMAPEXA->FreeScreen(FREE_SCREEN_ARGS(pScrn)); + } + free(pOMAP->pOMAPEXA); + } +diff --git a/src/omap_driver.h b/src/omap_driver.h +index e07fcc2..8d49cf6 100644 +--- a/src/omap_driver.h ++++ b/src/omap_driver.h +@@ -61,6 +61,7 @@ + + #include <errno.h> + ++#include "compat-api.h" + #include "omap_exa.h" + + +@@ -240,7 +241,7 @@ static inline Bool has_dmm(OMAPPtr pOMAP) + Bool drmmode_pre_init(ScrnInfoPtr pScrn, int fd, int cpp); + void drmmode_screen_init(ScrnInfoPtr pScrn); + void drmmode_screen_fini(ScrnInfoPtr pScrn); +-void drmmode_adjust_frame(ScrnInfoPtr pScrn, int x, int y, int flags); ++void drmmode_adjust_frame(ScrnInfoPtr pScrn, int x, int y); + int drmmode_page_flip(DrawablePtr draw, uint32_t fb_id, void *priv, + int* num_flipped); + void drmmode_wait_for_event(ScrnInfoPtr pScrn); +diff --git a/src/omap_exa.h b/src/omap_exa.h +index 9980858..2c76807 100644 +--- a/src/omap_exa.h ++++ b/src/omap_exa.h +@@ -37,6 +37,8 @@ + #include "omap_util.h" + #include "exa.h" + ++#include "compat-api.h" ++ + /** + * A per-Screen structure used to communicate and coordinate between the OMAP X + * driver and an external EXA sub-module (if loaded). +@@ -50,14 +52,14 @@ typedef struct _OMAPEXARec + * generation to free per-Screen data structures (except those held by + * pScrn). + */ +- Bool (*CloseScreen)(int scrnIndex, ScreenPtr pScreen); ++ Bool (*CloseScreen)(CLOSE_SCREEN_ARGS_DECL); + + /** + * Called by X driver's FreeScreen() function at the end of each server + * lifetime to free per-ScrnInfoRec data structures, to close any external + * connections (e.g. with PVR2D, DRM), etc. + */ +- void (*FreeScreen)(int scrnIndex, int flags); ++ void (*FreeScreen)(FREE_SCREEN_ARGS_DECL); + + /** get formats supported by PutTextureImage() (for dri2 video..) */ + #define MAX_FORMATS 16 +diff --git a/src/omap_exa_null.c b/src/omap_exa_null.c +index 7d1f295..3c1e683 100644 +--- a/src/omap_exa_null.c ++++ b/src/omap_exa_null.c +@@ -77,7 +77,7 @@ PrepareCompositeFail(int op, PicturePtr pSrcPicture, PicturePtr pMaskPicture, + } + + static Bool +-CloseScreen(int scrnIndex, ScreenPtr pScreen) ++CloseScreen(CLOSE_SCREEN_ARGS_DECL) + { + #if 0 // TODO need to change CloseScreen/FreeScreen .. + exaDriverFini(pScreen); +@@ -87,7 +87,7 @@ CloseScreen(int scrnIndex, ScreenPtr pScreen) + } + + static void +-FreeScreen(int scrnIndex, int flags) ++FreeScreen(FREE_SCREEN_ARGS_DECL) + { + } + +-- +1.8.1.5 + diff --git a/x11-drivers/xf86-video-armsoc/files/remove-mibstore-header-include.patch b/x11-drivers/xf86-video-armsoc/files/remove-mibstore-header-include.patch new file mode 100644 index 0000000..f3b0177 --- /dev/null +++ b/x11-drivers/xf86-video-armsoc/files/remove-mibstore-header-include.patch @@ -0,0 +1,26 @@ +diff --git src/drmmode_display.c src/drmmode_display.c +index 57533ee..51aee29 100644 +--- src/drmmode_display.c ++++ src/drmmode_display.c +@@ -59,7 +59,7 @@ + #include "mipointer.h" + + /* All drivers implementing backing store need this */ +-#include "mibstore.h" ++//#include "mibstore.h" + + #include "micmap.h" + +diff --git src/omap_driver.h src/omap_driver.h +index 8d49cf6..cfb5a57 100644 +--- src/omap_driver.h ++++ src/omap_driver.h +@@ -40,7 +40,7 @@ + * XXX - figure out what can be removed.. + */ + #include "mipointer.h" +-#include "mibstore.h" ++//#include "mibstore.h" + #include "micmap.h" + #include "colormapst.h" + #include "xf86cmap.h" diff --git a/x11-drivers/xf86-video-armsoc/xf86-video-armsoc-9999.ebuild b/x11-drivers/xf86-video-armsoc/xf86-video-armsoc-9999.ebuild new file mode 100644 index 0000000..a25c0ae --- /dev/null +++ b/x11-drivers/xf86-video-armsoc/xf86-video-armsoc-9999.ebuild @@ -0,0 +1,28 @@ +# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU Public License v2 + +EAPI="5" +#CROS_WORKON_PROJECT="chromiumos/third_party/xf86-video-armsoc" +#CROS_WORKON_LOCALNAME="xf86-video-armsoc" + +#EGIT_REPO_URI="git://git.linaro.org/arm/xorg/driver/${PN}.git" +EGIT_REPO_URI="https://git.chromium.org/git/chromiumos/third_party/${PN}.git" + +XORG_DRI="always" +XORG_EAUTORECONF="yes" + +inherit xorg-2 git-2 eutils + +DESCRIPTION="X.Org driver for ARM devices" + +KEYWORDS="-* ~arm" + +RDEPEND=">=x11-base/xorg-server-1.9 + !x11-drivers/mali-drivers" +DEPEND="${RDEPEND}" + +src_prepare() { + epatch "${FILESDIR}"/0001-Import-patch-from-Marcin.patch + epatch "${FILESDIR}"/remove-mibstore-header-include.patch + xorg-2_src_prepare +} |