This is the mail archive of the
cygwin@sourceware.cygnus.com
mailing list for the Cygwin project.
Re: server X
- To: Sergey Okhapkin <sos at prospect dot com dot ru>
- Subject: Re: server X
- From: Jeff Sturm <jsturm at sigma6 dot com>
- Date: Sat, 12 Sep 1998 13:18:18 -0400
- CC: gnu-win32 at cygnus dot com
- References: <01BDDD75.00B69600@sos>
Sergey Okhapkin wrote:
>
> Alexander Stockdale wrote:
> > I think we really need to port XFree86 to the cygwin environment. I've
> started looking into this, but it looks like it may be a big job (just look
> at the size of the diff file for the OS/2 port).
> >
>
> Porting _Xfree86_ to win32 is a bad idea, because Xfree86 requires direct
> video hardware access. The best candidate to port is sample X server
> provided with X11 distribution - just create directory
> xc/programs/Xserver/hw/Win32 and fill it with some code :-)
The X11R6.4 sample server is no better-- it's a *very* old version of
XFree86.
To do a Win32 server from scratch, yes, all the video framebuffer code
in XFree86 would have to be replaced with Win32 USER/GDI calls. I don't
really know how much of the overall server code would be invalidated by
this approach.
> Another interesting possibility is to modify libX11 to display X requests
> with Windows GDI calls if environment variable DISPLAY is not set or set to
> "localhost". This case bundled Xnest server will act as X server (Xnest
> compiles with cygwin and runs), and no X server will be required for local
> X clients. Some related work already done in ntxlib package.
I know Xlib better than Win32 (i.e., I know very little about Win32),
but this sounds difficult to me. Does Win32 have functions to iterate
child windows? If so, how would you tell ordinary windows apart from
Xlib-controlled windows? What about inter-client communications? You
could probably manage it with shared memory segments and Win32 IPC, but
it would probably be far more straightforward with a real X server.
--
Jeff Sturm
jsturm@sigma6.com
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".