diff options
author | Kevin F. Quinn <kevquinn@gentoo.org> | 2006-07-01 09:33:00 +0000 |
---|---|---|
committer | Kevin F. Quinn <kevquinn@gentoo.org> | 2006-07-01 09:33:00 +0000 |
commit | 528d202459d44632dc7bcc035a7c35f863fa6f97 (patch) | |
tree | d5ded1afed546db092c37de3e35bc5d0f70e085f /hardened/xorg | |
download | kevquinn-528d202459d44632dc7bcc035a7c35f863fa6f97.tar.gz kevquinn-528d202459d44632dc7bcc035a7c35f863fa6f97.tar.bz2 kevquinn-528d202459d44632dc7bcc035a7c35f863fa6f97.zip |
Initial commit of BIND_NOW Modular X (7.1) solution. Requires manual load of all dependent
modules in xorg.conf; see examples on http://overlays.gentoo.org/dev/kevquinn
svn path=/; revision=1
Diffstat (limited to 'hardened/xorg')
20 files changed, 1410 insertions, 0 deletions
diff --git a/hardened/xorg/eclass/x-modular.eclass b/hardened/xorg/eclass/x-modular.eclass new file mode 100644 index 0000000..0c5b1b6 --- /dev/null +++ b/hardened/xorg/eclass/x-modular.eclass @@ -0,0 +1,528 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/eclass/x-modular.eclass,v 1.69 2006/07/01 06:46:52 spyderous Exp $ +# +# Author: Donnie Berkholz <spyderous@gentoo.org> +# +# This eclass is designed to reduce code duplication in the modularized X11 +# ebuilds. +# +# Using this eclass: +# +# Inherit it. If you need to run autoreconf for any reason (e.g., your patches +# apply to the autotools files rather than configure), set SNAPSHOT="yes". Set +# CONFIGURE_OPTIONS to everything you want to pass to the configure script. +# +# If you have any patches to apply, set PATCHES to their locations and epatch +# will apply them. It also handles epatch-style bulk patches, if you know how to +# use them and set the correct variables. If you don't, read eutils.eclass. +# +# If you're creating a font package and the suffix of PN is not equal to the +# subdirectory of /usr/share/fonts/ it should install into, set FONT_DIR to that +# directory or directories. +# +# IMPORTANT: Both SNAPSHOT and FONT_DIR must be set _before_ the inherit. +# +# Pretty much everything else should be automatic. + +EXPORT_FUNCTIONS src_unpack src_compile src_install pkg_preinst pkg_postinst pkg_postrm + +inherit eutils libtool toolchain-funcs flag-o-matic autotools + +# Directory prefix to use for everything +XDIR="/usr" + +# Set up default patchset version(s) if necessary +# x11-driver-patches +if [[ -z "${XDPVER}" ]]; then + XDPVER="1" +fi + +IUSE="" +HOMEPAGE="http://xorg.freedesktop.org/" + +# Set up SRC_URI for individual modular releases +BASE_INDIVIDUAL_URI="http://xorg.freedesktop.org/releases/individual" +if [[ ${CATEGORY} = x11-apps ]] || [[ ${CATEGORY} = x11-wm ]]; then + SRC_URI="${SRC_URI} + ${BASE_INDIVIDUAL_URI}/app/${P}.tar.bz2" +elif [[ ${CATEGORY} = app-doc ]]; then + SRC_URI="${SRC_URI} + ${BASE_INDIVIDUAL_URI}/doc/${P}.tar.bz2" +# x11-misc contains data and util, x11-themes contains data +elif [[ ${CATEGORY} = x11-misc ]] || [[ ${CATEGORY} = x11-themes ]]; then + SRC_URI="${SRC_URI} + ${BASE_INDIVIDUAL_URI}/data/${P}.tar.bz2 + ${BASE_INDIVIDUAL_URI}/util/${P}.tar.bz2" +elif [[ ${CATEGORY} = x11-drivers ]]; then + SRC_URI="${SRC_URI} + ${BASE_INDIVIDUAL_URI}/driver/${P}.tar.bz2" +elif [[ ${CATEGORY} = media-fonts ]]; then + SRC_URI="${SRC_URI} + ${BASE_INDIVIDUAL_URI}/font/${P}.tar.bz2" +elif [[ ${CATEGORY} = x11-libs ]]; then + SRC_URI="${SRC_URI} + ${BASE_INDIVIDUAL_URI}/lib/${P}.tar.bz2" +elif [[ ${CATEGORY} = x11-proto ]]; then + SRC_URI="${SRC_URI} + ${BASE_INDIVIDUAL_URI}/proto/${P}.tar.bz2" +elif [[ ${CATEGORY} = x11-base ]]; then + SRC_URI="${SRC_URI} + ${BASE_INDIVIDUAL_URI}/xserver/${P}.tar.bz2" +fi + +SLOT="0" + +# Set the license for the package. This can be overridden by setting +# LICENSE after the inherit. +LICENSE=${PN} + +# Set up shared dependencies +if [[ -n "${SNAPSHOT}" ]]; then +# FIXME: What's the minimal libtool version supporting arbitrary versioning? + DEPEND="${DEPEND} + >=sys-devel/autoconf-2.57 + >=sys-devel/automake-1.7 + >=sys-devel/libtool-1.5 + >=sys-devel/m4-1.4" +fi + +# If we're a font package, but not the font.alias one +if [[ "${PN/#font-}" != "${PN}" ]] \ + && [[ "${CATEGORY}" = "media-fonts" ]] \ + && [[ "${PN}" != "font-alias" ]] \ + && [[ "${PN}" != "font-util" ]]; then + # Activate font code in the rest of the eclass + FONT="yes" + + RDEPEND="${RDEPEND} + media-fonts/encodings + x11-apps/mkfontscale + x11-apps/mkfontdir" + PDEPEND="${PDEPEND} + media-fonts/font-alias" + + # Starting with 7.0RC3, we can specify the font directory + # But oddly, we can't do the same for encodings or font-alias + + # Wrap in `if` so ebuilds can set it too + if [[ -z ${FONT_DIR} ]]; then + FONT_DIR=${PN##*-} + + fi + + # Fix case of font directories + FONT_DIR=${FONT_DIR/ttf/TTF} + FONT_DIR=${FONT_DIR/otf/OTF} + FONT_DIR=${FONT_DIR/type1/Type1} + FONT_DIR=${FONT_DIR/speedo/Speedo} + + # Set up configure option + FONT_OPTIONS="--with-fontdir=\"/usr/share/fonts/${FONT_DIR}\"" + + if [[ -n "${FONT}" ]]; then + if [[ ${PN##*-} = misc ]] || [[ ${PN##*-} = 75dpi ]] || [[ ${PN##*-} = 100dpi ]]; then + IUSE="${IUSE} nls" + fi + fi +fi + +# If we're a driver package +if [[ "${PN/#xf86-video}" != "${PN}" ]] || [[ "${PN/#xf86-input}" != "${PN}" ]]; then + # Enable driver code in the rest of the eclass + DRIVER="yes" + + # Add driver patchset to SRC_URI + SRC_URI="${SRC_URI} + http://dev.gentoo.org/~joshuabaergen/distfiles/x11-driver-patches-${XDPVER}.tar.bz2" +fi + +# Debugging -- ignore packages that can't be built with debugging +if [[ -z "${FONT}" ]] \ + || [[ "${PN/app-doc}" != "${PN}" ]] \ + || [[ "${PN/x11-proto}" != "${PN}" ]] \ + || [[ "${PN/util-macros}" != "${PN}" ]] \ + || [[ "${PN/xbitmaps}" != "${PN}" ]] \ + || [[ "${PN/xkbdata}" != "${PN}" ]] \ + || [[ "${PN/xorg-cf-files}" != "${PN}" ]] \ + || [[ "${PN/xcursor}" != "${PN}" ]] \ + ; then + DEBUGGABLE="yes" + IUSE="${IUSE} debug" + if use debug; then + if ! has splitdebug ${FEATURES}; then + RESTRICT="${RESTRICT} nostrip" + fi + fi +fi + +DEPEND="${DEPEND} + >=dev-util/pkgconfig-0.18" + +if [[ "${PN/util-macros}" = "${PN}" ]]; then + DEPEND="${DEPEND} + >=x11-misc/util-macros-0.99.2 + !alpha? ( >=sys-devel/binutils-2.16.1-r3 )" +fi + +RDEPEND="${RDEPEND} + !<=x11-base/xorg-x11-6.9" +# Provides virtual/x11 for temporary use until packages are ported +# x11-base/x11-env" + +x-modular_specs_check() { + if [[ ${PN:0:11} = "xorg-server" ]] || [[ -n "${DRIVER}" ]]; then +# KFQ Leave BIND_NOW +# append-ldflags -Wl,-z,lazy + # (#116698) breaks loading + filter-ldflags -Wl,-z,now + fi +} + +x-modular_dri_check() { + # (#120057) Enabling DRI in drivers requires that the server was built with + # support for it + if [[ -n "${DRIVER}" ]]; then + if has dri ${IUSE} && use dri; then + einfo "Checking for direct rendering capabilities ..." + if ! built_with_use x11-base/xorg-server dri; then + die "You must build x11-base/xorg-server with USE=dri." + fi + fi + fi +} + +x-modular_server_supports_drivers_check() { + # (#135873) Only certain servers will actually use or be capable of + # building external drivers, including binary drivers. + if [[ -n "${DRIVER}" ]]; then + if has_version '>=x11-base/xorg-server-1.1'; then + if ! built_with_use x11-base/xorg-server xorg; then + eerror "x11-base/xorg-server is not built with support for external drivers." + die "You must build x11-base/xorg-server with USE=xorg." + fi + fi + fi +} + +x-modular_unpack_source() { + unpack ${A} + cd ${S} + + if [[ -n ${FONT_OPTIONS} ]]; then + einfo "Detected font directory: ${FONT_DIR}" + fi +} + +x-modular_patch_source() { + # Use standardized names and locations with bulk patching + # Patch directory is ${WORKDIR}/patch + # See epatch() in eutils.eclass for more documentation + if [[ -z "${EPATCH_SUFFIX}" ]] ; then + EPATCH_SUFFIX="patch" + fi + + # If this is a driver package we need to fix man page install location. + # Running autoreconf will use the patched util-macros to make the + # change for us, so we only need to patch if it is not going to run. + if [[ -n "${DRIVER}" ]] && [[ "${SNAPSHOT}" != "yes" ]]; then + PATCHES="${PATCHES} ${DISTDIR}/x11-driver-patches-${XDPVER}.tar.bz2" + fi + + # For specific list of patches + if [[ -n "${PATCHES}" ]] ; then + for PATCH in ${PATCHES} + do + epatch ${PATCH} + done + # For non-default directory bulk patching + elif [[ -n "${PATCH_LOC}" ]] ; then + epatch ${PATCH_LOC} + # For standard bulk patching + elif [[ -d "${EPATCH_SOURCE}" ]] ; then + epatch + fi +} + +x-modular_reconf_source() { + # Run autoreconf for CVS snapshots only + if [[ "${SNAPSHOT}" = "yes" ]] + then + # If possible, generate configure if it doesn't exist + if [ -f "${S}/configure.ac" ] + then + eautoreconf + fi + fi + + # Joshua Baergen - October 23, 2005 + # Fix shared lib issues on MIPS, FBSD, etc etc + elibtoolize +} + +x-modular_src_unpack() { + x-modular_specs_check + x-modular_server_supports_drivers_check + x-modular_dri_check + x-modular_unpack_source + x-modular_patch_source + x-modular_reconf_source +} + +x-modular_font_configure() { + if [[ -n "${FONT}" ]]; then + # Might be worth adding an option to configure your desired font + # and exclude all others. Also, should this USE be nls or minimal? + if ! use nls; then + FONT_OPTIONS="${FONT_OPTIONS} + --disable-iso8859-2 + --disable-iso8859-3 + --disable-iso8859-4 + --disable-iso8859-5 + --disable-iso8859-6 + --disable-iso8859-7 + --disable-iso8859-8 + --disable-iso8859-9 + --disable-iso8859-10 + --disable-iso8859-11 + --disable-iso8859-12 + --disable-iso8859-13 + --disable-iso8859-14 + --disable-iso8859-15 + --disable-iso8859-16 + --disable-jisx0201 + --disable-koi8-r" + fi + fi +} + +x-modular_debug_setup() { + if [[ -n "${DEBUGGABLE}" ]]; then + if use debug; then + strip-flags + append-flags -g + fi + fi +} + +x-modular_src_configure() { + x-modular_font_configure + x-modular_debug_setup + + # If prefix isn't set here, .pc files cause problems + if [[ -x ./configure ]]; then + econf --prefix=${XDIR} \ + --datadir=${XDIR}/share \ + ${FONT_OPTIONS} \ + ${DRIVER_OPTIONS} \ + ${CONFIGURE_OPTIONS} + fi +} + +x-modular_src_make() { + emake || die "emake failed" +} + +x-modular_src_compile() { + x-modular_src_configure + x-modular_src_make +} + +x-modular_src_install() { + # Install everything to ${XDIR} + make \ + DESTDIR="${D}" \ + install +# Shouldn't be necessary in XDIR=/usr +# einstall forces datadir, so we need to re-force it +# datadir=${XDIR}/share \ +# mandir=${XDIR}/share/man \ + + if [[ -e ${S}/ChangeLog ]]; then + dodoc ${S}/ChangeLog + fi + + # Make sure docs get compressed + prepalldocs + + # Don't install libtool archives for server modules + if [[ -e ${D}/usr/lib/xorg/modules ]]; then + find ${D}/usr/lib/xorg/modules -name '*.la' \ + | xargs rm -f + fi + + # Don't install overlapping fonts.* files + # Generate them instead when possible + if [[ -n "${FONT}" ]]; then + remove_font_metadata + fi +} + +x-modular_pkg_preinst() { + if [[ -n "${FONT}" ]]; then + discover_font_dirs + fi +} + +x-modular_pkg_postinst() { + if [[ -n "${FONT}" ]]; then + setup_fonts + fi +} + +x-modular_pkg_postrm() { + if [[ -n "${FONT}" ]]; then + cleanup_fonts + fi +} + +cleanup_fonts() { + local ALLOWED_FILES="encodings.dir fonts.cache-1 fonts.dir fonts.scale" + for DIR in ${FONT_DIR}; do + unset KEEP_FONTDIR + REAL_DIR=${ROOT}usr/share/fonts/${DIR} + + ebegin "Checking ${REAL_DIR} for useless files" + pushd ${REAL_DIR} &> /dev/null + for FILE in *; do + unset MATCH + for ALLOWED_FILE in ${ALLOWED_FILES}; do + if [[ ${FILE} = ${ALLOWED_FILE} ]]; then + # If it's allowed, then move on to the next file + MATCH="yes" + break + fi + done + # If we found a match in allowed files, move on to the next file + if [[ -n ${MATCH} ]]; then + continue + fi + # If we get this far, there wasn't a match in the allowed files + KEEP_FONTDIR="yes" + # We don't need to check more files if we're already keeping it + break + done + popd &> /dev/null + # If there are no files worth keeping, then get rid of the dir + if [[ -z "${KEEP_FONTDIR}" ]]; then + rm -rf ${REAL_DIR} + fi + eend 0 + done +} + +setup_fonts() { + if [[ ! -n "${FONT_DIRS}" ]]; then + msg="FONT_DIRS is empty. The ebuild should set it to at least one subdir of /usr/share/fonts." + eerror "${msg}" + die "${msg}" + fi + + create_fonts_scale + create_fonts_dir + fix_font_permissions + create_font_cache +} + +remove_font_metadata() { + local DIR + for DIR in ${FONT_DIR}; do + if [[ "${DIR}" != "Speedo" ]] && \ + [[ "${DIR}" != "CID" ]] ; then + # Delete font metadata files + # fonts.scale, fonts.dir, fonts.cache-1 + rm -f ${D}/usr/share/fonts/${DIR}/fonts.{scale,dir,cache-1} + fi + done +} + +discover_font_dirs() { + pushd ${IMAGE}/usr/share/fonts + FONT_DIRS="$(find . -maxdepth 1 -mindepth 1 -type d)" + FONT_DIRS="$(echo ${FONT_DIRS} | sed -e 's:./::g')" + popd +} + +create_fonts_scale() { + ebegin "Creating fonts.scale files" + local x + for FONT_DIR in ${FONT_DIRS}; do + x=${ROOT}/usr/share/fonts/${FONT_DIR} + [[ -z "$(ls ${x}/)" ]] && continue + [[ "$(ls ${x}/)" = "fonts.cache-1" ]] && continue + + # Only generate .scale files if truetype, opentype or type1 + # fonts are present ... + + # First truetype (ttf,ttc) + # NOTE: ttmkfdir does NOT work on type1 fonts (#53753) + # Also, there is no way to regenerate Speedo/CID fonts.scale + # <spyderous@gentoo.org> 2 August 2004 + if [[ "${x/encodings}" = "${x}" ]] \ + && [[ -n "$(find ${x} -iname '*.tt[cf]' -print)" ]]; then + if [[ -x ${ROOT}/usr/bin/ttmkfdir ]]; then + LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${ROOT}/usr/$(get_libdir)" \ + ${ROOT}/usr/bin/ttmkfdir -x 2 \ + -e ${ROOT}/usr/share/fonts/encodings/encodings.dir \ + -o ${x}/fonts.scale -d ${x} + # ttmkfdir fails on some stuff, so try mkfontscale if it does + local ttmkfdir_return=$? + else + # We didn't use ttmkfdir at all + local ttmkfdir_return=2 + fi + if [[ ${ttmkfdir_return} -ne 0 ]]; then + LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${ROOT}/usr/$(get_libdir)" \ + ${ROOT}/usr/bin/mkfontscale \ + -a /usr/share/fonts/encodings/encodings.dir \ + -- ${x} + fi + # Next type1 and opentype (pfa,pfb,otf,otc) + elif [[ "${x/encodings}" = "${x}" ]] \ + && [[ -n "$(find ${x} -iname '*.[po][ft][abcf]' -print)" ]]; then + LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${ROOT}/usr/$(get_libdir)" \ + ${ROOT}/usr/bin/mkfontscale \ + -a ${ROOT}/usr/share/fonts/encodings/encodings.dir \ + -- ${x} + fi + done + eend 0 +} + +create_fonts_dir() { + ebegin "Generating fonts.dir files" + for FONT_DIR in ${FONT_DIRS}; do + x=${ROOT}/usr/share/fonts/${FONT_DIR} + [[ -z "$(ls ${x}/)" ]] && continue + [[ "$(ls ${x}/)" = "fonts.cache-1" ]] && continue + + if [[ "${x/encodings}" = "${x}" ]]; then + LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${ROOT}/usr/$(get_libdir)" \ + ${ROOT}/usr/bin/mkfontdir \ + -e ${ROOT}/usr/share/fonts/encodings \ + -e ${ROOT}/usr/share/fonts/encodings/large \ + -- ${x} + fi + done + eend 0 +} + +fix_font_permissions() { + ebegin "Fixing permissions" + for FONT_DIR in ${FONT_DIRS}; do + find ${ROOT}/usr/share/fonts/${FONT_DIR} -type f -name 'font.*' \ + -exec chmod 0644 {} \; + done + eend 0 +} + +create_font_cache() { + # danarmak found out that fc-cache should be run AFTER all the above + # stuff, as otherwise the cache is invalid, and has to be run again + # as root anyway + if [[ -x ${ROOT}/usr/bin/fc-cache ]]; then + ebegin "Creating FC font cache" + HOME="/root" ${ROOT}/usr/bin/fc-cache + eend 0 + fi +} diff --git a/hardened/xorg/media-libs/mesa/Manifest b/hardened/xorg/media-libs/mesa/Manifest new file mode 100644 index 0000000..4b5510e --- /dev/null +++ b/hardened/xorg/media-libs/mesa/Manifest @@ -0,0 +1,24 @@ +AUX 6.4-dont-install-gles-headers.patch 421 RMD160 70713f143d080b444089a95712efd227227c523f SHA1 ffdf556a66229d0417d5d7e7833c8e9bfdb39741 SHA256 8f636c2e09ac7fdab0d06ebe62af5a311b52a03bf7b7bdecf4789a6e30e0777e +MD5 ae36bba4e878c77dc2e823ce00e98869 files/6.4-dont-install-gles-headers.patch 421 +RMD160 70713f143d080b444089a95712efd227227c523f files/6.4-dont-install-gles-headers.patch 421 +SHA256 8f636c2e09ac7fdab0d06ebe62af5a311b52a03bf7b7bdecf4789a6e30e0777e files/6.4-dont-install-gles-headers.patch 421 +AUX 6.4-multilib-fix.patch 535 RMD160 5ab0237e5096728b38675c9c265cfb2c88009c00 SHA1 fe4b95135fd2855c40ab726045e901355a3af4aa SHA256 8fe39ec2ca86b206cb0d870d6644f68eb52af209f5bfb6eaad612deee80d754f +MD5 d6254b7a775480084efcd30d9fb4cbad files/6.4-multilib-fix.patch 535 +RMD160 5ab0237e5096728b38675c9c265cfb2c88009c00 files/6.4-multilib-fix.patch 535 +SHA256 8fe39ec2ca86b206cb0d870d6644f68eb52af209f5bfb6eaad612deee80d754f files/6.4-multilib-fix.patch 535 +AUX 6.5-re-order-context-destruction.patch 2295 RMD160 5c2648f9d4fca2f3abf53ad9d29101fd931493be SHA1 0f3825910ba3d246cf59efe560f9fecab82e86d4 SHA256 dda980be89d14df3659c0d409c56e4ccd6a03afdca2e8edc502845943423a600 +MD5 621322964afb60d36444f1dfe86719b2 files/6.5-re-order-context-destruction.patch 2295 +RMD160 5c2648f9d4fca2f3abf53ad9d29101fd931493be files/6.5-re-order-context-destruction.patch 2295 +SHA256 dda980be89d14df3659c0d409c56e4ccd6a03afdca2e8edc502845943423a600 files/6.5-re-order-context-destruction.patch 2295 +AUX change-default-dri-driver-dir-X7.1.patch 399 RMD160 169dd99888a66bf63bc528f183bd4c2b6d16b0f9 SHA1 c44dd4a468d9f4b2ed202bc914bc25d5db206a80 SHA256 8dbdbad95f47bfc18a366e091ffc1d67ff16da970181626d939a19eed46a212d +MD5 81ac0734b6194da3d9ca40d564303670 files/change-default-dri-driver-dir-X7.1.patch 399 +RMD160 169dd99888a66bf63bc528f183bd4c2b6d16b0f9 files/change-default-dri-driver-dir-X7.1.patch 399 +SHA256 8dbdbad95f47bfc18a366e091ffc1d67ff16da970181626d939a19eed46a212d files/change-default-dri-driver-dir-X7.1.patch 399 +DIST MesaLib-6.5.tar.bz2 3062363 RMD160 6006bfdfed8a2425059c31ee699b5aca4d5f57cd SHA1 a77368901b0731b662d0858aef2c405a7ddf6014 SHA256 dcacf4c18af89b57e66dc7ba39e24c3b74ff6f83b8745bcc1390170a4190eebd +EBUILD mesa-6.5-r3.ebuild 8897 RMD160 8c5399a04fa262517ee2a9685394046e4369e3d4 SHA1 f6b7b7b5e8904c4fff4edfa83df9188a7febd8c7 SHA256 e5028b91184b634d4abfd636c38831678cba3457d63140c895a0dea2de9e07c2 +MD5 16162b59e4f93f2308d2e81c3d573bf9 mesa-6.5-r3.ebuild 8897 +RMD160 8c5399a04fa262517ee2a9685394046e4369e3d4 mesa-6.5-r3.ebuild 8897 +SHA256 e5028b91184b634d4abfd636c38831678cba3457d63140c895a0dea2de9e07c2 mesa-6.5-r3.ebuild 8897 +MD5 80bc8bfb6472d4dcbad6e14a2595c1a9 files/digest-mesa-6.5-r3 241 +RMD160 069ddf1320b547a5a5cf1af3d0611a6c35398c7e files/digest-mesa-6.5-r3 241 +SHA256 5a5ab578d50f251808ddf18cd61f6e5518224168555fc288725a8466892b4f88 files/digest-mesa-6.5-r3 241 diff --git a/hardened/xorg/media-libs/mesa/files/6.4-dont-install-gles-headers.patch b/hardened/xorg/media-libs/mesa/files/6.4-dont-install-gles-headers.patch new file mode 100644 index 0000000..5bdc0a1 --- /dev/null +++ b/hardened/xorg/media-libs/mesa/files/6.4-dont-install-gles-headers.patch @@ -0,0 +1,11 @@ +diff -urN Mesa-6.4.orig/bin/installmesa Mesa-6.4/bin/installmesa +--- Mesa-6.4.orig/bin/installmesa 2005-09-13 06:36:17.000000000 -0700 ++++ Mesa-6.4/bin/installmesa 2005-10-13 14:10:39.000000000 -0700 +@@ -60,7 +60,6 @@ + + mkdir ${INCLUDE_DIR} + mkdir ${INCLUDE_DIR}/GL +-mkdir ${INCLUDE_DIR}/GLES + mkdir ${LIB_DIR} + cp -f ${TOP}/include/GL/*.h ${INCLUDE_DIR}/GL + # NOT YET: cp -f ${TOP}/include/GLES/*.h ${INCLUDE_DIR}/GLES diff --git a/hardened/xorg/media-libs/mesa/files/6.4-multilib-fix.patch b/hardened/xorg/media-libs/mesa/files/6.4-multilib-fix.patch new file mode 100644 index 0000000..8e16a95 --- /dev/null +++ b/hardened/xorg/media-libs/mesa/files/6.4-multilib-fix.patch @@ -0,0 +1,27 @@ +--- bin/installmesa.multilib-fix 2005-12-16 01:46:30.000000000 +0000 ++++ bin/installmesa 2005-12-16 01:47:22.000000000 +0000 +@@ -9,8 +9,9 @@ + + TOP=. + +-INCLUDE_DIR="/usr/local/include" +-LIB_DIR="/usr/local/lib" ++# Default to /usr/local if these aren't already set. ++INCLUDE_DIR="${INCLUDE_DIR:-/usr/local/include}" ++LIB_DIR="${LIB_DIR:-/usr/local/lib}" + + if [ "x$#" = "x0" ] ; then + echo +@@ -40,9 +41,9 @@ + + read INPUT + +-else +-INCLUDE_DIR=$1/include +-LIB_DIR=$1/lib ++#else ++#INCLUDE_DIR=$1/include ++#LIB_DIR=$1/lib + fi + + # flags: diff --git a/hardened/xorg/media-libs/mesa/files/6.5-re-order-context-destruction.patch b/hardened/xorg/media-libs/mesa/files/6.5-re-order-context-destruction.patch new file mode 100644 index 0000000..a882d07 --- /dev/null +++ b/hardened/xorg/media-libs/mesa/files/6.5-re-order-context-destruction.patch @@ -0,0 +1,72 @@ +--- src/mesa/drivers/dri/r128/r128_context.c 2006/02/03 13:29:11 1.23 ++++ src/mesa/drivers/dri/r128/r128_context.c 2006/04/09 17:48:28 1.24 +@@ -296,10 +296,6 @@ + _ac_DestroyContext( rmesa->glCtx ); + _swrast_DestroyContext( rmesa->glCtx ); + +- /* free the Mesa context */ +- rmesa->glCtx->DriverCtx = NULL; +- _mesa_destroy_context(rmesa->glCtx); +- + if ( release_texture_heaps ) { + /* This share group is about to go away, free our private + * texture object data. +@@ -314,6 +310,10 @@ + assert( is_empty_list( & rmesa->swapped ) ); + } + ++ /* free the Mesa context */ ++ rmesa->glCtx->DriverCtx = NULL; ++ _mesa_destroy_context(rmesa->glCtx); ++ + /* free the option cache */ + driDestroyOptionCache (&rmesa->optionCache); + +--- src/mesa/drivers/dri/r200/r200_context.c 2006/04/04 11:04:30 1.58 ++++ src/mesa/drivers/dri/r200/r200_context.c 2006/04/09 17:48:28 1.59 +@@ -590,10 +590,6 @@ + r200VtxfmtDestroy( rmesa->glCtx ); + } + +- /* free the Mesa context */ +- rmesa->glCtx->DriverCtx = NULL; +- _mesa_destroy_context( rmesa->glCtx ); +- + if (rmesa->state.scissor.pClipRects) { + FREE(rmesa->state.scissor.pClipRects); + rmesa->state.scissor.pClipRects = NULL; +@@ -613,6 +609,10 @@ + assert( is_empty_list( & rmesa->swapped ) ); + } + ++ /* free the Mesa context */ ++ rmesa->glCtx->DriverCtx = NULL; ++ _mesa_destroy_context( rmesa->glCtx ); ++ + /* free the option cache */ + driDestroyOptionCache (&rmesa->optionCache); + +--- src/mesa/drivers/dri/radeon/radeon_context.c 2006/04/04 11:04:30 1.51 ++++ src/mesa/drivers/dri/radeon/radeon_context.c 2006/04/09 17:48:28 1.52 +@@ -521,10 +521,6 @@ + radeonVtxfmtDestroy( rmesa->glCtx ); + } + +- /* free the Mesa context */ +- rmesa->glCtx->DriverCtx = NULL; +- _mesa_destroy_context( rmesa->glCtx ); +- + _mesa_vector4f_free( &rmesa->tcl.ObjClean ); + + if (rmesa->state.scissor.pClipRects) { +@@ -546,6 +542,10 @@ + assert( is_empty_list( & rmesa->swapped ) ); + } + ++ /* free the Mesa context */ ++ rmesa->glCtx->DriverCtx = NULL; ++ _mesa_destroy_context( rmesa->glCtx ); ++ + /* free the option cache */ + driDestroyOptionCache (&rmesa->optionCache); + diff --git a/hardened/xorg/media-libs/mesa/files/change-default-dri-driver-dir-X7.1.patch b/hardened/xorg/media-libs/mesa/files/change-default-dri-driver-dir-X7.1.patch new file mode 100644 index 0000000..5ea6924 --- /dev/null +++ b/hardened/xorg/media-libs/mesa/files/change-default-dri-driver-dir-X7.1.patch @@ -0,0 +1,11 @@ +--- Mesa-6.3.1.1.orig/src/glx/x11/dri_glx.c 2005-07-27 17:29:51.000000000 -0700 ++++ Mesa-6.3.1.1/src/glx/x11/dri_glx.c 2005-08-14 11:09:54.000000000 -0700 +@@ -58,7 +58,7 @@ + + #ifndef DEFAULT_DRIVER_DIR + /* this is normally defined in the Imakefile */ +-#define DEFAULT_DRIVER_DIR "/usr/X11R6/lib/modules/dri" ++#define DEFAULT_DRIVER_DIR "/usr/lib/dri" + #endif + + static __DRIdriver *Drivers = NULL; diff --git a/hardened/xorg/media-libs/mesa/files/digest-mesa-6.5-r3 b/hardened/xorg/media-libs/mesa/files/digest-mesa-6.5-r3 new file mode 100644 index 0000000..79639c7 --- /dev/null +++ b/hardened/xorg/media-libs/mesa/files/digest-mesa-6.5-r3 @@ -0,0 +1,3 @@ +MD5 61beda590bfc5b4a12e979d5f2d70d7a MesaLib-6.5.tar.bz2 3062363 +RMD160 6006bfdfed8a2425059c31ee699b5aca4d5f57cd MesaLib-6.5.tar.bz2 3062363 +SHA256 dcacf4c18af89b57e66dc7ba39e24c3b74ff6f83b8745bcc1390170a4190eebd MesaLib-6.5.tar.bz2 3062363 diff --git a/hardened/xorg/media-libs/mesa/mesa-6.5-r3.ebuild b/hardened/xorg/media-libs/mesa/mesa-6.5-r3.ebuild new file mode 100644 index 0000000..c022cb0 --- /dev/null +++ b/hardened/xorg/media-libs/mesa/mesa-6.5-r3.ebuild @@ -0,0 +1,336 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-6.5-r3.ebuild,v 1.2 2006/06/21 06:07:43 spyderous Exp $ + +inherit eutils toolchain-funcs multilib flag-o-matic portability + +OPENGL_DIR="xorg-x11" + +MY_PN="${PN/m/M}" +MY_P="${MY_PN}-${PV}" +MY_SRC_P="${MY_PN}Lib-${PV}" +DESCRIPTION="OpenGL-like graphic library for Linux" +HOMEPAGE="http://mesa3d.sourceforge.net/" +SRC_URI="mirror://sourceforge/mesa3d/${MY_SRC_P}.tar.bz2" +LICENSE="LGPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE_VIDEO_CARDS=" + video_cards_i810 + video_cards_mach64 + video_cards_mga + video_cards_none + video_cards_r128 + video_cards_radeon + video_cards_s3virge + video_cards_savage + video_cards_sis + video_cards_sunffb + video_cards_tdfx + video_cards_trident + video_cards_via" +IUSE="${IUSE_VIDEO_CARDS} + debug + motif + nptl" + +RDEPEND="dev-libs/expat + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXxf86vm + x11-libs/libXi + x11-libs/libXmu + >=x11-libs/libdrm-2.0.1 + x11-libs/libICE + app-admin/eselect-opengl + motif? ( virtual/motif ) + !<=x11-base/xorg-x11-6.9" +DEPEND="${RDEPEND} + x11-misc/makedepend + x11-proto/inputproto + x11-proto/xextproto + !hppa? ( x11-proto/xf86driproto ) + x11-proto/xf86vidmodeproto + >=x11-proto/glproto-1.4.4 + motif? ( x11-proto/printproto )" + +PROVIDE="virtual/opengl virtual/glu" + +S="${WORKDIR}/${MY_P}" + +# Think about: ggi, svga, fbcon, no-X configs + +if use debug; then + if ! has splitdebug ${FEATURES}; then + RESTRICT="${RESTRICT} nostrip" + fi +fi + +pkg_setup() { + if use debug; then + strip-flags + append-flags -g + fi + + append-flags -fno-strict-aliasing + + if [[ ${KERNEL} == "FreeBSD" ]]; then + CONFIG="freebsd" + elif use x86; then + CONFIG="linux-dri-x86" + elif use amd64; then + CONFIG="linux-dri-x86-64" + elif use ppc; then + CONFIG="linux-dri-ppc" + else + CONFIG="linux-dri" + fi +} + +src_unpack() { + HOSTCONF="${S}/configs/${CONFIG}" + + unpack ${A} + cd ${S} + + epatch ${FILESDIR}/6.4-dont-install-gles-headers.patch + epatch ${FILESDIR}/change-default-dri-driver-dir-X7.1.patch + epatch ${FILESDIR}/6.4-multilib-fix.patch + epatch ${FILESDIR}/6.5-re-order-context-destruction.patch + + # Don't compile debug code with USE=-debug - bug #125004 + if ! use debug; then + einfo "Removing DO_DEBUG defs in dri drivers..." + find src/mesa/drivers/dri -name *.[hc] -exec egrep -l "\#define\W+DO_DEBUG\W+1" {} \; | xargs sed -i -re "s/\#define\W+DO_DEBUG\W+1/\#define DO_DEBUG 0/" ; + fi + + # Set default dri drivers directory + echo "DEFINES += -DDEFAULT_DRIVER_DIR='\"/usr/$(get_libdir)/dri\"'" >> ${HOSTCONF} + + # Do we want thread-local storage (TLS)? + if use nptl; then + echo "ARCH_FLAGS += -DGLX_USE_TLS" >> ${HOSTCONF} + fi + + # Configurable DRI drivers + if use video_cards_i810; then + add_drivers i810 i915 + fi + if use video_cards_mach64; then + add_drivers mach64 + fi + if use video_cards_mga; then + add_drivers mga + fi + if use video_cards_r128; then + add_drivers r128 + fi + if use video_cards_radeon; then + add_drivers radeon r200 r300 + fi + if use video_cards_s3virge; then + add_drivers s3v + fi + if use video_cards_savage; then + add_drivers savage + fi + if use video_cards_sis; then + add_drivers sis + fi + if use video_cards_sunffb; then + add_drivers ffb + fi + if use video_cards_tdfx; then + add_drivers tdfx + fi + if use video_cards_trident; then + add_drivers trident + fi + if use video_cards_via; then + add_drivers unichrome + fi + + # Defaults based on X.Org 6.9, with some changes + if [[ ! -n "${VIDEO_CARDS}" ]]; then + if use alpha; then + add_drivers mga tdfx r128 r200 r300 radeon + elif use amd64; then + add_drivers i915 mga r128 r200 r300 radeon tdfx + elif use arm; then + add_drivers mga r128 r200 r300 radeon + elif use hppa; then + # no accelerated 3D on hppa + true + elif use ia64; then + add_drivers mach64 mga r128 r200 r300 radeon tdfx unichrome + elif use mips; then + # no accelerated 3D on mips + true + elif use ppc; then + add_drivers mach64 mga r128 r200 r300 radeon tdfx + elif use ppc64; then + add_drivers mga r128 r200 r300 radeon + elif use sparc; then + add_drivers ffb mach64 + elif use x86; then + add_drivers i810 i915 mach64 mga r128 r200 r300 radeon s3v savage \ + sis tdfx trident unichrome + fi + fi + + # Set drivers to everything on which we ran add_drivers() + echo "DRI_DIRS = ${DRI_DRIVERS}" >> ${HOSTCONF} + + if use sparc; then + einfo "Sparc assembly code is not working; deactivating" + echo "ASM_FLAGS =" >> ${HOSTCONF} + echo "ASM_SOURCES =" >> ${HOSTCONF} + fi + + # Kill this; we don't want /usr/X11R6/lib ever to be searched in this + # build. + echo "EXTRA_LIB_PATH =" >> ${HOSTCONF} + + echo "OPT_FLAGS = ${CFLAGS}" >> ${HOSTCONF} + echo "CC = $(tc-getCC)" >> ${HOSTCONF} + echo "CXX = $(tc-getCXX)" >> ${HOSTCONF} + # bug #110840 - Build with PIC, since it hasn't been shown to slow it down + echo "PIC_FLAGS = -fPIC" >> ${HOSTCONF} + + # Removed glut, since we have separate freeglut/glut ebuilds + # Remove EGL, since Brian Paul says it's not ready for a release + echo "SRC_DIRS = glx/x11 mesa glu glw" >> ${HOSTCONF} + + # Get rid of glut includes + rm -f ${S}/include/GL/glut*h + + # r200 breaks without this, since it's the only EGL-enabled driver so far + echo "USING_EGL = 0" >> ${HOSTCONF} + + # Don't build EGL demos. EGL isn't ready for release, plus they produce a + # circular dependency with glut. + echo "PROGRAM_DIRS =" >> ${HOSTCONF} + + # Documented in configs/default + if use motif; then + # Add -lXm + echo "GLW_LIB_DEPS += -lXm" >> ${HOSTCONF} + # Add GLwMDrawA.c + echo "GLW_SOURCES += GLwMDrawA.c" >> ${HOSTCONF} + fi +} + +src_compile() { + emake -j1 ${CONFIG} || die "Build failed" +} + +src_install() { + dodir /usr + make \ + DESTDIR=${D}/usr \ + INCLUDE_DIR=${D}/usr/include \ + LIB_DIR=${D}/usr/$(get_libdir) \ + install || die "Installation failed" + + ## + # Install the actual drivers --- 'make install' doesn't install them + # anywhere. + dodir /usr/$(get_libdir)/dri + exeinto /usr/$(get_libdir)/dri + ebegin "Installing drivers to ${EXEDESTTREE}" + find ${S}/lib* -name '*_dri.so' | xargs doexe + eend + + if ! use motif; then + rm ${D}/usr/include/GL/GLwMDrawA.h + fi + + # Don't install private headers + rm ${D}/usr/include/GL/GLw*P.h + + fix_opengl_symlinks + dynamic_libgl_install + + # Install libtool archives + insinto /usr/$(get_libdir) + # (#67729) Needs to be lib, not $(get_libdir) + doins ${FILESDIR}/lib/libGLU.la + insinto /usr/$(get_libdir)/opengl/xorg-x11/lib + doins ${FILESDIR}/lib/libGL.la + + # On *BSD libcs dlopen() and similar functions are present directly in + # libc.so and does not require linking to libdl. portability eclass takes + # care of finding the needed library (if needed) witht the dlopen_lib + # function. + sed -i -e 's:-ldl:'$(dlopen_lib)':g' \ + ${D}/usr/$(get_libdir)/libGLU.la \ + ${D}/usr/$(get_libdir)/opengl/xorg-x11/lib/libGL.la + + # Create the two-number versioned libs (.so.#.#), since only .so.# and + # .so.#.#.# were made + dosym libGLU.so.1.3.060500 /usr/$(get_libdir)/libGLU.so.1.3 + dosym libGLw.so.1.0.0 /usr/$(get_libdir)/libGLw.so.1.0 + + # libGLU doesn't get the plain .so symlink either + dosym libGLU.so.1 /usr/$(get_libdir)/libGLU.so + + # Figure out why libGL.so.1.5 is built (directfb), and why it's linked to + # as the default libGL.so.1 +} + +pkg_postinst() { + switch_opengl_implem +} + +fix_opengl_symlinks() { + # Remove invalid symlinks + local LINK + for LINK in $(find ${D}/usr/$(get_libdir) \ + -name libGL\.* -type l); do + rm -f ${LINK} + done + # Create required symlinks + if [[ ${CHOST} == *-freebsd* ]]; then + # FreeBSD doesn't use major.minor versioning, so the library is only + # libGL.so.1 and no libGL.so.1.2 is ever used there, thus only create + # libGL.so symlink and leave libGL.so.1 being the real thing + dosym libGL.so.1 /usr/$(get_libdir)/libGL.so + else + dosym libGL.so.1.2 /usr/$(get_libdir)/libGL.so + dosym libGL.so.1.2 /usr/$(get_libdir)/libGL.so.1 + fi +} + +dynamic_libgl_install() { + # next section is to setup the dynamic libGL stuff + ebegin "Moving libGL and friends for dynamic switching" + dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/{lib,extensions,include} + local x="" + for x in ${D}/usr/$(get_libdir)/libGL.so* \ + ${D}/usr/$(get_libdir)/libGL.la \ + ${D}/usr/$(get_libdir)/libGL.a; do + if [ -f ${x} -o -L ${x} ]; then + # libGL.a cause problems with tuxracer, etc + mv -f ${x} ${D}/usr/$(get_libdir)/opengl/${OPENGL_DIR}/lib + fi + done + # glext.h added for #54984 + for x in ${D}/usr/include/GL/{gl.h,glx.h,glext.h,glxext.h}; do + if [ -f ${x} -o -L ${x} ]; then + mv -f ${x} ${D}/usr/$(get_libdir)/opengl/${OPENGL_DIR}/include + fi + done + eend 0 +} + +switch_opengl_implem() { + # Switch to the xorg implementation. + # Use new opengl-update that will not reset user selected + # OpenGL interface ... + echo + eselect opengl set --use-old ${OPENGL_DIR} +} + +add_drivers() { + DRI_DRIVERS="${DRI_DRIVERS} $@" +} diff --git a/hardened/xorg/x11-drivers/xf86-video-ati/Manifest b/hardened/xorg/x11-drivers/xf86-video-ati/Manifest new file mode 100644 index 0000000..ba3f2a5 --- /dev/null +++ b/hardened/xorg/x11-drivers/xf86-video-ati/Manifest @@ -0,0 +1,21 @@ +AUX xf86-video-ati-mainnorefsub.patch 3582 RMD160 a30f00946e8407ad89494872ba3ba91f616b9530 SHA1 d40ada6f6639af3cee32606eda9deefb9d9c8c4f SHA256 598d13102d74e8e408880dd1bf3d46cf0c49839ddfb6212824909ccc35d276d4 +MD5 3ae4df01dc047594c259a3db8d9b5e41 files/xf86-video-ati-mainnorefsub.patch 3582 +RMD160 a30f00946e8407ad89494872ba3ba91f616b9530 files/xf86-video-ati-mainnorefsub.patch 3582 +SHA256 598d13102d74e8e408880dd1bf3d46cf0c49839ddfb6212824909ccc35d276d4 files/xf86-video-ati-mainnorefsub.patch 3582 +DIST x11-driver-patches-1.tar.bz2 389 RMD160 0c57d4b235d83f3d7c46691c13857fd121ddec2d SHA1 6e2ac0cd255d3c4dc97d35092fe3ef64a71d7ac5 SHA256 64787d5b57d2845c0fa9297a9d924093ba191fc3551798239d9983f0bcca9b3e +DIST xf86-video-ati-6.5.8.0.tar.bz2 683625 RMD160 f774fc0a4e49481278ab220d454cf7bd8fad85cb SHA1 d0f7c9e7447e0219ea8616bb65a9e23d9ce5eb7c SHA256 564efc8f8e9b46bb0f8ae49d91d2a51a572f0294e571cc9d91dc6ed253ba119d +DIST xf86-video-ati-6.6.0.tar.bz2 723687 RMD160 ac58673f76c6693f35cb515731c2d7250b8c88b8 SHA1 f6b4eda4e4ee542afd16c2be33e651a91519b0cb SHA256 23027b52d5b82c47201ac7471c545162149a6c6d38ec9c090469f6698e83eb21 +EBUILD xf86-video-ati-6.5.8.0.ebuild 943 RMD160 eaa0d1d7e7d115bd5c1b480cacfb66e2c1359737 SHA1 9af7dc9e092ae657e800f70890b1e4f90b041d2d SHA256 be895809932a885efed686aba46fde9b4658fbc5e5039ca34d6656764bb7c214 +MD5 1990ab4c65e7f06406a7a20f99ea1b28 xf86-video-ati-6.5.8.0.ebuild 943 +RMD160 eaa0d1d7e7d115bd5c1b480cacfb66e2c1359737 xf86-video-ati-6.5.8.0.ebuild 943 +SHA256 be895809932a885efed686aba46fde9b4658fbc5e5039ca34d6656764bb7c214 xf86-video-ati-6.5.8.0.ebuild 943 +EBUILD xf86-video-ati-6.6.0.ebuild 946 RMD160 efe903fb51c63b58de20b951b13aa690a74de519 SHA1 943f0d1c15bf203d09c54b413bc5693489552366 SHA256 65a46098c23579f94997dd679732a213ad62fa0292f9c9d7e81820fdc3bc626a +MD5 b858b244c49dd5f927e2a5c03b81b1c7 xf86-video-ati-6.6.0.ebuild 946 +RMD160 efe903fb51c63b58de20b951b13aa690a74de519 xf86-video-ati-6.6.0.ebuild 946 +SHA256 65a46098c23579f94997dd679732a213ad62fa0292f9c9d7e81820fdc3bc626a xf86-video-ati-6.6.0.ebuild 946 +MD5 9faed29310a3324108fa498f86106e45 files/digest-xf86-video-ati-6.5.8.0 527 +RMD160 605aa390d1786b15c389363cb54129756718fb06 files/digest-xf86-video-ati-6.5.8.0 527 +SHA256 5ab2e6e336a7534869abb3d01bc5d02583a4391f447835b9cacf8a488b5e35a3 files/digest-xf86-video-ati-6.5.8.0 527 +MD5 9fe6428e15bc57a8c214106d89faf3b2 files/digest-xf86-video-ati-6.6.0 521 +RMD160 7cffbddf1bddbe5b4aad06400497e3168bbd3e1e files/digest-xf86-video-ati-6.6.0 521 +SHA256 2fbb6985c2ce484bf327f8734882a6e0e47524ef219617eea9c5793cf22957a8 files/digest-xf86-video-ati-6.6.0 521 diff --git a/hardened/xorg/x11-drivers/xf86-video-ati/files/digest-xf86-video-ati-6.5.8.0 b/hardened/xorg/x11-drivers/xf86-video-ati/files/digest-xf86-video-ati-6.5.8.0 new file mode 100644 index 0000000..e78bfb5 --- /dev/null +++ b/hardened/xorg/x11-drivers/xf86-video-ati/files/digest-xf86-video-ati-6.5.8.0 @@ -0,0 +1,6 @@ +MD5 1b8cfd2923836ee93eda69abe50dda04 x11-driver-patches-1.tar.bz2 389 +RMD160 0c57d4b235d83f3d7c46691c13857fd121ddec2d x11-driver-patches-1.tar.bz2 389 +SHA256 64787d5b57d2845c0fa9297a9d924093ba191fc3551798239d9983f0bcca9b3e x11-driver-patches-1.tar.bz2 389 +MD5 6d99444b698b762d689b30a1e4f36c55 xf86-video-ati-6.5.8.0.tar.bz2 683625 +RMD160 f774fc0a4e49481278ab220d454cf7bd8fad85cb xf86-video-ati-6.5.8.0.tar.bz2 683625 +SHA256 564efc8f8e9b46bb0f8ae49d91d2a51a572f0294e571cc9d91dc6ed253ba119d xf86-video-ati-6.5.8.0.tar.bz2 683625 diff --git a/hardened/xorg/x11-drivers/xf86-video-ati/files/digest-xf86-video-ati-6.6.0 b/hardened/xorg/x11-drivers/xf86-video-ati/files/digest-xf86-video-ati-6.6.0 new file mode 100644 index 0000000..328add6 --- /dev/null +++ b/hardened/xorg/x11-drivers/xf86-video-ati/files/digest-xf86-video-ati-6.6.0 @@ -0,0 +1,6 @@ +MD5 1b8cfd2923836ee93eda69abe50dda04 x11-driver-patches-1.tar.bz2 389 +RMD160 0c57d4b235d83f3d7c46691c13857fd121ddec2d x11-driver-patches-1.tar.bz2 389 +SHA256 64787d5b57d2845c0fa9297a9d924093ba191fc3551798239d9983f0bcca9b3e x11-driver-patches-1.tar.bz2 389 +MD5 fbf04977d41239d55387122a4de6bd16 xf86-video-ati-6.6.0.tar.bz2 723687 +RMD160 ac58673f76c6693f35cb515731c2d7250b8c88b8 xf86-video-ati-6.6.0.tar.bz2 723687 +SHA256 23027b52d5b82c47201ac7471c545162149a6c6d38ec9c090469f6698e83eb21 xf86-video-ati-6.6.0.tar.bz2 723687 diff --git a/hardened/xorg/x11-drivers/xf86-video-ati/files/xf86-video-ati-mainnorefsub.patch b/hardened/xorg/x11-drivers/xf86-video-ati/files/xf86-video-ati-mainnorefsub.patch new file mode 100644 index 0000000..bc445a9 --- /dev/null +++ b/hardened/xorg/x11-drivers/xf86-video-ati/files/xf86-video-ati-mainnorefsub.patch @@ -0,0 +1,126 @@ +--- src/atiprobe.c.orig 2006-05-28 22:40:21.000000000 +0200 ++++ src/atiprobe.c 2006-05-28 23:09:44.000000000 +0200 +@@ -62,6 +62,11 @@ + * largely ignored. + */ + ++#ifdef XFree86LOADER ++typedef void (*ATIFillInScreenInfoFn)(ScrnInfoPtr); ++ATIFillInScreenInfoFn ATIFillInScreenInfoPtr = NULL; ++#endif ++ + /* Used as a temporary buffer */ + #define Identifier ((char *)(pATI->MMIOCache)) + +@@ -2279,6 +2284,8 @@ + + xf86LoaderReqSymLists(ATISymbols, NULL); + ++ ATIFillInScreenInfoPtr = (ATIFillInScreenInfoFn)LoaderSymbol("ATIFilInScreenInfo"); ++ + #endif + + /* Attach device to screen */ +@@ -2287,7 +2294,11 @@ + ATIPtrs[j - 1] = NULL; + + /* Fill in probe data */ ++#ifdef XFree86LOADER ++ (*ATIFillInScreenInfoPtr)(pScreenInfo); ++#else + ATIFillInScreenInfo(pScreenInfo); ++#endif + + pScreenInfo->driverPrivate = pATI; + +--- src/r128_probe.c.orig 2006-05-28 22:39:56.000000000 +0200 ++++ src/r128_probe.c 2006-05-28 23:08:48.000000000 +0200 +@@ -53,6 +53,13 @@ + + #include "r128_chipset.h" + ++#ifdef XFree86LOADER ++typedef void (*R128FillInScreenInfoFn)(ScrnInfoPtr); ++typedef const OptionInfoRec *(*R128OptionsWeakFn)(void); ++static R128FillInScreenInfoFn R128FillInScreenInfoPtr = NULL; ++static R128OptionsWeakFn R128OptionsWeakPtr = NULL; ++#endif ++ + PciChipsets R128PciChipsets[] = { + { PCI_CHIP_RAGE128LE, PCI_CHIP_RAGE128LE, RES_SHARED_VGA }, + { PCI_CHIP_RAGE128LF, PCI_CHIP_RAGE128LF, RES_SHARED_VGA }, +@@ -120,7 +127,11 @@ + chipid -= PCI_VENDOR_ATI << 16; + for (i = 0; R128PciChipsets[i].PCIid > 0; i++) { + if (chipid == R128PciChipsets[i].PCIid) ++#ifdef XFree86LOADER ++ return (*R128OptionsWeakPtr)(); ++#else + return R128OptionsWeak(); ++#endif + } + return NULL; + } +@@ -206,10 +217,16 @@ + + xf86LoaderReqSymLists(R128Symbols, NULL); + ++ R128FillInScreenInfoPtr = (R128FillInScreenInfoFn)LoaderSymbol("R128FillInScreenInfo"); ++ R128OptionsWeakPtr = (R128OptionsWeakFn)LoaderSymbol("R128OptionsWeak"); + #endif + + pScrn->Probe = R128Probe; ++#ifdef XFree86LOADER ++ (*R128FillInScreenInfoPtr)(pScrn); ++#else + R128FillInScreenInfo(pScrn); ++#endif + + foundScreen = TRUE; + +--- src/radeon_probe.c.orig 2006-05-28 22:39:46.000000000 +0200 ++++ src/radeon_probe.c 2006-05-28 23:04:52.000000000 +0200 +@@ -54,6 +54,13 @@ + + #include "radeon_chipset.h" + ++#ifdef XFree86LOADER ++typedef void (*RADEONFillInScreenInfoFn)(ScrnInfoPtr); ++typedef const OptionInfoRec *(*RADEONOptionsWeakFn)(void); ++static RADEONFillInScreenInfoFn RADEONFillInScreenInfoPtr = NULL; ++static RADEONOptionsWeakFn RADEONOptionsWeakPtr = NULL; ++#endif ++ + PciChipsets RADEONPciChipsets[] = { + { PCI_CHIP_RADEON_QD, PCI_CHIP_RADEON_QD, RES_SHARED_VGA }, + { PCI_CHIP_RADEON_QE, PCI_CHIP_RADEON_QE, RES_SHARED_VGA }, +@@ -213,7 +220,11 @@ + chipid -= PCI_VENDOR_ATI << 16; + for (i = 0; RADEONPciChipsets[i].PCIid > 0; i++) { + if (chipid == RADEONPciChipsets[i].PCIid) ++#ifdef XFree86LOADER ++ return (*RADEONOptionsWeakPtr)(); ++#else + return RADEONOptionsWeak(); ++#endif + } + return NULL; + } +@@ -294,10 +305,17 @@ + } + + xf86LoaderReqSymLists(RADEONSymbols, NULL); ++ ++ RADEONFillInScreenInfoPtr = (RADEONFillInScreenInfoFn)LoaderSymbol("RADEONFillInScreenInfo"); ++ RADEONOptionsWeakPtr = (RADEONOptionsWeakFn)LoaderSymbol("RADEONOptionsWeak"); + #endif + + pScrn->Probe = RADEONProbe; ++#ifdef XFree86LOADER ++ (*RADEONFillInScreenInfoPtr)(pScrn); ++#else + RADEONFillInScreenInfo(pScrn); ++#endif + foundScreen = TRUE; + } + diff --git a/hardened/xorg/x11-drivers/xf86-video-ati/xf86-video-ati-6.5.8.0.ebuild b/hardened/xorg/x11-drivers/xf86-video-ati/xf86-video-ati-6.5.8.0.ebuild new file mode 100644 index 0000000..98db382 --- /dev/null +++ b/hardened/xorg/x11-drivers/xf86-video-ati/xf86-video-ati-6.5.8.0.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-ati/xf86-video-ati-6.5.8.0.ebuild,v 1.1 2006/04/29 16:57:17 joshuabaergen Exp $ + +# Must be before x-modular eclass is inherited +#SNAPSHOT="yes" +PATCHES=${FILESDIR}/xf86-video-ati-mainnorefsub.patch + +inherit x-modular + +DESCRIPTION="X.Org driver for ati cards" +KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="dri" +RDEPEND="x11-base/xorg-server" +DEPEND="${RDEPEND} + x11-proto/fontsproto + x11-proto/randrproto + x11-proto/videoproto + x11-proto/xextproto + x11-proto/xineramaproto + x11-proto/xf86miscproto + x11-proto/xproto + dri? ( x11-proto/xf86driproto + >=x11-libs/libdrm-2 )" + +CONFIGURE_OPTIONS="$(use_enable dri)" + +pkg_setup() { + if use dri && ! built_with_use x11-base/xorg-server dri; then + die "Build x11-base/xorg-server with USE=dri." + fi +} diff --git a/hardened/xorg/x11-drivers/xf86-video-ati/xf86-video-ati-6.6.0.ebuild b/hardened/xorg/x11-drivers/xf86-video-ati/xf86-video-ati-6.6.0.ebuild new file mode 100644 index 0000000..522dd89 --- /dev/null +++ b/hardened/xorg/x11-drivers/xf86-video-ati/xf86-video-ati-6.6.0.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-ati/xf86-video-ati-6.6.0.ebuild,v 1.2 2006/06/05 21:38:07 flameeyes Exp $ + +# Must be before x-modular eclass is inherited +#SNAPSHOT="yes" +PATCHES=${FILESDIR}/xf86-video-ati-mainnorefsub.patch + +inherit x-modular + +DESCRIPTION="X.Org driver for ati cards" +KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="dri" +RDEPEND=">=x11-base/xorg-server-1.0.99" +DEPEND="${RDEPEND} + x11-proto/fontsproto + x11-proto/randrproto + x11-proto/videoproto + x11-proto/xextproto + x11-proto/xineramaproto + x11-proto/xf86miscproto + x11-proto/xproto + dri? ( x11-proto/xf86driproto + >=x11-libs/libdrm-2 )" + +CONFIGURE_OPTIONS="$(use_enable dri)" + +pkg_setup() { + if use dri && ! built_with_use x11-base/xorg-server dri; then + die "Build x11-base/xorg-server with USE=dri." + fi +} diff --git a/hardened/xorg/x11-drivers/xf86-video-cirrus/Manifest b/hardened/xorg/x11-drivers/xf86-video-cirrus/Manifest new file mode 100644 index 0000000..00845e1 --- /dev/null +++ b/hardened/xorg/x11-drivers/xf86-video-cirrus/Manifest @@ -0,0 +1,21 @@ +AUX xf86-video-cirrus-mainnorefsub.patch 2566 RMD160 958f35935bb6abda2f9c0703eb435d6a6b30efc2 SHA1 f326b3f3c876f18350177418124d748d12545254 SHA256 637ed9b68cde2ce16365b261e2ebea73a20973a409f7e7d12d1bc6ad7cd50db2 +MD5 d4347cab6fff7cae1e1a70d38429b65c files/xf86-video-cirrus-mainnorefsub.patch 2566 +RMD160 958f35935bb6abda2f9c0703eb435d6a6b30efc2 files/xf86-video-cirrus-mainnorefsub.patch 2566 +SHA256 637ed9b68cde2ce16365b261e2ebea73a20973a409f7e7d12d1bc6ad7cd50db2 files/xf86-video-cirrus-mainnorefsub.patch 2566 +DIST x11-driver-patches-1.tar.bz2 389 RMD160 0c57d4b235d83f3d7c46691c13857fd121ddec2d SHA1 6e2ac0cd255d3c4dc97d35092fe3ef64a71d7ac5 SHA256 64787d5b57d2845c0fa9297a9d924093ba191fc3551798239d9983f0bcca9b3e +DIST xf86-video-cirrus-1.0.0.5.tar.bz2 254801 RMD160 0909ad4269146aa9639c73a5196f4f6695f64ae1 SHA1 d4c15798447d5c9f66d016d9d38a84c314fdf78f SHA256 06100d81ea5a6b55ee277f0c82718e45e6bac1299a7875c83fee63cfd1c9f681 +DIST xf86-video-cirrus-1.1.0.tar.bz2 264167 RMD160 027e6b8cfc78dab762207d809cb61ecf97c92638 SHA256 5988962199d5013274f6a6952939e4f405df658bb6616ebf9954c993b1179b1b +EBUILD xf86-video-cirrus-1.0.0.5.ebuild 666 RMD160 238f367ddddb7ace3acfc14a7f09da74a15355e6 SHA1 fcc95e824f025e03ee5aa9c96664415eb8171509 SHA256 893adedaaee5a87fe8fc4b212851ed366d503649bd2f808b6dc5a5ee491a6d1d +MD5 85aba66d5c4122548c62cf8d0de4fd5c xf86-video-cirrus-1.0.0.5.ebuild 666 +RMD160 238f367ddddb7ace3acfc14a7f09da74a15355e6 xf86-video-cirrus-1.0.0.5.ebuild 666 +SHA256 893adedaaee5a87fe8fc4b212851ed366d503649bd2f808b6dc5a5ee491a6d1d xf86-video-cirrus-1.0.0.5.ebuild 666 +EBUILD xf86-video-cirrus-1.1.0.ebuild 673 RMD160 acdf0326c54b7332a5efc7c0918c62ff503d5c9e SHA1 e521d0d06f2e19db3fe108a7cbe2ba8ad36ebc64 SHA256 fbe5f9b1a58386f3f32a9481c85aec581a1064fd2f5d0a1faa03b4224a779619 +MD5 a6de987fd095eb5c54278655cfa16b64 xf86-video-cirrus-1.1.0.ebuild 673 +RMD160 acdf0326c54b7332a5efc7c0918c62ff503d5c9e xf86-video-cirrus-1.1.0.ebuild 673 +SHA256 fbe5f9b1a58386f3f32a9481c85aec581a1064fd2f5d0a1faa03b4224a779619 xf86-video-cirrus-1.1.0.ebuild 673 +MD5 975adf178f52b0441f3c61ce37b43cd5 files/digest-xf86-video-cirrus-1.0.0.5 536 +RMD160 c8704fa5d87f766ccf6dff6d6aa0c11f1c0bfa05 files/digest-xf86-video-cirrus-1.0.0.5 536 +SHA256 c824e2f2e7d170681614ed0d8ec099e4efeb041c82329d6d027947e634318575 files/digest-xf86-video-cirrus-1.0.0.5 536 +MD5 16fed1626701232a98e9e2f08e120b82 files/digest-xf86-video-cirrus-1.1.0 530 +RMD160 e4b1220ff2380409d3559c3c38d83f4ec04ef2e0 files/digest-xf86-video-cirrus-1.1.0 530 +SHA256 e3cef78be92a2ef8552665a6ada20ebd04ea434c01b6484fc023fb0d801ef677 files/digest-xf86-video-cirrus-1.1.0 530 diff --git a/hardened/xorg/x11-drivers/xf86-video-cirrus/files/digest-xf86-video-cirrus-1.0.0.5 b/hardened/xorg/x11-drivers/xf86-video-cirrus/files/digest-xf86-video-cirrus-1.0.0.5 new file mode 100644 index 0000000..21d2f5b --- /dev/null +++ b/hardened/xorg/x11-drivers/xf86-video-cirrus/files/digest-xf86-video-cirrus-1.0.0.5 @@ -0,0 +1,6 @@ +MD5 1b8cfd2923836ee93eda69abe50dda04 x11-driver-patches-1.tar.bz2 389 +RMD160 0c57d4b235d83f3d7c46691c13857fd121ddec2d x11-driver-patches-1.tar.bz2 389 +SHA256 64787d5b57d2845c0fa9297a9d924093ba191fc3551798239d9983f0bcca9b3e x11-driver-patches-1.tar.bz2 389 +MD5 fba6807fb95b5f1a397429b5e3e3276e xf86-video-cirrus-1.0.0.5.tar.bz2 254801 +RMD160 0909ad4269146aa9639c73a5196f4f6695f64ae1 xf86-video-cirrus-1.0.0.5.tar.bz2 254801 +SHA256 06100d81ea5a6b55ee277f0c82718e45e6bac1299a7875c83fee63cfd1c9f681 xf86-video-cirrus-1.0.0.5.tar.bz2 254801 diff --git a/hardened/xorg/x11-drivers/xf86-video-cirrus/files/digest-xf86-video-cirrus-1.1.0 b/hardened/xorg/x11-drivers/xf86-video-cirrus/files/digest-xf86-video-cirrus-1.1.0 new file mode 100644 index 0000000..8cc92b4 --- /dev/null +++ b/hardened/xorg/x11-drivers/xf86-video-cirrus/files/digest-xf86-video-cirrus-1.1.0 @@ -0,0 +1,6 @@ +MD5 1b8cfd2923836ee93eda69abe50dda04 x11-driver-patches-1.tar.bz2 389 +RMD160 0c57d4b235d83f3d7c46691c13857fd121ddec2d x11-driver-patches-1.tar.bz2 389 +SHA256 64787d5b57d2845c0fa9297a9d924093ba191fc3551798239d9983f0bcca9b3e x11-driver-patches-1.tar.bz2 389 +MD5 66344e315def275605dafb314ce59851 xf86-video-cirrus-1.1.0.tar.bz2 264167 +RMD160 027e6b8cfc78dab762207d809cb61ecf97c92638 xf86-video-cirrus-1.1.0.tar.bz2 264167 +SHA256 5988962199d5013274f6a6952939e4f405df658bb6616ebf9954c993b1179b1b xf86-video-cirrus-1.1.0.tar.bz2 264167 diff --git a/hardened/xorg/x11-drivers/xf86-video-cirrus/files/xf86-video-cirrus-mainnorefsub.patch b/hardened/xorg/x11-drivers/xf86-video-cirrus/files/xf86-video-cirrus-mainnorefsub.patch new file mode 100644 index 0000000..3124f1e --- /dev/null +++ b/hardened/xorg/x11-drivers/xf86-video-cirrus/files/xf86-video-cirrus-mainnorefsub.patch @@ -0,0 +1,102 @@ +--- src/cir_driver.c.orig 2006-05-28 12:24:07.000000000 +0200 ++++ src/cir_driver.c 2006-05-28 12:46:58.000000000 +0200 +@@ -119,16 +119,29 @@ + * unresolved symbols that are not required. + */ + ++typedef enum {AvailableOptions, Probe} SubSymbolIdx; ++typedef ScrnInfoPtr (*subFunctionPtr)(int); ++ + static const char *alpSymbols[] = { + "AlpAvailableOptions", + "AlpProbe", + NULL + }; ++subFunctionPtr alpRefs[] = { ++ NULL, ++ NULL, ++ NULL ++}; + static const char *lgSymbols[] = { + "LgAvailableOptions", + "LgProbe", + NULL + }; ++subFunctionPtr lgRefs[] = { ++ NULL, ++ NULL, ++ NULL ++}; + + static const char *vbeSymbols[] = { + "VBEInit", +@@ -200,13 +213,13 @@ + case PCI_CHIP_GD5464BD: + case PCI_CHIP_GD5465: + if (lg_loaded) +- return LgAvailableOptions(chipid); ++ return (*lgRefs[AvailableOptions])(chipid); + else + return NULL; + + default: + if (alp_loaded) +- return AlpAvailableOptions(chipid); ++ return (*alpRefs[AvailableOptions])(chipid); + else + return NULL; + } +@@ -215,7 +228,7 @@ + static Bool + CIRProbe(DriverPtr drv, int flags) + { +- int i; ++ int i, symidx; + GDevPtr *devSections; + pciVideoPtr pPci; + int *usedChips; +@@ -238,12 +251,18 @@ + if (!lg_loaded) { + if (xf86LoadDrvSubModule(drv, "cirrus_laguna")) { + xf86LoaderReqSymLists(lgSymbols, NULL); ++ for (symidx=0; lgSymbols[symidx]!=NULL; symidx++) { ++ lgRefs[symidx]=(subFunctionPtr)LoaderSymbol(lgSymbols[symidx]); ++ } + lg_loaded = TRUE; + } + } + if (!alp_loaded) { + if (xf86LoadDrvSubModule(drv, "cirrus_alpine")) { + xf86LoaderReqSymLists(alpSymbols, NULL); ++ for (symidx=0; alpSymbols[symidx]!=NULL; symidx++) { ++ alpRefs[symidx]=(subFunctionPtr)LoaderSymbol(alpSymbols[symidx]); ++ } + alp_loaded = TRUE; + } + } +@@ -288,17 +307,23 @@ + if (!xf86LoadDrvSubModule(drv, "cirrus_laguna")) + continue; + xf86LoaderReqSymLists(lgSymbols, NULL); ++ for (symidx=0; lgSymbols[symidx]!=NULL; symidx++) { ++ lgRefs[symidx]=(subFunctionPtr)LoaderSymbol(lgSymbols[symidx]); ++ } + lg_loaded = TRUE; + } +- pScrn = LgProbe(usedChips[i]); ++ pScrn = (*lgRefs[Probe])(usedChips[i]); + } else { + if (!alp_loaded) { + if (!xf86LoadDrvSubModule(drv, "cirrus_alpine")) + continue; + xf86LoaderReqSymLists(alpSymbols, NULL); ++ for (symidx=0; alpSymbols[symidx]!=NULL; symidx++) { ++ alpRefs[symidx]=(subFunctionPtr)LoaderSymbol(alpSymbols[symidx]); ++ } + alp_loaded = TRUE; + } +- pScrn = AlpProbe(usedChips[i]); ++ pScrn = (*alpRefs[Probe])(usedChips[i]); + } + + if (pScrn) { diff --git a/hardened/xorg/x11-drivers/xf86-video-cirrus/xf86-video-cirrus-1.0.0.5.ebuild b/hardened/xorg/x11-drivers/xf86-video-cirrus/xf86-video-cirrus-1.0.0.5.ebuild new file mode 100644 index 0000000..e47f64a --- /dev/null +++ b/hardened/xorg/x11-drivers/xf86-video-cirrus/xf86-video-cirrus-1.0.0.5.ebuild @@ -0,0 +1,20 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-cirrus/xf86-video-cirrus-1.0.0.5.ebuild,v 1.7 2006/04/16 14:07:46 flameeyes Exp $ + +# Must be before x-modular eclass is inherited +#SNAPSHOT="yes" +PATCHES=${FILESDIR}/xf86-video-cirrus-mainnorefsub.patch + +inherit x-modular + +DESCRIPTION="X.Org driver for cirrus cards" +KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~sh ~x86 ~x86-fbsd" +RDEPEND="x11-base/xorg-server" +DEPEND="${RDEPEND} + x11-proto/fontsproto + x11-proto/randrproto + x11-proto/renderproto + x11-proto/videoproto + x11-proto/xextproto + x11-proto/xproto" diff --git a/hardened/xorg/x11-drivers/xf86-video-cirrus/xf86-video-cirrus-1.1.0.ebuild b/hardened/xorg/x11-drivers/xf86-video-cirrus/xf86-video-cirrus-1.1.0.ebuild new file mode 100644 index 0000000..ef33cbd --- /dev/null +++ b/hardened/xorg/x11-drivers/xf86-video-cirrus/xf86-video-cirrus-1.1.0.ebuild @@ -0,0 +1,20 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-cirrus/xf86-video-cirrus-1.1.0.ebuild,v 1.2 2006/06/05 21:29:53 flameeyes Exp $ + +# Must be before x-modular eclass is inherited +#SNAPSHOT="yes" +PATCHES=${FILESDIR}/xf86-video-cirrus-mainnorefsub.patch + +inherit x-modular + +DESCRIPTION="X.Org driver for cirrus cards" +KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~sh ~x86 ~x86-fbsd" +RDEPEND=">=x11-base/xorg-server-1.0.99" +DEPEND="${RDEPEND} + x11-proto/fontsproto + x11-proto/randrproto + x11-proto/renderproto + x11-proto/videoproto + x11-proto/xextproto + x11-proto/xproto" |