blob: f3dcf9b012b99cb8ee4644325580a4020a4acddf [file] [log] [blame]
Constantin Kaplinsky0bb538b2006-05-30 06:05:33 +00001dnl Process this file with autoconf to produce a configure script.
2AC_INIT(rdr/InStream.h)
3
4dnl dirty hack to prevent use of -g in CFLAGS and CXXFLAGS
5ac_cv_prog_cc_g=no
6ac_cv_prog_cxx_g=no
7
8dnl Checks for programs.
9AC_PROG_CC
10AC_PROG_CXX
11AC_PROG_RANLIB
12AC_PROG_MAKE_SET
13AC_LANG_CPLUSPLUS
14
15case "`(uname -sr) 2>/dev/null`" in
16"SunOS 5"*)
17 SOLARIS=yes
18 ;;
19"Linux"*)
20 LINUX=yes
21 ;;
22"IRIX 6"*)
23 X_LIBS="-L/usr/lib32"
24 ;;
25"LynxOS 2"*)
26 SJLJ_EXCEPTIONS=yes
27 ;;
28esac
29
30dnl FIXME: Remove duplication between this script and ../unix/configure.in
31if test "$GCC" = yes; then
32 CFLAGS="$CFLAGS -Wall"
33 if test "$SOLARIS" = yes; then
34 CFLAGS="$CFLAGS -Wno-unknown-pragmas -Wno-implicit-int"
35 fi
36fi
37if test "$GXX" = yes; then
38 CXXFLAGS="$CXXFLAGS -Wall"
39 if test "$SOLARIS" = yes; then
40 CXXFLAGS="$CXXFLAGS -Wno-unknown-pragmas -fpermissive"
41 fi
42 if test "$SJLJ_EXCEPTIONS" = yes; then
43 CXXFLAGS="$CXXFLAGS -fsjlj-exceptions"
44 fi
45fi
46
Constantin Kaplinsky39e31a12007-12-13 19:16:33 +000047dnl Checks for IRIX-specific Compression Library.
48AC_CHECK_LIB(cl, clQuerySchemeFromName,
49 [AC_DEFINE(HAVE_CL)
50 PLATFORM_CXXSRCS="$PLATFORM_CXXSRCS IrixCLJpegCompressor.cxx"
51 LIBS="$LIBS -lcl"])
52
Constantin Kaplinsky71a32f02007-07-24 12:10:16 +000053dnl Checks for IRIX-specific Digital Media libraries.
54AC_CHECK_LIB(dmedia, dmICCreate,
55 [AC_DEFINE(HAVE_DMEDIA)
56 PLATFORM_CXXSRCS="$PLATFORM_CXXSRCS IrixDMJpegCompressor.cxx"
57 PLATFORM_CXXSRCS="$PLATFORM_CXXSRCS IrixDMIC_RawToJpeg.cxx"
58 LIBS="$LIBS -ldmedia"])
Constantin Kaplinsky39e31a12007-12-13 19:16:33 +000059
Constantin Kaplinsky71a32f02007-07-24 12:10:16 +000060AC_SUBST(PLATFORM_CXXSRCS)
61
Constantin Kaplinsky0bb538b2006-05-30 06:05:33 +000062AC_ARG_WITH(installed-zlib,
63[ --with-installed-zlib use the version of zlib which is installed on the
64 system instead of the one distributed with VNC])
65
66if test "$with_installed_zlib" = yes; then
67 echo "using installed zlib"
68 ZLIB_LIB=-lz
69else
70 ZLIB_DIR=zlib
71 ZLIB_INCLUDE='-I$(top_srcdir)/zlib'
72 ZLIB_LIB='$(top_srcdir)/zlib/libz.a'
73 echo "configuring zlib..."
74 (cd zlib; ./configure)
75 echo "...done configuring zlib"
76fi
77
78AC_SUBST(ZLIB_DIR)
79AC_SUBST(ZLIB_INCLUDE)
80AC_SUBST(ZLIB_LIB)
81
82AC_ARG_WITH(installed-jpeg,
83[ --with-installed-jpeg use the version of jpeg which is installed on the
84 system instead of the one distributed with VNC])
85
86if test "$with_installed_jpeg" = yes; then
87 echo "using installed jpeg"
88 JPEG_LIB=-ljpeg
89else
90 JPEG_DIR=jpeg/build
91 JPEG_INCLUDE='-I$(top_srcdir)/jpeg'
92 JPEG_LIB='$(top_srcdir)/jpeg/build/libjpeg.a'
93 echo "configuring jpeg..."
94 (mkdir jpeg/build; cd jpeg/build; ../configure)
95 echo "...done configuring jpeg"
96fi
97
98AC_SUBST(JPEG_DIR)
99AC_SUBST(JPEG_INCLUDE)
100AC_SUBST(JPEG_LIB)
101
102AC_CHECK_FUNC(vsnprintf,VSNPRINTF_DEFINE='-DHAVE_VSNPRINTF',VSNPRINTF_DEFINE=)
103AC_SUBST(VSNPRINTF_DEFINE)
104
105AC_CHECK_FUNC(strcasecmp,STRCASECMP_DEFINE='-DHAVE_STRCASECMP',
106 STRCASECMP_DEFINE=)
107AC_SUBST(STRCASECMP_DEFINE)
108
109AC_CHECK_FUNC(strncasecmp,STRNCASECMP_DEFINE='-DHAVE_STRNCASECMP',
110 STRNCASECMP_DEFINE=)
111AC_SUBST(STRNCASECMP_DEFINE)
112
Constantin Kaplinsky0bb538b2006-05-30 06:05:33 +0000113AC_MSG_CHECKING(for socklen_t)
114AC_TRY_COMPILE(
115[#include <sys/types.h>
116 #include <sys/socket.h>],
117[socklen_t x;
118accept(0, 0, &x);],
119AC_MSG_RESULT(yes)
120SOCKLEN_T_DEFINE='-DVNC_SOCKLEN_T=socklen_t',
121AC_MSG_RESULT(using int)
122SOCKLEN_T_DEFINE='-DVNC_SOCKLEN_T=int')
123AC_SUBST(SOCKLEN_T_DEFINE)
124
125BOILERPLATE=boilerplate.mk
126
127if (sh -c "make --version" 2>/dev/null | grep GNU 2>&1 >/dev/null); then
128 if sh -c "vncmkdepend" >/dev/null 2>&1; then
129 BOILERPLATE="$BOILERPLATE:depend.mk"
130 fi
131fi
132
133AC_OUTPUT(Makefile:Makefile.in:$BOILERPLATE \
134 rdr/Makefile:rdr/Makefile.in:$BOILERPLATE \
135 network/Makefile:network/Makefile.in:$BOILERPLATE \
136 Xregion/Makefile:Xregion/Makefile.in:$BOILERPLATE \
137 rfb/Makefile:rfb/Makefile.in:$BOILERPLATE \
138)