This is the mail archive of the
cygwin-xfree@cygwin.com
mailing list for the Cygwin XFree86 project.
Re: Updated: XFree86-xserv-4.3.0-66
- From: Harold L Hunt II <huntharo at msu dot edu>
- To: cygx <cygwin-xfree at cygwin dot com>
- Date: Thu, 01 Apr 2004 14:52:13 -0500
- Subject: Re: Updated: XFree86-xserv-4.3.0-66
- Reply-to: cygwin-xfree at cygwin dot com
Lev,
1) winclipboardxevents.c/winClipboardFlushXEvents/SelectionRequest -
Change the 'format' value for the first call to XChangeProperty from 8
to 32 since we are passing a data array of Atoms, which are 32 bits
long. (Lev Bishop)
TARGETS still doesn't work right. Now, a request for TARGETS puts the
following in XWin.log (once for each request):
winMultiWindowXMsgProcErrorHandler - ERROR: BadValue (integer parameter
out of range for operation)
I can't find the above change in the CVS (is it there?)
No, it was missing. When I applied the patch I got a complaint about
the diff that followed the winclipboardxevents.c file, so I applied that
following one by hand; but it turns out that the diff for the
winclipboardxevents.c file was ignored as well, despite there not being
an error indicating this. So, I have applied the patch again and
committed it to CVS.
but perhaps you
need to change from sizeof(atomTargetArr) to
sizeof(atomTargetArr)/sizeof(Atom) ??
Yup, that looks correct to me. I don't think the TARGETS support has
ever worked... it is pretty easy to see that the call to XChangeProperty
was not correct by just looking at the next call to XChangeProperty
about a hundred lines down in the file, and the docs make it obvious
that it was wrong as well. I thank you for catching this because no one
noticed this until now and I don't think anyone else was looking for it
either.
Sorry I can't compile my own
versions to test these things but I don't even have room on my HD for the
X sources...
Hmm... actually, you might. I think you would only need the following
source packages:
-base
-bin
-prog
-xserv
Those packages total only 12 MiB in bzip2 form. Uncompressed they take
68.2 MiB but 84.1 MiB on a disk with 4 KiB clusters.
You'd need the Cygwin packages listed on the following page (except I
think you can skip perl since we aren't going to build the fonts):
http://x.cygwin.com/docs/cg/prog-build-native.html
Then you would edit /usr/src/xc/CYGWIN-PATCHES/host.def.in and add these
lines to minimize the amount of code built:
===========================================
#define BuildServersOnly YES
#define XnestServer NO
#define XVirtualFramebufferServer NO
===========================================
Then you are just three simple steps away from a build of XWin.exe:
==================================================
$ cd /usr/src
$ cp xc/CYGWIN-PATCHES/XFree86-4.3.0.sh .
$ ./XFree86-4.3.0.sh mkdirs && \
./XFree86-4.3.0.sh conf && \
./XFree86-4.3.0.sh build > build.log 2>&1
==================================================
Then you can find your own XWin.exe at:
/usr/src/xc/.build/programs/Xserver/XWin.exe
You can just copy this to /usr/X11R6/bin/XWin.exe and start testing the
changes you have made.
After the initial build you can remake only the server by:
=========================================================
$ cd /usr/src/xc/.build/programs/Xserver && make XWin.exe
=========================================================
The total amount of data generated by the build was 30 MiB requiring 60
MiB on a disk with 4 KiB clusters. The build took 12 minutes on my machine.
So, unless you have less than 250 MiB of free disk space, then I think
that you actually can do your own builds and probably should.
Note: I tested the above build steps and confirmed that they work; the
numbers presented are from an actual build, not just guesses.
Harold