diff options
author | Bryan Stine <battousai@gentoo.org> | 2004-12-23 03:53:03 +0000 |
---|---|---|
committer | Bryan Stine <battousai@gentoo.org> | 2004-12-23 03:53:03 +0000 |
commit | db893bde6b94894c9d00c7f48a7427a8f0e6c369 (patch) | |
tree | e0765cd652bdd5e3b82046ee25f86830733d813c | |
parent | initial aqhbci-ddvcard ebuild (diff) | |
download | historical-db893bde6b94894c9d00c7f48a7427a8f0e6c369.tar.gz historical-db893bde6b94894c9d00c7f48a7427a8f0e6c369.tar.bz2 historical-db893bde6b94894c9d00c7f48a7427a8f0e6c369.zip |
Uhh...r-bump to take care of earlier whoopsie. Hah...
-rw-r--r-- | x11-base/x11-drm/ChangeLog | 9 | ||||
-rw-r--r-- | x11-base/x11-drm/Manifest | 6 | ||||
-rw-r--r-- | x11-base/x11-drm/files/digest-x11-drm-20040827-r1 | 3 | ||||
-rw-r--r-- | x11-base/x11-drm/x11-drm-20040827-r1.ebuild | 214 | ||||
-rw-r--r-- | x11-base/x11-drm/x11-drm-20040827.ebuild | 4 |
5 files changed, 231 insertions, 5 deletions
diff --git a/x11-base/x11-drm/ChangeLog b/x11-base/x11-drm/ChangeLog index 81b1a20a0646..b9df1c6e2d76 100644 --- a/x11-base/x11-drm/ChangeLog +++ b/x11-base/x11-drm/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for x11-base/x11-drm # Copyright 1999-2004 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-base/x11-drm/ChangeLog,v 1.10 2004/12/16 07:27:45 battousai Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-base/x11-drm/ChangeLog,v 1.11 2004/12/23 03:53:03 battousai Exp $ + +*x11-drm-20040827-r1 (22 Dec 2004) + + 22 Dec 2004; Bryan D. Stine <battousai@gentoo.org> + +x11-drm-20040827-r1.ebuild, x11-drm-20040827.ebuild: + Gah, somehow forgot to bump the patchball revision. Also, ${PF} -> ${P} in + patchball SRC_URI. 15 Dec 2004; Bryan Stine <battousai@gentoo.org>; x11-drm-20040827.ebuild: Add a patch to fix lockfile vulnerability (CAN-2004-1056: Insufficient diff --git a/x11-base/x11-drm/Manifest b/x11-base/x11-drm/Manifest index 33d248559fcf..b2d6fab289c7 100644 --- a/x11-base/x11-drm/Manifest +++ b/x11-base/x11-drm/Manifest @@ -1,7 +1,9 @@ -MD5 d9b290771defb4a2d10e038c2920327c ChangeLog 15412 +MD5 efe0e16d29a5469fcfacbd08e9de245a ChangeLog 15656 MD5 b67cc82ec3e8786dbc0f8f5e7e37bcfc metadata.xml 360 -MD5 02dff3078978ef08182f1b65a978a77e x11-drm-20040827.ebuild 5836 +MD5 6c811d4164f76f5b5629fe55ca45212e x11-drm-20040827.ebuild 5835 MD5 bb032bf32a1ea94e65c245ac3f7f9219 x11-drm-4.3.0-r7.ebuild 7037 +MD5 7c91dd0c5b0db1ad36b74896bef97290 x11-drm-20040827-r1.ebuild 5838 MD5 a98e43596ee1f7d9d917e0b9fee7770d files/digest-x11-drm-20040827 252 MD5 db87006ec48bc9579dcdc989c5ed86d6 files/digest-x11-drm-4.3.0-r7 363 MD5 88b8c90e440b3db246a7d06cf53640ae files/modules.d-x11-drm 40 +MD5 a98e43596ee1f7d9d917e0b9fee7770d files/digest-x11-drm-20040827-r1 252 diff --git a/x11-base/x11-drm/files/digest-x11-drm-20040827-r1 b/x11-base/x11-drm/files/digest-x11-drm-20040827-r1 new file mode 100644 index 000000000000..46a41e7b6a8d --- /dev/null +++ b/x11-base/x11-drm/files/digest-x11-drm-20040827-r1 @@ -0,0 +1,3 @@ +MD5 41556a8f6473ba51223162ea23cdd861 x11-drm-20040827-gentoo-0.2.tar.bz2 9121 +MD5 aa602f867e00717c50921718980f43c2 linux-drm-20040827-kernelsource.tar.bz2 249379 +MD5 72e856bdfcbf181a4d99ff278462f47d linux-drm-gatos-20031202-kernelsource.tar.bz2 154677 diff --git a/x11-base/x11-drm/x11-drm-20040827-r1.ebuild b/x11-base/x11-drm/x11-drm-20040827-r1.ebuild new file mode 100644 index 000000000000..8c0289d875b6 --- /dev/null +++ b/x11-base/x11-drm/x11-drm-20040827-r1.ebuild @@ -0,0 +1,214 @@ +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-base/x11-drm/x11-drm-20040827-r1.ebuild,v 1.1 2004/12/23 03:53:03 battousai Exp $ + +inherit eutils x11 linux-mod + +IUSE="gatos" +IUSE_VIDEO_CARDS="3dfx ffb i810 i830 i915 mach64 matrox rage128 radeon savage sis via" + +# Make sure Portage does _NOT_ strip symbols. We will do it later and make sure +# that only we only strip stuff that are safe to strip ... +RESTRICT="nostrip" + +GATOSSNAP="20031202" +PATCHVER="0.2" +PATCHDIR="${WORKDIR}/patch" +EXCLUDED="${WORKDIR}/excluded" +S="${WORKDIR}/drm" +DESCRIPTION="DRM Kernel Modules for X11" +HOMEPAGE="http://dri.sf.net" +SRC_URI="mirror://gentoo/${P}-gentoo-${PATCHVER}.tar.bz2 + mirror://gentoo/linux-drm-${PV}-kernelsource.tar.bz2 + gatos? ( mirror://gentoo/linux-drm-gatos-${GATOSSNAP}-kernelsource.tar.bz2 )" + +SLOT="${KV}" +LICENSE="X11" +KEYWORDS="~x86 ~alpha ~ia64 ~ppc ~amd64" + +DEPEND="virtual/x11 + virtual/linux-sources + >=sys-apps/portage-2.0.49-r13" + +PROVIDE="virtual/drm" + +pkg_setup() { + # Require at least one video card + if [ -z "${VIDEO_CARDS}" ] + then + die "Please set at least one video card in VIDEO_CARDS in make.conf or the environment. Possible VIDEO_CARDS values are: ${IUSE_VIDEO_CARDS}." + fi + + if [ "${ARCH}" != "sparc" ] && use video_cards_ffb + then + die "The ffb driver is for sparc-specific hardware. Please remove it from your VIDEO_CARDS." + fi + + # GATOS only works with radeon, rage128. mach64 is provided by drm trunk. + if use gatos + then + if ! use video_cards_radeon && ! use video_cards_rage128 + then + die "Remove gatos from your USE flags. It does not work with cards other than radeon and rage128." + fi + kernel_is 2 6 && die "GATOS does not work with 2.6 kernels. Only 2.4 is supported at this time." + fi + + ewarn "Using koutput kernels is now deprecated. If you use a koutput kernel, please" + ewarn "switch to kernel >=2.6.6 with a normal build system." + + # Set video cards to build for. + set_vidcards + + return 0 +} + +src_unpack() { + if use gatos + then + unpack linux-drm-gatos-${GATOSSNAP}-kernelsource.tar.bz2 + else + unpack linux-drm-${PV}-kernelsource.tar.bz2 + fi + unpack ${PF}-gentoo-${PATCHVER}.tar.bz2 + + cd ${S} + cp ${PATCHDIR}/Makefile ${S} + + patch_prepare + + # Apply patches + EPATCH_SUFFIX="patch" epatch ${PATCHDIR} + + # Substitute new directory under /lib/modules/${KV} + sed -ie "s:/kernel/drivers/char/drm:/${PN}:g" Makefile + sed -ie "s:xfree-drm:${PN}:g" Makefile +} + +src_compile() { + einfo "Building DRM..." + + # This now uses an M= build system. Makefile does most of the work. + unset ARCH + make M="${S}" \ + LINUXDIR="${ROOT}/usr/src/linux" \ + DRM_MODULES="${VIDCARDS}" \ + DRMSRCDIR="${S}" \ + modules || die_error + + # dristat in GATOS seems busted. + if ! use gatos + then + make dristat || die "Building dristat failed." + fi +} + +src_install() { + einfo "Installing DRM..." + + unset ARCH + make KV="${KV}" \ + LINUXDIR="${ROOT}/usr/src/linux" \ + DRM_MODULES="${VIDCARDS}" \ + DESTDIR="${D}" \ + install || die "Install failed." + + dodoc README* + + if ! use gatos + then + exeinto /usr/X11R6/bin + doexe dristat + + # Strip binaries, leaving /lib/modules untouched (bug #24415) + strip_bins \/lib\/modules + fi + + # Yoinked from the sys-apps/touchpad ebuild. Thanks to whoever made this. + keepdir /etc/modules.d + sed 's:%PN%:'${PN}':g' ${FILESDIR}/modules.d-${PN} > ${D}/etc/modules.d/${PN} + sed -i 's:%KV%:'${KV}':g' ${D}/etc/modules.d/${PN} +} + +pkg_postinst() { + if use video_cards_sis + then + einfo "SiS direct rendering only works on 300 series chipsets." + einfo "SiS framebuffer also needs to be enabled in the kernel." + fi + + if use video_cards_mach64 + then + einfo "The Mach64 DRI driver is insecure." + einfo "Malicious clients can write to system memory." + einfo "For more information, see:" + einfo "http://dri.sourceforge.net/cgi-bin/moin.cgi/ATIMach64?value=CategoryHardwareChipset." + fi + + einfo "Checking kernel module dependencies" + update_modules + update_depmod +} + +# Functions used above are defined below: + +set_vidcards() { + set_kvobj + + VIDCARDS="" + + use video_cards_matrox && \ + VIDCARDS="${VIDCARDS} mga.${KV_OBJ}" + use video_cards_3dfx && \ + VIDCARDS="${VIDCARDS} tdfx.${KV_OBJ}" + use video_cards_rage128 && \ + VIDCARDS="${VIDCARDS} r128.${KV_OBJ}" + use video_cards_radeon && \ + VIDCARDS="${VIDCARDS} radeon.${KV_OBJ}" + use video_cards_i810 && \ + VIDCARDS="${VIDCARDS} i810.${KV_OBJ}" + use video_cards_i830 && \ + VIDCARDS="${VIDCARDS} i830.${KV_OBJ}" + use video_cards_i915 && \ + VIDCARDS="${VIDCARDS} i915.${KV_OBJ}" +# use video_cards_gamma && \ +# VIDCARDS="${VIDCARDS} gamma.${KV_OBJ}" + use video_cards_mach64 && \ + VIDCARDS="${VIDCARDS} mach64.${KV_OBJ}" + use video_cards_savage && \ + VIDCARDS="${VIDCARDS} savage.${KV_OBJ}" + use video_cards_sis && \ + VIDCARDS="${VIDCARDS} sis.${KV_OBJ}" + use video_cards_via && \ + VIDCARDS="${VIDCARDS} via.${KV_OBJ}" + use video_cards_ffb && \ + VIDCARDS="${VIDCARDS} ffb.${KV_OBJ}" +} + +patch_prepare() { + # Handle exclusions based on the following... + # GATOS (2xx*) vs. Standard trees (1xx*) + # 2.4 vs. 2.6 kernels + + kernel_is 2 4 && mv -f ${PATCHDIR}/*kernel-2.6* ${EXCLUDED} + kernel_is 2 6 && mv -f ${PATCHDIR}/*kernel-2.4* ${EXCLUDED} + + if use gatos + then + einfo "Updating for GATOS build..." + mv -f ${PATCHDIR}/1* ${EXCLUDED} + # Don't bother with dristat, it's broken + mv -f ${PATCHDIR}/*dristat* ${EXCLUDED} + else + einfo "Updating for standard build..." + mv -f ${PATCHDIR}/2* ${EXCLUDED} + fi +} + +die_error() { + eerror "Portage could not build the DRM modules. If you see an ACCESS DENIED error," + eerror "this could mean that you were using an unsupported kernel build system. All" + eerror "2.4 kernels are supported, but only 2.6 kernels at least as new as 2.6.6" + eerror "are supported." + die "Unable to build DRM modules." +} diff --git a/x11-base/x11-drm/x11-drm-20040827.ebuild b/x11-base/x11-drm/x11-drm-20040827.ebuild index 16523b6fbdd8..fdc538cea77c 100644 --- a/x11-base/x11-drm/x11-drm-20040827.ebuild +++ b/x11-base/x11-drm/x11-drm-20040827.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2004 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/x11-base/x11-drm/x11-drm-20040827.ebuild,v 1.7 2004/12/16 07:27:45 battousai Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-base/x11-drm/x11-drm-20040827.ebuild,v 1.8 2004/12/23 03:53:03 battousai Exp $ inherit eutils x11 linux-mod @@ -18,7 +18,7 @@ EXCLUDED="${WORKDIR}/excluded" S="${WORKDIR}/drm" DESCRIPTION="DRM Kernel Modules for X11" HOMEPAGE="http://dri.sf.net" -SRC_URI="mirror://gentoo/${PF}-gentoo-${PATCHVER}.tar.bz2 +SRC_URI="mirror://gentoo/${P}-gentoo-${PATCHVER}.tar.bz2 mirror://gentoo/linux-drm-${PV}-kernelsource.tar.bz2 gatos? ( mirror://gentoo/linux-drm-gatos-${GATOSSNAP}-kernelsource.tar.bz2 )" |