X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=configure.ac;h=af6d399efe0efc0da68dd8797e0ecdc43321ea21;hb=618811a49324bf07ee0d3d435bb3843d3d57fd02;hp=d36c05fd1ac85509626028c62a62ca44c3121473;hpb=513c469c933b1a59092a2d8e496d0adb2656f464;p=awesomized%2Flibmemcached diff --git a/configure.ac b/configure.ac index d36c05fd..af6d399e 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,5 @@ -AC_INIT(clients/memcat.c) +AC_INIT([libmemcached],[0.30],[http://tangent.org/552/libmemcached.html]) +AC_CONFIG_SRCDIR([clients/memcat.c]) AC_CONFIG_AUX_DIR(config) AM_CONFIG_HEADER(libmemcached/libmemcached_config.h) @@ -13,17 +14,6 @@ AC_CANONICAL_TARGET CFLAGS=${SAVE_CFLAGS} CXXFLAGS=${SAVE_CXXFLAGS} -MEMCACHED_LIBRARY_NAME=libmemcached - -#release versioning -MEMCACHED_MAJOR_VERSION=0 -MEMCACHED_MINOR_VERSION=29 -MEMCACHED_MICRO_VERSION=0 - -#API version -MEMCACHED_API_VERSION=1.0 -AC_SUBST(MEMCACHED_API_VERSION) - #shared library versioning MEMCACHED_LIBRARY_VERSION=2:0:0 # | | | @@ -36,20 +26,11 @@ MEMCACHED_LIBRARY_VERSION=2:0:0 # | +- increment if source code has changed # | set to zero if current is incremented # +- increment if interfaces have been added, removed or changed - AC_SUBST(MEMCACHED_LIBRARY_VERSION) +MEMCACHEDUTIL_LIBRARY_VERSION=0:0:0 +AC_SUBST(MEMCACHEDUTIL_LIBRARY_VERSION) -PACKAGE=$MEMCACHED_LIBRARY_NAME -AC_SUBST(MEMCACHED_LIBRARY_NAME) - -MEMCACHED_VERSION=$MEMCACHED_MAJOR_VERSION.$MEMCACHED_MINOR_VERSION.$MEMCACHED_MICRO_VERSION -MEMCACHED_RELEASE=$MEMCACHED_MAJOR_VERSION.$MEMCACHED_MINOR_VERSION -AC_SUBST(MEMCACHED_RELEASE) -AC_SUBST(MEMCACHED_VERSION) - -VERSION=$MEMCACHED_RELEASE - -AM_INIT_AUTOMAKE($PACKAGE, $VERSION, nostdinc no-define -Wall -Werror) +AM_INIT_AUTOMAKE(nostdinc no-define -Wall -Werror) AC_USE_SYSTEM_EXTENSIONS AC_PROG_CC @@ -57,8 +38,18 @@ AC_PROG_CC_C99 AC_PROG_CXX AC_PROG_LIBTOOL AM_SANITY_CHECK -LIBTOOL="$LIBTOOL --preserve-dup-deps" -AC_SUBST(LIBTOOL)dnl + +AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) + + +# libmemcached versioning when linked with GNU ld. +if test "$lt_cv_prog_gnu_ld" = "yes" +then + LD_VERSION_SCRIPT="-Wl,--version-script=\$(top_srcdir)/libmemcached/libmemcached.ver" + LD_UTIL_VERSION_SCRIPT="-Wl,--version-script=\$(top_srcdir)/libmemcachedutil/libmemcachedutil.ver" +fi +AC_SUBST(LD_VERSION_SCRIPT) +AC_SUBST(LD_UTIL_VERSION_SCRIPT) AC_C_CONST AC_HEADER_TIME @@ -66,19 +57,33 @@ AC_TYPE_SIZE_T AC_SEARCH_LIBS(getopt_long, gnugetopt) AC_SEARCH_LIBS(socket, socket) AC_SEARCH_LIBS(gethostbyname, nsl) + +save_LIBS="$LIBS" +LIBS="$LIBS -lm" +AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include + ]],[[ + float f= floorf((float) 1.0); + ]], + [LIBM="-lm"],[LIBM=""])]) + +AC_SUBST(LIBM) +LIBS="$save_LIBS" AC_SEARCH_LIBS(floorf, m) -sinclude(config/pod2man.m4) -sinclude(config/debug.m4) -sinclude(config/dtrace.m4) -sinclude(config/byteorder.m4) -sinclude(config/64bit.m4) -sinclude(config/protocol_binary.m4) -sinclude(config/memcached.m4) -sinclude(config/setsockopt.m4) -sinclude(config/hsieh.m4) -sinclude(config/util.m4) +sinclude(m4/pod2man.m4) +sinclude(m4/debug.m4) +sinclude(m4/dtrace.m4) +sinclude(m4/byteorder.m4) +sinclude(m4/64bit.m4) +sinclude(m4/protocol_binary.m4) +sinclude(m4/memcached.m4) +sinclude(m4/setsockopt.m4) +sinclude(m4/hsieh.m4) +sinclude(m4/util.m4) dnl This is likely subverted by vpath builds. How do we find the original dnl source dir in the configure step of a vpath build? @@ -89,34 +94,52 @@ else building_from_hg=no fi + # We only support GCC and Sun's forte at the moment if test "$GCC" = "yes" then + if test "$ENABLE_DEBUG" = "yes" + then + CFLAGS="-O0 -DHAVE_DEBUG $CFLAGS" + CXXFLAGS="-O0 -DHAVE_DEBUG $CXXFLAGS" + else + CFLAGS="-O3 $CFLAGS" + CXXFLAGS="-O3 $CXXFLAGS" + fi if test "$building_from_hg" = "yes" then CFLAGS="-Werror $CFLAGS" CXXFLAGS="-Werror $CXXFLAGS" fi - CFLAGS="-W -std=iso9899:1999 -Wall -Wextra -Wno-strict-aliasing -pedantic -Wundef -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -O3 -ggdb $CFLAGS" - CXXFLAGS="-W -Wall -Wextra -Wno-strict-aliasing -pedantic -Wundef -Woverloaded-virtual -Wnon-virtual-dtor -Wctor-dtor-privacy -Wold-style-cast -Weffc++ -Wconversion -Wmissing-declarations -Wredundant-decls -O3 -ggdb $CXXFLAGS" + CFLAGS="-W -std=iso9899:1999 -Wall -Wextra -Wno-strict-aliasing -pedantic -Wundef -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -ggdb3 $CFLAGS" + CXXFLAGS="-W -Wall -Wextra -Wno-strict-aliasing -pedantic -Wundef -Woverloaded-virtual -Wnon-virtual-dtor -Wctor-dtor-privacy -Wold-style-cast -Weffc++ -Wconversion -Wmissing-declarations -Wredundant-decls -ggdb3 $CXXFLAGS" + + +fi + +if test "$SUNCC" = "yes" +then if test "$ENABLE_DEBUG" = "yes" then - CFLAGS="$CFLAGS -ggdb -DHAVE_DEBUG" + CFLAGS="-xO0 -DHAVE_DEBUG $CFLAGS" + CXXFLAGS="-xO0 -DHAVE_DEBUG $CXXFLAGS" + else + CFLAGS="-xO4 -xlibmil -xdepend $CFLAGS" + CXXFLAGS="-xO4 -xlibmil -xdepend $CXXFLAGS" fi -else - CFLAGS="-Xa -xstrconst -mt -D_FORTEC_ -errfmt=error -errwarn -errshort=tags $CFLAGS" - CXXFLAGS="+w +w2 -xwe -mt -D_FORTEC_ $CXXFLAGS" - if test "$ENABLE_DEBUG" = "yes" + if test "$building_from_hg" = "yes" then - CFLAGS="$CFLAGS -DHAVE_DEBUG" - CXXFLAGS="$CXXFLAGS -DHAVE_DEBUG" + CFLAGS="-errwarn $CFLAGS" + CXXFLAGS="-errwarn $CXXFLAGS" fi + CFLAGS="-Xa -xstrconst -mt -errfmt=error -errshort=tags ${CFLAGS}" + CXXFLAGS="+w +w2 -xwe -mt ${CXXFLAGS}" fi -AM_CPPFLAGS="${CPPFLAGS}" +AM_CPPFLAGS="-I\$(top_srcdir) -I\$(top_builddir) ${CPPFLAGS}" AM_CFLAGS="${CFLAGS}" AM_CXXFLAGS="${CXXFLAGS}" @@ -129,4 +152,16 @@ CFLAGS="" CXXFLAGS="" CPPFLAGS="" -AC_OUTPUT(Makefile clients/Makefile tests/Makefile docs/Makefile libmemcached/Makefile libmemcachedutil/Makefile support/Makefile support/libmemcached.pc support/libmemcached.spec support/libmemcached-fc.spec) +AC_CONFIG_FILES([ + Makefile + clients/Makefile + tests/Makefile + docs/Makefile + libmemcached/Makefile + libmemcachedutil/Makefile + support/Makefile + support/libmemcached.pc + support/libmemcached.spec + support/libmemcached-fc.spec + ]) +AC_OUTPUT