Add support for multiple "Files" sections as needed for eselect-opengl, bug #541232.
authorMichał Górny <mgorny@gentoo.org>
Fri, 27 Feb 2015 21:44:58 +0000 (21:44 +0000)
committerMichał Górny <mgorny@gentoo.org>
Fri, 27 Feb 2015 21:44:58 +0000 (21:44 +0000)
Package-Manager: portage-2.2.17/cvs/Linux x86_64
Manifest-Sign-Key: 0xEFB4464E!

x11-base/xorg-server/ChangeLog
x11-base/xorg-server/Manifest
x11-base/xorg-server/files/xorg-server-1.17-support-multiple-Files-sections.patch [new file with mode: 0644]
x11-base/xorg-server/xorg-server-1.17.1-r1.ebuild [new file with mode: 0644]

index f2988fe913c87a8b00bf705e094843f491dedfe1..89b5ee6850022a92ca5090a3c66ab712df8817b0 100644 (file)
@@ -1,6 +1,14 @@
 # ChangeLog for x11-base/xorg-server
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/ChangeLog,v 1.833 2015/02/24 08:37:45 ago Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/ChangeLog,v 1.834 2015/02/27 21:44:56 mgorny Exp $
+
+*xorg-server-1.17.1-r1 (27 Feb 2015)
+
+  27 Feb 2015; Michał Górny <mgorny@gentoo.org>
+  +files/xorg-server-1.17-support-multiple-Files-sections.patch,
+  +xorg-server-1.17.1-r1.ebuild:
+  Add support for multiple "Files" sections as needed for eselect-opengl, bug
+  #541232.
 
   24 Feb 2015; Agostino Sarubbo <ago@gentoo.org> xorg-server-1.12.4-r4.ebuild,
   xorg-server-1.15.2-r2.ebuild, xorg-server-1.16.4.ebuild:
index f5137bdde6c7970d24e1bc90c3d1f97ea7787a05..5b3e072326ec8e4ada001b135f42cfbdd795cf5d 100644 (file)
@@ -13,6 +13,7 @@ AUX xorg-server-1.12-unloadsubmodule.patch 1373 SHA256 c68c4c0749b9229c3ca11c72b
 AUX xorg-server-1.17-cve-2015-0255-0.patch 3454 SHA256 eab604a006dca644132fcc98db36cb184422b16d1e0f6becd94b311565d0f79d SHA512 dcca4037cb0278fc508f8c4a9b33b8e1f21a4be7d22fb6345b2b2c30956dfd9c9e574fb1dba7e1dadd7f312c033e76286b5f94b1edb058a37e704e3b2b27f241 WHIRLPOOL 75aede9cb62103108b08ea2e5f281c2077acc692c5b503f9f4cca55348aa29c2f3dfcf04065105715c57ae3d994bb7c6942405806aba276d4e14a9d6c1dc8b06
 AUX xorg-server-1.17-cve-2015-0255-1.patch 4715 SHA256 dbd9f973ef3fab04f3889cd8a44aeacae87bf463a74209d36f014055495fdbab SHA512 493e55bfb8bf3792af91ceb5ca270f7bad9b885e1eda94e61e9c1837c837906b1134864f000610f0e79acba24a55cd1b948b866cfe634c704cc2e19d4258f5b5 WHIRLPOOL c9bcd9a84e00a466efdfe6b954592c166c6758da124b5d866f25e6ad8f77a3b3cc46c30aa7fc6a6eafa2e70af47e2cd800109ec6ed8f67d04c41db7d53b740a3
 AUX xorg-server-1.17-ia64-fix_inx_outx.patch 1539 SHA256 4c844b2d41b6412304b8a918e3cd93d8f2ab8dad8e6a22310cd87d1f3d8f5e95 SHA512 1db65132bb04eff380d38ccc8441f9f9e5286d7a47956495c0a7de7978107d15e5638d05df0aabbcd11687dd03189a7ac50fca51d755d082869aed71e66dbda1 WHIRLPOOL 8f7f3d107e2f8ce5e07d5dac9bf68b7547425943c3e6b6db92eab8bebc0194da53384c953f5e823a5284025e1bbcf18000b497d31de7c5d46e43f9cc02999915
