Thanks so much, Peter, for taking the time to reply. The following is what I've tried to understand from poking around. I'd appreciate any clarifications if I'm off-track:
>From what I can tell, there are 5 ABI's which are important to the code, which are found in xserver/hw/xfree86/common/xf86Module.h: - ABI_CLASS_ANSIC - ..._VIDEODRV - ..._XINPUT - ..._EXTENSION - ..._FONT >From the poking around I've done, the ABI_CLASS_XINPUT ABI appears to be defined in the file xserver/hw/xfree86/common/xf86Xinput.h, but is that the only place it's defined? Is there a list somewhere saying: "here are the files/functions/identifiers which define ABI X"? If not, would that be useful? Has anyone attempted to track which releases contain which ABI versions? If not, would that be useful? Grepping through the code there are many instances throughout driver/* where the version of the XINPUT ABI is checked. But there aren't any instances of any code checking the version of the EXTENSION ABI. Shouldn't there be lots of such checks throughout the extension libraries? Especially the older ones? If it is correct to assume the date of tagging is the same as the date of release, I have determined the following list of events: - (ABI_XINPUT_VERSION at 10,0) - (InputDriversRec contains a refCount member) - Apr 2 1.8.0 released - May 11 1.8.1 released - May 27 ABI_XINPUT_VERSION bumped to 11,0 - Jul 1 1.8.2 released - Aug 20 1.9.0 released - Sep 18 InputDriverRec loses refCount If I only perform a check of the ABI version, the code won't compile if building against code between May 27 and Sep 18. Is that acceptable? Or am I misunderstanding something? _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
