Add patches/new versions for security bug #539692.
authorChí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
Wed, 11 Feb 2015 10:20:29 +0000 (10:20 +0000)
committerChí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
Wed, 11 Feb 2015 10:20:29 +0000 (10:20 +0000)
Package-Manager: portage-2.2.14/cvs/Linux x86_64
Manifest-Sign-Key: 0x2324E7B566DF2611!

x11-base/xorg-server/ChangeLog
x11-base/xorg-server/Manifest
x11-base/xorg-server/files/xorg-server-1.17-cve-2015-0255-0.patch [new file with mode: 0644]
x11-base/xorg-server/files/xorg-server-1.17-cve-2015-0255-1.patch [new file with mode: 0644]
x11-base/xorg-server/xorg-server-1.12.4-r4.ebuild [new file with mode: 0644]
x11-base/xorg-server/xorg-server-1.15.2-r2.ebuild [new file with mode: 0644]
x11-base/xorg-server/xorg-server-1.16.4-r1.ebuild [new file with mode: 0644]
x11-base/xorg-server/xorg-server-1.16.4.ebuild [new file with mode: 0644]
x11-base/xorg-server/xorg-server-1.17.1.ebuild [new file with mode: 0644]

index 4249ea94312b6b5a89d0f0ffa3d58b155409bf0c..0efc0738d1ca6d3ac6b9e2108273382c5b25705e 100644 (file)
@@ -1,6 +1,19 @@
 # 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.821 2015/02/10 13:43:53 chithanh Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/ChangeLog,v 1.822 2015/02/11 10:20:17 chithanh Exp $
+
+*xorg-server-1.15.2-r2 (11 Feb 2015)
+*xorg-server-1.16.4-r1 (11 Feb 2015)
+*xorg-server-1.17.1 (11 Feb 2015)
+*xorg-server-1.16.4 (11 Feb 2015)
+*xorg-server-1.12.4-r4 (11 Feb 2015)
+
+  11 Feb 2015; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+  +files/xorg-server-1.17-cve-2015-0255-0.patch,
+  +files/xorg-server-1.17-cve-2015-0255-1.patch, +xorg-server-1.12.4-r4.ebuild,
+  +xorg-server-1.15.2-r2.ebuild, +xorg-server-1.16.4-r1.ebuild,
+  +xorg-server-1.16.4.ebuild, +xorg-server-1.17.1.ebuild:
+  Add patches/new versions for security bug #539692.
 
   10 Feb 2015; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
   -files/xdm.initd-10, -files/xorg-cve-2011-4028+4029.patch,
index eb93c379d0ee623c520ac231a259c7b36f782a41..a2288804b24be04c47fcdba81c45a83863d48f66 100644 (file)
@@ -10,6 +10,8 @@ AUX xorg-server-1.12-cve-2013-4396.patch 2807 SHA256 11707d59d550a9f0b04f0ca3dba
 AUX xorg-server-1.12-disable-acpi.patch 275 SHA256 1d3878d44e2b8690bb7d1595960d06acee7f86a6a4724236a09a74900404e953 SHA512 ca52ce0931819acf46a066116b8485c3a398a56d79826a5cdb2b3b8c7809e5163e17a5954de370805dc51a3be3c75a0333d5c17c30bf99139105d705de2fff95 WHIRLPOOL 048be09bad947a5ef02d5935534c47d08439f0ceccddcdb017908bf73aa0484a69b0e42e8e6630393323305b31a8008ef8a0f4655556082245bc5fcde254aa5b
 AUX xorg-server-1.12-ia64-fix_inx_outx.patch 1737 SHA256 bf996a01faf3d1e6f00f12b17373a2530e7e433d3e6c4cac8935ebddc91cd089 SHA512 18bf9bbb973ae4e3f95ffafca8f82845f0c318c3b2dbf0cf9089a2614215ecf000b9037bfed7d80d9367be01247bf316ba2f6e16aa04fe79c54d81441c962bcd WHIRLPOOL cd133d58fc74de9d49773fe2a570d023cea38d09d7550fb9097a8c83a8393e8fc829ffaac566eee732475410e5d8063d0f99d437a68a67e8d3f65d012522240e
 AUX xorg-server-1.12-unloadsubmodule.patch 1373 SHA256 c68c4c0749b9229c3ca11c72b5ca98b58c7dbaf5c7311ce45890204bdc637c3c SHA512 a6a8ebbb1005f2ea9cfdfc928209a23fe213caab31a889c3290f14bcae0a9afd40176330e2e56cb5ff986d522505e7fb98fa0c71187f403e2afd33c9c919780e WHIRLPOOL 7e9dce7dc4e064567e68697a2966f87cef756670db7e49da50c8d9a5379d7930c3f9642913b8482b8c7597067ef9098e1989284986b5ec605aca6a536329c05c