+AUX xorg-server-1.17-support-multiple-Files-sections.patch 2256 SHA256 1cc57d2e8449d50737c507005df348610bb68241fe36e997e4803b3b8b3e6d86 SHA512 e3141727c993e02b2e067095807e96ef0cc82e2e7c8b65664d0530ef05a0f7b9170272e4e1e3523ede3f1cc23b00c4776785b8299e0b58a6e7fd56062aecefb6 WHIRLPOOL 078a5e30777a8f6e908421a1c7cc4a7e63c23f57b600bb1117bc1e8de2db0e6440870f811e65283acaa48da06fcc5666434d2bdce257709344e8f584d1525623
 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.12-cve-2014-8091..8103.patches.tar.xz 14832 SHA256 a98fd1589ef92d6f8a633326d387f2f203df72452788a6aaa2bcd4242700fe7f SHA512 2ac18d36cd8b6d9fcaf98a32e3e6b9107e420476e066a4ac9581f12e9afb7e397614761373a20d96c8fa840886b81ee0ec5cfc812e16876b4922bf6c5fe3f736 WHIRLPOOL 5c3ddd654fdecf3285d865b4b864bcaa3de87cd6005f8d500da4250b5b659db69e103743109ec3c72cb79abf24910b6de4ac05c0a7b7bcb2656d5a95c9703d38
@@ -32,24 +33,27 @@ EBUILD xorg-server-1.16.3.ebuild 7662 SHA256 ed4a52760a60b2baf5162235a5ce6d3c6c0
 EBUILD xorg-server-1.16.4-r1.ebuild 6040 SHA256 d88cab66209d4d8caa9d4d95293fba1a613c7ce5ff88b0dc52f4c3f732ebc664 SHA512 beacfe3fb75f83f5743604f38e172d0636083a659c6089a22a7b2b6231b7df2bdd095335306b8051a5d21da050724bd6a7de8d2d861deae645d7853f1bbe43b2 WHIRLPOOL 8f2d51ae801e38dc5f3bd59b7a5cfe1b47ed58c808100bd2c97bfeb8b9f86374a9ee3a460454aea2655a324a7cf89d57f5c6700193d41cdd92b58d4dce9a1280
 EBUILD xorg-server-1.16.4.ebuild 6929 SHA256 8c9801a0e99ac890428fe271bdb60437077b887395adc5c7d830b27652210d3e SHA512 3a353b773a5e253eb73b508de9b5cf3be50e8cb5f38bbe385a30ca25081c784f364b8cc2b82d122080a121d8eaea0db13de5244f46e6e7868a7f8294f38111a0 WHIRLPOOL 61962a4f062b75017d25b3348df69c2025c85f5ccba0148fb934e943f2056a2f23a8c0e8a49c4811082f68250e846ed23d64cab2f0b2c1b3f02849acc9bd39f0
 EBUILD xorg-server-1.17.0.ebuild 6157 SHA256 ebac647c8a4db55555ddc23f463a4b466c54de56c4b6e7531925e065fb83385a SHA512 857a499fddfba5101647f30b353b0a8e95ee8d0229a975d386ec5ce0b6af346fbb322e43650b9cf2a76ebc0bfc267c55d7224ca9337462eb3aa446bb329f6ad8 WHIRLPOOL 8e281cdf98b16324ab4190eb8eb3d3e1eaa1569ff1f260bf8ad0526edb3b7ef95da209075cdf9bbef49d2d2734306138065c43ca19b46a52b39330cfcdb9f156
+EBUILD xorg-server-1.17.1-r1.ebuild 6399 SHA256 12e7f6a06837668a796cffa9a49b713c8f62ab0f44e0573f8f9dcf8bb70e2f7e SHA512 5d8ada54b4cefff3ea403e23171c794021838f3c3f2f46ddd6994bce1fedbcf0bc254e412fbd47499ee87192e4841a19e24f35f4d5e2e17c0455e948c81a4326 WHIRLPOOL de8c82471a47fa14faf292a08e4d99bcfa410d8984f0ff40deec3d41fb507b76d34f77c5f08ea5b8311af8b9936ce0f08d4662e5b26323ef5422e29dc48d259d
 EBUILD xorg-server-1.17.1.ebuild 6288 SHA256 bbe3af2bbd61edaa0e21cc9afd7b234bfac98c803df92a3b732dfcf2aeee6704 SHA512 91a8d561cd5ce0557eda5cf64c93a9a618bf7da03c52bd84d8363e75f49a0ce662b8a3f471c2645eac348c1b63aa80dcfd2820acf656afa9f01ef3bb4fbffdf9 WHIRLPOOL 1cef3716b64419f8a59149a40aa3830dbee6427661723c036c06f7d7494a5396590b02c3854ff50dce6a361fad11ba64ede9bc546b955c0c7cbf5ca44c5c3968
