Subject: Re: X server for sparc
To: Theo de Raadt <deraadt@fsa.ca>
From: Dennis Ferguson <dennis@ans.net>
List: port-sparc
Date: 07/21/1994 15:45:09
>> I copied them into /usr/include/dev, though anywhere would be fine.
>
> This is exactly what I don't want to see. I want to see those files
> rearranged, moved, anything. But these files should NOT be copied to
> mysterious places in /usr/include.

I'm not sure what you're seeing.  To be very clear I was not telling you
where to put files, I was telling you exactly what I did to do a quick
compile.  What I was asking is for you to tell me where I should be including
this stuff from so I can do it right.

> Please tell me exactly which constants are causing you the problems,
> so that I can determine if new header files safe for
> /usr/include/machine should be created.

Again:

>> A few #include files from arch/sparc/{dev,sbus} need to be copied somewhere
>> easier to get at.  Absolutely required are
>>
>>	dev/kbio.h
>>	dev/kbd.h
>>	dev/vuid_event.h

I need the entire contents of these three include files (as far as I can
tell the only reason they exist is to provide SunOS-compatible support
for the X server, the X server requires everything in there), and it would
be less work on the server if you included the extra defines I sent in the
last message.

>>	sbus/btreg.h
>>	sbus/bwtworeg.h
>>	sbus/cgthreereg.h
>>	sbus/cgsixreg.h

I don't actually need anything from these.  A couple of sizes and offsets
for the CG3 and CG6 are used in the server, but are hardcoded in the server
for SunOS 5 since they appear not to have been available on that system.
I included bwtworeg.h where the server includes <sundev/bw2reg.h>, but
it doesn't seem to me that anything is used from here (I'll try to take
it out).  If you had a clean way to make device include files as accessable
as the rest of the machine-dependent include files I would include these
to pick up the constants, otherwise it isn't worth worrying about.

Is that better?  I don't care where the files go, or how they're rearranged,
I just need a #include which gives me the contents of the first three.

On another note, it turned out there wasn't much wrong with the server
after all.  Xsun, xterm, twm and xinit all seem to work fine so far.  Building
the server really only requires some stuff in NetBSD.cf, the above mentioned
#include files mentioned in the source, and some #ifdef's to comment out
code for hardware NetBSD doesn't support.

The trouble is, I did a most of the work by inserting #ifdef __NetBSD__'s
in places where it needed something different.  For the server this was
probably close to right, but in other cases this wasn't correctat all.  A
lot of the things that were fixed, particularly in the client code, are
really more generic Net-2/4.4 operating system differences which need more
generic changes since FreeBSD and BSDI will be using the same code.  I also
am in need of a way to distinguish a NetBSD sparc machine from a NetBSD 386
machine.

In any case, if there is someone who knows enough about X and NetBSD to take
this from crude hack to a clean set of patches and has time to work a bit on
this, please let me know.

Thanks,
Dennis Ferguson

------------------------------------------------------------------------------