+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-disable-acpi.patch 663 SHA256 5b3cc7c8bea18fe3ba81851d2846d19ffd8fab9cdf5d8f3a274846847e734200 SHA512 0f741e3dac610ba75c3f22cb9412d93e6d8422216100bce886be5f8d6dc49a94e0dab525039247d7af668f162b02fdab302aeb55b02a949ebf56c1f455fa68cf WHIRLPOOL 69e7425e3fbb1154b64568261ab17dc513d561a0d92558fad4e1281869b43132892f14eb89443dc11003cc62bacb4a80f86f592d9dc4bdd873f29fd970c25558
 AUX xorg-sets.conf 199 SHA256 1201d0337ac69d9715f4454a86dfb8a7bd1ae6f4c2578042fc08f283a997597c SHA512 910fe28f20909243044f079ff35136942b8790f4f28ac42ffc64a76b7f03cd22057087fa5e4e01192080b52c0d89000ea96d5a807c6f11f680d3f43312c5be41 WHIRLPOOL 4acac88e1688ea71df59a86a8a188b5369ad05f61e1369cd620eecd754511578e961a537ff6d0b22156f671d3485289cbc941dfe83bea24a27329b7bebb46c7d
@@ -18,31 +20,38 @@ DIST xorg-server-1.12.4.tar.bz2 5444761 SHA256 8ac07c35306ba3fb3c0972722dd4e9193
 DIST xorg-server-1.15.2.tar.bz2 5551426 SHA256 3c0585607c654ded836da43a45a75492fc13454ff4149704fb08dac39f051163 SHA512 5fcbf0012af309f80e1db206e05d7861796146d765cd17f3963fde6da7f43f0e57d63dbbdbf2c554612a557aa4dee623ef62f7ca7d007834aafd7a46ca7bb1d6 WHIRLPOOL 22cdbad68462f9bac32b13be958df496411ca72fe47435ec7e3ebb470b121ba4b4a0e023913f31a92113c5a56bc4be660dfec5086bc1fb72a617d2cdeaa8adf1
 DIST xorg-server-1.16-cve-2014-8091..8103.patches.tar.xz 27892 SHA256 47d8c9bb79c829389e7599aef1110d43afbc5bf744dbcf73d8f3cf01796d287a SHA512 f8b55c009166883b3e6ec2c8c7a2ff4ed61df6970afcc4f0efb9efa36741af194456a368d4b1c7ba9345ef973fb139a48eb50cb5a7ebc144b43749b9ffdb1f7b WHIRLPOOL 2f8b26c018f4ad4cf780ed7dcb0b844de64e7a612adc30c622d1956dfcee710086ffcc837ff0a64cdcc14d47720d82d8797374488bf0b52d77ca63adf6806885
 DIST xorg-server-1.16.3.tar.bz2 5806406 SHA256 5e0f443238af1078b48f6eea98a382861b59187da221c2cf714d31c1d560b0fb SHA512 c0459ed95a6682b2094340b6b8fc7b59fcda5227ee2f13e87f68eb5c29b91cd3f05c5fc2126e33d6303beb3ad04d19466951ef4eb53f2e9918684cdaf3692c5a WHIRLPOOL 960ecad4cbee0514c2c2b5856d35e51b37942795092e743346d2182b887db53e9fb96c8437f2e9b608d9412941c8ea5c3f3d287a18acc8de1e428e9ee0bf3d72
+DIST xorg-server-1.16.4.tar.bz2 5817330 SHA256 abb6e1cc9213a9915a121f48576ff6739a0b8cdb3d32796f9a7743c9a6efc871 SHA512 f756fca65535aa921a85d8d8eb36ea2ba5b7af90a46d640b0ca76259a9abd9d323885087e11156528d95240937c70373045001ae20266a1b9e89909f007e9e74 WHIRLPOOL 63980a3e2b57d2860998344f21a6524598b3dc135c277e5a868e34b57ab5060681ae7137358b3ba8b9ca5fd622a91aeb06bd0ac9e3e5ce1f4dc55df2b2dc0e33
 DIST xorg-server-1.17.0.tar.bz2 5852312 SHA256 4e8548bae163129d2fc8f8e1f3b6071fe9d62821e3d5617507ccd2f589526166 SHA512 95e8fec64a05d56f12c29843d0d7b659e37bb5b8afa86bb8ca27bb94c88a41bff0177d1debc44189788269911eecd688393c13fad700b6fd1c8f40fcae22a2b7 WHIRLPOOL 36f7fed319e70f2a978f5b382d39677b7cc91aaf8aa80a1a657dc912a875289afeaec9e21a1702450a51fc114ca63265085435f1c9513a9b35cc90ad666f4bc8
