-# Gearman server and library
+# libmemcached
# Copyright (C) 2008 Brian Aker
# All rights reserved.
#
AC_CONFIG_SRCDIR([libmemcached/memcached.c])
AC_CONFIG_AUX_DIR(config)
AM_CONFIG_HEADER(libmemcached/libmemcached_config.h)
+AC_CONFIG_MACRO_DIR([m4])
#shared library versioning
MEMCACHED_LIBRARY_VERSION=2:0:0
building_from_bzr=no
fi
-AC_PROG_CC
-AC_PROG_CC_C99
-AM_PROG_CC_STDC
AC_PROG_CXX
ACX_USE_SYSTEM_EXTENSIONS
AC_PROG_CPP
AM_PROG_CC_C_O
+FORCE_MAC_GCC42
+dnl Once we can use a modern autoconf, we can use this
+dnl AC_PROG_CC_C99
+
AC_C_BIGENDIAN
AC_C_CONST
AC_HEADER_TIME
AC_TYPE_SIZE_T
-AC_TYPE_SSIZE_T
AC_FUNC_MALLOC
AC_FUNC_REALLOC
AC_SUBST(LD_VERSION_SCRIPT)
AC_SUBST(LD_UTIL_VERSION_SCRIPT)
-# Use the C99 enabling flag found earlier
-AS_IF([test "$ac_cv_prog_cc_c99" != "no"],
- [CFLAGS="$ac_cv_prog_cc_c99 ${CFLAGS}"])
-
# Build optimized or debug version ?
# First check for gcc and g++
if test "$GCC" = "yes"
then
+
+ dnl Once we can use a modern autoconf, we can replace the std=gnu99 here
+ dnl with using AC_CC_STD_C99 above
+ CC="${CC} -std=gnu99"
+
CFLAGS="-ggdb3 ${CFLAGS}"
+ CXXFLAGS="-ggdb3 ${CXXFLAGS}"
+
DEBUG_CFLAGS="-O0"
+ DEBUG_CXXFLAGS="-O0"
+
OPTIMIZE_CFLAGS="-O3"
+ OPTIMIZE_CXXFLAGS="-O3"
fi
if test "x$SUNCC" = "xyes"
then
- CFLAGS="-g -mt ${CFLAGS}"
- CXXFLAGS="-g -mt -xlang=c99 ${CXXFLAGS}"
- OPTIMIZE_CFLAGS="-xO4 -xlibmil -xdepend -Xa -xstrconst"
+ dnl Once we can use a modern autoconf, we can replace the -xc99=all here
+ dnl with using AC_CC_STD_C99 above
+ CC="${CC} -xc99=all"
+
+ CFLAGS="-g -mt ${CFLAGS}"
+ CXXFLAGS="-xlang=c99 -g -mt -compat=5 -library=stlport4 -template=no%extdef ${CXXFLAGS}"
+
+ OPTIMIZE_FLAGS="-xO4 -xlibmil -xdepend -xbuiltin"
+ OPTIMIZE_CFLAGS="${OPTIMIZE_FLAGS} -Xa -xstrconst"
+ OPTIMIZE_CXXFLAGS="${OPTIMIZE_FLAGS}"
+
fi
ENABLE_64BIT
REQUIRE_POD2MAN
PROTOCOL_BINARY_TEST
WITH_MEMCACHED
+ENABLE_DEPRECATED
dnl TODO: Remove this define once we are using 2.61 across the board.
# AX_HEADER_ASSERT
then
# Debugging. No optimization.
CFLAGS="${DEBUG_CFLAGS} -DDEBUG ${CFLAGS}"
+ CXXFLAGS="${DEBUG_CXXFLAGS} -DDEBUG ${CXXFLAGS}"
else
# Optimized version. No debug
CFLAGS="${OPTIMIZE_CFLAGS} ${CFLAGS}"
+ CXXFLAGS="${OPTIMIZE_CXXFLAGS} ${CXXFLAGS}"
fi
AC_ARG_ENABLE([profiling],
[ac_coverage="$enableval"],
[ac_coverage="no"])
-dnl We can't do this warning, so turn off
-W_STRICT_ALIASING="-Wno-strict-aliasing"
-
if test "$GCC" = "yes"
then
F_DIAGNOSTICS_SHOW_OPTION="-fdiagnostics-show-option"
])
-
AC_CACHE_CHECK([whether it is safe to use -Wconversion],
[ac_cv_safe_to_use_wconversion_],
[save_CFLAGS="$CFLAGS"
[ac_cv_safe_to_use_wconversion_=yes],
[ac_cv_safe_to_use_wconversion_=no])
CFLAGS="$save_CFLAGS"])
+
AS_IF([test "$ac_cv_safe_to_use_wconversion_" = "yes"],
[W_CONVERSION="-Wconversion"
AC_CACHE_CHECK([whether it is safe to use -Wconversion with htons],
])
])
- W_STRICT_ALIASING="-Wno-strict-aliasing"
-
AS_IF([test "$ac_profiling" = "yes"],
[CC_PROFILING="-pg"])
AS_IF([test "$building_from_bzr" = "yes"],
[W_FAIL="-Werror"])
- BASE_WARNINGS="-pedantic -W -Wall -Wextra ${W_FAIL} -Wundef -Wshadow -Wmissing-declarations ${W_STRICT_ALIASING} ${F_DIAGNOSTICS_SHOW_OPTION} ${W_CONVERSION}"
- CC_WARNINGS="${BASE_WARNINGS} -Wstrict-prototypes -Wmissing-prototypes -Wredundant-decls -Wswitch-default -Wswitch-enum -Wcast-align -Wconversion"
- CXX_WARNINGS="${BASE_WARNINGS} -Woverloaded-virtual -Wnon-virtual-dtor -Wctor-dtor-privacy -Wold-style-cast -Weffc++ -Wno-long-long -Wconversion"
-
+ BASE_WARNINGS="-pedantic -Wall -Wextra ${W_FAIL} -Wundef -Wshadow -Wmissing-declarations -Wstrict-aliasing -Wformat=2 ${F_DIAGNOSTICS_SHOW_OPTION} ${W_CONVERSION}"
+ CC_WARNINGS="${BASE_WARNINGS} -Wstrict-prototypes -Wmissing-prototypes -Wredundant-decls -Wswitch-default -Wswitch-enum -Wcast-align"
+ CXX_WARNINGS="${BASE_WARNINGS} -Woverloaded-virtual -Wnon-virtual-dtor -Wctor-dtor-privacy -Wold-style-cast -Weffc++ -Wno-long-long"
AC_CACHE_CHECK([whether it is safe to use -Wlogical-op],
[ac_cv_safe_to_use_Wlogical_op_],
tests/Makefile
docs/Makefile
libmemcached/Makefile
+ libmemcached/memcached_configure.h
libmemcachedutil/Makefile
support/Makefile
support/libmemcached.pc