]> git.draconx.ca Git - gentoo-draconx.git/commitdiff
Add xorg-server-1.13.0 with zaphod pointer fix.
authorNick Bowler <nbowler@draconx.ca>
Wed, 24 Oct 2012 01:24:14 +0000 (21:24 -0400)
committerNick Bowler <nbowler@draconx.ca>
Wed, 24 Oct 2012 01:24:14 +0000 (21:24 -0400)
x11-base/xorg-server/Manifest
x11-base/xorg-server/files/xdm-setup.initd-1
x11-base/xorg-server/files/xdm.confd-4 [new file with mode: 0644]
x11-base/xorg-server/files/xdm.initd-8 [new file with mode: 0644]
x11-base/xorg-server/files/xorg-server-1.12-disable-acpi.patch [new file with mode: 0644]
x11-base/xorg-server/files/xorg-server-1.13.0-fix-zaphod-pointer.patch [new file with mode: 0644]
x11-base/xorg-server/xorg-server-1.13.0.ebuild [new file with mode: 0644]

index 4f0ece30197bf14a766cef92b884d96a2d82e13b..275c629b7db600a348cbda173466708669dad8e8 100644 (file)
@@ -1,12 +1,18 @@
-AUX 0001-xaa-Free-the-scratch-pixmap-header-before-freeing-th.patch 1123 RMD160 7b11ccee412d4de0efc063821dcdd4f7f0c7f006 SHA1 1552b4c356fde066c72e9edbed209af2ec4d5ef7 SHA256 aef87d2307c9f15e152c7f4666272f3a58a938c682c842c3d186440d7a55aa96
-AUX 0001-xfree86-Add-DontLie-server-flag.patch 4689 RMD160 aec4a74eefd6433815de4434e72f61e6b239edac SHA1 3f194121ad9685bfe9e0df7497b998eb72daf1b8 SHA256 0fb353c407e1a4df29fc356e9d7be1b1572091eb4761814de555c54caa9186b3
-AUX 0002-Remove-the-cacheing-of-the-last-scratch-PixmapRec.patch 8449 RMD160 978b89e43da6d4fea1b4767a2ba599c382ea2f69 SHA1 fa48c334e0064d982ba9938079d1cdcc62e84c27 SHA256 730194ae24f38423daa00726486860c552cdae97e930ec7864e678c90fe36041
-AUX 0003-shm-Replace-open-coded-version-of-GetScratchPixmapHe.patch 1460 RMD160 8a05de2c0ab885c7b4469160aa0f596af3da0791 SHA1 fdee7f6459b9e942ba8cf771836ff3ac58abfa84 SHA256 18e7728c546ba670810e7a0540ec3ea266c2ff2266cfe8a98d015b21ac0947d5
-AUX 0004-shadow-Remove-unused-ModifyPixmapHeader-wrapping.patch 1501 RMD160 7837abca53cc6263ca3afc26a2c173b13af3b9e2 SHA1 56eada8b1c1427dc1d9e701f1a87f307d8bb7149 SHA256 4b5d1c0726fc346675a26c521c00b6fd51b2e5e349f5a22ef80d54e985e9e8af
-AUX xdm-setup.initd-1 339 RMD160 dd3f50da114627d2be776b41a0d7d967ebbff477 SHA1 d86813f810aab72b81a72c298c2d230554d8e82e SHA256 018bc6acc70c708d8e3935617b8da2b84a3f5502a4db4c4731c2eaea7d3f04c0
-AUX xdm.confd-3 853 RMD160 363cd18f760650923e16579bf55f661e93dad63b SHA1 0027b98f2aeb5c43219fa4f9b7d81a05101bec6f SHA256 00af0d957ff1b4f31c1aa4701d93a54080408548792deafac5414cbfa13b89ec
-AUX xdm.initd-3 5551 RMD160 7af6e239e3e75ea88a0766ef2f4976a8b5c51c95 SHA1 bd30222c7941d50fc0f62c5008a0e3b97e2d00e0 SHA256 8f1d35638559d12ed14e8cc2e26800e0ee9a10f14c7be912c834c73d12913601
-AUX xorg-server-1.9-nouveau-default.patch 916 RMD160 0ebdf0fb76364b7fd0c520c3a2f7cc2cc1a83446 SHA1 daddde0f4f4276e12b87354d2e6825ed5c74c6eb SHA256 a7ff421dd928e3025194279f9afb7cc033a896b3417abe339741e9c6ed4b54ea
-AUX xorg-server-disable-acpi.patch 663 RMD160 7074ca5276369b746ea7606a0795232aafe07c90 SHA1 d300a37dd2e0a8aa3965948c13f6995e6767841d SHA256 5b3cc7c8bea18fe3ba81851d2846d19ffd8fab9cdf5d8f3a274846847e734200
-AUX xorg-sets.conf 199 RMD160 33815115b6e8b8360af4f0778b0e2c5fb1a9aaee SHA1 b5a2fd01a97558fa909c67f510d8a59b55e20f57 SHA256 1201d0337ac69d9715f4454a86dfb8a7bd1ae6f4c2578042fc08f283a997597c
-EBUILD xorg-server-9999.ebuild 7123 RMD160 2eaec3575e6c5a0939c0fc6e8162c117e207a947 SHA1 00b6cd72da10a9569c50e6599519241368c9f91c SHA256 91fa3c94c267bba07e44b22e3f689f76fc92df914ba2f893b832fee1fbefc055
+AUX 0001-xaa-Free-the-scratch-pixmap-header-before-freeing-th.patch 1123 SHA256 aef87d2307c9f15e152c7f4666272f3a58a938c682c842c3d186440d7a55aa96 SHA512 bb45519d4887fed60ace0fb243b94bd80bc02ffdd9bb7f093810cb18c70a7495a49b296d846272c9a817619dd0213c57073bcfeb04ce95a2e325299152356770 WHIRLPOOL e4b93fed44e9d69b2d7286810f9688315930180dd4bb5c92106a2e359236ad775f3ee73340a6efff61f14c2792b0ebe3636640c3b04f40509c894b005fbe0d3a
+AUX 0001-xfree86-Add-DontLie-server-flag.patch 4689 SHA256 0fb353c407e1a4df29fc356e9d7be1b1572091eb4761814de555c54caa9186b3 SHA512 9ca03fd2b9fa0fe1bbe495d531eb2ea9f00836477ebff886e7255226b0767755583c416981f35180529bbd82d4fba2248f90c2a02241b7597c11c539bbb38e96 WHIRLPOOL e599d2400ee152f8292795ce2f1cb6e93af648fd72315de051231cb716bb71d50b5817aaeda5b643412c95c43740280b98c8214c312dc7fc1144ab5c709d0160
+AUX 0002-Remove-the-cacheing-of-the-last-scratch-PixmapRec.patch 8449 SHA256 730194ae24f38423daa00726486860c552cdae97e930ec7864e678c90fe36041 SHA512 ae91ca161b4f11edd51c301ea4f961217e962502051339987072c85fb2189e659f99ce49002e1e4dd5d9398905040a777dd5ae34deab9f5ca2f7a5ef9bc9e4a5 WHIRLPOOL 758cf135c36f961fda4eea29158628116973e274729683bc71369d6796844b71d19126cdb75b96f7c08455bbc8f1e82c4aa3bee9a039cd56051231c23e93e677
+AUX 0003-shm-Replace-open-coded-version-of-GetScratchPixmapHe.patch 1460 SHA256 18e7728c546ba670810e7a0540ec3ea266c2ff2266cfe8a98d015b21ac0947d5 SHA512 01db777ae4462364135c86ccea96550c5abdd941f79a0bd10693214591978b61be1e17208adafc476621c13ed921b9073809ffb426f228b39e0f831664c73713 WHIRLPOOL 681185faaa0f0f750799659e8d3bafc08765d2e12040d910e12d40e3e750f918023372e997d76413d721a1aa517921913e87c3a0afad5f186d40b6609c7c2d9b
+AUX 0004-shadow-Remove-unused-ModifyPixmapHeader-wrapping.patch 1501 SHA256 4b5d1c0726fc346675a26c521c00b6fd51b2e5e349f5a22ef80d54e985e9e8af SHA512 67cbdd4b6a2c504900611cc3f1475b5d4cd1bb8c132aed416442dbd3cd325a0faa10008da5e1875a968b9af2ea63624f710498f4ec82f618b32350b1a62af5be WHIRLPOOL a4239278adc298acf4486fd3951048b89a817be2569a1520a85e1433a4641e026aa21fdd6003bd6de94d458c0c3c3dc012ecd39a12b2c824edd1dea6e03a2e69
+AUX xdm-setup.initd-1 346 SHA256 942ce5e8d1a0770543b683dcc388bae7619a24eb9741c1cd678ed3df97c01406 SHA512 b12ef1a757213c2df2d4fb50691695fdaf00ee9edb7d4ec551980c48b6eb05598d3eda0db543719a11a82b019939fb4af82a19813d238a725dcc0d818379103e WHIRLPOOL 28a033355ec3871eba2dfdf45969e9ac354d8ae542dcb1449901af856b9c26314318f6a91cec81f2548caaede19d88e14eac2de0fd7dab8957a7358e94a594b2
+AUX xdm.confd-3 853 SHA256 00af0d957ff1b4f31c1aa4701d93a54080408548792deafac5414cbfa13b89ec SHA512 bc127d71087723c446bdb342c27c10b08445fb42d32bc98f76bb78e347c591702224a59c6007bf96c75dbdbe564614bb96e6cff6407d7a09a4052c3d36e80d99 WHIRLPOOL 4337fdbc5cab1ebfaa326f13630a852aa2c9de4866ffe0f1aa42f8840a29b56c878904863ec00a7b4012263c70d038f2440cf291e403013a1f4877e077892d61
+AUX xdm.confd-4 562 SHA256 9d26b72bb28611a60a6b9f942b8d8cfe47b59f926be89af9709b5912668344d8 SHA512 facfb91c0b4e0b1cae86b707d263523215633720e1e8f4595639411f936907b321643e8a06111dd3f7b74fa601476e4b0d09768edfdec762c73fa07cb227588b WHIRLPOOL d701fb5f40ecde2b2f2bb56970576c8abde1499916168fee4a6d27afbc1c0493eb17ddd1a8ee70bfbc77d553a47e219e538febada4946d19cccbdabc90f40e6f
+AUX xdm.initd-3 5551 SHA256 8f1d35638559d12ed14e8cc2e26800e0ee9a10f14c7be912c834c73d12913601 SHA512 c79253c2f40a5dd8c008e717a4c9aed6b5b42e1129c98952709f5469bd3ae5ec17df92d222c2b42f505fb6e54e055dc8c22fcc739d9f00ffe93c052a103fecae WHIRLPOOL 97c694e868c67f73de13d8074ad19e2058bb6126597ad8501eaaef95cbb7b34ac9260f55baf4bddf4a1b60bf0484e429add2fc120e8f2797a93c44c56b07d40c
+AUX xdm.initd-8 5702 SHA256 f5f97f5ac47738f352d172185b9256c78562a91510fd3d69dbc87bb3a5d0814f SHA512 daa949c3804d8480a0d6568c02ce2b9f2c3a51f4b630762e119e3faa9d03a4632c76589cb4e6eaca26dce73fe2cbfab9a7bf81726f9c4a65c65895f224b7a12c WHIRLPOOL d292e260d1fa1b85da01a44b009b7aa3d7ff534eabd5dd691a59f2548bcdb6d86218446fa99eca3810648abaa6f033b0299fdda364b232600d1cf4087ac2d4ea
+AUX xorg-server-1.12-disable-acpi.patch 275 SHA256 1d3878d44e2b8690bb7d1595960d06acee7f86a6a4724236a09a74900404e953 SHA512 ca52ce0931819acf46a066116b8485c3a398a56d79826a5cdb2b3b8c7809e5163e17a5954de370805dc51a3be3c75a0333d5c17c30bf99139105d705de2fff95 WHIRLPOOL 048be09bad947a5ef02d5935534c47d08439f0ceccddcdb017908bf73aa0484a69b0e42e8e6630393323305b31a8008ef8a0f4655556082245bc5fcde254aa5b
+AUX xorg-server-1.13.0-fix-zaphod-pointer.patch 1404 SHA256 23861814b4283ca3fe43aae6e88ee82bcbae5713bf88eabeaef7beb94efe9707 SHA512 4429f12bfc3704bbcb7e76e07364c87d3c17ac8c6afcbaf2a7f7f0527b6726eb577408d183f3ad9cae14fdfec3181659d7c61882ffb0bd76864e84d607107597 WHIRLPOOL 2fee7d1d0379ca84b2a2907e1bac5a609278617c1669af8d2e47a893e6377469b85aabc127e7f7c9f6de9e84b9d4e1880307e90d6ad1355fcc43a381c8993d1d
+AUX xorg-server-1.9-nouveau-default.patch 916 SHA256 a7ff421dd928e3025194279f9afb7cc033a896b3417abe339741e9c6ed4b54ea SHA512 fe91ff469c2569aaf6e2ceb0decf44c46ec4be4314dcb94c42b107adf2aaa8592c84b78b1621856acfd51e604e012c35c0609a3651930999829c7040d4b46ed3 WHIRLPOOL 18ced96c233b537634ee32a5aad186764d8796c5cadc398e9406457c8ace02c6608dc7378ca37fd09ecb178c5564c16f602d46772472166ca3fcb56ac9a04e52
+AUX xorg-server-disable-acpi.patch 663 SHA256 5b3cc7c8bea18fe3ba81851d2846d19ffd8fab9cdf5d8f3a274846847e734200 SHA512 0f741e3dac610ba75c3f22cb9412d93e6d8422216100bce886be5f8d6dc49a94e0dab525039247d7af668f162b02fdab302aeb55b02a949ebf56c1f455fa68cf WHIRLPOOL 69e7425e3fbb1154b64568261ab17dc513d561a0d92558fad4e1281869b43132892f14eb89443dc11003cc62bacb4a80f86f592d9dc4bdd873f29fd970c25558
+AUX xorg-sets.conf 199 SHA256 1201d0337ac69d9715f4454a86dfb8a7bd1ae6f4c2578042fc08f283a997597c SHA512 910fe28f20909243044f079ff35136942b8790f4f28ac42ffc64a76b7f03cd22057087fa5e4e01192080b52c0d89000ea96d5a807c6f11f680d3f43312c5be41 WHIRLPOOL 4acac88e1688ea71df59a86a8a188b5369ad05f61e1369cd620eecd754511578e961a537ff6d0b22156f671d3485289cbc941dfe83bea24a27329b7bebb46c7d
+DIST xorg-server-1.13.0.tar.bz2 5469168 SHA256 548b91cb01087ad4f892428e7ac4955251cf12393e86c70420436b33848ef28a SHA512 840a341f796386156ff4eb599c4b3b96090d3fda9cdbe70c45ff175c8d01b62cb9ba04a6c73ddde90996f8b96be1a3d925c9803a3b629cb4bc317374b7b1e014 WHIRLPOOL f52984556237f7c1dd4537727050e6b8347592ef5cd8e6787c65c3fee9bdcadb9709315929636fdc89a2fb4cdfd30f5224072954ed091eafb10fd8cd64a5ac30
+EBUILD xorg-server-1.13.0.ebuild 7074 SHA256 59e947972591b6da37819c3d06c838be5d9167a9a69c70edd1e629b1b43d2eda SHA512 b23ad5a010666383127a8c20f3d6ef7293cb21c795854d9c9e297536ce12cccc24ecd2a85001bb32fd936b8020f4eb033402cb78ee33a2f6be4b8ee91f12f267 WHIRLPOOL 91bb0498d5f404fbc43da927749be4630aa70e2fb789202203e36f653427bdade51b55eca0ec486f7a9e69f7543a95ac0ba0eaf478cbf82222a8393d862f5b6a
+EBUILD xorg-server-9999.ebuild 7123 SHA256 91fa3c94c267bba07e44b22e3f689f76fc92df914ba2f893b832fee1fbefc055 SHA512 da024ed289228a1ebcb804d5ff26de3d4dc4d005520b344fd4489e9b83954abcb10e742587eaffe3045b8f0548fe64c232b37b365e8e0bc729ab2e1fc0dbc6e2 WHIRLPOOL f9d2e7f491bbb289b891cee54b35295caac271a5047c077960dfd897a7805b0660608dbf20aa5e491d9506eb8bca6b57eca6a7536e2ce44e56d4de933ff0e129
index 6ed3922ca74b65fe52fc20a40e884b4d70e9a3bf..365664e6655608b8422c65a77af74091aa9eca36 100644 (file)
@@ -1,7 +1,7 @@
 #!/sbin/runscript
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-apps/xinit/files/xdm-setup.initd-1,v 1.5 2009/09/24 17:07:56 williamh Exp $
+# $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
diff --git a/x11-base/xorg-server/files/xdm.confd-4 b/x11-base/xorg-server/files/xdm.confd-4
new file mode 100644 (file)
index 0000000..c82fece
--- /dev/null
@@ -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-8 b/x11-base/xorg-server/files/xdm.initd-8
new file mode 100644 (file)
index 0000000..539cac1
--- /dev/null
@@ -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-8,v 1.1 2012/05/01 22:08:46 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/entranced
+                       PIDFILE=/var/lib/entranced.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 (file)
index 0000000..df43dbd
--- /dev/null
@@ -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.0-fix-zaphod-pointer.patch b/x11-base/xorg-server/files/xorg-server-1.13.0-fix-zaphod-pointer.patch
new file mode 100644 (file)
index 0000000..e3e42d4
--- /dev/null
@@ -0,0 +1,42 @@
+From 29d84d5a7ca4cc12cce47de9313adeb8554fb894 Mon Sep 17 00:00:00 2001
+From: Peter Hutterer <peter.hutterer@who-t.net>
+Date: Thu, 18 Oct 2012 15:11:31 +1000
+Subject: [PATCH] dix: fix zaphod screen scrossing (#54654)
+
+POINTER_SCREEN coordinates are screen-relative. For a Zaphod setup, the
+coordinates after a screen crossing are already relative to the new screen's
+origin. Add that offset to the coordinates before re-setting.
+
+regression introduced by
+commit bafbd99080be49a17be97d2cc758fbe623369945
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Aug 8 11:34:32 2012 +1000
+
+    dix: work around scaling issues during WarpPointer (#53037)
+
+X.Org Bug 54654 <http://bugs.freedesktop.org/show_bug.cgi?id=54654>
+
+Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+---
+ dix/getevents.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/dix/getevents.c b/dix/getevents.c
+index 71d83c4..8b4379d 100644
+--- a/dix/getevents.c
++++ b/dix/getevents.c
+@@ -1400,8 +1400,9 @@ fill_pointer_events(InternalEvent *events, DeviceIntPtr pDev, int type,
+        coordinates were.
+      */
+     if (flags & POINTER_SCREEN) {
+-        screenx = sx;
+-        screeny = sy;
++        scr = miPointerGetScreen(pDev);
++        screenx = sx + scr->x;
++        screeny = sy + scr->y;
+     }
+     scr = positionSprite(pDev, (flags & POINTER_ABSOLUTE) ? Absolute : Relative,
+-- 
+1.7.11.7
+
diff --git a/x11-base/xorg-server/xorg-server-1.13.0.ebuild b/x11-base/xorg-server/xorg-server-1.13.0.ebuild
new file mode 100644 (file)
index 0000000..f640f0d
--- /dev/null
@@ -0,0 +1,248 @@
+# 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/xorg-server-1.13.0.ebuild,v 1.1 2012/09/06 13:45:59 chithanh Exp $
+
+EAPI=4
+
+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"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+
+IUSE_SERVERS="dmx kdrive xnest xorg xvfb"
+IUSE="${IUSE_SERVERS} ipv6 minimal nptl selinux 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/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-7.8_rc[nptl=]
+       )
+       tslib? ( >=x11-libs/tslib-1.0 )
+       udev? ( >=sys-fs/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.0.2
+       >=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
+               >=x11-libs/libdrm-2.4.20
+       )"
+
+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}"/${P}-fix-zaphod-pointer.patch
+)
+
+pkg_pretend() {
+       # older gcc is not supported
+       [[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
+               die "Sorry, but gcc earlier than 4.0 wont 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
+       #       --enable-install-setuid needed because sparcs default off
+       # 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 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 !minimal libdrm)
+               $(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)
+               --sysconfdir=/etc/X11
+               --localstatedir=/var
+               --enable-install-setuid
+               --with-fontrootdir=/usr/share/fonts
+               --with-xkb-output=/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-8 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 generate a list of all installed packages in the x11-drivers"
+               ewarn "category using this command:"
+               ewarn " emerge portage-utils; qlist -I -C x11-drivers/"
+               ewarn "or using sets from portage-2.2:"
+               ewarn " emerge @x11-module-rebuild"
+       fi
+
+       if use udev && has_version sys-fs/udev[-keymap]; then
+               ewarn "sys-fs/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 ${ROOT}/usr/$(get_libdir)/xorg/modules ]]; then
+               rm -rf "${ROOT}"/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 "${D}"/usr/$(get_libdir)/xorg/modules/extensions/lib{glx,dri,dri2}*; do
+                       if [ -f ${x} -o -L ${x} ]; then
+                               mv -f ${x} "${D}"/usr/$(get_libdir)/opengl/xorg-x11/extensions
+                       fi
+               done
+       eend 0
+}
+
+server_based_install() {
+       if ! use xorg; then
+               rm "${D}"/usr/share/man/man1/Xserver.1x \
+                       "${D}"/usr/$(get_libdir)/xserver/SecurityPolicy \
+                       "${D}"/usr/$(get_libdir)/pkgconfig/xorg-server.pc \
+                       "${D}"/usr/share/man/man1/Xserver.1x
+       fi
+}