configure.ac 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. # libmodbus package version number, (as distinct from shared library version)
  2. # An odd micro number indicates in-progress development from Git
  3. # An even micro number indicates a released version
  4. #
  5. # Making a point release:
  6. # - increase mb_version_micro to the next even number
  7. #
  8. # After the release:
  9. # - increase mb_version_minor to the next odd number
  10. #
  11. # mb_version_ld increases at each new minor version because minor versions
  12. # are used to change API/ABI
  13. #
  14. m4_define([mb_version_major], [2])
  15. m4_define([mb_version_minor], [1])
  16. m4_define([mb_version_micro], [1])
  17. m4_define([mb_release_status],
  18. [m4_if(m4_eval(mb_version_minor % 2), [1], [snapshot],
  19. [release])])
  20. m4_define([mb_version], [mb_version_major.mb_version_minor.mb_version_micro])
  21. m4_define([mb_version_ld], [m4_eval(mb_version_major + mb_version_minor)])
  22. AC_PREREQ(2.63)
  23. AC_INIT([libmodbus],[mb_version],[stephane.raimbault@gmail.com])
  24. AC_CONFIG_SRCDIR([modbus/modbus.c])
  25. AC_CONFIG_HEADERS([config.h])
  26. AM_INIT_AUTOMAKE([1.11 foreign])
  27. # enable nice build output on automake1.11
  28. m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
  29. MB_VERSION_MAJOR=mb_version_major
  30. MB_VERSION_MINOR=mb_version_minor
  31. MB_VERSION_MICRO=mb_version_micro
  32. MB_VERSION=mb_version
  33. AC_SUBST(MB_VERSION_MAJOR)
  34. AC_SUBST(MB_VERSION_MINOR)
  35. AC_SUBST(MB_VERSION_MICRO)
  36. AC_SUBST(MB_VERSION)
  37. MB_VERSION_LD=mb_version_ld
  38. MB_LT_LDFLAGS="-version-info $MB_VERSION_LD:0:0"
  39. AC_SUBST(MB_LT_LDFLAGS)
  40. # Checks for programs.
  41. AC_PROG_CC
  42. AC_PROG_CXX
  43. AC_PROG_MAKE_SET
  44. LT_INIT([disable-static])
  45. # Checks for header files.
  46. AC_HEADER_STDC
  47. AC_CHECK_HEADERS([termios.h sys/time.h unistd.h errno.h limits.h fcntl.h sys/types.h sys/socket.h sys/ioctl.h netinet/in.h netinet/ip.h netinet/tcp.h arpa/inet.h])
  48. # Checks for typedefs, structures, and compiler characteristics.
  49. AC_C_CONST
  50. AC_TYPE_SIZE_T
  51. AC_HEADER_TIME
  52. # AC_TYPE_UINT*_T: not supported by autoconf-2.59 of CentOS 5.3
  53. # AC_TYPE_UINT16_T
  54. # AC_TYPE_UINT32_T
  55. # AC_TYPE_UINT8_T
  56. # Cygwin defines IPTOS_LOWDELAY but can't handle that flag so it's necessary to
  57. # workaround that problem and Cygwin doesn't define MSG_DONTWAIT.
  58. AC_CHECK_DECLS([__CYGWIN__])
  59. # Checks for library functions.
  60. AC_FUNC_FORK
  61. AC_CHECK_FUNCS([gettimeofday inet_ntoa memset select socket strerror])
  62. AC_CONFIG_FILES([
  63. Makefile
  64. modbus/Makefile
  65. modbus/version.h
  66. tests/Makefile
  67. libmodbus.pc
  68. ])
  69. AC_OUTPUT