| dnl Process this file with autoconf to produce a configure script. |
| AC_INIT(vncviewer_unix/vncviewer.cxx) |
| |
| PACKAGE=tightvnc |
| VERSION=1.5.0 |
| AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE") |
| AC_DEFINE_UNQUOTED(VERSION, "$VERSION") |
| AC_SUBST(PACKAGE) |
| AC_SUBST(VERSION) |
| |
| dnl dirty hack to prevent use of -g in CFLAGS and CXXFLAGS |
| ac_cv_prog_cc_g=no |
| ac_cv_prog_cxx_g=no |
| |
| dnl Checks for programs. |
| AC_PROG_CC |
| AC_PROG_CXX |
| AC_PROG_RANLIB |
| AC_PROG_MAKE_SET |
| AC_LANG_CPLUSPLUS |
| |
| case "`(uname -sr) 2>/dev/null`" in |
| "SunOS 5"*) |
| SOLARIS=yes |
| USE_MITSHM=yes |
| USE_SUN_OVL=yes |
| ;; |
| "Linux"*) |
| LINUX=yes |
| USE_MITSHM=yes |
| ;; |
| "IRIX 6"*) |
| X_LIBS="-L/usr/lib32" |
| USE_MITSHM=yes |
| USE_READDISPLAY=yes |
| ;; |
| "LynxOS 2"*) |
| SJLJ_EXCEPTIONS=yes |
| ;; |
| esac |
| |
| dnl FIXME: Check for MIT-SHM properly, add a corresponding --with option. |
| if test "$USE_MITSHM" = yes; then |
| MITSHM_DEFINE="-DHAVE_MITSHM" |
| fi |
| AC_SUBST(MITSHM_DEFINE) |
| |
| if test "$GCC" = yes; then |
| CFLAGS="$CFLAGS -Wall" |
| if test "$SOLARIS" = yes; then |
| CFLAGS="$CFLAGS -Wno-unknown-pragmas -Wno-implicit-int" |
| fi |
| fi |
| if test "$GXX" = yes; then |
| CXXFLAGS="$CXXFLAGS -Wall" |
| if test "$SOLARIS" = yes; then |
| CXXFLAGS="$CXXFLAGS -Wno-unknown-pragmas -fpermissive" |
| fi |
| if test "$SJLJ_EXCEPTIONS" = yes; then |
| CXXFLAGS="$CXXFLAGS -fsjlj-exceptions" |
| fi |
| fi |
| |
| AC_PATH_XTRA |
| |
| AC_ARG_WITH(installed-zlib, |
| [ --with-installed-zlib use the version of zlib which is installed on the |
| system instead of the one distributed with VNC]) |
| |
| if test "$with_installed_zlib" = yes; then |
| echo "using installed zlib" |
| ZLIB_LIB=-lz |
| else |
| ZLIB_DIR=zlib |
| ZLIB_INCLUDE='-I$(top_srcdir)/zlib' |
| ZLIB_LIB='$(top_srcdir)/zlib/libz.a' |
| echo "configuring zlib..." |
| (cd zlib; ./configure) |
| echo "...done configuring zlib" |
| fi |
| |
| AC_SUBST(ZLIB_DIR) |
| AC_SUBST(ZLIB_INCLUDE) |
| AC_SUBST(ZLIB_LIB) |
| |
| AC_ARG_WITH(installed-jpeg, |
| [ --with-installed-jpeg use the version of jpeg which is installed on the |
| system instead of the one distributed with VNC]) |
| |
| if test "$with_installed_jpeg" = yes; then |
| echo "using installed jpeg" |
| JPEG_LIB=-ljpeg |
| else |
| JPEG_DIR=jpeg/build |
| JPEG_INCLUDE='-I$(top_srcdir)/jpeg' |
| JPEG_LIB='$(top_srcdir)/jpeg/build/libjpeg.a' |
| echo "configuring jpeg..." |
| (mkdir jpeg/build; cd jpeg/build; ../configure) |
| echo "...done configuring jpeg" |
| fi |
| |
| AC_SUBST(JPEG_DIR) |
| AC_SUBST(JPEG_INCLUDE) |
| AC_SUBST(JPEG_LIB) |
| |
| AC_ARG_ENABLE(vncconfig, |
| [ --enable-vncconfig build the vncconfig utility (assumed by default), |
| use --disable-vncconfig to skip building vncconfig]) |
| if test "$enable_vncconfig" = no; then |
| echo "vncconfig utility will not be built" |
| VNCCONFIG_DIR= |
| else |
| VNCCONFIG_DIR='vncconfig_unix' |
| fi |
| AC_SUBST(VNCCONFIG_DIR) |
| |
| dnl Check for the XTest X11 extension library. |
| AC_CHECK_LIB(Xtst,XTestGrabControl,USE_XTEST=yes,USE_XTEST=, |
| ["$X_LIBS" -lXext -lX11]) |
| if test "$USE_XTEST" = yes; then |
| XTEST_DEFINE='-DHAVE_XTEST' |
| XTEST_LIB=-lXtst |
| else |
| echo Warning: No XTest extension, building x0vncserver view-only |
| XTEST_DEFINE= |
| XTEST_LIB= |
| fi |
| AC_SUBST(XTEST_DEFINE) |
| AC_SUBST(XTEST_LIB) |
| |
| dnl Support for READDISPLAY (Irix) and SUN_OVL (Solaris) extensions |
| dnl FIXME: Implement corresponding --with options. |
| if test "$USE_READDISPLAY" = yes; then |
| READDISPLAY_DEFINE='-DHAVE_READDISPLAY' |
| elif test "$USE_SUN_OVL" = yes; then |
| READDISPLAY_DEFINE='-DHAVE_SUN_OVL' |
| else |
| READDISPLAY_DEFINE= |
| fi |
| AC_SUBST(READDISPLAY_DEFINE) |
| |
| AC_CHECK_FUNC(vsnprintf,VSNPRINTF_DEFINE='-DHAVE_VSNPRINTF',VSNPRINTF_DEFINE=) |
| AC_SUBST(VSNPRINTF_DEFINE) |
| |
| AC_CHECK_FUNC(strcasecmp,STRCASECMP_DEFINE='-DHAVE_STRCASECMP', |
| STRCASECMP_DEFINE=) |
| AC_SUBST(STRCASECMP_DEFINE) |
| |
| AC_CHECK_FUNC(strncasecmp,STRNCASECMP_DEFINE='-DHAVE_STRNCASECMP', |
| STRNCASECMP_DEFINE=) |
| AC_SUBST(STRNCASECMP_DEFINE) |
| |
| dnl Under Lynx/OS 2.3, we have to link with -lbsd to resolve |
| dnl gethostbyname, inet_addr, htons etc. Check if it's necessary. |
| dnl NOTE: Did not want to use AC_SEARCH_LIBS which would add |
| dnl -lbsd to LIBS. We set INET_LIB instead. |
| AC_LANG_SAVE |
| AC_LANG_C |
| AC_CHECK_FUNC(gethostbyname,INET_LIB_REQ=,INET_LIB_REQ=yes) |
| if test "$INET_LIB_REQ" = yes; then |
| AC_CHECK_LIB(bsd,gethostbyname,INET_LIB=-lbsd,INET_LIB=) |
| fi |
| AC_LANG_RESTORE |
| AC_SUBST(INET_LIB) |
| |
| AC_MSG_CHECKING(for socklen_t) |
| AC_TRY_COMPILE( |
| [#include <sys/types.h> |
| #include <sys/socket.h>], |
| [socklen_t x; |
| accept(0, 0, &x);], |
| AC_MSG_RESULT(yes) |
| SOCKLEN_T_DEFINE='-DVNC_SOCKLEN_T=socklen_t', |
| AC_MSG_RESULT(using int) |
| SOCKLEN_T_DEFINE='-DVNC_SOCKLEN_T=int') |
| AC_SUBST(SOCKLEN_T_DEFINE) |
| |
| AM_GNU_GETTEXT |
| |
| BOILERPLATE=boilerplate.mk |
| |
| if (sh -c "make --version" 2>/dev/null | grep GNU 2>&1 >/dev/null); then |
| if sh -c "vncmkdepend" >/dev/null 2>&1; then |
| BOILERPLATE="$BOILERPLATE:depend.mk" |
| fi |
| fi |
| |
| AC_OUTPUT(Makefile:Makefile.in:$BOILERPLATE intl/Makefile po/Makefile.in \ |
| rdr/Makefile:rdr/Makefile.in:$BOILERPLATE \ |
| network/Makefile:network/Makefile.in:$BOILERPLATE \ |
| Xregion/Makefile:Xregion/Makefile.in:$BOILERPLATE \ |
| rfb/Makefile:rfb/Makefile.in:$BOILERPLATE \ |
| tx/Makefile:tx/Makefile.in:$BOILERPLATE \ |
| x0vncserver/Makefile:x0vncserver/Makefile.in:$BOILERPLATE \ |
| vncviewer_unix/Makefile:vncviewer_unix/Makefile.in:$BOILERPLATE \ |
| vncconfig_unix/Makefile:vncconfig_unix/Makefile.in:$BOILERPLATE \ |
| vncpasswd/Makefile:vncpasswd/Makefile.in:$BOILERPLATE \ |
| ) |