+DIST xorg-server-1.17.1.tar.bz2 5852385 SHA256 2bf8e9f6f0a710dec1d2472467bff1f4e247cb6dcd76eb469aafdc8a2d7db2ab SHA512 195a0e0a6bd9c7655e62dd40dfbd7dea77d10f1143d4fd6154e8bdbb463d3729f81ecd1e379d66f68e828d4f4583782c15ce260de24444802076844aec552c4f WHIRLPOOL a8a78b0bfa6137941e3434f083319a827f0332fd9c190922bb0a33381e86173868d236c96a89ee3049400f37521fe052838416f009713f004227f05b8717d776
 EBUILD xorg-server-1.12.4-r3.ebuild 7095 SHA256 2da75901c7fee7946e4f4938d631a9828be186b5d9ede672c215061911aac2cd SHA512 74b76ae684ba70434204dc3916a5d54879f56ec750be37b99f9615b66edac42688084ab944e99abda8730ed6dcfbd94ff2c80b7317a1f34b94a8cebb8d8e3fa4 WHIRLPOOL 8b6ab1a9363861bf0d1afce66db68f4ec5ed30560c4388bf3d4dece6ac3835e8cf37b3595323e6c040e91565961552f5691972c3e5f3018952ed376c828aed7e
+EBUILD xorg-server-1.12.4-r4.ebuild 7204 SHA256 d096f6d781fc3797451cca8edb14580870cc557953732dab9e4ffe6aa79a0a88 SHA512 f9352e2e2594479f1ed02c37a02efe8a3391e55dd6319bcf11b052115524689ec336f461e0a9f2a2e8e4ce875989a66b3030a09c58cc37229a5e409174f55f02 WHIRLPOOL 4816d2ccfd21a5d4a7efa7cf4cd29c08e26cc684739d64b26c579f2e5d6d35291a2e2468b858c08b00048b8e480f0ca10fdc14f3665775e0d215e5a968e143b1
 EBUILD xorg-server-1.15.2-r1.ebuild 7223 SHA256 a5f4065ca7d9a0ddd26202cbf933bf7a0e3d42812f18f6d113e0f730d39e505d SHA512 9c7568589838955f8b3fecded46ea7149bc62a6f6c35c56ddf4c31c5dbae190315bfe155406f25786d81627bbf4666fb3f74fe1e036041701f8fd65e5199202e WHIRLPOOL af0b64311352dff7eac33b2bd5948b540d9be0e112fcc1abb948d1cf5d6e4fdc3cfb7a00be051d10ab1f0c631311987aeefa887af13ba18208eea6d432cd2b88
+EBUILD xorg-server-1.15.2-r2.ebuild 7335 SHA256 f4208ad3ff508eaab6e552c73f58d5981bff29682df1512cddd2fef9ec1e758b SHA512 04039b349f91d92fbeffce53cb07b2063f9634abae35c0cb1b2a7b55de32aae4cdee15a2d17856d25bb6988d06ae114ab7f4cc612da027e4b02ddae0c8e5434e WHIRLPOOL 326bca2338c6f9a9488834cee63b8b564946f27f8f93bc64d5989f0c1a28042d80498508eb24b1a9ff53b3434fd854a90906bf62becc6b6e0fad06775c5dc72c
 EBUILD xorg-server-1.16.3-r1.ebuild 6761 SHA256 285ba4a6c9c8e40b1261fae8f606c350dfa03df96fb233f0de237a981bfb8b4c SHA512 457d08a77be36547c4f1802cf0e965449e713e7f930754a10b32d996bfec23fbe69f2e96870d88798d5fc468229552d25a09f18b17c1b591b788552b3e202f66 WHIRLPOOL 1039b0eee178cf6b0f862ee2b26579658e9dbe32ee9c9f278b7c9938f228384dee2aa42ead4375492f6cab191cd322fcd12e59b67cddbc26fb9d0ed341268565
 EBUILD xorg-server-1.16.3.ebuild 7662 SHA256 ed4a52760a60b2baf5162235a5ce6d3c6c0aa87c91f4d05de3c209fbe1f41a61 SHA512 6687e90d925bcd1af3d2e21c2dc8abaec9866ab4952f04d0c2edefa54e00cf246b299ab73c4f5fd7fbf9af3802e4be892ee6e5c8135a7eddb2c1fb3fdad7d1f7 WHIRLPOOL 950ea824fbd63110f11d99d1387031c85c3ecaea7f231e18ac609153cf2f5e981ed284ebcf78b8a36b276447e5f86bd6318c2a168207497bf83048e86e01ef02
