Subject: xsrc/28808: riva128 modules isn't built
To: None <xsrc-manager@netbsd.org, gnats-admin@netbsd.org,>
From: None <dieter.NetBSD@pandora.be>
List: netbsd-bugs
Date: 12/29/2004 22:06:00
>Number:         28808
>Category:       xsrc
>Synopsis:       riva128 modules isn't built
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    xsrc-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Dec 29 22:06:00 +0000 2004
>Originator:     Dieter Roelants
>Release:        NetBSD 2.0
>Organization:
>Environment:

XFree86 Version 4.4.0
Release Date: 29 February 2004
X Protocol Version 11, Revision 0, Release 6.6
Build Operating System:NetBSD/i386 2.0 - The NetBSD Foundation, Inc.
Current Operating System: NetBSD accept.able.be 2.0 NetBSD 2.0 (GENERIC) #0: Wed Dec  1 10:58:25 UTC 2004  builds@build:/big/builds/ab/netbsd-2-0-RELEASE/i386/200411300000Z-obj/big/builds/ab/netbsd-2-0-RELEASE/src/sys/arch/i386/compile/GENERIC i386
Build Date: 01 December 2004

>Description:
	XFree86 needs, besides the nv driver module, a submodule
	for riva 128 cards. This module isn't included in the NetBSD
	2.0 distribution, because it isn't built. X logs show:

(--) Chipset RIVA 128 found
(II) Loading sub module "riva128"
(II) LoadModule: "riva128"
(WW) Warning, couldn't open module riva128
(II) UnloadModule: "riva128"
(EE) Failed to load module "riva128" (module does not exist, 0)
(EE) No devices detected.

>How-To-Repeat:
	Install NetBSD on a machine with a riva 128 card and try to run X.
>Fix:
	To build riva128.o I patched
	src/x11/Xserver/hw/xfree86/drivers/nv/Makefile:

--- Makefile    6 Mar 2004 03:31:06 -0000       1.6
+++ Makefile    29 Dec 2004 21:51:37 -0000
@@ -42,3 +42,7 @@
 .include <bsd.x11.mk>
 LIBDIR=        ${XMODULEDIR}
 .include "../../Makefile.drivermod"
+
+SUBDIR=        riva128
+
+.include <bsd.subdir.mk>

	I then created the riva128 directory with this Makefile:


#	$NetBSD: $

XMODULEDIR=	${X11USRLIBDIR}/modules/drivers

.include "../../../../../Makefile.serverlib"

MODULE=	riva128
MAN=	#defined

.PATH:	${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/drivers/nv

SRCS=	riva_driver.c riva_dac.c riva_setup.c riva_cursor.c riva_xaa.c \
	riva_dga.c riva_shadow.c riva_hw.c

CPPFLAGS+=	-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/drivers/nv \
		-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/fbdevhw \
		-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/common \
		-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/os-support \
		-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/xf4bpp \
		-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/xf1bpp \
		-I${X11SRCDIR.xc}/programs/Xserver/mfb \
		-I${X11SRCDIR.xc}/programs/Xserver/mi \
		-I${X11SRCDIR.xc}/programs/Xserver/fb \
		-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/xaa \
		-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/ramdac \
		-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/i2c \
		-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/rac \
		-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/int10 \
		-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/vgahw \
		-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/ddc \
		-I${X11SRCDIR.xc}/programs/Xserver/Xext \
		-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/xf24_32bpp \
		-I${X11SRCDIR.xc}/include/fonts \
		-I${X11SRCDIR.xc}/programs/Xserver/include \
                -I${DESTDIR}${X11INCDIR}/X11 \
                -I${DESTDIR}${X11INCDIR}/X11/extensions \
		-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/shadowfb \
		-I${X11SRCDIR.xc}/programs/Xserver/render \
		-I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/vbe \
		-I${XSERVERINCDIR}

.include <bsd.x11.mk>
LIBDIR=	${XMODULEDIR}
.include "../../../Makefile.drivermod"

	Note that this is a copy of drivers/cirrus/cirrus_laguna/Makefile
	with some things changed to make it compile. It's possible
	that some of the include directives aren't necessary.

	Something I don't understand is that building a distribution
	after this change, gave me this error:

============  1 extra files  ===============
Files in DESTDIR but missing from flist.
File is obsolete or flist is out of date ?
------------------------------------------
./usr/X11R6/lib/modules/drivers/riva128.o
=========  end of 1 extra files  ===========

	However xserver4/md.i386 contains this file...