18a770c80d
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.
88 lines
2.5 KiB
Plaintext
88 lines
2.5 KiB
Plaintext
AC_PREREQ([2.64])
|
|
|
|
m4_define([wayland_major_version], [0])
|
|
m4_define([wayland_minor_version], [89])
|
|
m4_define([wayland_micro_version], [0])
|
|
m4_define([wayland_version],
|
|
[wayland_major_version.wayland_minor_version.wayland_micro_version])
|
|
|
|
AC_INIT([wayland],
|
|
[wayland_version],
|
|
[https://bugs.freedesktop.org/enter_bug.cgi?product=wayland],
|
|
[wayland],
|
|
[http://wayland.freedesktop.org/])
|
|
|
|
AC_SUBST([WAYLAND_VERSION_MAJOR], [wayland_major_version])
|
|
AC_SUBST([WAYLAND_VERSION_MINOR], [wayland_minor_version])
|
|
AC_SUBST([WAYLAND_VERSION_MICRO], [wayland_micro_version])
|
|
AC_SUBST([WAYLAND_VERSION], [wayland_version])
|
|
|
|
AC_CONFIG_HEADERS([config.h])
|
|
AC_CONFIG_MACRO_DIR([m4])
|
|
|
|
AM_INIT_AUTOMAKE([1.11 foreign no-dist-gzip dist-xz])
|
|
|
|
AM_SILENT_RULES([yes])
|
|
|
|
# Check for programs
|
|
AC_PROG_CC
|
|
|
|
# Initialize libtool
|
|
LT_PREREQ([2.2])
|
|
LT_INIT
|
|
|
|
PKG_PROG_PKG_CONFIG()
|
|
PKG_CHECK_MODULES(FFI, [libffi])
|
|
|
|
if test "x$GCC" = "xyes"; then
|
|
GCC_CFLAGS="-Wall -Wextra -Wno-unused-parameter -g -Wstrict-prototypes -Wmissing-prototypes -fvisibility=hidden"
|
|
fi
|
|
AC_SUBST(GCC_CFLAGS)
|
|
|
|
AC_ARG_ENABLE([scanner],
|
|
[AC_HELP_STRING([--disable-scanner],
|
|
[Disable compilation of wayland-scannner])],
|
|
[],
|
|
[enable_scanner=yes])
|
|
|
|
AC_ARG_ENABLE([documentation],
|
|
[AC_HELP_STRING([--disable-documentation],
|
|
[Disable building the documentation])],
|
|
[],
|
|
[enable_documentation=yes])
|
|
|
|
AM_CONDITIONAL(ENABLE_SCANNER, test "x$enable_scanner" = xyes)
|
|
|
|
EXPAT_LIB=""
|
|
AC_ARG_WITH(expat, [ --with-expat=<dir> Use expat from here],
|
|
[ expat=$withval
|
|
CPPFLAGS="$CPPFLAGS -I$withval/include"
|
|
LDFLAGS="$LDFLAGS -L$withval/lib" ] )
|
|
if test "x$enable_scanner" = "xyes"; then
|
|
AC_CHECK_HEADERS(expat.h, [AC_DEFINE(HAVE_EXPAT_H)],
|
|
[AC_MSG_ERROR([Can't find expat.h. Please install expat.])])
|
|
AC_CHECK_LIB(expat, XML_ParserCreate, [EXPAT_LIBS="-lexpat"],
|
|
[AC_MSG_ERROR([Can't find expat library. Please install expat.])])
|
|
AC_SUBST(EXPAT_LIBS)
|
|
fi
|
|
|
|
AC_PATH_PROG(XSLTPROC, xsltproc)
|
|
AM_CONDITIONAL([HAVE_XSLTPROC], [test "x$XSLTPROC" != "x"])
|
|
|
|
if test "x$enable_documentation" = "xyes"; then
|
|
AC_PATH_PROG(PUBLICAN, publican)
|
|
fi
|
|
AM_CONDITIONAL([HAVE_PUBLICAN], [test "x$PUBLICAN" != "x"])
|
|
|
|
AC_CONFIG_FILES([Makefile
|
|
wayland-scanner.m4
|
|
doc/Makefile
|
|
doc/Wayland/Makefile
|
|
src/Makefile
|
|
src/wayland-server.pc
|
|
src/wayland-client.pc
|
|
src/wayland-version.h
|
|
protocol/Makefile
|
|
tests/Makefile])
|
|
AC_OUTPUT
|