way to detect to xserver-xorg version

Tias tias at ulyssis.org
Mon Aug 16 14:18:43 PDT 2010



On 08/16/2010 07:55 AM, Eirik Byrkjeflot Anonsen wrote:
> Tias<tias at ulyssis.org>  writes:
>
>> Hey,
>>
>> In my program, I want to check that the xserver-xorg version is>=
>> 1.8.0. What way to do this is advised:
>>
>> At runtime using XVendorRelease(), or do there exist different
>> releases with inconsistent numbering ? And should this be combined
>> with a literal match on XServerVendor() ?
>>
>> At configuration time, PKG_CHECK_MODULES(XSERVER18, [xorg-server>=
>> 1.8.0], FOO=bar, FOO=baz). But what if you want to discriminate
>> different versions, multiple PKG_CHECK_MODULES ? This would swamp the
>> number of _LIBS and _CFLAGS options...
>> Also, PKG_CHECK_EXSISTS() seems to ignore the version I provided, and
>> always sets FOO=bar.
>
> This would probably be easier to answer if you gave some indication of
> why you think you should refuse people with different X servers to run
> or compile your application.

Its not about refusing, its about using features:
if the xserver is 1.8 or higher, my application can write an example 
xorg.conf.d snippet, otherwise it has to explain a different way of 
making calibration values permanent.

xdpyinfo has a case-based section that calculates the release based on 
the XServerVendor() and XVendorRelease().
I'll guess I'll go for a similar approach of strstr(ServerVendor(dpy), 
"X.Org") and VendorRelease(dpy) > 10800000.


Thanks anyways,
Tias



More information about the xorg mailing list