-MISC ChangeLog 64400 SHA256 ca79b4b9fdb8473e9bdc0fa6e4a807c67d9f4f8d7a0cff586814ec1c0659f2f9 SHA512 3b3ad73b1df6f9eaf96fe9796773c9183ea9fabc59e39242720a8b82a0d6df72ab36856a0500331737b340ff14dfddbd748f3854896d5bd46ee807d260f6fb95 WHIRLPOOL f70d519fff45fa087ecdec766f7351dafd9ca088907ea8727050c2c8e122af2ad2ec3643d30febe9bc077303e3382202f98bb050538b6c9ce93f52273bb2e031
+MISC ChangeLog 64679 SHA256 24bdb847c11dd6640e512dae8ec8359ee6e36abe451e68adb9f2d9c58dfb8a40 SHA512 0cf2a54cfdf5b0495ab96b8663723d5c1095ea68b87e282c3d4cd3a7c9384d1ffe21eb15d4e9f2ce8071f970b948a02fbdf1227213b2b38200323e33ebd129fa WHIRLPOOL 2aa6b3478ec844198b184c4bb076e3ab08ed965984309b1123253d67c38a1b5374e1ac2182c6c09eef4841bb905516f1614d27fdf55d20be7d5c76a72fb9329e
 MISC ChangeLog-2009 109242 SHA256 76119bd85f64b74b4f8129911eef944e8f1baa3ae38bbfb65bcd6197a6f58c88 SHA512 200b2a1f8d66bc4461de84a5b675ae9bdc1fd38ffea339cdc69afdb613d7a6d6ffe29175fba62b10c4f9d95e050035933f59e21172bf9c545d7a70137c8d04f4 WHIRLPOOL 1c084a461e803c1a6627986cb2444cd7a23743f409df5bb1ca5f55d1e7c3106670cfc2cd4f875a479e0c75513b7937ee35b591b4016b715f7fa45209e098cece
 MISC metadata.xml 803 SHA256 11ce7d6b3d1a4b32ac268d791e3e9fc1a47e579fb0587f87caf4c064c1abc355 SHA512 73fee10d52b8012ee64bdb789d0ecc0368c418822ec823ad22c1eac3c7c4af37c561a58599db68a6638059624e6f37e7d3cb5f3fd363255a372a9614c1deaf75 WHIRLPOOL f26245d7f8c9bf8c653730e1e832781289e06e43dc6cbc1efc422b6e8e3f7342e5a94f8cb731b4c2193c40af6087048da0ca384e4f13e697f86098296936e2e2
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
-iQIcBAEBCAAGBQJU7DhaAAoJELp701BxlEWfoQoP/3rAmEJE8MxgAJ4J2LgyauAG
-JSYf8O1Q9JoftSZvmlxF7mebUTBa/vbVCHIJJWUlvfJ/Z5jiQQJqCSQx9CWjAvUE
-X0M0ekXiiNrM20mo0K00L9JBTZLeLxyDh1uzvHPIknbZMA3aMNWdLBiqcXHaQJz5
-kVT0/1PFHOWblfyeBmHPZDEKG174v03Ovt2ut70Glj6d7JejihNHsUtVLYoFLWT1
-ewCMNFt1N/XaPvOkLzQJC7kSwf7TpDNOkLMkXwv0S2ldJIjtsgwXwSfUnaBKQyP/
-Y9QRdyyieNSEDKXKM9btM3kxaq7DllbTayrrLvX6fgFDeGaM8vKCFOtli/e6H92W
-npG3jGOX11f3waCcHZ/HkiIzkgKrsNCV9Jm11Ppa+egL47HvTu66YpgDjFKZiRc1
-i4Ph1ZGuPNdUmwh7YRP0oPWy98Qy2FrWZRdyA1Jv9VlMW8yePV7uDV057m0p1XLi
-e5hW/gk6iJcrLBA9661i1EKPU71PuAV03NI6Utijl7aLHfU3fIgPk5p3t6yuFLF6
-dVfP5rVVpXv1rG2kbHjGmNZjIg+h0JeQr+Oh+mraCtnQBumhXUMi0SnfXsP9k9vi
-gTQErYEhxwCcELA7xc9Oe1OkmIoQpFczdx9abnRrtsSUrpkcb2NYiZB/Z3MItMdH
-8y/o3wsXVlcO257h9knr
-=2G3x
+iQJ8BAEBCABmBQJU8OVZXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
+ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ2REJCMDdDQzRGMERBRDA2RUEwQUZFNDFC
+MDdBMUFFQUVGQjQ0NjRFAAoJELB6GurvtEZOImkQAKurgCYDHMQQ6Kew5EPxvZDi
+vjwj/98TK7kioAi0D0eWJYmMY+FFeSJYlYQgpFTq495kn5V+ylezaFobwZeHSnWs
+YMZ24N6CaqyLt8UM45qkzqadl0okNXlhFTvwR8SPBCXPyQyVIeoPh0FVCjrrqKBc
+N2O6kXudTooxaEvPI3dTx6pGQ6k+cgp5BqlRtSnQnOBmUkiURl2zkeT+sZz4C470
+dP1Qa9C7CDZPCYljZso8FFrb2zCwh94nbSrvr0L8kssOE1zlG1yWP0Fn6c4EErTs
+s0j4GA8j0cD2d+vPEyNc8TeG6VGf9XCxbJQVUOWxaC88CzcrFqfYnpV2pSGibF8C
+8+f4khpO3daK6mBBSpySeb91TmHA4leCH0ozlw2K7aPahwr47xrlZx1bOLAwrjXd
+e6wnNJ+DK8z3v124uFdt8YMtVvniJ3pmOGF2GCImg7nkqzEELb88vhOEkD18Kx9I
+zmpB8gbn32ytdsrTFQWsaRSArxua3hzgG6Sk+7stZNaodMVaeC4eS/1V6qbsriWL
+7TS9KuQ75oJ8QTpe+63LJnOToJpTShigeHYUO+gOqixNVoBLNmdP1F9yq3vHi6Hj
+rS+fJNODghUjLeCDkoj/7yPozQpe0cA9UmpL/SDSlG6DlJQ+f0NmYaWfTMY8Nudb
+GJqCsdXXtNgJJtkimbjd
+=vhez
 -----END PGP SIGNATURE-----
