This is the mail archive of the cygwin-xfree@cygwin.com mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

AW: Enabling SHM support in default build of XWin.exe


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]