configure.ac 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265
  1. AC_INIT(asio, [1.10.2])
  2. AC_CONFIG_SRCDIR(include/asio.hpp)
  3. AM_MAINTAINER_MODE
  4. AM_INIT_AUTOMAKE([tar-ustar])
  5. AC_CANONICAL_HOST
  6. AM_PROG_CC_C_O
  7. AC_PROG_CXX
  8. AC_LANG(C++)
  9. AC_PROG_RANLIB
  10. AC_DEFINE(_REENTRANT, [1], [Define this])
  11. AC_ARG_WITH(boost,
  12. AC_HELP_STRING([--with-boost=DIR],[location of boost distribution]),
  13. [
  14. if test "${withval}" = no; then
  15. STANDALONE="yes"
  16. else
  17. CPPFLAGS="$CPPFLAGS -I${withval}"
  18. LIBS="$LIBS -L${withval}/stage/lib"
  19. fi
  20. ],
  21. [
  22. BOOSTDIR="`pwd`/../boost_1_55_0"
  23. if test -d "${BOOSTDIR}"; then
  24. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  25. LIBS="$LIBS -L${BOOSTDIR}/stage/lib"
  26. else
  27. BOOSTDIR="`pwd`/../boost_1_54_0"
  28. if test -d "${BOOSTDIR}"; then
  29. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  30. LIBS="$LIBS -L${BOOSTDIR}/stage/lib"
  31. else
  32. BOOSTDIR="`pwd`/../boost_1_53_0"
  33. if test -d "${BOOSTDIR}"; then
  34. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  35. else
  36. BOOSTDIR="`pwd`/../boost_1_52_0"
  37. if test -d "${BOOSTDIR}"; then
  38. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  39. else
  40. BOOSTDIR="`pwd`/../boost_1_51_0"
  41. if test -d "${BOOSTDIR}"; then
  42. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  43. else
  44. BOOSTDIR="`pwd`/../boost_1_50_0"
  45. if test -d "${BOOSTDIR}"; then
  46. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  47. else
  48. BOOSTDIR="`pwd`/../boost_1_49_0"
  49. if test -d "${BOOSTDIR}"; then
  50. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  51. else
  52. BOOSTDIR="`pwd`/../boost_1_48_0"
  53. if test -d "${BOOSTDIR}"; then
  54. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  55. else
  56. BOOSTDIR="`pwd`/../boost_1_47_0"
  57. if test -d "${BOOSTDIR}"; then
  58. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  59. else
  60. BOOSTDIR="`pwd`/../boost_1_46_0"
  61. if test -d "${BOOSTDIR}"; then
  62. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  63. else
  64. BOOSTDIR="`pwd`/../boost_1_46_1"
  65. if test -d "${BOOSTDIR}"; then
  66. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  67. else
  68. BOOSTDIR="`pwd`/../boost_1_45_0"
  69. if test -d "${BOOSTDIR}"; then
  70. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  71. else
  72. BOOSTDIR="`pwd`/../boost_1_44_0"
  73. if test -d "${BOOSTDIR}"; then
  74. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  75. else
  76. BOOSTDIR="`pwd`/../boost_1_43_0"
  77. if test -d "${BOOSTDIR}"; then
  78. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  79. else
  80. BOOSTDIR="`pwd`/../boost_1_42_0"
  81. if test -d "${BOOSTDIR}"; then
  82. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  83. else
  84. BOOSTDIR="`pwd`/../boost_1_41_0"
  85. if test -d "${BOOSTDIR}"; then
  86. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  87. else
  88. BOOSTDIR="`pwd`/../boost_1_40_0"
  89. if test -d "${BOOSTDIR}"; then
  90. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  91. else
  92. BOOSTDIR="`pwd`/../boost_1_39_0"
  93. if test -d "${BOOSTDIR}"; then
  94. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  95. else
  96. BOOSTDIR="`pwd`/../boost_1_38_0"
  97. if test -d "${BOOSTDIR}"; then
  98. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  99. else
  100. BOOSTDIR="`pwd`/../boost_1_37_0"
  101. if test -d "${BOOSTDIR}"; then
  102. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  103. else
  104. BOOSTDIR="`pwd`/../boost_1_36_0"
  105. if test -d "${BOOSTDIR}"; then
  106. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  107. else
  108. BOOSTDIR="`pwd`/../boost_1_35_0"
  109. if test -d "${BOOSTDIR}"; then
  110. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  111. else
  112. BOOSTDIR="`pwd`/../boost_1_34_1"
  113. if test -d "${BOOSTDIR}"; then
  114. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  115. else
  116. BOOSTDIR="`pwd`/../boost_1_34_0"
  117. if test -d "${BOOSTDIR}"; then
  118. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  119. else
  120. BOOSTDIR="`pwd`/../boost_1_33_1"
  121. if test -d "${BOOSTDIR}"; then
  122. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  123. else
  124. BOOSTDIR="`pwd`/../boost_1_33_0"
  125. if test -d "${BOOSTDIR}"; then
  126. CPPFLAGS="$CPPFLAGS -I${BOOSTDIR}"
  127. fi
  128. fi
  129. fi
  130. fi
  131. fi
  132. fi
  133. fi
  134. fi
  135. fi
  136. fi
  137. fi
  138. fi
  139. fi
  140. fi
  141. fi
  142. fi
  143. fi
  144. fi
  145. fi
  146. fi
  147. fi
  148. fi
  149. fi
  150. fi
  151. fi
  152. fi
  153. ])
  154. AC_ARG_ENABLE(separate-compilation,
  155. [ --enable-separate-compilation separate compilation of asio source],
  156. [
  157. SEPARATE_COMPILATION=yes
  158. ])
  159. AC_ARG_ENABLE(boost-coroutine,
  160. [ --enable-boost-coroutine use Boost.Coroutine to implement stackful coroutines],
  161. [
  162. HAVE_BOOST_COROUTINE=yes
  163. ])
  164. if test "$STANDALONE" != yes; then
  165. AC_CHECK_HEADER([boost/noncopyable.hpp],,
  166. [
  167. echo "Can't find boost headers. Please check the location of the boost"
  168. echo "distribution and rerun configure using the --with-boost=DIR option."
  169. exit 1
  170. ],[])
  171. fi
  172. AC_ARG_WITH(openssl,
  173. AC_HELP_STRING([--with-openssl=DIR],[location of openssl]),
  174. [
  175. CPPFLAGS="$CPPFLAGS -I${withval}"
  176. ],[])
  177. AC_CHECK_HEADER([openssl/ssl.h],,
  178. [
  179. OPENSSL_FOUND=no
  180. ],[])
  181. if test x$OPENSSL_FOUND != xno; then
  182. LIBS="$LIBS -lssl -lcrypto"
  183. fi
  184. AM_CONDITIONAL(HAVE_OPENSSL,test x$OPENSSL_FOUND != xno)
  185. WINDOWS=no
  186. case $host in
  187. *-*-linux*)
  188. CXXFLAGS="$CXXFLAGS -pthread"
  189. LDFLAGS="$LDFLAGS -pthread"
  190. ;;
  191. *-*-solaris*)
  192. if test "$GXX" = yes; then
  193. CXXFLAGS="$CXXFLAGS -D_PTHREADS"
  194. else
  195. # We'll assume Sun's CC.
  196. CXXFLAGS="$CXXFLAGS -mt"
  197. fi
  198. LIBS="$LIBS -lsocket -lnsl -lpthread"
  199. ;;
  200. *-*-mingw32*)
  201. CXXFLAGS="$CXXFLAGS -mthreads"
  202. LDFLAGS="$LDFLAGS -mthreads"
  203. LIBS="$LIBS -lws2_32 -lmswsock"
  204. WINDOWS=yes
  205. ;;
  206. *-pc-cygwin*)
  207. CXXFLAGS="$CXXFLAGS -D__USE_W32_SOCKETS -D_WIN32_WINNT=0x0501"
  208. LIBS="$LIBS -lws2_32 -lmswsock"
  209. WINDOWS=yes
  210. ;;
  211. *-apple-darwin*)
  212. CXXFLAGS="$CXXFLAGS"
  213. LDFLAGS="$LDFLAGS"
  214. ;;
  215. *-*-freebsd*)
  216. CXXFLAGS="$CXXFLAGS -pthread"
  217. LDFLAGS="$LDFLAGS -pthread"
  218. ;;
  219. *-*-netbsd*)
  220. CXXFLAGS="$CXXFLAGS -pthread"
  221. LDFLAGS="$LDFLAGS -pthread"
  222. ;;
  223. esac
  224. if test "$GXX" = yes; then
  225. CXXFLAGS="$CXXFLAGS -ftemplate-depth-256"
  226. if test "$STANDALONE" = yes; then
  227. CPPFLAGS="-std=c++0x $CPPFLAGS"
  228. fi
  229. fi
  230. if test "$STANDALONE" = yes; then
  231. CPPFLAGS="$CPPFLAGS -DASIO_STANDALONE"
  232. fi
  233. if test "$SEPARATE_COMPILATION" = yes; then
  234. CPPFLAGS="$CPPFLAGS -DASIO_SEPARATE_COMPILATION"
  235. fi
  236. AM_CONDITIONAL(STANDALONE,test x$STANDALONE = xyes)
  237. AM_CONDITIONAL(SEPARATE_COMPILATION,test x$SEPARATE_COMPILATION = xyes)
  238. AM_CONDITIONAL(HAVE_BOOST_COROUTINE,test x$HAVE_BOOST_COROUTINE = xyes)
  239. AM_CONDITIONAL(WINDOWS_TARGET,test x$WINDOWS != xno)
  240. AC_OUTPUT([
  241. Makefile
  242. include/Makefile
  243. src/Makefile
  244. src/tests/Makefile
  245. src/examples/cpp03/Makefile
  246. src/examples/cpp11/Makefile])