This is the mail archive of the
cygwin-xfree@cygwin.com
mailing list for the Cygwin XFree86 project.
AW: Enabling SHM support in default build of XWin.exe
- From: "Ralf Habacker" <ralf dot habacker at freenet dot de>
- To: <cygwin-xfree at cygwin dot com>
- Date: Wed, 17 Sep 2003 09:44:08 +0200
- Subject: AW: Enabling SHM support in default build of XWin.exe
- Reply-to: cygwin-xfree at cygwin dot com
Hi Harold,
> Ralf Habacker sent some patches on 2003/09/05 that I am working on
> getting committed to the XFree86 CVS tree. Those two patches are here:
>
> http://cygwin.com/ml/cygwin-xfree/2003-09/msg00092.html
> http://cygwin.com/ml/cygwin-xfree/2003-09/msg00090.html
>
>
> I have opened Bug 698 in XFree86's Bugzilla to track the fixing of the
> xf86bigfont extension initialization:
>
> http://bugs.xfree86.org/show_bug.cgi?id=698
>
>
> After Bug 698 is committed I will be adding a function (from Ralf's
> patches) to XWin.exe to check whether or not the IPC daemon is running,
> then I will be adding a call to that function in the initialization of
> the SHM and xf86bigfont extensions (again, per Ralf's patch).
Thank you for doing this. I was very busy in the last time with real work
and I have used the spare time checking possible side effects relating to
this issue. For the results see below.
> This should result in a build of XWin.exe that supports SHM when the IPC
> daemon is running, but is not hindered when the IPC daemon is not running.
>
... if linked to the static ipc-library. Using the cygipc dll results in an
additional runtime dependency, which will produce windows runtime linking
errors if the cygipc package isn't installed, which will produce more
support noise dealing with this issue. Using the static library avoids this
problem.
Using the static library may cause a recompile of the x libs with a newer
cygipc release in
case the communication protocol between the ipc client and server changes,
but I doubt that this will be happen, because the cygipc library is stable
and full working. (Im using the static cypipc library for at least two years
with no problems)
> This will be a nice addition, as it will allow Ralf to stop distributing
> ancient copies of XWin.exe for KDE on Cygwin. :)
>
nice to hear.
>
> My one question is this: KDE on Cygwin (last I checked) is also
> distributing a handful of X libraries (X11?) that need SHM support as
> well, can SHM be dynamically enabled/disabled for these libraries, or
> are they going to have to be built in two different flavors still?
>
Currently the Xext and the X11 libray are using shm related functions, for
which I have done a little research with the results mentioned below. The
result in short is, there is no need to build in two different flawors,
using the static cygipc library.
1. lib/xext/Xshm.c
All shm related functions are checking the MIT-SHM extension with the
XExtCheckExtension macro.
see http://www.atomised.org/docs/XFree86-4.2.1/XShm_8c-source.html
2. lib/X11/Font.c
_XF86BigfontCodes checks the XF86BigFont server extension before using
any shm code
see
http://www.atomised.org/docs/XFree86-4.2.1/lib_2X11_2Font_8c-source.html
line 00352 ff
The other libraries of the kde-x-1.3 package which you are refering are
obsolate:
libXft:
- added qt3 referenced symbols
XftGlyphLoad
XftGlyphCheck
XftFreeTypeGlyphExists
XftFreeTypeOpen
XftFreeTypeClose
XftRenderString16
-> these symbols are exported by default since 2002/09/18
libXext:
- added shared memory relating symbols (XShm..) to the list of exported
symbols
-> these symbols are exported by default in future
libICE:
- removed 5 seconds delay in libICE if file attributes don't match
-> fixed in 2002/09/18
Hope that helps
Ralf