📄 configure.in
字号:
dnldnl configuration script for hamsterdbdnldnl Copyright (C) 2005-2007 Christoph Rupp (chris@crupp.de).dnl All rights reserved. See file LICENSE for licence and copyrightdnl informationdnldnl Initialize autoconf/automakeAC_INIT(hamsterdb, 0.4.4)AC_CONFIG_SRCDIR(src/hamsterdb.c)AC_CONFIG_AUX_DIR(build/scripts)AM_INIT_AUTOMAKE(hamsterdb, 0.4.4)AM_CONFIG_HEADER(config.h)AC_PROG_CCAC_PROG_RANLIBAC_LIBTOOL_WIN32_DLLAC_PROG_LIBTOOLAC_PROG_INSTALLAC_HEADER_STDCAC_C_CONSTAC_TYPE_SIZE_TAC_CHECK_FUNCS(pread pwrite mmap munmap)AC_CHECK_HEADERS(fcntl.h unistd.h malloc.h)AC_TYPE_OFF_TAC_FUNC_MMAPdnldnl check for db.h - needed for unit testsdnldnl TODO dnl I don't know why, but this doesn'T work as expected - if i dnl test HAVE_CPPUNIT in Makefile.am, it's always negativednlAC_MSG_NOTICE([Checking for CppUnit (optional; needed for unit tests)])AC_TRY_CPP([#include cppunit/extensions/HelperMacros.h], ac_have_cppunit=yes, ac_have_cppunit=no)AM_CONDITIONAL(HAVE_CPPUNIT, test "x$ac_have_cppunit" = "xyes")dnldnl check for --enable-debugdnlAC_ARG_ENABLE(debug, AC_HELP_STRING([--enable-debug], [Build with diagnostics and debug symbols (slow!)]), [ac_enable_debug=yes], [ac_enable_debug=no])dnldnl check for --enable-profilednlAC_ARG_ENABLE(profile, AC_HELP_STRING([--enable-profile], [Build with profiling information (gprof)]), [ac_enable_profile=yes], [ac_enable_profile=no])dnldnl check for --enable-shrinkdnlAC_ARG_ENABLE(shrink, AC_HELP_STRING([--enable-shrink], [Optimize for minimum size of the library]), [ac_enable_shrink=yes], [ac_enable_shrink=no])dnldnl check for --enable-internaldnlAC_ARG_ENABLE(internal, AC_HELP_STRING([--enable-internal], [Enables internal functions (ham_dump, ham_check_integrity)]), [ac_enable_internal=yes], [ac_enable_internal=no])if test $ac_enable_internal = yes; then CFLAGS="${CFLAGS} -DHAM_ENABLE_INTERNAL"fidnldnl use -O3 on platforms with gcc, or -Os if we optimize for size, or dnl no optimization if debugging is enabled; also, force -Walldnlif test "x$GCC" = "xyes"; then # force a trailing whitespace CFLAGS="${CFLAGS} " if test "$ac_enable_profile" = "yes"; then CFLAGS="${CFLAGS} -pg" fi if test "$ac_enable_shrink" = "yes"; then CFLAGS=`echo "$CFLAGS" | sed 's/-O. /-Os /g'` else CFLAGS=`echo "$CFLAGS" | sed 's/-O. /-O3 /g'` fi if test "$ac_enable_debug" = "yes"; then CFLAGS=`echo "$CFLAGS" | sed 's/-O. / /g'` CFLAGS="${CFLAGS} -DHAM_DEBUG" fi CFLAGS="${CFLAGS} -Wall"fidnldnl check for little endian/big endiandnlAC_C_BIGENDIAN( ac_big_endian=yes, ac_big_endian=no, ac_big_endian=no)if test $ac_big_endian = yes; then CFLAGS="${CFLAGS} -DHAM_BIG_ENDIAN"else CFLAGS="${CFLAGS} -DHAM_LITTLE_ENDIAN"fidnldnl check for O_LARGEFILEdnlAC_CACHE_CHECK(for support of the O_LARGEFILE flag,ac_cv_largefile, [AC_TRY_RUN([#define _GNU_SOURCE 1 /* for O_LARGEFILE */#include <stdio.h>#include <unistd.h>#include <sys/types.h>#include <fcntl.h>int main(void) { int i=(int)O_LARGEFILE; return 0;}],ac_cv_largefile=yes,ac_cv_largefile=no,ac_cv_largefile=no)])if test $ac_cv_largefile = yes; then AC_DEFINE(HAVE_O_LARGEFILE,1,[flag O_LARGEFILE is supported])fidnldnl check for the return type of getpagesize()dnlAC_CACHE_CHECK(if getpagesize() returns int,ac_cv_getpagesize_int, [AC_TRY_RUN([#include <stdio.h>#include <unistd.h>#include <sys/types.h>#include <fcntl.h>extern int getpagesize(void);int main(void) { int i=(int)getpagesize(); return 0;}],ac_cv_getpagesize_int=yes,ac_cv_getpagesize_int=no,ac_cv_getpagesize_int=no)])if test $ac_cv_getpagesize_int = yes; then AC_DEFINE(HAVE_GETPAGESIZE_INT,1,[getpagesize() returns int])fiAC_CONFIG_FILES(Makefile src/Makefile include/Makefile include/ham/Makefile samples/Makefile unittests/Makefile)AC_OUTPUT
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -