summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'x11-base/nouveau-drm')
-rw-r--r--x11-base/nouveau-drm/ChangeLog8
-rw-r--r--x11-base/nouveau-drm/files/nouveau-drm-20121015-Makefile104
-rw-r--r--x11-base/nouveau-drm/nouveau-drm-20121015.ebuild48
3 files changed, 159 insertions, 1 deletions
diff --git a/x11-base/nouveau-drm/ChangeLog b/x11-base/nouveau-drm/ChangeLog
index 3ce18b75b037..1d8c2b6f6918 100644
--- a/x11-base/nouveau-drm/ChangeLog
+++ b/x11-base/nouveau-drm/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for x11-base/nouveau-drm
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-base/nouveau-drm/ChangeLog,v 1.24 2012/07/31 00:27:56 chithanh Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-base/nouveau-drm/ChangeLog,v 1.25 2012/10/16 01:11:30 chithanh Exp $
+
+*nouveau-drm-20121015 (16 Oct 2012)
+
+ 16 Oct 2012; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+ +files/nouveau-drm-20121015-Makefile, +nouveau-drm-20121015.ebuild:
+ New snapshot
*nouveau-drm-20120728 (31 Jul 2012)
diff --git a/x11-base/nouveau-drm/files/nouveau-drm-20121015-Makefile b/x11-base/nouveau-drm/files/nouveau-drm-20121015-Makefile
new file mode 100644
index 000000000000..98736f8ccd26
--- /dev/null
+++ b/x11-base/nouveau-drm/files/nouveau-drm-20121015-Makefile
@@ -0,0 +1,104 @@
+# This Makefile is loosely based on the drm.git/linux-core/Makefile and
+# the preliminary work by Christopher James Halse Rogers.
+# Edited by Pekka Paalanen <pq@iki.fi>
+
+# By default, the build is done against the running linux kernel source.
+# To build against a different kernel source tree, set LINUXDIR:
+#
+# make LINUXDIR=/path/to/kernel/source
+
+# By default, it is assumed the Nouveau kernel tree is found in $PWD/../.
+# To use a different path to the Nouveau kernel tree, set NOUVEAUROOTDIR:
+#
+# make NOUVEAUROOTDIR=/path/to/nouveau/linux-2.6
+
+
+ifndef LINUXDIR
+RUNNING_REL := $(shell uname -r)
+
+LINUXDIR := $(shell if [ -e /lib/modules/$(RUNNING_REL)/source ]; then \
+ echo /lib/modules/$(RUNNING_REL)/source; \
+ else echo /lib/modules/$(RUNNING_REL)/build; fi)
+endif
+
+NOUVEAUGITREMOTE ?= origin
+NOUVEAUROOTDIR ?= $(CURDIR)/..
+override NOUVEAUROOTDIR := $(abspath $(NOUVEAUROOTDIR))
+
+TESTFILE := include/drm/nouveau_drm.h
+ifeq ($(wildcard $(NOUVEAUROOTDIR)/$(TESTFILE)),)
+$(error $(NOUVEAUROOTDIR) does not look like the right kernel tree, \
+ please set NOUVEAUROOTDIR)
+endif
+
+GIT_REVISION := $(shell GIT_DIR=$(NOUVEAUROOTDIR)/.git \
+ git describe --always --abbrev=17 2> /dev/null)
+
+DRMINC := -I$(NOUVEAUROOTDIR)/include/drm
+DRMDIR := $(NOUVEAUROOTDIR)/drivers/gpu/drm
+DRMCFG := \
+ CONFIG_DRM=m \
+ CONFIG_DRM_KMS_HELPER=m \
+ CONFIG_DRM_TTM=m \
+ CONFIG_DRM_NOUVEAU=m \
+ CONFIG_DRM_NOUVEAU_KMS=n \
+ CONFIG_DRM_NOUVEAU_BACKLIGHT=y \
+ CONFIG_DRM_NOUVEAU_DEBUG=y \
+ CONFIG_DRM_I2C_CH7006=m \
+ CONFIG_DRM_TDFX=n \
+ CONFIG_DRM_R128=n \
+ CONFIG_DRM_RADEON=n \
+ CONFIG_DRM_MGA=n \
+ CONFIG_DRM_I810=n \
+ CONFIG_DRM_I830=n \
+ CONFIG_DRM_I915=n \
+ CONFIG_DRM_SIS=n \
+ CONFIG_DRM_SAVAGE=n \
+ CONFIG_DRM_VIA=n
+
+EXTRA_CFLAGS :=
+MYEXTRA_CFLAGS :=
+MYEXTRA_CFLAGS += -DCONFIG_DRM_NOUVEAU_BACKLIGHT
+MYEXTRA_CFLAGS += -DCONFIG_DRM_NOUVEAU_DEBUG
+MYEXTRA_CFLAGS += -DCONFIG_NOUVEAU_DEBUG
+MYEXTRA_CFLAGS += -DCONFIG_NOUVEAU_DEBUG_DEFAULT
+
+ifneq ($(GIT_REVISION),)
+MYEXTRA_CFLAGS += '-DGIT_REVISION=\"$(GIT_REVISION)\"'
+endif
+
+MYPARMS := -C $(LINUXDIR) KCPPFLAGS="$(DRMINC)" SUBDIRS="$(DRMDIR)" $(DRMCFG)
+
+MYEXTRA_CFLAGS += $(EXTRA_CFLAGS)
+ifneq ($(MYEXTRA_CFLAGS),)
+MYPARMS += EXTRA_CFLAGS="$(MYEXTRA_CFLAGS)"
+endif
+
+.PHONY: all modules install clean archive FORCE
+
+all: modules
+FORCE:
+
+modules:
+ $(MAKE) $(MYPARMS) modules
+
+install:
+ $(MAKE) $(MYPARMS) modules_install
+
+clean:
+ $(MAKE) $(MYPARMS) clean
+
+archive: newttm-devel-compat.tar.gz newttm-devel.tar.gz master.tar.gz
+
+newttm-devel-compat.tar.gz: EXTRAS=nouveau README-nouveau
+
+%.tar: FORCE
+ GIT_DIR=$(NOUVEAUROOTDIR)/.git \
+ git archive --format=tar --prefix=$*/ $(NOUVEAUGITREMOTE)/$* \
+ drivers/gpu/drm include/drm $(EXTRAS) > $@
+
+%.tar.gz: %.tar
+ gzip -9 -c $< > $@
+
+# The commit id of the archive can be read with
+# $ zcat foo.tar.gz | git get-tar-commit-id
diff --git a/x11-base/nouveau-drm/nouveau-drm-20121015.ebuild b/x11-base/nouveau-drm/nouveau-drm-20121015.ebuild
new file mode 100644
index 000000000000..b7f48213aa93
--- /dev/null
+++ b/x11-base/nouveau-drm/nouveau-drm-20121015.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-base/nouveau-drm/nouveau-drm-20121015.ebuild,v 1.1 2012/10/16 01:11:30 chithanh Exp $
+
+EAPI=2
+
+inherit linux-info linux-mod
+
+DESCRIPTION="Nouveau DRM Kernel Modules for X11"
+HOMEPAGE="http://nouveau.freedesktop.org/"
+SRC_URI="mirror://gentoo/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE=""
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/master
+
+CONFIG_CHECK="~ACPI_VIDEO ~BACKLIGHT_CLASS_DEVICE ~DEBUG_FS !DRM ~FB_CFB_FILLRECT ~FB_CFB_COPYAREA ~FB_CFB_IMAGEBLIT ~FRAMEBUFFER_CONSOLE ~!FB_NVIDIA ~!FB_RIVA ~!FB_UVESA ~!FB_VGA16 ~I2C_ALGOBIT ~MXM_WMI ~VGA_ARB"
+
+pkg_setup() {
+ linux-mod_pkg_setup
+ if kernel_is lt 3 6; then
+ eerror "You need kernel 3.6 for this version of nouveau-drm"
+ die "Incompatible kernel version"
+ fi
+ elog "For newer kernels newer than 2.6.32 there is integrated nouveau DRM."
+ elog "Use that if you experience build issues."
+}
+
+src_compile() {
+ set_arch_to_kernel
+ emake \
+ LINUXDIR="${KERNEL_DIR}" \
+ NOUVEAUROOTDIR="${PWD}" \
+ -f "${FILESDIR}"/${PN}-20100212-Makefile \
+ || die "Compiling kernel modules failed"
+}
+
+src_install() {
+ insinto /lib/modules/${KV_FULL}/${PN}
+ doins drivers/gpu/drm/{*/,}*.ko || die "doins failed"
+}