Return to BSD News archive
Path: sserve!newshost.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!agate!spool.mu.edu!news.clark.edu!netnews.nwnet.net!news.uoregon.edu!cs.uoregon.edu!nntpserver!mike From: mike@majestix.cs.uoregon.edu (Michael John Haertel) Newsgroups: comp.os.386bsd.questions Subject: NetBSD 0.9: Building Xfree86-1.3 from source? Date: 6 Sep 93 12:30:03 Organization: CS Dept, University of Oregon Lines: 59 Message-ID: <MIKE.93Sep6123003@majestix.cs.uoregon.edu> NNTP-Posting-Host: majestix.cs.uoregon.edu I have been trying to build XFree86-1.3 from source under NetBSD 0.9. My machine is an EISA 486 with a wd90c31 video chip on the motherboard. I am running the generic "ahbbt" kernel from the NetBSD 0.9 distribution floppy; I have not yet configured my own kernel. The distribution kernel appears to have XSERVER configured in. Unfortunately, the stock XFree source distribution does not compile. The problem lies in various server/ddx/x386/common files which expect an #include file called <sys/ioctl_pc.h> to exist. Apparently this file existed in 386bsd, but was removed from NetBSD as part of the cleanup of PC dependencies from the mainstream source. In addition, various x386/common source files seem to believe in some ioctls and struct types that NetBSD doesn't have. It appears that most of these come from some sort of add-on/replacement console driver called "codrv". I have not had time to track that down, and in any case the stock (i386/isa/pccons.c) driver looks like it ought to provide minimal support for X. I attempted to kludge around several problems: I created an ioctl_pc.h file containing #defines for the three CONSOLE_X_* ioctls recognized in pccons.c. (Why aren't these in a /usr/include file somewhere?) I #ifdef'd out any code that failed to compile that looked like it was related to codrv. I #ifdef'd out code related to setting the keyboard LEDs; it looks like pccons.c will do this itself, and in any case the relevant ioctls are gone in NetBSD 0.9. I symlinked /dev/console to /dev/vga. At this point, everything compiled and installed. I then attempted to start up X using an Xconfig file that I had debugged under Linux. (Incidentally, XFree-1.3 compiled and installed just fine under Linux.) Then, I started it up. I got the usual stuff about VGA clocks. Then the screen blanked and it switched display modes. Then, the text screen flickered back on momentarily, and the machine rebooted. If it printed any thing after the text screen came on, I didn't have time to see before the BIOS boot screen took over. I'm not actually sure whether the text screen came back due to XFree, or whether at that point the machine had already rebooted and the text screen came back because of the BIOS. Does anybody have any suggestions? Has anybody succeeded in getting XFree to compile and run under stock NetBSD 0.9? If so, could you please send me your patches to the x386/common files? I may well have succeeded in eliminating something crucial while #ifdef'ing out various apparent codrv-related stuff, but I don't know enough about the X server sources and/or VGA hardware to know what to look for. Please don't tell me to get someone else's precompiled binaries. I prefer to know what the hell is going on. :-)