libmemcached: memcached_purge (fix #62)
[awesomized/libmemcached] / configure.ac
index e2c42da3bcc3a5a2fe7aa9e94b2aeb2166d8fd28..265ae8993ca5c2e06e3944148870682367b4a3c1 100644 (file)
@@ -33,7 +33,7 @@ AC_CONFIG_SRCDIR([libmemcached/memcached.cc])
 #shared library versioning
 MEMCACHED_UTIL_LIBRARY_VERSION=2:0:0
 MEMCACHED_PROTOCAL_LIBRARY_VERSION=0:0:0
-MEMCACHED_LIBRARY_VERSION=11:0:0
+MEMCACHED_LIBRARY_VERSION=12:0:0
 #                         | | |
 #                  +------+ | +---+
 #                  |        |     |
@@ -65,13 +65,39 @@ AC_SUBST([lt_cv_dlopen_libs])
 AC_PROG_CC_C99
 AS_IF([test "x${ac_cv_prog_cc_c99}" == "xno"],[AC_MSG_ERROR([No c99 compatible compiler found])])
 
-AC_DEFUN([CHECK_CXX0X],[
-          AC_LANG_PUSH([C++])
-          AX_CHECK_COMPILE_FLAG([-std=c++0x],[
-                                 CXX="$CXX -std=c++0x"])
-          AC_LANG_POP([C++])
-          ])
-CHECK_CXX0X
+AC_LANG_PUSH([C++])
+AX_CHECK_COMPILE_FLAG([-std=gnu++14], [
+  AX_APPEND_COMPILE_FLAGS(["-std=gnu++14"])
+], [
+  AX_CHECK_COMPILE_FLAG([-std=c++14], [
+    AX_APPEND_COMPILE_FLAGS(["-std=c++14"])
+  ], [
+    AX_CHECK_COMPILE_FLAG([-std=gnu++11], [
+      AX_APPEND_COMPILE_FLAGS(["-std=gnu++11"])
+    ], [
+      AX_CHECK_COMPILE_FLAG([-std=c++11], [
+        AX_APPEND_COMPILE_FLAGS(["-std=c++11"])
+      ], [
+        AX_CHECK_COMPILE_FLAG([-std=gnu++0x], [
+          AX_APPEND_COMPILE_FLAGS(["-std=gnu++0x"])
+        ], [
+          AX_APPEND_COMPILE_FLAGS(["-std=c++0x"])
+        ])
+      ])
+    ])
+  ])
+])
+AC_LANG_POP([C++])
+
+
+AC_LANG_PUSH([C])
+AX_COMPILER_VENDOR
+AX_COMPILER_VERSION
+AC_LANG_POP([C])
+AC_LANG_PUSH([C++])
+AX_COMPILER_VENDOR
+AX_COMPILER_VERSION
+AC_LANG_POP([C++])
 
 AX_ASSERT
 
@@ -222,8 +248,6 @@ AC_CHECK_HEADER([umem.h],
 
 AM_CONDITIONAL([BUILD_CACHE],[test "x$build_cache" = "xyes"])
 
-AX_COMPILER_VENDOR
-
 AC_CHECK_TYPES([in_port_t],,,[[
                 #ifdef HAVE_SYS_TYPES_H
                 # include <sys/types.h>
@@ -333,6 +357,22 @@ AX_ENDIAN
 AX_ASSERT
 AX_HARDEN_COMPILER_FLAGS
 
+# override sompe flags specific to libmemcached
+AX_APPEND_COMPILE_FLAGS([-Wno-long-long])
+AC_LANG_PUSH([C++])
+AX_APPEND_COMPILE_FLAGS([-Wno-long-long -Wno-old-style-cast])
+AC_LANG_POP([C++])
+
+AC_ARG_ENABLE([warnings-as-errors], AS_HELP_STRING([--enable-warnings-as-errors], 
+  [Build with -Werror enabled]), , [enable_warnings_as_errors=no])
+AC_CACHE_CHECK([if all warnings should produce an error], [ac_cv_warnings_as_errors], [
+  AS_IF([test "x$enable_warnings_as_errors" = "xyes"], [
+    ac_cv_warnings_as_errors=yes
+  ], [
+    ac_cv_warnings_as_errors=no
+  ])
+])
+
 AX_AM_JOBSERVER([yes])
 
 AC_CONFIG_FILES([Makefile
@@ -340,6 +380,7 @@ AC_CONFIG_FILES([Makefile
                  libmemcached-1.0/configure.h
                  support/libmemcached.pc
                  support/libmemcached.spec
+                 support/example.cnf
                  ])
 AC_OUTPUT
 
@@ -349,9 +390,9 @@ echo ""
 echo "   * Installation prefix:       $prefix"
 echo "   * System type:               $host_vendor-$host_os"
 echo "   * Host CPU:                  $host_cpu"
-echo "   * C Compiler:                $CC_VERSION"
+echo "   * C Compiler:                $ax_cv_c_compiler_vendor $ax_cv_c_compiler_version"
 echo "   * C Flags:                   $CFLAGS"
-echo "   * C++ Compiler:              $CXX_VERSION"
+echo "   * C++ Compiler:              $ax_cv_cxx_compiler_vendor $ax_cv_cxx_compiler_version"
 echo "   * C++ Flags:                 $CXXFLAGS"
 echo "   * CPP Flags:                 $CPPFLAGS"
 echo "   * LIB Flags:                 $LIB"