autogen.sh: Implement GNOME Build API

http://people.gnome.org/~walters/docs/build-api.txt

Signed-off-by: Adam Jackson <ajax@redhat.com>
xfixes: Update to version 5

This adds the two new functions in XFixes version 5 for handling
pointer barriers.

Signed-off-by: Neil Roberts <neil@linux.intel.com>
Tested-by: Daniel Martin <consume.noise@gmail.com>
Signed-off-by: Peter Harris <pharris@opentext.com>
Simplify boolean attribute retrieval
xkb: Revert half of d42d791 XKB: Fix broken events

The no-sequence-number attribute was not necessary to achive what commit
d42d791 did. The first field automatically goes between the
response_type and the sequence field in the header. So, adding the
xkbType field would've been sufficient to fix the broken events.

Reference-to: d42d791 XKB: Fix broken events
XKB: Remove CountedString8

CountedString8 is never used.

Signed-off-by: Peter Harris <pharris@opentext.com>
XKB: Fix CountedString16 padding

Should be <pad align=4>, not <pad bytes=1>. This is a very long-winded
way to write <pad align>, since libxcb doesn't support <pad align> yet.

Signed-off-by: Peter Harris <pharris@opentext.com>
XKB: Fix SymInterpret

SymInterpret is referenced by the spec, but never defined. Therefore,
the definition of SymInterpret is inferred from the server implementation.

Signed-off-by: Peter Harris <pharris@opentext.com>
XKB: Fix VirtualMods

nVModMapKeys is usually larger than <popcount>virtualMods</popcount>.

Signed-off-by: Peter Harris <pharris@opentext.com>
XKB: Change CARD8 to char where ASCII is expected

This does not impact libxcb, but it makes some pretty-printers prettier.

Signed-off-by: Peter Harris <pharris@opentext.com>
Allow multiple <enumref> in a <bitcase>

Signed-off-by: Peter Harris <pharris@opentext.com>
XKB: Fix GetKbdByName

Each part of the reply has a fake type, sequence, and length. In
addition, some parts of the reply are encoded only once even when
multiple bits are set.

Signed-off-by: Peter Harris <pharris@opentext.com>
XKB: Fix calculation in GetIndicatorMap

Contrary to the spec, the server doesn't set nIndicators.

Signed-off-by: Peter Harris <pharris@opentext.com>
xcbgen: Handle multiple <enumref> in a <bitcase>

Adopt the XML schema change from commit
    ee71d96 Allow multiple <enumref> in a <bitcase>
and its usage with commit
    b3b5e02 XKB: Fix GetKbdByName.

Signed-off-by: Daniel Martin <consume.noise@gmail.com>
Signed-off-by: Peter Harris <pharris@opentext.com>
Prototype for XRes v1.2
screensaver: Remove wrong fields from Notify event

This fixes bug #63158:
    screensaver notify event specification is incorrect
    https://bugs.freedesktop.org/show_bug.cgi?id=63158

As stated in the bug report the response_type and sequence field will be
added automatically while parsing the specification. Additionally, the
pad field is wrong.

Signed-off-by: Daniel Martin <consume.noise@gmail.com>
Signed-off-by: Peter Harris <pharris@opentext.com>
screensaver: Use enum and mask attributes

Signed-off-by: Daniel Martin <consume.noise@gmail.com>
Signed-off-by: Peter Harris <pharris@opentext.com>
XKB: Correct enum to mask

Changes fields with enums EventType, MapPart, or BoolCtrl to use them as
masks instead.
xfixes: Rename enum DirectionMask to BarrierDirec.

Rename the enum 'DirectionMask' to 'BarrierDirections' to match the
specification.

Signed-off-by: Daniel Martin <consume.noise@gmail.com>
Signed-off-by: Peter Harris <pharris@opentext.com>
composite: Version bump 0.3..0.4

The only difference between version 0.3 and 0.4 is that the clipping
semantics have been redefined. That's just an internal change, no
structure has to be modified.

Signed-off-by: Daniel Martin <consume.noise@gmail.com>
Signed-off-by: Peter Harris <pharris@opentext.com>
glx: Version bump 1.3..1.4

Add the BufferSwapComplete (v2) event.

Signed-off-by: Daniel Martin <consume.noise@gmail.com>
Signed-off-by: Peter Harris <pharris@opentext.com>