tree 9fe05b627b1b05079ee5c6673f0ce8e9e74e737f
parent 17a2d4adeb76a9c2e2588808fd667f9752555fc8
author Neil Roberts <neil@linux.intel.com> 1334268499 -0400
committer Kristian Høgsberg <krh@bitplanet.net> 1334268499 -0400

Add a public header for the version number

This adds a public header so that applications can get the Wayland
version number at compile time. This can be used to make applications
that support compiling against multiple versions of Wayland.

There is a separate installed header called cogl-version.h which gets
included by both wayland-client.h and wayland-server.h

The canonical place for the version number is the configure.ac script
which splits it into three separate m4 defines for the major, minor
and micro version. These are copied into the generated
wayland-version.h header using AC_SUBST. There is also a string form
of the complete version number.

The version number is now also automatically copied into the two .pc
files.

Because the major, minor and micro parts are required it is no longer
possible to leave the version number as 'master' when building from
git. Most projects seem to immediately bump the git repo to a fake
version number (usually odd) after making a release so that there is
always a relative number that can be used for comparison. This patch
sets the git version to 0.99.0 under the assumption that the next
release will be 1.0.0.
