1
dnl -*- mode: m4; c-basic-offset: 2; indent-tabs-mode: nil; -*-
2
dnl vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
4
dnl pandora-build: A pedantic build system
5
dnl Copyright (C) 2009 Sun Microsystems, Inc.
6
dnl This file is free software; the Free Software Foundation
7
dnl gives unlimited permission to copy and/or distribute it,
8
dnl with or without modifications, as long as this notice is preserved.
12
dnl --------------------------------------------------------------------
13
dnl Check for Google Proto Buffers
14
dnl --------------------------------------------------------------------
16
AC_DEFUN([_PANDORA_SEARCH_LIBPROTOBUF],[
17
AC_REQUIRE([PANDORA_HAVE_PTHREAD])
20
save_CXXFLAGS="${CXXFLAGS}"
21
CXXFLAGS="${PTHREAD_CFLAGS} ${CXXFLAGS}"
22
AC_LIB_HAVE_LINKFLAGS(protobuf,,
23
[#include <google/protobuf/descriptor.h>],
24
[google::protobuf::FileDescriptor* file;],
26
CXXFLAGS="${save_CXXFLAGS}"
30
AC_DEFUN([PANDORA_HAVE_LIBPROTOBUF],[
31
AC_REQUIRE([_PANDORA_SEARCH_LIBPROTOBUF])
34
AC_DEFUN([PANDORA_REQUIRE_LIBPROTOBUF],[
35
AC_REQUIRE([PANDORA_HAVE_LIBPROTOBUF])
36
AS_IF([test x$ac_cv_libprotobuf = xno],
37
AC_MSG_ERROR([libprotobuf is required for ${PACKAGE}. On Debian this can be found in libprotobuf-dev. On RedHat this can be found in protobuf-devel.]))
40
AC_DEFUN([PANDORA_PROTOBUF_RECENT],[
41
AC_REQUIRE([_PANDORA_SEARCH_LIBPROTOBUF])
43
AC_CACHE_CHECK([if protobuf is recent enough], [drizzle_cv_protobuf_recent],
44
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
45
#include <google/protobuf/descriptor.h>
46
#if GOOGLE_PROTOBUF_VERSION < 2000002
47
# error Your version of Protobuf is too old
50
[drizzle_cv_protobuf_recent=yes],
51
[drizzle_cv_protobuf_recent=no])])
52
AS_IF([test "$drizzle_cv_protobuf_recent" = "no"],[
53
AC_MSG_ERROR([Your version of Google Protocol Buffers is too old. ${PACKAGE} requires at least version 2.0.2])
58
AC_DEFUN([_PANDORA_SEARCH_PROTOC],[
59
AC_REQUIRE([_PANDORA_SEARCH_LIBPROTOBUF])
60
AC_PATH_PROG([PROTOC],[protoc],[no],[$LIBPROTOBUF_PREFIX/bin:$PATH])
63
AC_DEFUN([PANDORA_HAVE_PROTOC],[
64
AC_REQUIRE([_PANDORA_SEARCH_PROTOC])
67
AC_DEFUN([PANDORA_REQUIRE_PROTOC],[
68
AC_REQUIRE([PANDORA_HAVE_PROTOC])
69
AS_IF([test "x$PROTOC" = "xno"],[
70
AC_MSG_ERROR([Couldn't find the protoc compiler. On Debian this can be found in protobuf-compiler. On RedHat this can be found in protobuf-compiler.])