One lower-impact compromise would be to simply rename private fields
of the structs to something obviously wrong when compiling without
__XSERVER__. Easy-ish patches to get right, and preserves ABI
compatibility. If you generate the secret names with a macro, you can
change them regularly to ensure no one is building against them :-).

    Bart

On Fri, Mar 23, 2012 at 9:23 AM, Keith Packard <kei...@keithp.com> wrote:
> <#part sign=pgpmime>
> On Fri, 23 Mar 2012 18:30:30 +1000, Peter Hutterer <peter.hutte...@who-t.net> 
> wrote:
>
>> Good point, but that would only get us half-way. We currently export
>> things like the GrabRec as well, just because they are in the same
>> header. These could be moved into a private header. For other structs
>> like the DeviceIntRec, we want only parts to be exposed to the driver so
>> we either need the private structs, opaque structs + API or conditional
>> compilation.
>
> So we need a DeviceIntIntRec that includes DeviceIntRec? Or should we
> move a bunch of the stuff that is currently in DeviceIntRec over to
> DeviceRec? Neither of those options sounds like much fun at all, the
> former would preserve existing API compatibility, albeit with a comedic
> naming effect (DeviceIntNoSeriouslyNotPublicRec...)
>
> --
> keith.pack...@intel.com
> _______________________________________________
> xorg-devel@lists.x.org: X.Org development
> Archives: http://lists.x.org/archives/xorg-devel
> Info: http://lists.x.org/mailman/listinfo/xorg-devel
_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to