configure.ac 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. # -*- Autoconf -*-
  2. # Process this file with autoconf to produce a configure script.
  3. AC_PREREQ(2.59)
  4. AC_INIT([zkfuse], [2.2.0])
  5. AM_INIT_AUTOMAKE(foreign)
  6. AC_CONFIG_SRCDIR([src/zkadapter.h])
  7. AM_CONFIG_HEADER([config.h])
  8. PACKAGE=zkfuse
  9. VERSION=1.0
  10. AC_SUBST(PACKAGE)
  11. AC_SUBST(VERSION)
  12. BUILD_PATH="`pwd`"
  13. # Checks for programs.
  14. AC_LANG_CPLUSPLUS
  15. AC_PROG_CXX
  16. # Checks for libraries.
  17. AC_CHECK_LIB([fuse], [main])
  18. AC_CHECK_LIB([log4cxx], [main], [], [AC_MSG_ERROR("We need log4cxx to build zkfuse")])
  19. AC_CHECK_LIB([thread], [thr_create])
  20. AC_CHECK_LIB([pthread], [pthread_create])
  21. AC_CHECK_LIB([rt], [clock_gettime])
  22. AC_CHECK_LIB([socket], [socket])
  23. AC_CHECK_LIB([nsl], [gethostbyname])
  24. AC_CHECK_LIB([ulockmgr], [ulockmgr_op])
  25. ZOOKEEPER_PATH=${BUILD_PATH}/../../c
  26. ZOOKEEPER_BUILD_PATH=${BUILD_PATH}/../../../build/c
  27. AC_CHECK_LIB(zookeeper_mt, main, [ZOOKEEPER_LD="-L${ZOOKEEPER_BUILD_PATH}/.libs -lzookeeper_mt"],,["-L${ZOOKEEPER_BUILD_PATH}/.libs"])
  28. AC_SUBST(ZOOKEEPER_PATH)
  29. AC_SUBST(ZOOKEEPER_LD)
  30. # Checks for header files.
  31. AC_HEADER_DIRENT
  32. AC_HEADER_STDC
  33. AC_CHECK_HEADERS([fcntl.h stdlib.h string.h sys/time.h unistd.h])
  34. AC_CHECK_HEADERS([boost/shared_ptr.hpp boost/utility.hpp boost/weak_ptr.hpp],, AC_MSG_ERROR([boost library headers not found. Please install boost library.]))
  35. # Checks for typedefs, structures, and compiler characteristics.
  36. AC_HEADER_STDBOOL
  37. AC_C_CONST
  38. AC_TYPE_UID_T
  39. AC_C_INLINE
  40. AC_TYPE_INT32_T
  41. AC_TYPE_INT64_T
  42. AC_TYPE_MODE_T
  43. AC_TYPE_OFF_T
  44. AC_TYPE_SIZE_T
  45. AC_CHECK_MEMBERS([struct stat.st_blksize])
  46. AC_STRUCT_ST_BLOCKS
  47. AC_HEADER_TIME
  48. AC_TYPE_UINT32_T
  49. AC_TYPE_UINT64_T
  50. AC_TYPE_UINT8_T
  51. AC_C_VOLATILE
  52. # Checks for library functions.
  53. AC_FUNC_UTIME_NULL
  54. AC_CHECK_FUNCS([gettimeofday memset mkdir rmdir strdup strerror strstr strtol strtoul strtoull utime])
  55. AC_CONFIG_FILES([Makefile])
  56. AC_CONFIG_FILES([src/Makefile])
  57. AC_OUTPUT
  58. AC_C_VOLATILE