+EBUILD xorg-server-1.16.4-r1.ebuild 6761 SHA256 05686db68ca9da3c11a15ff0df110c606222fbd445df2bca3f2f738cb6d9ff10 SHA512 5d67029774b399c46b65183c04ebefb86f418d31f740744f3b4cfe8acb9336581d876fe7f184852b2dde256bd6bd57f856ff555edf868f0325ea7001a4ce6c28 WHIRLPOOL e3a8c989b0f78d0df88e6ae4e1ff3787d48f2215013e596af87e0c62b3c2dd07e8ea15bd10258e8db5eb59500604146318b8a38706b108c22216c4097e2bbccc
+EBUILD xorg-server-1.16.4.ebuild 7662 SHA256 45b64acb73372dd0c0c0ccfebe541cfeeec4cdccb6e05773f93e14bc04e4ea49 SHA512 95893e8360ee5e54b6d4c389094fbadbc3b26ef8c76598d42e0ac098e15d60cd0eb84468201989fd148c3954d6b1948e6fe8fb6215a638f2070f6c70ff2afd13 WHIRLPOOL e8b3c69000c04e623ca101daa436287474ff4f746bde4e0f0aa9108dc791062040b2810ed7dcafe82264eac9fc3d42805cfe63f767237d16da6b0d00b61d075c
 EBUILD xorg-server-1.17.0.ebuild 6152 SHA256 07bc61384c6bd41a0df7a353dbc3f4ee449250a71e26d804113cda367d1ecfad SHA512 c2999e551d08c9315c6581fff18220a4c6c846cce527ee7c11e491f7d3bc2610c931ced09894749052614fae3b162b00961f472a70198dd4113af6087b127ff8 WHIRLPOOL dceb49434de366df2f2ac00642d649517ab7ddee4ac0ac6a16b1bcc552a6be3b8e0a14bec84728842aed1f62eba397aa2a347fb012b1740477dbf9ede5945bd1
-MISC ChangeLog 62033 SHA256 4766364d88efd966955758d007fd42bdd69a1a0fe8fad7920dd471b6be22ae0e SHA512 9d38c5f2f12154b35fb4fc134efbeb340af7f1e5bb7398c5fcc2e1990cbe7550ba4dbe98467bca04cf2dd373c8b101ea16409102306ed3d4999e58fad1c6e45d WHIRLPOOL 5c1d738a54d900e0b1b2418bcfedc7c0d6ca4a3d21992d034c17523ac32fd10efa67535cad93be127ce37de11209ac39f2f246a74e787115b1ac508e19d80359
+EBUILD xorg-server-1.17.1.ebuild 6152 SHA256 0bd14864e1b187d4fe14a919f8472e81afbfe0ae79f0aaeb27457c18345b6b58 SHA512 8eb603da255b098224f8059f2a5798eb0101dd3ccf7c1c1a6024b4c429d03f7ed0a28e8d63313e2e50b03fe5fc0a66a9cb60cfeb543015956f6505181318f48c WHIRLPOOL 0d1070b4342670b9de2034509f7cdf849f3373589f51a5ba49d6379e55f07b4a190247f7ddc3282d95c5fe9cc31a60c12bbd04b053605d0b801a85041f831b6a
+MISC ChangeLog 62587 SHA256 25dd96eda81dd2ac72b2470a8ee0c15370e98b6477b95a20703456fcddb0de1b SHA512 30b8fc5cfd7c5d1fa43e0eb19a5c4a915ef682e085c85643cfcc74c819c3178b5ec48aa05d8cb76783dc0066b11832531e07f636917ee8bd35418c1dbd1f6895 WHIRLPOOL 6c42bb4a7214d8a533b1c8d331873b1c3217c58355a9e0d0d2ae3f68728085985f299f5173d2087bd1629344c88dc60b6b4c9b31cf81279efea09ee2ccacc8c9
 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.0
 
-iQJ8BAEBCABmBQJU2gspXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
+iQJ8BAEBCABmBQJU2yz2XxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
 ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ1RDFCODdDQUUxMkUwNkJCNjUyMDMxOEIy
-MzI0RTdCNTY2REYyNjExAAoJECMk57Vm3yYRz8sP/2FWSLZ5bDbj2yugnbXijpiR
-G/TKTKTCOqwlnEe/DgW5eHz9ZyPzG0XWaWhb9VkJr5XifSA96T6T78fQqREvmOUN
-LagkyFQA+KsBE4KHA0PEh0pJA73Q2vaYJZE8PlErgClFcCYNMhhpcpr112TLA1wn
-fujcUQB5B4az15dTrITs+MgjeOkgTslxqVB1wvxsd4yH61Y3iiZYAI7jvpdzz+Wo
-EsUAim1eINpknvepJabGUrL7E6hictu7P9O9R4Ev5qUuZMSjrcjhjjoSHVuwrq4k
-ooV/b7MvNBFCw6YlN4ZJfW4sJic7vkQCkJ3z0vGO9bOdvKClacEpTydblxss9t+/
-tPFJo/RkFkvLu9sLpEQeAcCd0c7ICiazXNbPMZiHLraNWcLvWP4CakoVySr1oCgS
-ogk4nOsbO1DAO0Fs/ZXdjInKemt56F4YRGkhUdjKpde+Zi2tmjjCGms5o2wChk18
-yrjKAM/uSPVTcpPan4yOf64gfrIqPhxFGc8LhxZpgfJ4vSxlKGeDbl22XcLVw74C
-hXCcrXwtU2nD3sM2zcjgLvSegOG533fkBxFdmRzg4QNzbCDGboziqNGUIUk7pH5U
-K5c3Q12Pwraoxc/8PBWEwLu6MPrrfx4W/UDaZpsLVmbWQd/t6kyYH1utzeYyrU27
-JLLUR6hm2F2bJuGYOuaC
-=LLkP
+MzI0RTdCNTY2REYyNjExAAoJECMk57Vm3yYRy5MP/0i4IV/LK6dsRuAoz5cQagLM
+5PFh1MIdKor7JsGW6wvdenoZjPHMMNoT90CuyUTzW5FN/s/VHG1xH6fxb+SuxShI
+jMyoyG2w0MdyY/OPgx6ZGBLQSKN7aFk38/cKYGtZsj7lw5Mfjw5dPAh80XH0gswb
+/gKHNa1pHvil0M3KvqIhI1iC5o/zBi/VTbm/mrpQisa4Kp62/gNBs9OvgDbBoVYS
+1WpRj7gj/7kk+5VZOtIsxdrOyP/EbA4rmcq+nsWoyAyRX4W6oKSBCRaloPMW7tHk
+onupmGdr+4eabUhf8UbidEH+oQFyJD1OHELNwldi0j7OEYCOA3WJkCm0B3FuWRcI
+mkHzqI/oZX9NLj1Vg2XaAhwCP3+gL7uF0sJFoL6s+ywZUlev6bdtzyXSAfE+Ns4K
+6eS9tpMW6lIIrgxn6gIDw87w9y24o1K/wEgzZoitc62Nk2KMpf3EFqamvNrfHKlF
+1HpFciPlvjszPvGDXqiMGrsJA5m9NweGgbNCebvQR0swWaq9b45hd9/OPwxTSGGa
+UH8WDyEYI7yJaQx06GgesGrkFBzDpRFABsyzhe/6WcdYE6jPD88cdEBxaV2tCxF+
+28qa3uweJamcv4lOlZsC0oJ6+w3d69/drybRcsedxxspor8ps+UkuJusVjzjVPak
+qCkivjzcTcBo4tND8fzy
+=zA0C
 -----END PGP SIGNATURE-----
