diff options
Diffstat (limited to 'x11-base')
-rw-r--r-- | x11-base/xorg-server/Manifest | 10 | ||||
-rw-r--r-- | x11-base/xorg-server/files/1.11.99.902-allow-root-none.patch | 22 | ||||
-rw-r--r-- | x11-base/xorg-server/files/1.11.99.902-xserver-bg-none-root.patch | 101 | ||||
-rw-r--r-- | x11-base/xorg-server/files/xdm-setup.initd-1 | 14 | ||||
-rw-r--r-- | x11-base/xorg-server/files/xdm.confd-4 | 10 | ||||
-rw-r--r-- | x11-base/xorg-server/files/xdm.initd-9 | 216 | ||||
-rw-r--r-- | x11-base/xorg-server/files/xorg-server-1.12-disable-acpi.patch | 11 | ||||
-rw-r--r-- | x11-base/xorg-server/files/xorg-server-1.13-ia64-asm.patch | 21 | ||||
-rw-r--r-- | x11-base/xorg-server/files/xorg-sets.conf | 6 | ||||
-rw-r--r-- | x11-base/xorg-server/xorg-server-1.13.4.ebuild | 249 |
10 files changed, 660 insertions, 0 deletions
diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest new file mode 100644 index 0000000..62f7064 --- /dev/null +++ b/x11-base/xorg-server/Manifest @@ -0,0 +1,10 @@ +AUX 1.11.99.902-allow-root-none.patch 926 SHA256 f7eefe96698fd4e43a4131d25025d0b737178b02741c04cff84339cfaf48f480 SHA512 9cf12f27377603d8e791eb7b44398bc73b62a34317392cb64ca27b8d55f113e7ca420cc0091b3023fbac20a127ce66bd46acb23174f6ced0255858e8f3b7386c WHIRLPOOL 82af4d72bd8381acb5880da795dafe10b25ced5867b1cb40c3bdbb48cf7bec3cc3ac45b3a017d6b83eb3922b3531aaca627e7e76ff0fd15a53af3a14bf9f153c +AUX 1.11.99.902-xserver-bg-none-root.patch 3357 SHA256 2d538e698714c4c01e4d28a0992bed3be61875660c14040923ada869ea18b1a0 SHA512 e23b93c3c4d7e2aa8b2361db605d50cb4f76f1cb1f5ecb2f41b1eac640210e5eba98d8e18199413e4a4f762cddff04e84d720d2ef3a69a405a1b5597bb7bd4d6 WHIRLPOOL 41efd095f13a706a810e75b5308d09b15e3357fe429e6468cb090763b78dde73b3a9a2d48808f55987f527d6683720c42050bb8a1065614ba0ee95223bbee83b +AUX xdm-setup.initd-1 346 SHA256 942ce5e8d1a0770543b683dcc388bae7619a24eb9741c1cd678ed3df97c01406 SHA512 b12ef1a757213c2df2d4fb50691695fdaf00ee9edb7d4ec551980c48b6eb05598d3eda0db543719a11a82b019939fb4af82a19813d238a725dcc0d818379103e WHIRLPOOL 28a033355ec3871eba2dfdf45969e9ac354d8ae542dcb1449901af856b9c26314318f6a91cec81f2548caaede19d88e14eac2de0fd7dab8957a7358e94a594b2 +AUX xdm.confd-4 562 SHA256 9d26b72bb28611a60a6b9f942b8d8cfe47b59f926be89af9709b5912668344d8 SHA512 facfb91c0b4e0b1cae86b707d263523215633720e1e8f4595639411f936907b321643e8a06111dd3f7b74fa601476e4b0d09768edfdec762c73fa07cb227588b WHIRLPOOL d701fb5f40ecde2b2f2bb56970576c8abde1499916168fee4a6d27afbc1c0493eb17ddd1a8ee70bfbc77d553a47e219e538febada4946d19cccbdabc90f40e6f +AUX xdm.initd-9 5700 SHA256 96b1fe826db2b46b08e055d57bffd9405616b7980d9e40e95f19e52bc49eef3f SHA512 a4f652aff6a03d902da7ce1c706396911e853e78031d3246b764cb67930f20935d5aa912834add9f839742e824c380d2793b6b62592a10ad1bde646623b419d3 WHIRLPOOL ebddb96a2552a76f1d2f13b25dd773c822e8a0a5135f950163426477c689d0c35a74946a3323103d604783244e3a2f0bee5f5009b50828c90227370b13c433a9 +AUX xorg-server-1.12-disable-acpi.patch 275 SHA256 1d3878d44e2b8690bb7d1595960d06acee7f86a6a4724236a09a74900404e953 SHA512 ca52ce0931819acf46a066116b8485c3a398a56d79826a5cdb2b3b8c7809e5163e17a5954de370805dc51a3be3c75a0333d5c17c30bf99139105d705de2fff95 WHIRLPOOL 048be09bad947a5ef02d5935534c47d08439f0ceccddcdb017908bf73aa0484a69b0e42e8e6630393323305b31a8008ef8a0f4655556082245bc5fcde254aa5b +AUX xorg-server-1.13-ia64-asm.patch 1166 SHA256 525fc255734f062758877ad45a29862dfeb1fb8e7b3a476d9410a6f0d73420a2 SHA512 51b8695af30988f99a480d2ecadc6dbe7cb46d4d9461fa006d9001200dfc1bed7390025fd1ebbadc936aee90444bb5cfd892d41c5260d5c33347ee2bdc88e78e WHIRLPOOL 46d8b55b67c82118e2a36a01c739217c6e6dd02228b0a0e730b44372b77b476f4a76fcfa8a584550cdfc87db22c26839890b7719318678aaedba7db761a39c6c +AUX xorg-sets.conf 199 SHA256 1201d0337ac69d9715f4454a86dfb8a7bd1ae6f4c2578042fc08f283a997597c SHA512 910fe28f20909243044f079ff35136942b8790f4f28ac42ffc64a76b7f03cd22057087fa5e4e01192080b52c0d89000ea96d5a807c6f11f680d3f43312c5be41 WHIRLPOOL 4acac88e1688ea71df59a86a8a188b5369ad05f61e1369cd620eecd754511578e961a537ff6d0b22156f671d3485289cbc941dfe83bea24a27329b7bebb46c7d +DIST xorg-server-1.13.4.tar.bz2 5506293 SHA256 a2c969887f3c7b0f3f7d31e2ee8e91fa73ce81ba3c16d82da9150ffa302c98cf SHA512 600fe0fc77a9d6c242ec264f74624cddf5e3dd0e2eacaa65d475be638e2b4d9497bc555d753b43b24845bd6f446a811e387446f94fa98d3e75f664063a7a3d3d WHIRLPOOL 68ca7d6f121496d3a371fb4242c4e9c8fa77eae5c79a13dfec2cdbfd8f0ed82b9a97aa607923674f2e17f3380ec9a8c82d3aab9b2d8b829457a29b8330970f54 +EBUILD xorg-server-1.13.4.ebuild 7135 SHA256 cf6bf7ebe088d8f5a480a769132dbd1f5949fe6fc38b8c2fb29daa6848ceb532 SHA512 3bdfe05889056910f87112200a2b7486e3f6c409fcf3ac480d97090344223b3733be0447abb3fd06b336c3dcc51f65341d3f3612aa831622d946056840821d61 WHIRLPOOL e4f27bd3a5efb9afecff1e1c20f44fe13a55e4dcaba15f0683c5c61a845432cedafcc92d8fc6b215002cb8477249b2c0218bd875ae3f179a3216e2fa58a8fd82 diff --git a/x11-base/xorg-server/files/1.11.99.902-allow-root-none.patch b/x11-base/xorg-server/files/1.11.99.902-allow-root-none.patch new file mode 100644 index 0000000..e00f555 --- /dev/null +++ b/x11-base/xorg-server/files/1.11.99.902-allow-root-none.patch @@ -0,0 +1,22 @@ +diff --git a/dix/window.c b/dix/window.c +index 823294b..d293e90 100644 +--- a/dix/window.c ++++ b/dix/window.c +@@ -1083,12 +1083,8 @@ ChangeWindowAttributes(WindowPtr pWin, Mask vmask, XID *vlist, ClientPtr client) + if (pixID == None) { + if (pWin->backgroundState == BackgroundPixmap) + (*pScreen->DestroyPixmap) (pWin->background.pixmap); +- if (!pWin->parent) +- SetRootWindowBackground(pWin, pScreen, &index2); +- else { +- pWin->backgroundState = XaceBackgroundNoneState(pWin); +- pWin->background.pixel = pScreen->whitePixel; +- } ++ pWin->backgroundState = XaceBackgroundNoneState(pWin); ++ pWin->background.pixel = pScreen->whitePixel; + } + else if (pixID == ParentRelative) { + if (pWin->parent && +-- +1.7.7.3 + diff --git a/x11-base/xorg-server/files/1.11.99.902-xserver-bg-none-root.patch b/x11-base/xorg-server/files/1.11.99.902-xserver-bg-none-root.patch new file mode 100644 index 0000000..0355d0b --- /dev/null +++ b/x11-base/xorg-server/files/1.11.99.902-xserver-bg-none-root.patch @@ -0,0 +1,101 @@ +diff --git a/dix/window.c b/dix/window.c +index d293e90..c33514b 100644 +--- a/dix/window.c ++++ b/dix/window.c +@@ -550,9 +550,13 @@ InitRootWindow(WindowPtr pWin) + pWin->optional->cursor = rootCursor; + rootCursor->refcnt++; + ++ pWin->backingStore = defaultBackingStore; ++ pWin->forcedBS = (defaultBackingStore != NotUseful); ++ + if (party_like_its_1989) { + MakeRootTile(pWin); + backFlag |= CWBackPixmap; ++ (*pScreen->ChangeWindowAttributes)(pWin, backFlag); + } + else if (pScreen->canDoBGNoneRoot && bgNoneRoot) { + pWin->backgroundState = XaceBackgroundNoneState(pWin); +@@ -560,19 +564,9 @@ InitRootWindow(WindowPtr pWin) + backFlag |= CWBackPixmap; + } + else { +- pWin->backgroundState = BackgroundPixel; +- if (whiteRoot) +- pWin->background.pixel = pScreen->whitePixel; +- else +- pWin->background.pixel = pScreen->blackPixel; +- backFlag |= CWBackPixel; ++ /* nothing, handled in xf86CreateRootWindow */ + } + +- pWin->backingStore = defaultBackingStore; +- pWin->forcedBS = (defaultBackingStore != NotUseful); +- /* We SHOULD check for an error value here XXX */ +- (*pScreen->ChangeWindowAttributes) (pWin, backFlag); +- + MapWindow(pWin, serverClient); + } + +diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c +index 5263b5f..eb530bb 100644 +--- a/hw/xfree86/common/xf86Init.c ++++ b/hw/xfree86/common/xf86Init.c +@@ -60,6 +60,7 @@ + #ifdef XFreeXDGA + #include "dgaproc.h" + #endif ++#include "xace.h" + + #define XF86_OS_PRIVS + #include "xf86.h" +@@ -308,6 +309,7 @@ xf86CreateRootWindow(WindowPtr pWin) + int ret = TRUE; + int err = Success; + ScreenPtr pScreen = pWin->drawable.pScreen; ++ ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; + RootWinPropPtr pProp; + CreateWindowProcPtr CreateWindow = (CreateWindowProcPtr) + dixLookupPrivate(&pScreen->devPrivates, xf86CreateRootWindowKey); +@@ -357,6 +359,15 @@ xf86CreateRootWindow(WindowPtr pWin) + } + } + ++ if (pScrn->canDoBGNoneRoot) { ++ pWin->backgroundState = XaceBackgroundNoneState(pWin); ++ pWin->background.pixel = pScreen->whitePixel; ++ pScreen->ChangeWindowAttributes(pWin, CWBackPixmap | CWBorderPixel | CWCursor | CWBackingStore); ++ } else { ++ pWin->background.pixel = pScreen->blackPixel; ++ pScreen->ChangeWindowAttributes(pWin, CWBackPixel | CWBorderPixel | CWCursor | CWBackingStore); ++ } ++ + DebugF("xf86CreateRootWindow() returns %d\n", ret); + return ret; + } +diff --git a/hw/xfree86/common/xf86str.h b/hw/xfree86/common/xf86str.h +index e2ca558..e1c5331 100644 +--- a/hw/xfree86/common/xf86str.h ++++ b/hw/xfree86/common/xf86str.h +@@ -497,7 +497,7 @@ typedef struct _confdrirec { + } confDRIRec, *confDRIPtr; + + /* These values should be adjusted when new fields are added to ScrnInfoRec */ +-#define NUM_RESERVED_INTS 16 ++#define NUM_RESERVED_INTS 15 + #define NUM_RESERVED_POINTERS 14 + #define NUM_RESERVED_FUNCS 10 + +@@ -758,6 +758,9 @@ typedef struct _ScrnInfoRec { + ClockRangePtr clockRanges; + int adjustFlags; + ++ /* -nr support */ ++ int canDoBGNoneRoot; ++ + /* + * These can be used when the minor ABI version is incremented. + * The NUM_* parameters must be reduced appropriately to keep the +-- +1.7.7.3 + diff --git a/x11-base/xorg-server/files/xdm-setup.initd-1 b/x11-base/xorg-server/files/xdm-setup.initd-1 new file mode 100644 index 0000000..365664e --- /dev/null +++ b/x11-base/xorg-server/files/xdm-setup.initd-1 @@ -0,0 +1,14 @@ +#!/sbin/runscript +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/files/xdm-setup.initd-1,v 1.1 2010/04/13 10:07:39 scarabeus Exp $ + +depend() { + need localmount +} + +start() { + if get_bootparam "nox" ; then + touch /etc/.noxdm + fi +} diff --git a/x11-base/xorg-server/files/xdm.confd-4 b/x11-base/xorg-server/files/xdm.confd-4 new file mode 100644 index 0000000..c82fece --- /dev/null +++ b/x11-base/xorg-server/files/xdm.confd-4 @@ -0,0 +1,10 @@ +# We always try and start X on a static VT. The various DMs normally default +# to using VT7. If you wish to use the xdm init script, then you should ensure +# that the VT checked is the same VT your DM wants to use. We do this check to +# ensure that you haven't accidentally configured something to run on the VT +# in your /etc/inittab file so that you don't get a dead keyboard. +CHECKVT=7 + +# What display manager do you use ? [ xdm | gdm | kdm | gpe | entrance ] +# NOTE: If this is set in /etc/rc.conf, that setting will override this one. +DISPLAYMANAGER="xdm" diff --git a/x11-base/xorg-server/files/xdm.initd-9 b/x11-base/xorg-server/files/xdm.initd-9 new file mode 100644 index 0000000..c776738 --- /dev/null +++ b/x11-base/xorg-server/files/xdm.initd-9 @@ -0,0 +1,216 @@ +#!/sbin/runscript +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License, v2 +# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/files/xdm.initd-9,v 1.1 2012/11/11 01:49:30 chithanh Exp $ + +# This is here to serve as a note to myself, and future developers. +# +# Any Display manager (gdm,kdm,xdm) has the following problem: if +# it is started before any getty, and no vt is specified, it will +# usually run on vt2. When the getty on vt2 then starts, and the +# DM is already started, the getty will take control of the keyboard, +# leaving us with a "dead" keyboard. +# +# Resolution: add the following line to /etc/inittab +# +# x:a:once:/etc/X11/startDM.sh +# +# and have /etc/X11/startDM.sh start the DM in daemon mode if +# a lock is present (with the info of what DM should be started), +# else just fall through. +# +# How this basically works, is the "a" runlevel is a additional +# runlevel that you can use to fork processes with init, but the +# runlevel never gets changed to this runlevel. Along with the "a" +# runlevel, the "once" key word means that startDM.sh will only be +# run when we specify it to run, thus eliminating respawning +# startDM.sh when "xdm" is not added to the default runlevel, as was +# done previously. +# +# This script then just calls "telinit a", and init will run +# /etc/X11/startDM.sh after the current runlevel completes (this +# script should only be added to the actual runlevel the user is +# using). +# +# Martin Schlemmer +# aka Azarah +# 04 March 2002 + +depend() { + need localmount xdm-setup + + # this should start as early as possible + # we can't do 'before *' as that breaks it + # (#139824) Start after ypbind and autofs for network authentication + # (#145219 #180163) Could use lirc mouse as input device + # (#70689 comment #92) Start after consolefont to avoid display corruption + # (#291269) Start after quota, since some dm need readable home + # (#390609) gdm-3 will fail when dbus is not running + # (#366753) starting keymaps after X causes problems + after bootmisc consolefont modules netmount + after readahead-list ypbind autofs openvpn gpm lircmd + after quota keymaps + before alsasound + + # Start before X + use consolekit dbus xfs +} + +setup_dm() { + local MY_XDM + + MY_XDM=$(echo "${DISPLAYMANAGER}" | tr '[:upper:]' '[:lower:]') + + # Load our root path from profile.env + # Needed for kdm + PATH=${PATH}:$(. /etc/profile.env; echo "${ROOTPATH}") + + NAME= + case "${MY_XDM}" in + kdm|kde) + EXE=/usr/bin/kdm + PIDFILE=/var/run/kdm.pid + ;; + entrance*) + EXE=/usr/sbin/entrance + PIDFILE=/var/run/entrance.pid + ;; + gdm|gnome) + EXE=/usr/bin/gdm + [ "${RC_UNAME}" != "Linux" ] && NAME=gdm-binary + PIDFILE=/var/run/gdm.pid + ;; + wdm) + EXE=/usr/bin/wdm + PIDFILE= + ;; + gpe) + EXE=/usr/bin/gpe-dm + PIDFILE=/var/run/gpe-dm.pid + ;; + lxdm) + EXE=/usr/sbin/lxdm-binary + PIDFILE=/var/run/lxdm.pid + START_STOP_ARGS="--background" + ;; + lightdm) + EXE=/usr/sbin/lightdm + PIDFILE=/var/run/lightdm.pid + START_STOP_ARGS="--background" + ;; + *) + # first find out if there is such executable + EXE="$(command -v ${MY_XDM} 2>/dev/null)" + PIDFILE="/var/run/${MY_XDM}.pid" + + # warn user that he is doing sick things if the exe was not found + if [ -z "${EXE}" ]; then + echo "ERROR: Your XDM value is invalid." + echo " No ${MY_XDM} executable could be found on your system." + fi + ;; + esac + + if ! [ -x "${EXE}" ]; then + EXE=/usr/bin/xdm + PIDFILE=/var/run/xdm.pid + if ! [ -x "/usr/bin/xdm" ]; then + echo "ERROR: Please set your DISPLAYMANAGER variable in /etc/conf.d/xdm," + echo " or install x11-apps/xdm package" + eend 255 + fi + fi +} + +# Check to see if something is defined on our VT +vtstatic() { + if [ -e /etc/inittab ] ; then + grep -Eq "^[^#]+.*\<tty$1\>" /etc/inittab + elif [ -e /etc/ttys ] ; then + grep -q "^ttyv$(($1 - 1))" /etc/ttys + else + return 1 + fi +} + +start() { + local EXE NAME PIDFILE + setup_dm + + if [ -f /etc/.noxdm ]; then + einfo "Skipping ${EXE##*/}, /etc/.noxdm found or \"nox\" bootparam passed." + rm /etc/.noxdm + return 0 + fi + + ebegin "Setting up ${EXE##*/}" + + # save the prefered DM + save_options "service" "${EXE}" + save_options "name" "${NAME}" + save_options "pidfile" "${PIDFILE}" + save_options "start_stop_args" "${START_STOP_ARGS}" + + if [ -n "${CHECKVT-y}" ] ; then + if vtstatic "${CHECKVT:-7}" ; then + if [ -x /sbin/telinit ] && [ "${SOFTLEVEL}" != "BOOT" ] && [ "${RC_SOFTLEVEL}" != "BOOT" ]; then + ewarn "Something is already defined on VT ${CHECKVT:-7}, will start X later" + telinit a >/dev/null 2>&1 + return 0 + else + eerror "Something is already defined on VT ${CHECKVT:-7}, not starting" + return 1 + fi + fi + fi + + /etc/X11/startDM.sh + eend 0 +} + +stop() { + local curvt retval + + retval=0 + if [ -t 0 ]; then + if type fgconsole >/dev/null 2>&1; then + curvt=$(fgconsole 2>/dev/null) + else + curvt=$(tty) + case "${curvt}" in + /dev/ttyv[0-9]*) curvt=${curvt#/dev/ttyv} ;; + *) curvt= ;; + esac + fi + fi + local myexe myname mypidfile myservice + myexe=$(get_options "service") + myname=$(get_options "name") + mypidfile=$(get_options "pidfile") + myservice=${myexe##*/} + + [ -z "${myexe}" ] && return 0 + + ebegin "Stopping ${myservice}" + + if start-stop-daemon --quiet --test --stop --exec "${myexe}"; then + start-stop-daemon --stop --exec "${myexe}" --retry TERM/5/TERM/5 \ + ${mypidfile:+--pidfile} ${mypidfile} \ + ${myname:+--name} ${myname} + retval=${?} + fi + + # switch back to original vt + if [ -n "${curvt}" ]; then + if type chvt >/dev/null 2>&1; then + chvt "${curvt}" + else + vidcontrol -s "$((curvt + 1))" + fi + fi + + eend ${retval} "Error stopping ${myservice}" + return ${retval} +} + +# vim: set ts=4 : diff --git a/x11-base/xorg-server/files/xorg-server-1.12-disable-acpi.patch b/x11-base/xorg-server/files/xorg-server-1.12-disable-acpi.patch new file mode 100644 index 0000000..df43dbd --- /dev/null +++ b/x11-base/xorg-server/files/xorg-server-1.12-disable-acpi.patch @@ -0,0 +1,11 @@ +diff -ur a/configure.ac b/configure.ac +--- a/configure.ac 2011-10-31 19:40:02.000000000 +0100 ++++ b/configure.ac 2011-10-31 19:41:02.372745481 +0100 +@@ -1624,7 +1624,6 @@ + linux_alpha=yes + ;; + i*86|amd64*|x86_64*|ia64*) +- linux_acpi="yes" + ;; + *) + ;; diff --git a/x11-base/xorg-server/files/xorg-server-1.13-ia64-asm.patch b/x11-base/xorg-server/files/xorg-server-1.13-ia64-asm.patch new file mode 100644 index 0000000..0243704 --- /dev/null +++ b/x11-base/xorg-server/files/xorg-server-1.13-ia64-asm.patch @@ -0,0 +1,21 @@ +diff -ur a/hw/xfree86/common/compiler.h b/hw/xfree86/common/compiler.h +--- a/hw/xfree86/common/compiler.h 2012-10-14 01:38:50.000000000 +0200 ++++ b/hw/xfree86/common/compiler.h 2012-12-25 14:59:05.637854813 +0100 +@@ -1351,7 +1351,7 @@ + #else /* ix86 */ + + #if !defined(__SUNPRO_C) +-#if !defined(FAKEIT) && !defined(__mc68000__) && !defined(__arm__) && !defined(__sh__) && !defined(__hppa__) && !defined(__s390__) && !defined(__m32r__) ++#if !defined(FAKEIT) && !defined(__mc68000__) && !defined(__arm__) && !defined(__sh__) && !defined(__hppa__) && !defined(__s390__) && !defined(__m32r__) && !defined(__ia64__) + #ifdef GCCUSESGAS + + /* +@@ -1453,7 +1453,7 @@ + + #endif /* GCCUSESGAS */ + +-#else /* !defined(FAKEIT) && !defined(__mc68000__) && !defined(__arm__) && !defined(__sh__) && !defined(__hppa__) && !defined(__m32r__) */ ++#else /* !defined(FAKEIT) && !defined(__mc68000__) && !defined(__arm__) && !defined(__sh__) && !defined(__hppa__) && !defined(__m32r__) && !defined(__ia64__) */ + + static __inline__ void + outb(unsigned short port, unsigned char val) diff --git a/x11-base/xorg-server/files/xorg-sets.conf b/x11-base/xorg-server/files/xorg-sets.conf new file mode 100644 index 0000000..5cd8112 --- /dev/null +++ b/x11-base/xorg-server/files/xorg-sets.conf @@ -0,0 +1,6 @@ +# Rebuild all X11 modules (mostly useful after xorg-server ABI change). +[x11-module-rebuild] +class = portage.sets.dbapi.VariableSet +world-candidate = false +variable = CATEGORY +includes = x11-drivers diff --git a/x11-base/xorg-server/xorg-server-1.13.4.ebuild b/x11-base/xorg-server/xorg-server-1.13.4.ebuild new file mode 100644 index 0000000..2fef127 --- /dev/null +++ b/x11-base/xorg-server/xorg-server-1.13.4.ebuild @@ -0,0 +1,249 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/xorg-server-1.13.4.ebuild,v 1.13 2013/04/22 12:25:34 ago Exp $ + +EAPI=5 + +XORG_DOC=doc +inherit xorg-2 multilib versionator flag-o-matic +EGIT_REPO_URI="git://anongit.freedesktop.org/git/xorg/xserver" + +DESCRIPTION="X.Org X servers" +SLOT="0/${PV}" +KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux" + +IUSE_SERVERS="dmx kdrive xnest xorg xvfb" +IUSE="${IUSE_SERVERS} ipv6 minimal nptl opengl selinux +suid tslib +udev" + +RDEPEND=">=app-admin/eselect-opengl-1.0.8 + dev-libs/openssl + media-libs/freetype + >=x11-apps/iceauth-1.0.2 + >=x11-apps/rgb-1.0.3 + >=x11-apps/xauth-1.0.3 + x11-apps/xkbcomp + >=x11-libs/libdrm-2.4.20 + >=x11-libs/libpciaccess-0.12.901 + >=x11-libs/libXau-1.0.4 + >=x11-libs/libXdmcp-1.0.2 + >=x11-libs/libXfont-1.4.2 + >=x11-libs/libxkbfile-1.0.4 + >=x11-libs/pixman-0.21.8 + >=x11-libs/xtrans-1.2.2 + >=x11-misc/xbitmaps-1.0.1 + >=x11-misc/xkeyboard-config-2.4.1-r3 + dmx? ( + x11-libs/libXt + >=x11-libs/libdmx-1.0.99.1 + >=x11-libs/libX11-1.1.5 + >=x11-libs/libXaw-1.0.4 + >=x11-libs/libXext-1.0.99.4 + >=x11-libs/libXfixes-5.0 + >=x11-libs/libXi-1.2.99.1 + >=x11-libs/libXmu-1.0.3 + x11-libs/libXrender + >=x11-libs/libXres-1.0.3 + >=x11-libs/libXtst-1.0.99.2 + ) + kdrive? ( + >=x11-libs/libXext-1.0.5 + x11-libs/libXv + ) + !minimal? ( + >=x11-libs/libX11-1.1.5 + >=x11-libs/libXext-1.0.5 + >=media-libs/mesa-8[nptl=] + ) + tslib? ( >=x11-libs/tslib-1.0 ) + udev? ( >=virtual/udev-150 ) + >=x11-apps/xinit-1.3 + selinux? ( sec-policy/selinux-xserver )" + +DEPEND="${RDEPEND} + sys-devel/flex + >=x11-proto/bigreqsproto-1.1.0 + >=x11-proto/compositeproto-0.4 + >=x11-proto/damageproto-1.1 + >=x11-proto/fixesproto-5.0 + >=x11-proto/fontsproto-2.0.2 + >=x11-proto/glproto-1.4.16 + >=x11-proto/inputproto-2.1.99.3 + >=x11-proto/kbproto-1.0.3 + >=x11-proto/randrproto-1.4.0 + >=x11-proto/recordproto-1.13.99.1 + >=x11-proto/renderproto-0.11 + >=x11-proto/resourceproto-1.2.0 + >=x11-proto/scrnsaverproto-1.1 + >=x11-proto/trapproto-3.4.3 + >=x11-proto/videoproto-2.2.2 + >=x11-proto/xcmiscproto-1.2.0 + >=x11-proto/xextproto-7.1.99 + >=x11-proto/xf86dgaproto-2.0.99.1 + >=x11-proto/xf86rushproto-1.1.2 + >=x11-proto/xf86vidmodeproto-2.2.99.1 + >=x11-proto/xineramaproto-1.1.3 + >=x11-proto/xproto-7.0.22 + dmx? ( + >=x11-proto/dmxproto-2.2.99.1 + doc? ( + || ( + www-client/links + www-client/lynx + www-client/w3m + ) + ) + ) + !minimal? ( + >=x11-proto/xf86driproto-2.1.0 + >=x11-proto/dri2proto-2.8 + )" + +PDEPEND=" + xorg? ( >=x11-base/xorg-drivers-$(get_version_component_range 1-2) )" + +REQUIRED_USE="!minimal? ( + || ( ${IUSE_SERVERS} ) + )" + +#UPSTREAMED_PATCHES=( +# "${WORKDIR}/patches/" +#) + +PATCHES=( + "${UPSTREAMED_PATCHES[@]}" + "${FILESDIR}"/${PN}-1.12-disable-acpi.patch + "${FILESDIR}"/${PN}-1.13-ia64-asm.patch + "${FILESDIR}"/1.11.99.902-allow-root-none.patch + "${FILESDIR}"/1.11.99.902-xserver-bg-none-root.patch +) + +pkg_pretend() { + # older gcc is not supported + [[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \ + die "Sorry, but gcc earlier than 4.0 will not work for xorg-server." +} + +src_configure() { + # localstatedir is used for the log location; we need to override the default + # from ebuild.sh + # sysconfdir is used for the xorg.conf location; same applies + # NOTE: fop is used for doc generating ; and i have no idea if gentoo + # package it somewhere + XORG_CONFIGURE_OPTIONS=( + $(use_enable ipv6) + $(use_enable dmx) + $(use_enable kdrive) + $(use_enable kdrive kdrive-kbd) + $(use_enable kdrive kdrive-mouse) + $(use_enable kdrive kdrive-evdev) + $(use_enable suid install-setuid) + $(use_enable tslib) + $(use_enable !minimal record) + $(use_enable !minimal xfree86-utils) + $(use_enable !minimal install-libxf86config) + $(use_enable !minimal dri) + $(use_enable !minimal dri2) + $(use_enable !minimal glx) + $(use_enable opengl glx) + $(use_enable xnest) + $(use_enable xorg) + $(use_enable xvfb) + $(use_enable nptl glx-tls) + $(use_enable udev config-udev) + $(use_with doc doxygen) + $(use_with doc xmlto) + --enable-libdrm + --sysconfdir="${EPREFIX}"/etc/X11 + --localstatedir="${EPREFIX}"/var + --with-fontrootdir="${EPREFIX}"/usr/share/fonts + --with-xkb-output="${EPREFIX}"/var/lib/xkb + --disable-config-hal + --without-dtrace + --without-fop + --with-os-vendor=Gentoo + ) + + # Xorg-server requires includes from OS mesa which are not visible for + # users of binary drivers. + mkdir -p "${T}/mesa-symlinks/GL" + for i in gl glx glxmd glxproto glxtokens; do + ln -s "${EROOT}usr/$(get_libdir)/opengl/xorg-x11/include/$i.h" "${T}/mesa-symlinks/GL/$i.h" || die + done + for i in glext glxext; do + ln -s "${EROOT}usr/$(get_libdir)/opengl/global/include/$i.h" "${T}/mesa-symlinks/GL/$i.h" || die + done + append-cppflags "-I${T}/mesa-symlinks" + + xorg-2_src_configure +} + +src_install() { + xorg-2_src_install + + dynamic_libgl_install + + server_based_install + + if ! use minimal && use xorg; then + # Install xorg.conf.example into docs + dodoc "${AUTOTOOLS_BUILD_DIR}"/hw/xfree86/xorg.conf.example + fi + + newinitd "${FILESDIR}"/xdm-setup.initd-1 xdm-setup + newinitd "${FILESDIR}"/xdm.initd-9 xdm + newconfd "${FILESDIR}"/xdm.confd-4 xdm + + # install the @x11-module-rebuild set for Portage + insinto /usr/share/portage/config/sets + newins "${FILESDIR}"/xorg-sets.conf xorg.conf +} + +pkg_postinst() { + # sets up libGL and DRI2 symlinks if needed (ie, on a fresh install) + eselect opengl set xorg-x11 --use-old + + if [[ ${PV} != 9999 && $(get_version_component_range 2 ${REPLACING_VERSIONS}) != $(get_version_component_range 2 ${PV}) ]]; then + ewarn "You must rebuild all drivers if upgrading from <xorg-server-$(get_version_component_range 1-2)" + ewarn "because the ABI changed. If you cannot start X because" + ewarn "of module version mismatch errors, this is your problem." + + echo + ewarn "You can rebuild all installed packages in the x11-drivers" + ewarn "category using this command:" + ewarn " emerge @x11-module-rebuild" + fi + + if use udev && has_version virtual/udev[-keymap]; then + ewarn "virtual/udev was built without keymap support. This may cause input device" + ewarn "autoconfiguration to fail." + fi +} + +pkg_postrm() { + # Get rid of module dir to ensure opengl-update works properly + if [[ -z ${REPLACED_BY_VERSION} && -e ${EROOT}/usr/$(get_libdir)/xorg/modules ]]; then + rm -rf "${EROOT}"/usr/$(get_libdir)/xorg/modules + fi +} + +dynamic_libgl_install() { + # next section is to setup the dynamic libGL stuff + ebegin "Moving GL files for dynamic switching" + dodir /usr/$(get_libdir)/opengl/xorg-x11/extensions + local x="" + for x in "${ED}"/usr/$(get_libdir)/xorg/modules/extensions/lib{glx,dri,dri2}*; do + if [ -f ${x} -o -L ${x} ]; then + mv -f ${x} "${ED}"/usr/$(get_libdir)/opengl/xorg-x11/extensions + fi + done + eend 0 +} + +server_based_install() { + if ! use xorg; then + rm "${ED}"/usr/share/man/man1/Xserver.1x \ + "${ED}"/usr/$(get_libdir)/xserver/SecurityPolicy \ + "${ED}"/usr/$(get_libdir)/pkgconfig/xorg-server.pc \ + "${ED}"/usr/share/man/man1/Xserver.1x + fi +} |