diff --git a/x11-base/xorg-server/files/xorg-server-1.17-support-multiple-Files-sections.patch b/x11-base/xorg-server/files/xorg-server-1.17-support-multiple-Files-sections.patch
new file mode 100644 (file)
index 0000000..789a118
--- /dev/null
@@ -0,0 +1,65 @@
+From a140d7ce3f37f30b4fed27c5a70ebcc4ed13c612 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Tue, 24 Feb 2015 12:57:24 +0100
+Subject: [PATCH] config: Support multiple 'Files' sections
+
+---
+ hw/xfree86/parser/Files.c       | 8 ++++++--
+ hw/xfree86/parser/configProcs.h | 2 +-
+ hw/xfree86/parser/read.c        | 2 +-
+ 3 files changed, 8 insertions(+), 4 deletions(-)
+
+diff --git a/hw/xfree86/parser/Files.c b/hw/xfree86/parser/Files.c
+index 849bf92..5cc3ec7 100644
+--- a/hw/xfree86/parser/Files.c
++++ b/hw/xfree86/parser/Files.c
+@@ -76,14 +76,18 @@ static xf86ConfigSymTabRec FilesTab[] = {
+ #define CLEANUP xf86freeFiles
+ 
+ XF86ConfFilesPtr
+-xf86parseFilesSection(void)
++xf86parseFilesSection(XF86ConfFilesPtr ptr)
+ {
+     int i, j;
+     int k, l;
+     char *str;
+     int token;
+ 
+-    parsePrologue(XF86ConfFilesPtr, XF86ConfFilesRec)
++    if (!ptr) {
++      if( (ptr=calloc(1,sizeof(XF86ConfFilesRec))) == NULL ) {
++              return NULL;
++      }
++    }
+ 
+         while ((token = xf86getToken(FilesTab)) != ENDSECTION) {
+         switch (token) {
+diff --git a/hw/xfree86/parser/configProcs.h b/hw/xfree86/parser/configProcs.h
+index 774e2a2..b9fdebb 100644
+--- a/hw/xfree86/parser/configProcs.h
++++ b/hw/xfree86/parser/configProcs.h
+@@ -37,7 +37,7 @@ void xf86freeDeviceList(XF86ConfDevicePtr ptr);
+ int xf86validateDevice(XF86ConfigPtr p);
+ 
+ /* Files.c */
+-XF86ConfFilesPtr xf86parseFilesSection(void);
++XF86ConfFilesPtr xf86parseFilesSection(XF86ConfFilesPtr ptr);
+ void xf86printFileSection(FILE * cf, XF86ConfFilesPtr ptr);
+ void xf86freeFiles(XF86ConfFilesPtr p);
+ 
+diff --git a/hw/xfree86/parser/read.c b/hw/xfree86/parser/read.c
+index 327c02a..e0d6139 100644
+--- a/hw/xfree86/parser/read.c
++++ b/hw/xfree86/parser/read.c
+@@ -110,7 +110,7 @@ xf86readConfigFile(void)
+             if (xf86nameCompare(xf86_lex_val.str, "files") == 0) {
+                 free(xf86_lex_val.str);
+                 xf86_lex_val.str = NULL;
+-                HANDLE_RETURN(conf_files, xf86parseFilesSection());
++                HANDLE_RETURN(conf_files, xf86parseFilesSection(ptr->conf_files));
+             }
+             else if (xf86nameCompare(xf86_lex_val.str, "serverflags") == 0) {
+                 free(xf86_lex_val.str);
+-- 
+2.3.0
+
diff --git a/x11-base/xorg-server/xorg-server-1.17.1-r1.ebuild b/x11-base/xorg-server/xorg-server-1.17.1-r1.ebuild
new file mode 100644 (file)
index 0000000..f7917a3
--- /dev/null
@@ -0,0 +1,244 @@
+# Copyright 1999-2015 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.17.1-r1.ebuild,v 1.1 2015/02/27 21:44:56 mgorny 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 xephyr xnest xorg xvfb"
+IUSE="${IUSE_SERVERS} glamor ipv6 minimal nptl selinux +suid systemd tslib +udev unwind wayland"
+
+CDEPEND=">=app-admin/eselect-opengl-1.3.0
+       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.46
+       >=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/libxshmfence-1.1
+       >=x11-libs/pixman-0.27.2
+       >=x11-libs/xtrans-1.3.5
+       >=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
+       )
+       glamor? (
+               media-libs/libepoxy
+               >=media-libs/mesa-10.3.4-r1[egl,gbm]
+               !x11-libs/glamor
+       )
+       kdrive? (
+               >=x11-libs/libXext-1.0.5
+               x11-libs/libXv
+       )
+       xephyr? (
+               x11-libs/libxcb
+               x11-libs/xcb-util
+               x11-libs/xcb-util-image
+               x11-libs/xcb-util-keysyms
+               x11-libs/xcb-util-renderutil
+               x11-libs/xcb-util-wm
+       )
+       !minimal? (
+               >=x11-libs/libX11-1.1.5
+               >=x11-libs/libXext-1.0.5
+               >=media-libs/mesa-10.3.4-r1[nptl=]
+       )
+       tslib? ( >=x11-libs/tslib-1.0 )
+       udev? ( >=virtual/udev-150 )
+       unwind? ( sys-libs/libunwind )
+       wayland? (
+               >=dev-libs/wayland-1.3.0
+               media-libs/libepoxy
+       )
+       >=x11-apps/xinit-1.3.3-r1
+       systemd? (
+               sys-apps/dbus
+               sys-apps/systemd
+       )"
+
+DEPEND="${CDEPEND}
+       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.1.3
+       >=x11-proto/glproto-1.4.17-r1
+       >=x11-proto/inputproto-2.2.99.1
+       >=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.2.99.901
+       >=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.26
+       >=x11-proto/presentproto-1.0
+       >=x11-proto/dri3proto-1.0
+       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
+       )"
+
+RDEPEND="${CDEPEND}
+       selinux? ( sec-policy/selinux-xserver )
+       !x11-drivers/xf86-video-modesetting
+"
+
+PDEPEND="
+       xorg? ( >=x11-base/xorg-drivers-$(get_version_component_range 1-2) )"
+
+REQUIRED_USE="!minimal? (
+               || ( ${IUSE_SERVERS} )
+       )
+       xephyr? ( kdrive )"
+
+#UPSTREAMED_PATCHES=(
+#      "${WORKDIR}/patches/"
+#)
+
+PATCHES=(
+       "${UPSTREAMED_PATCHES[@]}"
+       "${FILESDIR}"/${PN}-1.17-ia64-fix_inx_outx.patch
+       "${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch
+       # needed for new eselect-opengl, bug #541232
+       "${FILESDIR}"/${PN}-1.17-support-multiple-Files-sections.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 glamor)
+               $(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 unwind libunwind)
+               $(use_enable wayland xwayland)
+               $(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 xephyr)
+               $(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)
+               $(use_with systemd systemd-daemon)
+               $(use_enable systemd systemd-logind)
+               --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
+               --disable-linux-acpi
+               --without-dtrace
+               --without-fop
+               --with-os-vendor=Gentoo
+               --with-sha1=libcrypto
+       )
+
+       xorg-2_src_configure
+}
+
+src_install() {
+       xorg-2_src_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-11 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
+}
+
+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
+}
+
+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
+}