diff --git a/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-0255-0.patch b/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-0255-0.patch
new file mode 100644 (file)
index 0000000..9540e31
--- /dev/null
@@ -0,0 +1,102 @@
+From 81c90dc8f0aae3b65730409b1b615b5fa7280ebd Mon Sep 17 00:00:00 2001
+From: Olivier Fourdan <ofourdan@redhat.com>
+Date: Fri, 16 Jan 2015 20:08:59 +0100
+Subject: xkb: Don't swap XkbSetGeometry data in the input buffer
+
+The XkbSetGeometry request embeds data which needs to be swapped when the
+server and the client have different endianess.
+
+_XkbSetGeometry() invokes functions that swap these data directly in the
+input buffer.
+
+However, ProcXkbSetGeometry() may call _XkbSetGeometry() more than once
+(if there is more than one keyboard), thus causing on swapped clients the
+same data to be swapped twice in memory, further causing a server crash
+because the strings lengths on the second time are way off bounds.
+
+To allow _XkbSetGeometry() to run reliably more than once with swapped
+clients, do not swap the data in the buffer, use variables instead.
+
+Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
+Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+diff --git a/xkb/xkb.c b/xkb/xkb.c
+index 15c7f34..b9a3ac4 100644
+--- a/xkb/xkb.c
++++ b/xkb/xkb.c
+@@ -4961,14 +4961,13 @@ static char *
+ _GetCountedString(char **wire_inout, Bool swap)
+ {
+     char *wire, *str;
+-    CARD16 len, *plen;
++    CARD16 len;
+ 
+     wire = *wire_inout;
+-    plen = (CARD16 *) wire;
++    len = *(CARD16 *) wire;
+     if (swap) {
+-        swaps(plen);
++        swaps(&len);
+     }
+-    len = *plen;
+     str = malloc(len + 1);
+     if (str) {
+         memcpy(str, &wire[2], len);
+@@ -4985,25 +4984,28 @@ _CheckSetDoodad(char **wire_inout,
+ {
+     char *wire;
+     xkbDoodadWireDesc *dWire;
++    xkbAnyDoodadWireDesc any;
++    xkbTextDoodadWireDesc text;
+     XkbDoodadPtr doodad;
+ 
+     dWire = (xkbDoodadWireDesc *) (*wire_inout);
++    any = dWire->any;
+     wire = (char *) &dWire[1];
+     if (client->swapped) {
+-        swapl(&dWire->any.name);
+-        swaps(&dWire->any.top);
+-        swaps(&dWire->any.left);
+-        swaps(&dWire->any.angle);
++        swapl(&any.name);
++        swaps(&any.top);
++        swaps(&any.left);
++        swaps(&any.angle);
+     }
+     CHK_ATOM_ONLY(dWire->any.name);
+-    doodad = XkbAddGeomDoodad(geom, section, dWire->any.name);
++    doodad = XkbAddGeomDoodad(geom, section, any.name);
+     if (!doodad)
+         return BadAlloc;
+     doodad->any.type = dWire->any.type;
+     doodad->any.priority = dWire->any.priority;
+-    doodad->any.top = dWire->any.top;
+-    doodad->any.left = dWire->any.left;
+-    doodad->any.angle = dWire->any.angle;
++    doodad->any.top = any.top;
++    doodad->any.left = any.left;
++    doodad->any.angle = any.angle;
+     switch (doodad->any.type) {
+     case XkbOutlineDoodad:
+     case XkbSolidDoodad:
+@@ -5026,12 +5028,13 @@ _CheckSetDoodad(char **wire_inout,
+                                               dWire->text.colorNdx);
+             return BadMatch;
+         }
++        text = dWire->text;
+         if (client->swapped) {
+-            swaps(&dWire->text.width);
+-            swaps(&dWire->text.height);
++            swaps(&text.width);
++            swaps(&text.height);
+         }
+-        doodad->text.width = dWire->text.width;
+-        doodad->text.height = dWire->text.height;
++        doodad->text.width = text.width;
++        doodad->text.height = text.height;
+         doodad->text.color_ndx = dWire->text.colorNdx;
+         doodad->text.text = _GetCountedString(&wire, client->swapped);
+         doodad->text.font = _GetCountedString(&wire, client->swapped);
+-- 
+cgit v0.10.2
+
diff --git a/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-0255-1.patch b/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-0255-1.patch
new file mode 100644 (file)
index 0000000..be131c2
--- /dev/null
@@ -0,0 +1,138 @@
+From 20079c36cf7d377938ca5478447d8b9045cb7d43 Mon Sep 17 00:00:00 2001
+From: Olivier Fourdan <ofourdan@redhat.com>
+Date: Fri, 16 Jan 2015 08:44:45 +0100
+Subject: xkb: Check strings length against request size
+
+Ensure that the given strings length in an XkbSetGeometry request remain
+within the limits of the size of the request.
+
+Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
+Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
+Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+diff --git a/xkb/xkb.c b/xkb/xkb.c
+index b9a3ac4..f3988f9 100644
+--- a/xkb/xkb.c
++++ b/xkb/xkb.c
+@@ -4957,25 +4957,29 @@ ProcXkbGetGeometry(ClientPtr client)
+ 
+ /***====================================================================***/
+ 
+-static char *
+-_GetCountedString(char **wire_inout, Bool swap)
++static Status
++_GetCountedString(char **wire_inout, ClientPtr client, char **str)
+ {
+-    char *wire, *str;
++    char *wire, *next;
+     CARD16 len;
+ 
+     wire = *wire_inout;
+     len = *(CARD16 *) wire;
+-    if (swap) {
++    if (client->swapped) {
+         swaps(&len);
+     }
+-    str = malloc(len + 1);
+-    if (str) {
+-        memcpy(str, &wire[2], len);
+-        str[len] = '\0';
+-    }
+-    wire += XkbPaddedSize(len + 2);
+-    *wire_inout = wire;
+-    return str;
++    next = wire + XkbPaddedSize(len + 2);
++    /* Check we're still within the size of the request */
++    if (client->req_len <
++        bytes_to_int32(next - (char *) client->requestBuffer))
++        return BadValue;
++    *str = malloc(len + 1);
++    if (!*str)
++        return BadAlloc;
++    memcpy(*str, &wire[2], len);
++    *(*str + len) = '\0';
++    *wire_inout = next;
++    return Success;
+ }
+ 
+ static Status
+@@ -4987,6 +4991,7 @@ _CheckSetDoodad(char **wire_inout,
+     xkbAnyDoodadWireDesc any;
+     xkbTextDoodadWireDesc text;
+     XkbDoodadPtr doodad;
++    Status status;
+ 
+     dWire = (xkbDoodadWireDesc *) (*wire_inout);
+     any = dWire->any;
+@@ -5036,8 +5041,14 @@ _CheckSetDoodad(char **wire_inout,
+         doodad->text.width = text.width;
+         doodad->text.height = text.height;
+         doodad->text.color_ndx = dWire->text.colorNdx;
+-        doodad->text.text = _GetCountedString(&wire, client->swapped);
+-        doodad->text.font = _GetCountedString(&wire, client->swapped);
++        status = _GetCountedString(&wire, client, &doodad->text.text);
++        if (status != Success)
++            return status;
++        status = _GetCountedString(&wire, client, &doodad->text.font);
++        if (status != Success) {
++            free (doodad->text.text);
++            return status;
++        }
+         break;
+     case XkbIndicatorDoodad:
+         if (dWire->indicator.onColorNdx >= geom->num_colors) {
+@@ -5072,7 +5083,9 @@ _CheckSetDoodad(char **wire_inout,
+         }
+         doodad->logo.color_ndx = dWire->logo.colorNdx;
+         doodad->logo.shape_ndx = dWire->logo.shapeNdx;
+-        doodad->logo.logo_name = _GetCountedString(&wire, client->swapped);
++        status = _GetCountedString(&wire, client, &doodad->logo.logo_name);
++        if (status != Success)
++            return status;
+         break;
+     default:
+         client->errorValue = _XkbErrCode2(0x4F, dWire->any.type);
+@@ -5304,18 +5317,20 @@ _CheckSetGeom(XkbGeometryPtr geom, xkbSetGeometryReq * req, ClientPtr client)
+     char *wire;
+ 
+     wire = (char *) &req[1];
+-    geom->label_font = _GetCountedString(&wire, client->swapped);
++    status = _GetCountedString(&wire, client, &geom->label_font);
++    if (status != Success)
++        return status;
+ 
+     for (i = 0; i < req->nProperties; i++) {
+         char *name, *val;
+ 
+-        name = _GetCountedString(&wire, client->swapped);
+-        if (!name)
+-            return BadAlloc;
+-        val = _GetCountedString(&wire, client->swapped);
+-        if (!val) {
++        status = _GetCountedString(&wire, client, &name);
++        if (status != Success)
++            return status;
++        status = _GetCountedString(&wire, client, &val);
++        if (status != Success) {
+             free(name);
+-            return BadAlloc;
++            return status;
+         }
+         if (XkbAddGeomProperty(geom, name, val) == NULL) {
+             free(name);
+@@ -5349,9 +5364,9 @@ _CheckSetGeom(XkbGeometryPtr geom, xkbSetGeometryReq * req, ClientPtr client)
+     for (i = 0; i < req->nColors; i++) {
+         char *name;
+ 
+-        name = _GetCountedString(&wire, client->swapped);
+-        if (!name)
+-            return BadAlloc;
++        status = _GetCountedString(&wire, client, &name);
++        if (status != Success)
++            return status;
+         if (!XkbAddGeomColor(geom, name, geom->num_colors)) {
+             free(name);
+             return BadAlloc;
+-- 
+cgit v0.10.2
+
diff --git a/x11-base/xorg-server/xorg-server-1.12.4-r4.ebuild b/x11-base/xorg-server/xorg-server-1.12.4-r4.ebuild
new file mode 100644 (file)
index 0000000..9fdd0ec
--- /dev/null
@@ -0,0 +1,249 @@
+# 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.12.4-r4.ebuild,v 1.1 2015/02/11 10:20:17 chithanh 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 ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+
+SRC_URI="${SRC_URI} mirror://gentoo/${PN}-1.12-cve-2014-8091..8103.patches.tar.xz"
+
+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? ( >=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.14
+       >=x11-proto/inputproto-2.1.99.3
+       >=x11-proto/kbproto-1.0.3
+       >=x11-proto/randrproto-1.2.99.3
+       >=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.6
+               >=x11-libs/libdrm-2.4.20
+       )"
+
+PDEPEND="
+       xorg? ( >=x11-base/xorg-drivers-$(get_version_component_range 1-2) )"
+
+REQUIRED_USE="!minimal? (
+               || ( ${IUSE_SERVERS} )
+       )"
+
+# Security patches taken from Debian from their 1.12 package
+UPSTREAMED_PATCHES=(
+       "${WORKDIR}"/patches/${PN}-1.12-cve-2014-8091..8103.patch
+)
+
+PATCHES=(
+       "${UPSTREAMED_PATCHES[@]}"
+       "${FILESDIR}"/${PN}-1.12-disable-acpi.patch
+       "${FILESDIR}"/${PN}-1.12-cve-2013-1940.patch
+       "${FILESDIR}"/${PN}-1.12-cve-2013-4396.patch
+       "${FILESDIR}"/${PN}-1.17-cve-2015-0255-0.patch
+       "${FILESDIR}"/${PN}-1.17-cve-2015-0255-1.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 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-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 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
+}
+
+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
+}
diff --git a/x11-base/xorg-server/xorg-server-1.15.2-r2.ebuild b/x11-base/xorg-server/xorg-server-1.15.2-r2.ebuild
new file mode 100644 (file)
index 0000000..aac29f9
--- /dev/null
@@ -0,0 +1,259 @@
+# 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.15.2-r2.ebuild,v 1.1 2015/02/11 10:20:17 chithanh Exp $
+
+EAPI=5
+
+XORG_EAUTORECONF=yes
+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"
+
+SRC_URI="${SRC_URI} mirror://gentoo/${PN}-1.16-cve-2014-8091..8103.patches.tar.xz"
+
+IUSE_SERVERS="dmx kdrive xnest xorg xvfb"
+IUSE="${IUSE_SERVERS} ipv6 minimal nptl selinux +suid tslib +udev unwind"
+
+CDEPEND=">=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/libxshmfence-1.1
+       >=x11-libs/pixman-0.27.2
+       >=x11-libs/xtrans-1.3.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-9.2.0[nptl=]
+       )
+       tslib? ( >=x11-libs/tslib-1.0 )
+       udev? ( >=virtual/udev-150 )
+       unwind? ( sys-libs/libunwind )
+       >=x11-apps/xinit-1.3"
+
+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.0.2
+       >=x11-proto/glproto-1.4.17
+       >=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.22
+       >=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 )
+"
+
+PDEPEND="
+       xorg? ( >=x11-base/xorg-drivers-$(get_version_component_range 1-2) )"
+
+REQUIRED_USE="!minimal? (
+               || ( ${IUSE_SERVERS} )
+       )"
+
+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_prepare() {
+       UPSTREAMED_PATCHES=(
+               "${WORKDIR}"/patches/*.patch
+       )
+       PATCHES=(
+               "${UPSTREAMED_PATCHES[@]}"
+               "${FILESDIR}"/${PN}-1.12-ia64-fix_inx_outx.patch
+               "${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch
+               "${FILESDIR}"/${PN}-1.17-cve-2015-0255-0.patch
+               "${FILESDIR}"/${PN}-1.17-cve-2015-0255-1.patch
+
+       )
+       xorg-2_src_prepare
+}
+
+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 unwind libunwind)
+               $(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 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
+               --disable-linux-acpi
+               --without-dtrace
+               --without-fop
+               --with-os-vendor=Gentoo
+               --with-sha1=libcrypto
+       )
+
+       # 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-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
+
+       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
+}
+
+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
+}
diff --git a/x11-base/xorg-server/xorg-server-1.16.4-r1.ebuild b/x11-base/xorg-server/xorg-server-1.16.4-r1.ebuild
new file mode 100644 (file)
index 0000000..bf3904f
--- /dev/null
@@ -0,0 +1,245 @@
+# 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.16.4-r1.ebuild,v 1.1 2015/02/11 10:20:17 chithanh 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/1.16.1"
+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} 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.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/libxshmfence-1.1
+       >=x11-libs/pixman-0.27.2
+       >=x11-libs/xtrans-1.3.3
+       >=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
+       )
+       !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
+       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 )
+"
+
+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-ia64-fix_inx_outx.patch
+       "${FILESDIR}"/${PN}-1.12-unloadsubmodule.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 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
+
+       if [[ ${PV} != 9999 && $(get_version_component_range 2 ${REPLACING_VERSIONS}) != $(get_version_component_range 2 ${PV}) ]]; then
+               elog "You should consider reading upgrade guide for this release:"
+               elog "  http://www.gentoo.org/proj/en/desktop/x/x11/xorg-server-$(get_version_component_range 1-2)-upgrade-guide.xml"
+               echo
+               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
+}
+
+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
+}
diff --git a/x11-base/xorg-server/xorg-server-1.16.4.ebuild b/x11-base/xorg-server/xorg-server-1.16.4.ebuild
new file mode 100644 (file)
index 0000000..32bc627
--- /dev/null
@@ -0,0 +1,272 @@
+# 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.16.4.ebuild,v 1.1 2015/02/11 10:20:17 chithanh 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/1.16.1"
+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} glamor ipv6 minimal nptl selinux +suid systemd tslib +udev unwind wayland"
+
+CDEPEND=">=app-admin/eselect-opengl-1.0.8
+       !>=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.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/libxshmfence-1.1
+       >=x11-libs/pixman-0.27.2
+       >=x11-libs/xtrans-1.3.3
+       >=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[egl,gbm]
+               !x11-libs/glamor
+       )
+       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-9.2.0[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
+       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
+       >=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 )
+"
+
+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-ia64-fix_inx_outx.patch
+       "${FILESDIR}"/${PN}-1.12-unloadsubmodule.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 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-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-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
+
+       if [[ ${PV} != 9999 && $(get_version_component_range 2 ${REPLACING_VERSIONS}) != $(get_version_component_range 2 ${PV}) ]]; then
+               elog "You should consider reading upgrade guide for this release:"
+               elog "  http://www.gentoo.org/proj/en/desktop/x/x11/xorg-server-$(get_version_component_range 1-2)-upgrade-guide.xml"
+               echo
+               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
+}
+
+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
+}
diff --git a/x11-base/xorg-server/xorg-server-1.17.1.ebuild b/x11-base/xorg-server/xorg-server-1.17.1.ebuild
new file mode 100644 (file)
index 0000000..87e54ba
--- /dev/null
@@ -0,0 +1,235 @@
+# 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.ebuild,v 1.1 2015/02/11 10:20:17 chithanh 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.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/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 )
+       !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
+       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
+)
+
+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
+}