You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

configure.ac 5.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  1. dnl Process this file with autoconf to produce a configure script.
  2. AC_PREREQ([2.57])
  3. AC_INIT([tigervnc], [1.0.90], [http://www.tigervnc.org])
  4. BUILD=`date +%Y%m%d`
  5. AC_CONFIG_AUX_DIR([.])
  6. AM_INIT_AUTOMAKE([-Wall foreign dist-bzip2])
  7. AC_CONFIG_SUBDIRS([common/jpeg common/zlib])
  8. AC_CONFIG_HEADERS([config.h])
  9. dnl Checks for programs.
  10. AC_PROG_CC
  11. AC_PROG_CXX
  12. AC_PROG_LIBTOOL
  13. AC_LANG([C++])
  14. AM_GNU_GETTEXT([external])
  15. AM_GNU_GETTEXT_VERSION([0.14.1])
  16. case "`(uname -sr) 2>/dev/null`" in
  17. "SunOS 5"*)
  18. SOLARIS=yes
  19. USE_MITSHM=yes
  20. USE_SUN_OVL=yes
  21. ;;
  22. "IRIX 6"*)
  23. LDFLAGS="-L/usr/lib32 $LDFLAGS"
  24. USE_MITSHM=yes
  25. USE_READDISPLAY=yes
  26. ;;
  27. "LynxOS 2"*)
  28. SJLJ_EXCEPTIONS=yes
  29. ;;
  30. esac
  31. BUILD_WIN=
  32. case "$host_os" in
  33. mingw*)
  34. CPPFLAGS="$CPPFLAGS -DWINVER=0x0500 -D_WIN32_IE=0x0500"
  35. CXXFLAGS="$CXXFLAGS -mthreads"
  36. BUILD_WIN=yes
  37. AC_CHECK_TOOL([WINDRES], windres, [AC_MSG_ERROR(windres not found)])
  38. ;;
  39. esac
  40. AM_CONDITIONAL([BUILD_WIN], [test "x$BUILD_WIN" = xyes])
  41. dnl FIXME: Check for MIT-SHM properly, add a corresponding --with option.
  42. if test "$USE_MITSHM" = yes; then
  43. MITSHM_DEFINE="-DHAVE_MITSHM"
  44. fi
  45. AC_SUBST(MITSHM_DEFINE)
  46. if test "$GCC" = yes; then
  47. CFLAGS="$CFLAGS -Wall"
  48. if test "$SOLARIS" = yes; then
  49. CFLAGS="$CFLAGS -Wno-unknown-pragmas -Wno-implicit-int"
  50. fi
  51. fi
  52. if test "$GXX" = yes; then
  53. CXXFLAGS="$CXXFLAGS -Wall"
  54. if test "$SOLARIS" = yes; then
  55. CXXFLAGS="$CXXFLAGS -Wno-unknown-pragmas -fpermissive"
  56. fi
  57. if test "$SJLJ_EXCEPTIONS" = yes; then
  58. CXXFLAGS="$CXXFLAGS -fsjlj-exceptions"
  59. fi
  60. fi
  61. AC_PATH_XTRA
  62. dnl Check gnutls availability
  63. AC_ARG_ENABLE([gnutls],
  64. AS_HELP_STRING([--enable-gnutls],
  65. [build in GNUTLS based encryption support (default yes)]),
  66. [enable_gnutls="$enableval"], [enable_gnutls=yes])
  67. GNUTLS_LIBS=
  68. if test "x$enable_gnutls" = xyes; then
  69. AC_CHECK_LIB([gnutls], [gnutls_global_init],
  70. [GNUTLS_LIBS='-lgnutls'
  71. AC_DEFINE([HAVE_GNUTLS], 1, [Is gnutls present? ])])
  72. fi
  73. AC_SUBST([GNUTLS_LIBS])
  74. AM_CONDITIONAL([HAVE_GNUTLS], [ ! test "x$GNUTLS_LIBS" = x ])
  75. VNCCONFIG_DIR='vncconfig'
  76. AC_ARG_ENABLE([vncconfig],
  77. AS_HELP_STRING([--enable-vncconfig],
  78. [build the vncconfig utility (default yes)]),
  79. [if test "$enableval" = no; then VNCCONFIG_DIR=; fi ], [])
  80. AC_SUBST(VNCCONFIG_DIR)
  81. dnl Check for the XTest X11 extension library.
  82. AC_CHECK_LIB(Xtst,XTestGrabControl,USE_XTEST=yes,USE_XTEST=,
  83. ["$X_LIBS" -lXext -lX11])
  84. if test "$USE_XTEST" = yes; then
  85. XTEST_DEFINE='-DHAVE_XTEST'
  86. XTEST_LIB=-lXtst
  87. else
  88. echo Warning: No XTest extension, building x0vncserver view-only
  89. XTEST_DEFINE=
  90. XTEST_LIB=
  91. fi
  92. AC_SUBST(XTEST_DEFINE)
  93. AC_SUBST(XTEST_LIB)
  94. dnl Support for READDISPLAY (Irix) and SUN_OVL (Solaris) extensions
  95. dnl FIXME: Implement corresponding --with options.
  96. if test "$USE_READDISPLAY" = yes; then
  97. READDISPLAY_DEFINE='-DHAVE_READDISPLAY'
  98. elif test "$USE_SUN_OVL" = yes; then
  99. READDISPLAY_DEFINE='-DHAVE_SUN_OVL'
  100. else
  101. READDISPLAY_DEFINE=
  102. fi
  103. AC_SUBST(READDISPLAY_DEFINE)
  104. dnl Under Lynx/OS 2.3, we have to link with -lbsd to resolve
  105. dnl gethostbyname, inet_addr, htons etc. Check if it's necessary.
  106. dnl NOTE: Did not want to use AC_SEARCH_LIBS which would add
  107. dnl -lbsd to LIBS. We set INET_LIB instead.
  108. AC_LANG_SAVE
  109. AC_LANG_C
  110. AC_CHECK_FUNC(gethostbyname,INET_LIB_REQ=,INET_LIB_REQ=yes)
  111. if test "$INET_LIB_REQ" = yes; then
  112. AC_CHECK_LIB(bsd,gethostbyname,INET_LIB=-lbsd,INET_LIB=)
  113. fi
  114. AC_LANG_RESTORE
  115. AC_SUBST(INET_LIB)
  116. dnl Check for zlib library
  117. INCLUDED_ZLIB=no
  118. AC_ARG_WITH([included-zlib],
  119. AS_HELP_STRING([--with-included-zlib],
  120. [use libz which is distributed with VNC]),
  121. [INCLUDED_ZLIB=yes],
  122. [AC_SEARCH_LIBS([inflateEnd], [z], [], [INCLUDED_ZLIB=yes])])
  123. AM_CONDITIONAL([INCLUDED_ZLIB], [ test "x$INCLUDED_ZLIB" = xyes ])
  124. AC_CONFIG_SUBDIRS([zlib])
  125. dnl Check for libjpeg library
  126. INCLUDED_JPEG=yes
  127. AC_ARG_WITH([system-jpeg],
  128. AS_HELP_STRING([--with-system-jpeg],
  129. [use libjpeg which is distributed with the O/S]),
  130. [AC_SEARCH_LIBS([jpeg_destroy_compress], [jpeg],
  131. [INCLUDED_JPEG=no], [])],
  132. [])
  133. AM_CONDITIONAL([INCLUDED_JPEG], [ test "x$INCLUDED_JPEG" = xyes ])
  134. AC_CONFIG_SUBDIRS([jpeg])
  135. AC_CHECK_FUNCS([vsnprintf snprintf strcasecmp strncasecmp])
  136. # Network functions
  137. AC_SEARCH_LIBS([inet_aton], [resolv])
  138. AC_CHECK_FUNCS([inet_aton])
  139. # IPv6 related functions
  140. AC_CHECK_FUNCS([inet_ntop getaddrinfo])
  141. AC_CHECK_TYPES([socklen_t], [], [], [[#include <sys/socket.h>]])
  142. AC_CHECK_HEADERS([sys/select.h])
  143. # Needed for WinVNC, but not part of mingw yet
  144. AC_CHECK_DECLS([CLSID_ActiveDesktop], [BUILD_WINVNC=yes], [],
  145. [[#include <windows.h>
  146. #include <shlguid.h>
  147. ]])
  148. AM_CONDITIONAL([BUILD_WINVNC], [ test "x$BUILD_WINVNC" = xyes ])
  149. # Packaging stuff
  150. AM_CONDITIONAL([X86_64], [test "x$host_cpu" = "xx86_64"])
  151. AC_SUBST(BUILD)
  152. AC_OUTPUT([
  153. Makefile
  154. common/Makefile
  155. common/os/Makefile
  156. common/rdr/Makefile
  157. common/network/Makefile
  158. common/Xregion/Makefile
  159. common/rfb/Makefile
  160. unix/Makefile
  161. unix/tx/Makefile
  162. unix/x0vncserver/Makefile
  163. unix/vncviewer/Makefile
  164. unix/vncconfig/Makefile
  165. unix/vncpasswd/Makefile
  166. win/Makefile
  167. win/vncviewer/Makefile
  168. win/rfb_win32/Makefile
  169. win/vncconfig/Makefile
  170. win/winvnc/Makefile
  171. po/Makefile.in
  172. ])