blob: 631d3cba71af5c413e2ef2cb7cbc7834c377d930 [file] [log] [blame]
Adam Tkacfded0782008-03-22 11:20:54 +00001dnl Process this file with autoconf to produce a configure script.
Adam Tkacbf98c212008-04-17 15:25:41 +00002AC_PREREQ([2.61])
3AC_INIT([tightvnc], [1.5.0a1], [http://www.tightvnc.com/bugs.html])
Adam Tkac81e616e2008-04-17 16:17:12 +00004AM_INIT_AUTOMAKE([-Wall foreign dist-bzip2])
5
6AC_SUBST([COMMON_DIR], ['$(top_srcdir)/../common'])
Adam Tkacfded0782008-03-22 11:20:54 +00007
Adam Tkacbf98c212008-04-17 15:25:41 +00008AC_CONFIG_SUBDIRS([../common])
Adam Tkacfded0782008-03-22 11:20:54 +00009
10dnl Checks for programs.
11AC_PROG_CC
12AC_PROG_CXX
Adam Tkac81e616e2008-04-17 16:17:12 +000013AC_PROG_LIBTOOL
Adam Tkacbf98c212008-04-17 15:25:41 +000014AC_LANG([C++])
Adam Tkac0c65d8a2008-04-17 16:37:08 +000015AM_GNU_GETTEXT([external])
16AM_GNU_GETTEXT_VERSION([0.17])
Adam Tkacfded0782008-03-22 11:20:54 +000017
18case "`(uname -sr) 2>/dev/null`" in
19"SunOS 5"*)
20 SOLARIS=yes
21 USE_MITSHM=yes
22 USE_SUN_OVL=yes
23 ;;
24"Linux"*)
25 LINUX=yes
26 USE_MITSHM=yes
27 ;;
28"IRIX 6"*)
29 X_LIBS="-L/usr/lib32"
30 USE_MITSHM=yes
31 USE_READDISPLAY=yes
32 ;;
33"LynxOS 2"*)
34 SJLJ_EXCEPTIONS=yes
35 ;;
36esac
37
38dnl FIXME: Check for MIT-SHM properly, add a corresponding --with option.
39if test "$USE_MITSHM" = yes; then
40 MITSHM_DEFINE="-DHAVE_MITSHM"
41fi
42AC_SUBST(MITSHM_DEFINE)
43
44if test "$GCC" = yes; then
45 CFLAGS="$CFLAGS -Wall"
46 if test "$SOLARIS" = yes; then
47 CFLAGS="$CFLAGS -Wno-unknown-pragmas -Wno-implicit-int"
48 fi
49fi
50if test "$GXX" = yes; then
51 CXXFLAGS="$CXXFLAGS -Wall"
52 if test "$SOLARIS" = yes; then
53 CXXFLAGS="$CXXFLAGS -Wno-unknown-pragmas -fpermissive"
54 fi
55 if test "$SJLJ_EXCEPTIONS" = yes; then
56 CXXFLAGS="$CXXFLAGS -fsjlj-exceptions"
57 fi
58fi
59
60dnl Check for IRIX-specific Compression Library.
61AC_CHECK_LIB(cl, clQuerySchemeFromName,
62 [AC_DEFINE(HAVE_CL)
63 CL_LIB=-lcl])
64AC_SUBST(CL_LIB)
65
66dnl Check for IRIX-specific Digital Media libraries.
67AC_CHECK_LIB(dmedia, dmICCreate,
68 [AC_DEFINE(HAVE_DMEDIA)
69 DMEDIA_LIB=-ldmedia])
70AC_SUBST(DMEDIA_LIB)
71
72AC_PATH_XTRA
73
74AC_ARG_WITH(installed-zlib,
75[ --with-installed-zlib use the version of zlib which is installed on the
76 system instead of the one distributed with VNC])
77
78if test "$with_installed_zlib" = yes; then
79 echo "using installed zlib"
80 ZLIB_LIB=-lz
81else
82 ZLIB_DIR='$(COMMON)/zlib'
83 ZLIB_INCLUDE='-I$(COMMON)/zlib'
84 ZLIB_LIB='$(COMMON)/zlib/libz.a'
85fi
86
87AC_SUBST(ZLIB_DIR)
88AC_SUBST(ZLIB_INCLUDE)
89AC_SUBST(ZLIB_LIB)
90
91AC_ARG_WITH(installed-jpeg,
92[ --with-installed-jpeg use the version of jpeg which is installed on the
93 system instead of the one distributed with VNC])
94
95if test "$with_installed_jpeg" = yes; then
96 echo "using installed jpeg"
97 JPEG_LIB=-ljpeg
98else
99 JPEG_DIR='$(COMMON)/jpeg/build'
100 JPEG_INCLUDE='-I$(COMMON)/jpeg'
101 JPEG_LIB='$(COMMON)/jpeg/build/libjpeg.a'
102fi
103
104AC_SUBST(JPEG_DIR)
105AC_SUBST(JPEG_INCLUDE)
106AC_SUBST(JPEG_LIB)
107
108AC_ARG_ENABLE(vncconfig,
109[ --enable-vncconfig build the vncconfig utility (assumed by default),
110 use --disable-vncconfig to skip building vncconfig])
111if test "$enable_vncconfig" = no; then
112 echo "vncconfig utility will not be built"
113 VNCCONFIG_DIR=
114else
115 VNCCONFIG_DIR='vncconfig'
116fi
117AC_SUBST(VNCCONFIG_DIR)
118
119dnl Check for the XTest X11 extension library.
120AC_CHECK_LIB(Xtst,XTestGrabControl,USE_XTEST=yes,USE_XTEST=,
121["$X_LIBS" -lXext -lX11])
122if test "$USE_XTEST" = yes; then
123 XTEST_DEFINE='-DHAVE_XTEST'
124 XTEST_LIB=-lXtst
125else
126 echo Warning: No XTest extension, building x0vncserver view-only
127 XTEST_DEFINE=
128 XTEST_LIB=
129fi
130AC_SUBST(XTEST_DEFINE)
131AC_SUBST(XTEST_LIB)
132
133dnl Support for READDISPLAY (Irix) and SUN_OVL (Solaris) extensions
134dnl FIXME: Implement corresponding --with options.
135if test "$USE_READDISPLAY" = yes; then
136 READDISPLAY_DEFINE='-DHAVE_READDISPLAY'
137elif test "$USE_SUN_OVL" = yes; then
138 READDISPLAY_DEFINE='-DHAVE_SUN_OVL'
139else
140 READDISPLAY_DEFINE=
141fi
142AC_SUBST(READDISPLAY_DEFINE)
143
144dnl Under Lynx/OS 2.3, we have to link with -lbsd to resolve
145dnl gethostbyname, inet_addr, htons etc. Check if it's necessary.
146dnl NOTE: Did not want to use AC_SEARCH_LIBS which would add
147dnl -lbsd to LIBS. We set INET_LIB instead.
148AC_LANG_SAVE
149AC_LANG_C
150AC_CHECK_FUNC(gethostbyname,INET_LIB_REQ=,INET_LIB_REQ=yes)
151if test "$INET_LIB_REQ" = yes; then
152 AC_CHECK_LIB(bsd,gethostbyname,INET_LIB=-lbsd,INET_LIB=)
153fi
154AC_LANG_RESTORE
155AC_SUBST(INET_LIB)
156
Adam Tkacfded0782008-03-22 11:20:54 +0000157BOILERPLATE=boilerplate.mk
158
159if (sh -c "make --version" 2>/dev/null | grep GNU 2>&1 >/dev/null); then
160 if sh -c "vncmkdepend" >/dev/null 2>&1; then
161 BOILERPLATE="$BOILERPLATE:depend.mk"
162 fi
163fi
164
Adam Tkac81e616e2008-04-17 16:17:12 +0000165AC_OUTPUT(Makefile
166 tx/Makefile
167 x0vncserver/Makefile
168 vncviewer/Makefile
169 vncconfig/Makefile
170 vncpasswd/Makefile
171 intl/Makefile
172 po/Makefile.in
Adam Tkacfded0782008-03-22 11:20:54 +0000173)