dbghelp: Properly declare variables with thread storage from codeview debug format.
[wine] / configure.ac
1 dnl Process this file with autoconf to produce a configure script.
2 dnl Original author: Michael Patra
3 dnl See ChangeLog file for detailed change history.
4
5 m4_define(WINE_VERSION,regexp(m4_include(VERSION),[version \([-.0-9A-Za-z]+\)],[\1]))
6
7 dnl autoconf versions before 2.62 don't handle source dir symlinks correctly
8 AC_PREREQ(2.62)
9 AC_INIT([Wine],[WINE_VERSION],[wine-devel@winehq.org],[wine],[http://www.winehq.org])
10 AC_CONFIG_SRCDIR(server/atom.c)
11 AC_CONFIG_HEADERS(include/config.h)
12 AC_CONFIG_AUX_DIR(tools)
13
14 dnl autoconf versions before 2.63b don't have AS_VAR_APPEND or AS_VAR_IF
15 m4_ifdef([AS_VAR_APPEND],,[as_fn_append () { eval $[1]=\$$[1]\$[2]; }
16 AC_DEFUN([AS_VAR_APPEND],[as_fn_append $1 $2])])dnl
17 m4_ifdef([AS_VAR_IF],,[AC_DEFUN([AS_VAR_IF],
18 [AS_LITERAL_IF([$1],
19   [AS_IF([test "x$$1" = x""$2], [$3], [$4])],
20   [eval as_val=\$$1
21    AS_IF([test "x$as_val" = x""$2], [$3], [$4])])])])dnl
22 dnl autoconf versions before 2.64 don't have AC_PACKAGE_URL
23 m4_ifdef([AC_PACKAGE_URL],,
24   [AC_DEFINE([PACKAGE_URL], ["http://www.winehq.org"], [Define to the home page for this package.])
25    AC_SUBST([PACKAGE_URL], ["http://www.winehq.org"])])dnl
26
27 dnl **** Command-line arguments ****
28
29 AC_ARG_ENABLE(win16, AS_HELP_STRING([--disable-win16],[do not include Win16 support]))
30 AC_ARG_ENABLE(win64, AS_HELP_STRING([--enable-win64],[build a Win64 emulator on AMD64 (won't run Win32 binaries)]))
31 AC_ARG_ENABLE(tests, AS_HELP_STRING([--disable-tests],[do not build the regression tests]))
32 AC_ARG_ENABLE(maintainer-mode, AS_HELP_STRING([--enable-maintainer-mode],[enable maintainer-specific build rules]))
33
34 AC_ARG_WITH(alsa,      AS_HELP_STRING([--without-alsa],[do not use the Alsa sound support]),
35             [if test "x$withval" = "xno"; then ac_cv_header_sys_asoundlib_h=no; ac_cv_header_alsa_asoundlib_h=no; fi])
36 AC_ARG_WITH(capi,      AS_HELP_STRING([--without-capi],[do not use CAPI (ISDN support)]),
37             [if test "x$withval" = "xno"; then ac_cv_header_capi20_h=no; ac_cv_header_linux_capi_h=no; fi])
38 AC_ARG_WITH(cms,       AS_HELP_STRING([--without-cms],[do not use CMS (color management support)]),
39             [if test "x$withval" = "xno"; then ac_cv_header_lcms_h=no; ac_cv_header_lcms_lcms_h=no; fi])
40 AC_ARG_WITH(coreaudio, AS_HELP_STRING([--without-coreaudio],[do not use the CoreAudio sound support]),
41             [if test "x$withval" = "xno"; then ac_cv_header_CoreAudio_CoreAudio_h=no; fi])
42 AC_ARG_WITH(cups,      AS_HELP_STRING([--without-cups],[do not use CUPS]))
43 AC_ARG_WITH(curses,    AS_HELP_STRING([--without-curses],[do not use (n)curses]),
44             [if test "x$withval" = "xno"; then ac_cv_header_ncurses_h=no; ac_cv_header_curses_h=no; fi])
45 AC_ARG_WITH(esd,       AS_HELP_STRING([--without-esd],[do not use the EsounD sound support]))
46 AC_ARG_WITH(fontconfig,AS_HELP_STRING([--without-fontconfig],[do not use fontconfig]),
47             [if test "x$withval" = "xno"; then ac_cv_header_fontconfig_fontconfig_h=no; fi])
48 AC_ARG_WITH(freetype,  AS_HELP_STRING([--without-freetype],[do not use the FreeType library]))
49 AC_ARG_WITH(gettextpo, AS_HELP_STRING([--without-gettextpo],[do not use the GetTextPO library]),
50             [if test "x$withval" = "xno"; then ac_cv_header_gettext_po_h=no; fi])
51 AC_ARG_WITH(gphoto,    AS_HELP_STRING([--without-gphoto],[do not use gphoto (Digital Camera support)]))
52 AC_ARG_WITH(glu,       AS_HELP_STRING([--without-glu],[do not use the GLU library]),
53             [if test "x$withval" = "xno"; then ac_cv_header_GL_glu_h=no; fi])
54 AC_ARG_WITH(gnutls,    AS_HELP_STRING([--without-gnutls],[do not use GnuTLS (schannel support)]))
55 AC_ARG_WITH(gsm,       AS_HELP_STRING([--without-gsm],[do not use libgsm (GSM 06.10 codec support)]),
56             [if test "x$withval" = "xno"; then ac_cv_header_gsm_h=no; ac_cv_header_gsm_gsm_h=no; fi])
57 AC_ARG_WITH(gstreamer, AS_HELP_STRING([--without-gstreamer],[do not use GStreamer (codecs support)]))
58 AC_ARG_WITH(hal,       AS_HELP_STRING([--without-hal],[do not use HAL (dynamic device support)]))
59 AC_ARG_WITH(jack,      AS_HELP_STRING([--without-jack],[do not use the Jack sound support]),
60             [if test "x$withval" = "xno"; then ac_cv_header_jack_jack_h=no; fi])
61 AC_ARG_WITH(jpeg,      AS_HELP_STRING([--without-jpeg],[do not use JPEG]),
62             [if test "x$withval" = "xno"; then ac_cv_header_jpeglib_h=no; fi])
63 AC_ARG_WITH(ldap,      AS_HELP_STRING([--without-ldap],[do not use LDAP]),
64             [if test "x$withval" = "xno"; then ac_cv_header_ldap_h=no; ac_cv_header_lber_h=no; fi])
65 AC_ARG_WITH(mpg123,    AS_HELP_STRING([--without-mpg123],[do not use the mpg123 library]),
66             [if test "x$withval" = "xno"; then ac_cv_header_mpg123_h=no; fi])
67 AC_ARG_WITH(nas,       AS_HELP_STRING([--without-nas],[do not use the NAS sound support]),
68             [if test "x$withval" = "xno"; then ac_cv_header_audio_audiolib_h=no; fi])
69 AC_ARG_WITH(openal,    AS_HELP_STRING([--without-openal],[do not use OpenAL]),
70             [if test "x$withval" = "xno"; then ac_cv_header_AL_al_h=no; ac_cv_header_OpenAL_al_h=no; fi])
71 AC_ARG_WITH(opencl,    AS_HELP_STRING([--without-opencl],[do not use OpenCL]),
72             [if test "x$withval" = "xno"; then ac_cv_header_CL_cl_h=no; ac_cv_header_OpenCL_opencl_h=no; fi])
73 AC_ARG_WITH(opengl,    AS_HELP_STRING([--without-opengl],[do not use OpenGL]))
74 AC_ARG_WITH(openssl,   AS_HELP_STRING([--without-openssl],[do not use OpenSSL]),
75             [if test "x$withval" = "xno"; then ac_cv_header_openssl_err_h=no; ac_cv_header_openssl_ssl_h=no; fi])
76 AC_ARG_WITH(oss,       AS_HELP_STRING([--without-oss],[do not use the OSS sound support]),
77             [if test "x$withval" = "xno"; then ac_cv_header_soundcard_h=no; ac_cv_header_sys_soundcard_h=no; ac_cv_header_machine_soundcard_h=no; fi])
78 AC_ARG_WITH(png,       AS_HELP_STRING([--without-png],[do not use PNG]),
79             [if test "x$withval" = "xno"; then ac_cv_header_png_h=no; fi])
80 AC_ARG_WITH(pthread,   AS_HELP_STRING([--without-pthread],[do not use the pthread library]),
81             [if test "x$withval" = "xno"; then ac_cv_header_pthread_h=no; fi])
82 AC_ARG_WITH(sane,      AS_HELP_STRING([--without-sane],[do not use SANE (scanner support)]))
83 AC_ARG_WITH(tiff,       AS_HELP_STRING([--without-tiff],[do not use TIFF]),
84             [if test "x$withval" = "xno"; then ac_cv_header_tiffio_h=no; fi])
85 AC_ARG_WITH(v4l,       AS_HELP_STRING([--without-v4l],[do not use v4l1 (v4l support)]))
86 AC_ARG_WITH(xcomposite,AS_HELP_STRING([--without-xcomposite],[do not use the Xcomposite extension]),
87             [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_Xcomposite_h=no; fi])
88 AC_ARG_WITH(xcursor,   AS_HELP_STRING([--without-xcursor],[do not use the Xcursor extension]),
89             [if test "x$withval" = "xno"; then ac_cv_header_X11_Xcursor_Xcursor_h=no; fi])
90 AC_ARG_WITH(xinerama,  AS_HELP_STRING([--without-xinerama],[do not use Xinerama (multi-monitor support)]),
91             [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_Xinerama_h=no; fi])
92 AC_ARG_WITH(xinput,    AS_HELP_STRING([--without-xinput],[do not use the Xinput extension]),
93             [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_XInput_h=no; fi])
94 AC_ARG_WITH(xml,       AS_HELP_STRING([--without-xml],[do not use XML]))
95 AC_ARG_WITH(xrandr,    AS_HELP_STRING([--without-xrandr],[do not use Xrandr (resolution changes)]),
96             [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_Xrandr_h=no; fi])
97 AC_ARG_WITH(xrender,   AS_HELP_STRING([--without-xrender],[do not use the Xrender extension]),
98             [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_Xrender_h=no; fi])
99 AC_ARG_WITH(xshape,    AS_HELP_STRING([--without-xshape],[do not use the Xshape extension]),
100             [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_shape_h=no; fi])
101 AC_ARG_WITH(xshm,      AS_HELP_STRING([--without-xshm],[do not use XShm (shared memory extension)]),
102             [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_XShm_h=no; fi])
103 AC_ARG_WITH(xslt,      AS_HELP_STRING([--without-xslt],[do not use XSLT]))
104 AC_ARG_WITH(xxf86vm,   AS_HELP_STRING([--without-xxf86vm],[do not use XFree video mode extension]),
105             [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_xf86vmode_h=no; ac_cv_header_X11_extensions_xf86vmproto_h=no; fi])
106
107 AC_ARG_WITH(wine-tools,AS_HELP_STRING([--with-wine-tools=DIR],[use Wine tools from directory DIR]))
108 AC_ARG_WITH(wine64,    AS_HELP_STRING([--with-wine64=DIR],[use the 64-bit Wine in DIR for a Wow64 build]))
109
110 AC_CANONICAL_HOST
111
112 dnl check for out of tree build with unclean source tree
113 case "$srcdir" in
114  .) ;;
115  *) if test -f "$srcdir/Makefile" -o -f "$srcdir/include/config.h"; then
116       AC_MSG_ERROR([you are building out of the source tree, but the source tree contains object files.
117 You need to run 'make distclean' in the source tree first.])
118     fi ;;
119 esac
120
121 dnl **** Check for some programs ****
122
123 AC_PROG_MAKE_SET
124 AC_PROG_CC
125 AC_PROG_CXX
126 dnl We can't use AC_PROG_CPP for winegcc, it uses by default $(CC) -E
127 AC_CHECK_TOOL(CPPBIN,cpp,cpp)
128 AC_DEFINE_UNQUOTED(EXEEXT,["$ac_exeext"],[Define to the file extension for executables.])
129
130 case $host in
131   *-darwin*)
132     if test "x$enable_win64" = "xyes"
133     then
134       CC="$CC -m64"
135       CXX="$CXX -m64"
136       LD="${LD:-ld} -arch x86_64"
137       AS="${AS:-as} -arch x86_64"
138       host_cpu="x86_64"
139       notice_platform="64-bit "
140       AC_SUBST(TARGETFLAGS,"-m64")
141     else
142       CC="$CC -m32"
143       CXX="$CXX -m32"
144       LD="${LD:-ld} -arch i386"
145       AS="${AS:-as} -arch i386"
146       host_cpu="i386"
147       notice_platform="32-bit "
148       AC_SUBST(TARGETFLAGS,"-m32")
149       enable_win16=${enable_win16:-yes}
150     fi
151     ;;
152   x86_64*)
153     if test "x$enable_win64" != "xyes" -a "$cross_compiling" != "yes"
154     then
155       CC="$CC -m32"
156       CXX="$CXX -m32"
157       AC_MSG_CHECKING([whether $CC works])
158       AC_LINK_IFELSE(AC_LANG_PROGRAM(),AC_MSG_RESULT([yes]),
159                      [AC_MSG_RESULT([no])
160                       AC_MSG_ERROR([Cannot build a 32-bit program, you need to install 32-bit development libraries.])])
161       LD="${LD:-ld} -m elf_i386"
162       AS="${AS:-as} --32"
163       host_cpu="i386"
164       notice_platform="32-bit "
165       AC_SUBST(TARGETFLAGS,"-m32")
166       enable_win16=${enable_win16:-yes}
167     else
168       if test "x${GCC}" = "xyes"
169       then
170         AC_MSG_CHECKING([whether $CC supports __builtin_ms_va_list])
171         AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdarg.h>]], [[void func(__builtin_ms_va_list *args);]])],
172                           [AC_MSG_RESULT([yes])],
173                           [AC_MSG_RESULT([no])
174                            AC_MSG_ERROR([You need gcc >= 4.4 to build Wine as 64-bit.])])
175       fi
176       AC_SUBST(TARGETFLAGS,"-m64")
177     fi
178     ;;
179   *-mingw32*|*-cygwin*)
180     enable_win16=${enable_win16:-no}
181     CFLAGS="$CFLAGS -D_WIN32"
182     ;;
183   i[[3456789]]86*)
184     enable_win16=${enable_win16:-yes}
185     ;;
186 esac
187
188 dnl enable_win16 defaults to yes on x86, to no on other CPUs
189 enable_win16=${enable_win16:-no}
190
191 dnl Disable winetest too if tests are disabled
192 enable_winetest=${enable_winetest:-$enable_tests}
193
194 dnl Some special cases for the wow64 build
195 if test -n "$with_wine64"
196 then
197     if test "x$enable_win64" = "xyes"
198     then
199         AC_MSG_ERROR([--enable-win64 and --with-wine64 are mutually exclusive.
200 --enable-win64 should be used in the 64-bit build tree, --with-wine64 in the 32-bit Wow64 build tree.])
201     fi
202     AC_SUBST([WOW64_DISABLE],[\#])
203     enable_fonts=${enable_fonts:-no}
204     enable_server=${enable_server:-no}
205     enable_tools=${enable_tools:-no}
206 elif test "x$enable_win64" = "xyes"
207 then
208     test "x$libdir" != "x\${exec_prefix}/lib" || libdir="\${exec_prefix}/lib64"
209 fi
210
211 AC_CACHE_CHECK([for the directory containing the Wine tools], wine_cv_toolsdir,
212   [wine_cv_toolsdir="$with_wine_tools"
213    if test -z "$with_wine_tools"; then
214      if test "$cross_compiling" = "yes"; then
215        AC_MSG_ERROR([you must use the --with-wine-tools option when cross-compiling.])
216      elif test -n "$with_wine64"; then
217        wine_cv_toolsdir="$with_wine64"
218      fi
219    fi
220    if test -z "$wine_cv_toolsdir"; then
221      wine_cv_toolsdir="\$(top_builddir)"
222    elif test -d "$wine_cv_toolsdir/tools/winebuild"; then
223      case "$wine_cv_toolsdir" in
224        /*) ;;
225        *)  wine_cv_toolsdir="\$(top_builddir)/$wine_cv_toolsdir" ;;
226      esac
227    else
228      AC_MSG_ERROR([could not find Wine tools in $wine_cv_toolsdir])
229    fi])
230 AC_SUBST(TOOLSDIR,$wine_cv_toolsdir)
231 if test -n "$host_alias" -a "$host_alias" != "$build_alias"
232 then
233     AC_SUBST(TARGETFLAGS,"-b $host_alias $TARGETFLAGS")
234 fi
235
236 dnl Check for flex
237 AC_CHECK_PROGS(FLEX,flex,none)
238 if test "$FLEX" = "none"
239 then
240   AC_MSG_ERROR([no suitable flex found. Please install the 'flex' package.])
241 fi
242 AC_MSG_CHECKING([whether flex is recent enough])
243 cat >conftest.l <<EOF
244 %top{
245 #include "prediluvian.h"
246 }
247 %%
248 EOF
249 if $FLEX -t conftest.l >/dev/null 2>&AS_MESSAGE_LOG_FD
250 then
251   AC_MSG_RESULT([yes])
252 else
253   AC_MSG_RESULT([no])
254   AC_MSG_ERROR([Your flex version is too old. Please install flex version 2.5.33 or newer.])
255 fi
256
257 dnl Check for bison
258 AC_CHECK_PROGS(BISON,bison,none)
259 if test "$BISON" = "none"
260 then
261   AC_MSG_ERROR([no suitable bison found. Please install the 'bison' package.])
262 fi
263
264 AC_CHECK_TOOLS(AR,[ar gar],ar)
265 AC_SUBST(ARFLAGS,rc)
266 AC_PROG_RANLIB
267 AC_CHECK_TOOL(STRIP,strip,strip)
268 AC_PROG_LN_S
269 AC_PROG_EGREP
270 AC_PATH_PROG(LDCONFIG, ldconfig, true, [/sbin /usr/sbin $PATH])
271 AC_PROG_INSTALL
272 dnl Prepend src dir to install path dir if it's a relative path
273 case "$INSTALL" in
274   [[\\/$]]* | ?:[[\\/]]* ) ;;
275   *)  INSTALL="\\\$(top_srcdir)/$INSTALL" ;;
276 esac
277
278 dnl Check for lint
279 AC_CHECK_PROGS(LINT, lclint lint)
280 if test "$LINT" = "lint"
281 then
282   LINTFLAGS="$LINTFLAGS -errchk=%all,no%longptr64 -errhdr=%user -Ncheck=macro -Nlevel=4"
283   dnl LINTFLAGS='-D_SIZE_T "-Dsize_t=unsigned long" -errchk=longptr64'
284 fi
285 AC_SUBST(LINT)
286 AC_SUBST(LINTFLAGS)
287
288 dnl Check for various programs
289 AC_CHECK_PROGS(FONTFORGE, fontforge, false)
290 AC_CHECK_PROGS(PKG_CONFIG, pkg-config, false)
291 AC_CHECK_PROGS(RSVG, rsvg, false)
292 AC_CHECK_PROGS(CONVERT, convert, false)
293 AC_CHECK_PROGS(ICOTOOL, icotool, false)
294
295 if test "x$enable_maintainer_mode" != "xyes"
296 then
297   AC_SUBST([MAINTAINER_MODE],[\#])
298 else
299   if test "$FONTFORGE" = "false"; then AC_MSG_ERROR([You need fontforge to rebuild fonts in maintainer mode.]); fi
300   if test "$RSVG" = "false"; then AC_MSG_ERROR([You need rsvg to rebuild icons in maintainer mode.]); fi
301
302   dnl Check the imagemagick version
303   if test "$CONVERT" = false
304   then
305     AC_MSG_ERROR([You need imagemagick to rebuild icons in maintainer mode.])
306   else
307     AC_MSG_CHECKING([for recent enough imagemagick])
308     convert_version=`convert --version | head -n1`
309     if test "x$convert_version" != "x"
310     then
311       convert_version_major=`expr "$convert_version" : '.* \([[0-9]]*\)\.[[0-9]]*'`
312       convert_version_minor=`expr "$convert_version" : '.* [[0-9]]*\.\([[0-9]]*\)'`
313       if test "$convert_version_major" -eq 6 -a "$convert_version_minor" -lt 6
314       then
315         CONVERT=false
316       fi
317     fi
318     if test "$CONVERT" = false
319     then
320       AC_MSG_RESULT([no ($convert_version_major.$convert_version_minor)])
321       AC_MSG_ERROR([You need imagemagick version 6.6 or newer to rebuild icons in maintainer mode.])
322     else
323       AC_MSG_RESULT([yes ($convert_version_major.$convert_version_minor)])
324     fi
325   fi
326
327   dnl Check the icotool version
328   if test "$ICOTOOL" = false
329   then
330     AC_MSG_ERROR([You need icotool to rebuild icons in maintainer mode.])
331   else
332     AC_MSG_CHECKING([for recent enough icotool])
333     icotool_version=`icotool --version | head -n1`
334     if test "x$icotool_version" != "x"
335     then
336       icotool_version_major=`expr "$icotool_version" : '.* \([[0-9]]*\)\.[[0-9]]*'`
337       icotool_version_minor=`expr "$icotool_version" : '.* [[0-9]]*\.\([[0-9]]*\)'`
338       if test "$icotool_version_major" -eq 0 -a "$icotool_version_minor" -lt 29
339       then
340         ICOTOOL=false
341         WINE_WARNING([icotool version 0.29.0 or newer is needed to rebuild icons.])
342       fi
343     fi
344     if test "$ICOTOOL" = false
345     then
346       AC_MSG_RESULT([no ($icotool_version_major.$icotool_version_minor)])
347       AC_MSG_ERROR([You need icotool version 0.29.0 or newer to rebuild icons in maintainer mode.])
348     else
349       AC_MSG_RESULT([yes ($icotool_version_major.$icotool_version_minor)])
350     fi
351   fi
352
353 fi
354
355 dnl **** Check for some libraries ****
356
357 dnl Check for -li386 for NetBSD and OpenBSD
358 AC_CHECK_LIB(i386,i386_set_ldt)
359 dnl Check for -lossaudio for NetBSD
360 AC_CHECK_LIB(ossaudio,_oss_ioctl)
361
362 AC_SUBST(XLIB,"")
363 AC_SUBST(OPENGL_LIBS,"")
364
365 dnl **** Check for header files ****
366
367 AC_SYS_LARGEFILE()
368
369 AC_CHECK_HEADERS(\
370         AL/al.h \
371         ApplicationServices/ApplicationServices.h \
372         AudioToolbox/AudioConverter.h \
373         AudioUnit/AudioUnit.h \
374         AudioUnit/AudioComponent.h \
375         CL/cl.h \
376         Carbon/Carbon.h \
377         CoreAudio/CoreAudio.h \
378         DiskArbitration/DiskArbitration.h \
379         IOKit/IOKitLib.h \
380         IOKit/hid/IOHIDLib.h \
381         OpenAL/al.h \
382         OpenCL/opencl.h \
383         QuickTime/ImageCompression.h \
384         alias.h \
385         alsa/asoundlib.h \
386         arpa/inet.h \
387         arpa/nameser.h \
388         asm/types.h \
389         capi20.h \
390         curses.h \
391         direct.h \
392         dirent.h \
393         dlfcn.h \
394         elf.h \
395         float.h \
396         fnmatch.h \
397         fontconfig/fontconfig.h \
398         getopt.h \
399         gettext-po.h \
400         grp.h \
401         gsm.h \
402         gsm/gsm.h \
403         ieeefp.h \
404         inet/mib2.h \
405         io.h \
406         jack/jack.h \
407         jpeglib.h \
408         kstat.h \
409         lber.h \
410         lcms.h \
411         lcms/lcms.h \
412         ldap.h \
413         link.h \
414         linux/cdrom.h \
415         linux/compiler.h \
416         linux/hdreg.h \
417         linux/input.h \
418         linux/ioctl.h \
419         linux/joystick.h \
420         linux/major.h \
421         linux/param.h \
422         linux/serial.h \
423         linux/types.h \
424         linux/ucdrom.h \
425         mach-o/nlist.h \
426         mach-o/loader.h \
427         mach/mach.h \
428         mach/machine.h \
429         machine/cpu.h \
430         machine/limits.h \
431         machine/soundcard.h \
432         machine/sysarch.h \
433         mntent.h \
434         mpg123.h \
435         ncurses.h \
436         netdb.h \
437         netinet/in.h \
438         netinet/in_systm.h \
439         netinet/tcp.h \
440         netinet/tcp_fsm.h \
441         openssl/err.h \
442         openssl/ssl.h \
443         png.h \
444         poll.h \
445         port.h \
446         process.h \
447         pthread.h \
448         pwd.h \
449         regex.h \
450         sched.h \
451         scsi/scsi.h \
452         scsi/scsi_ioctl.h \
453         scsi/sg.h \
454         soundcard.h \
455         stdbool.h \
456         stdint.h \
457         strings.h \
458         stropts.h \
459         sys/asoundlib.h \
460         sys/attr.h \
461         sys/cdio.h \
462         sys/elf32.h \
463         sys/epoll.h \
464         sys/errno.h \
465         sys/event.h \
466         sys/exec_elf.h \
467         sys/filio.h \
468         sys/inotify.h \
469         sys/ioctl.h \
470         sys/ipc.h \
471         sys/limits.h \
472         sys/link.h \
473         sys/mman.h \
474         sys/modem.h \
475         sys/msg.h \
476         sys/mtio.h \
477         sys/param.h \
478         sys/poll.h \
479         sys/prctl.h \
480         sys/protosw.h \
481         sys/ptrace.h \
482         sys/resource.h \
483         sys/scsiio.h \
484         sys/shm.h \
485         sys/signal.h \
486         sys/socket.h \
487         sys/socketvar.h \
488         sys/sockio.h \
489         sys/soundcard.h \
490         sys/statvfs.h \
491         sys/strtio.h \
492         sys/syscall.h \
493         sys/tihdr.h \
494         sys/time.h \
495         sys/timeout.h \
496         sys/times.h \
497         sys/uio.h \
498         sys/un.h \
499         sys/utsname.h \
500         sys/vm86.h \
501         sys/wait.h \
502         syscall.h \
503         termios.h \
504         tiffio.h \
505         unistd.h \
506         utime.h \
507         valgrind/memcheck.h \
508         valgrind/valgrind.h \
509         zlib.h
510 )
511 AC_HEADER_STAT()
512
513 dnl **** Checks for headers that depend on other ones ****
514
515 AC_CHECK_HEADERS([sys/mount.h sys/statfs.h sys/sysctl.h sys/user.h sys/vfs.h],,,
516     [#include <sys/types.h>
517      #ifdef HAVE_SYS_PARAM_H
518      # include <sys/param.h>
519      #endif])
520
521 AC_CHECK_HEADERS(\
522         netinet/ip.h \
523         net/if.h \
524         net/if_arp.h \
525         net/if_dl.h \
526         net/if_types.h \
527         net/route.h \
528         netinet/if_ether.h \
529         netinet/if_inarp.h \
530         netinet/in_pcb.h \
531         netinet/ip_icmp.h \
532         netinet/ip_var.h \
533         netinet/udp.h \
534         netipx/ipx.h \
535 ,,,[#include <sys/types.h>
536      #ifdef HAVE_SYS_SOCKET_H
537      # include <sys/socket.h>
538      #endif
539      #ifdef HAVE_SYS_SOCKETVAR_H
540      # include <sys/socketvar.h>
541      #endif
542      #ifdef HAVE_NET_ROUTE_H
543      # include <net/route.h>
544      #endif
545      #ifdef HAVE_NETINET_IN_H
546      # include <netinet/in.h>
547      #endif
548      #ifdef HAVE_NETINET_IN_SYSTM_H
549      # include <netinet/in_systm.h>
550      #endif
551      #ifdef HAVE_NET_IF_H
552      # include <net/if.h>
553      #endif
554      #ifdef HAVE_NETINET_IP_H
555      # include <netinet/ip.h>
556      #endif])
557
558 AC_CHECK_HEADERS([netinet/tcp_timer.h netinet/udp_var.h netinet/icmp_var.h netinet/tcp_var.h ],,,
559     [#include <sys/types.h>
560      #ifdef HAVE_ALIAS_H
561      # include <alias.h>
562      #endif
563      #ifdef HAVE_SYS_SOCKET_H
564      # include <sys/socket.h>
565      #endif
566      #ifdef HAVE_SYS_SOCKETVAR_H
567      # include <sys/socketvar.h>
568      #endif
569      #ifdef HAVE_SYS_TIMEOUT_H
570      # include <sys/timeout.h>
571      #endif
572      #ifdef HAVE_NETINET_IN_H
573      # include <netinet/in.h>
574      #endif
575      #ifdef HAVE_NETINET_IN_SYSTM_H
576      # include <netinet/in_systm.h>
577      #endif
578      #ifdef HAVE_NETINET_IP_H
579      # include <netinet/ip.h>
580      #endif
581      #ifdef HAVE_NETINET_IP_VAR_H
582      # include <netinet/ip_var.h>
583      #endif
584      #ifdef HAVE_NETINET_IP_ICMP_H
585      # include <netinet/ip_icmp.h>
586      #endif
587      #ifdef HAVE_NETINET_UDP_H
588      # include <netinet/udp.h>
589      #endif
590      #ifdef HAVE_NETINET_TCP_H
591      # include <netinet/tcp.h>
592      #endif
593      #ifdef HAVE_NETINET_TCP_TIMER_H
594      #include <netinet/tcp_timer.h>
595      #endif])
596
597 AC_CHECK_HEADERS([linux/ipx.h linux/irda.h],,,
598     [#include <sys/types.h>
599      #ifdef HAVE_ASM_TYPES_H
600      # include <asm/types.h>
601      #endif
602      #ifdef HAVE_SYS_SOCKET_H
603      # include <sys/socket.h>
604      #endif
605      #ifdef HAVE_LINUX_TYPES_H
606      # include <linux/types.h>
607      #endif])
608
609 AC_CHECK_HEADERS([mach-o/dyld_images.h],,,
610     [#ifdef HAVE_STDBOOL_H
611      # include <stdbool.h>
612      #endif
613      #ifdef HAVE_STDINT_H
614      # include <stdint.h>
615      #endif])
616
617 AC_CHECK_HEADERS([resolv.h],,,
618     [#include <sys/types.h>
619      #ifdef HAVE_SYS_SOCKET_H
620      # include <sys/socket.h>
621      #endif
622      #ifdef HAVE_NETINET_IN_H
623      # include <netinet/in.h>
624      #endif
625      #ifdef HAVE_ARPA_NAMESER_H
626      # include <arpa/nameser.h>
627      #endif])
628
629 AC_CHECK_HEADERS([ifaddrs.h],,,[#include <sys/types.h>])
630
631 AC_CHECK_HEADERS(ucontext.h,,,[#include <signal.h>])
632
633 AC_CHECK_HEADERS([sys/thr.h],,,
634 [#include <sys/types.h>
635 #ifdef HAVE_UCONTEXT_H
636 #include <ucontext.h>
637 #endif])
638
639 AC_CHECK_HEADERS([pthread_np.h],,,
640 [#ifdef HAVE_PTHREAD_H
641 #include <pthread.h>
642 #endif])
643
644 AC_CHECK_HEADERS([linux/videodev.h],,,
645 [#ifdef HAVE_SYS_TIME_H
646 #include <sys/time.h>
647 #endif
648 #include <sys/types.h>
649 #ifdef HAVE_ASM_TYPES_H
650 #include <asm/types.h>
651 #endif])
652
653 dnl Check for broken kernel header that doesn't define __user
654 AC_CHECK_HEADERS([linux/capi.h],,,[#define __user])
655
656 dnl **** Check for working dll ****
657
658 AC_SUBST(DLLEXT,"")
659 AC_SUBST(DLLFLAGS,"-D_REENTRANT")
660 AC_SUBST(LDSHARED,"")
661 AC_SUBST(LDDLLFLAGS,"")
662 AC_SUBST(LIBEXT,"so")
663 AC_SUBST(IMPLIBEXT,"def")
664 AC_SUBST(LDRPATH_INSTALL,"")
665 AC_SUBST(LDRPATH_LOCAL,"")
666 STATIC_IMPLIBEXT="def.a"
667 WINE_PATH_LDD
668
669 case $host_os in
670   cygwin*|mingw32*)
671     AC_CHECK_TOOL(DLLTOOL,dlltool,false)
672     AC_CHECK_TOOL(DLLWRAP,dllwrap,false)
673     if test "$DLLWRAP" = "false"; then
674       LIBEXT="a"
675     else
676       dnl FIXME - check whether dllwrap works correctly...
677       LIBEXT="dll"
678     fi
679     IMPLIBEXT="a"
680     STATIC_IMPLIBEXT="a"
681     dnl Disable modules that can't be used on Windows
682     enable_iphlpapi=${enable_iphlpapi:-no}
683     enable_kernel32=${enable_kernel32:-no}
684     enable_msvcrt=${enable_msvcrt:-no}
685     enable_ntdll=${enable_ntdll:-no}
686     enable_ws2_32=${enable_ws2_32:-no}
687     enable_loader=${enable_loader:-no}
688     enable_server=${enable_server:-no}
689     dnl Disable dependencies that are not useful on Windows
690     with_x=${with_x:-no}
691     with_pthread=${with_pthread:-no}
692     ;;
693   darwin*|macosx*)
694     DLLEXT=".so"
695     LIBEXT="dylib"
696     DLLFLAGS="$DLLFLAGS -fPIC"
697     LDDLLFLAGS="-bundle -multiply_defined suppress"
698     LIBWINE_LDFLAGS="-multiply_defined suppress"
699     LDSHARED="\$(CC) -dynamiclib"
700     STRIP="$STRIP -x"
701     LDRPATH_LOCAL="&& install_name_tool -change @executable_path/\`\$(RELPATH) \$(bindir) \$(libdir)\`/libwine.1.dylib @executable_path/\$(top_builddir)/libs/wine/libwine.1.dylib \$@ || \$(RM) \$@"
702     dnl declare needed frameworks
703     AC_SUBST(SECURITYLIB,"-framework Security -framework CoreFoundation")
704     AC_SUBST(COREFOUNDATIONLIB,"-framework CoreFoundation")
705     AC_SUBST(IOKITLIB,"-framework IOKit -framework CoreFoundation")
706     AC_SUBST(APPLICATIONSERVICESLIB,"-framework ApplicationServices")
707     AC_SUBST(LDEXECFLAGS,["-image_base 0x7bf00000 -Wl,-segaddr,WINE_DOS,0x00000000,-segaddr,WINE_SHAREDHEAP,0x7f000000"])
708     if test "$ac_cv_header_DiskArbitration_DiskArbitration_h" = "yes"
709     then
710         dnl DiskArbitration API is not public on Darwin < 8.0, use it only if header found
711         AC_SUBST(DISKARBITRATIONLIB,"-framework DiskArbitration -framework CoreFoundation")
712     fi
713     if test "$ac_cv_header_CoreAudio_CoreAudio_h" = "yes" -a "$ac_cv_header_AudioUnit_AudioUnit_h" = "yes"
714     then
715         if test "$ac_cv_header_AudioUnit_AudioComponent_h" = "yes"
716         then
717             AC_SUBST(COREAUDIO,"-framework CoreFoundation -framework CoreAudio -framework AudioUnit -framework AudioToolbox -framework CoreMIDI")
718         else
719             dnl CoreServices needed by AudioUnit
720             AC_SUBST(COREAUDIO,"-framework CoreAudio -framework AudioUnit -framework CoreServices -framework AudioToolbox -framework CoreMIDI")
721         fi
722         dnl Check for the AUGraphAddNode function
723         ac_save_LIBS="$LIBS"
724         LIBS="$LIBS $COREAUDIO"
725         AC_CHECK_FUNCS(AUGraphAddNode)
726         LIBS="$ac_save_LIBS"
727     fi
728     if test "$ac_cv_header_OpenAL_al_h" = "yes"
729     then
730         AC_SUBST(FRAMEWORK_OPENAL,"-framework OpenAL")
731         AC_DEFINE_UNQUOTED(HAVE_OPENAL,1,[Define to 1 if OpenAL is available])
732         ac_cv_lib_openal=yes
733     fi
734     if test "$ac_cv_header_OpenCL_opencl_h" = "yes"
735     then
736         AC_SUBST(LIBOPENCL,"-framework OpenCL")
737         ac_cv_lib_OpenCL_clGetPlatformInfo=yes
738     fi
739     if test "$ac_cv_header_IOKit_hid_IOHIDLib_h" = "yes"
740     then
741         ac_save_LIBS="$LIBS"
742         LIBS="$LIBS $IOKITLIB"
743         AC_CHECK_FUNCS(IOHIDManagerCreate)
744         LIBS="$ac_save_LIBS"
745     fi
746     case $host_cpu in
747       *powerpc*)
748         LDDLLFLAGS="$LDDLLFLAGS -read_only_relocs warning"  dnl FIXME
749         ;;
750     esac
751     if test "$ac_cv_header_QuickTime_ImageCompression_h" = "yes"
752     then
753         AC_SUBST(QUICKTIMELIB,"-framework QuickTime -framework ApplicationServices -framework CoreVideo")
754         enable_wineqtdecoder=${enable_wineqtdecoder:-yes}
755     else
756         WINE_NOTICE([QuickTime ${notice_platform}development files not found, video decoding won't be supported.])
757     fi
758     dnl Enable quartz driver on Mac OS X
759     if test "$ac_cv_header_Carbon_Carbon_h" = "yes"
760     then
761         AC_SUBST(CARBONLIB,"-framework Carbon")
762         enable_winequartz_drv=${enable_winequartz_drv:-yes}
763     fi
764     dnl Check for Xcode 3.x broken 16-bit support
765     if test "x$enable_win16" = "xyes"
766     then
767         AC_MSG_CHECKING([whether 16-bit code can be built correctly])
768         AC_RUN_IFELSE(AC_LANG_PROGRAM([[asm(".text\n"
769                                             "bad:\tnop;nop\n"
770                                             "good:\tnop;nop\n\t"
771                                             ".globl _testfunc\n"
772                                             "_testfunc:\tcallw good");
773                                         extern void testfunc();]],
774                                       [[unsigned short *p = (unsigned short *)testfunc;
775                                         return p[[0]] != 0xe866 || p[[1]] != 0xfffa]]),
776                                       AC_MSG_RESULT(yes),
777                                       [AC_MSG_RESULT(no)
778                                        AC_MSG_ERROR([Xcode 3.x cannot build 16-bit code correctly. Use --disable-win16 if you don't need 16-bit support.])],
779                                        AC_MSG_RESULT([[cross-compiling, assuming yes]]))
780     fi
781     ;;
782   *)
783     DLLFLAGS="$DLLFLAGS -fPIC"
784     DLLEXT=".so"
785     AC_CACHE_CHECK([whether we can build a GNU style ELF dll], ac_cv_c_dll_gnuelf,
786         [WINE_TRY_SHLIB_FLAGS([-fPIC -shared -Wl,-Bsymbolic],
787                               ac_cv_c_dll_gnuelf="yes",ac_cv_c_dll_gnuelf="no")])
788     if test "$ac_cv_c_dll_gnuelf" = "yes"
789     then
790       LDSHARED="\$(CC) -shared"
791       LDDLLFLAGS="-shared -Wl,-Bsymbolic"
792       WINE_TRY_CFLAGS([-fPIC -shared -Wl,-soname,confest.so.1],
793                       [LDSHARED="\$(CC) -shared \$(SONAME:%=-Wl,-soname,%)"],
794                       [WINE_TRY_CFLAGS([-fPIC -shared -Wl,-h,confest.so.1],
795                                        [LDSHARED="\$(CC) -shared \$(SONAME:%=-Wl,-h,%)"])])
796
797       WINE_TRY_CFLAGS([-fPIC -shared -Wl,-Bsymbolic,-z,defs], [LDDLLFLAGS="$LDDLLFLAGS,-z,defs"])
798
799       WINE_TRY_CFLAGS([-fPIC -shared -Wl,-Bsymbolic,-init,__wine_spec_init,-fini,__wine_spec_fini],
800                       [LDDLLFLAGS="$LDDLLFLAGS,-init,__wine_spec_init,-fini,__wine_spec_fini"])
801
802       echo '{ global: *; };' >conftest.map
803       WINE_TRY_CFLAGS([-fPIC -shared -Wl,--version-script=conftest.map],
804                       [LDSHARED="$LDSHARED \$(VERSCRIPT:%=-Wl,--version-script=%)"])
805       rm -f conftest.map
806
807       WINE_TRY_CFLAGS([-fPIC -Wl,--export-dynamic],
808                       [AC_SUBST(LDEXECFLAGS,["-Wl,--export-dynamic"])])
809
810       WINE_TRY_CFLAGS([-fPIC -Wl,--rpath,\$ORIGIN/../lib],
811                       [LDRPATH_INSTALL="-Wl,--rpath,\\\$\$ORIGIN/\`\$(RELPATH) \$(bindir) \$(libdir)\`"
812                        LDRPATH_LOCAL="-Wl,--rpath,\\\$\$ORIGIN/\$(top_builddir)/libs/wine"],
813           [WINE_TRY_CFLAGS([-fPIC -Wl,-R,\$ORIGIN/../lib],
814                            [LDRPATH_INSTALL="-Wl,-R,\\\$\$ORIGIN/\`\$(RELPATH) \$(bindir) \$(libdir)\`"
815                             LDRPATH_LOCAL="-Wl,-R,\\\$\$ORIGIN/\$(top_builddir)/libs/wine"])])
816
817       WINE_TRY_CFLAGS([-Wl,--enable-new-dtags],
818                       [LDRPATH_INSTALL="$LDRPATH_INSTALL -Wl,--enable-new-dtags"])
819
820       case $host_cpu in
821         *i[[3456789]]86* | x86_64)
822           WINE_TRY_CFLAGS([-Wl,--section-start,.interp=0x7bf00400],
823                           [case $host_os in
824                            freebsd*)  LDEXECFLAGS="$LDEXECFLAGS -Wl,--section-start,.interp=0x60000400" ;;
825                            *) LDEXECFLAGS="$LDEXECFLAGS -Wl,--section-start,.interp=0x7bf00400" ;;
826                            esac
827                           ])
828           AC_PATH_PROG(PRELINK, prelink, false, [/sbin /usr/sbin $PATH])
829           if test "x$PRELINK" = xfalse
830           then
831               WINE_WARNING([prelink not found, base address of core dlls won't be set correctly.])
832           fi
833           ;;
834       esac
835
836     else
837       AC_CACHE_CHECK(whether we can build a UnixWare (Solaris) dll, ac_cv_c_dll_unixware,
838           [WINE_TRY_SHLIB_FLAGS([-fPIC -Wl,-G,-h,conftest.so.1.0,-B,symbolic],
839                                 ac_cv_c_dll_unixware="yes",ac_cv_c_dll_unixware="no")])
840       if test "$ac_cv_c_dll_unixware" = "yes"
841       then
842         LDSHARED="\$(CC) -Wl,-G \$(SONAME:%=-Wl,-h,%)"
843         LDDLLFLAGS="-Wl,-G,-B,symbolic"
844
845       else
846         AC_CACHE_CHECK(whether we can build an HP-UX dll, ac_cv_c_dll_hpux,
847           [WINE_TRY_SHLIB_FLAGS([-shared], ac_cv_c_dll_hpux="yes", ac_cv_c_dll_hpux="no")])
848         if test "$ac_cv_c_dll_hpux" = "yes"
849         then
850           LIBEXT="sl"
851           DLLEXT=".sl"
852           LDDLLFLAGS="-shared -fPIC"
853           LDSHARED="\$(CC) -shared"
854         fi
855       fi
856     fi
857     ;;
858 esac
859
860 enable_wineqtdecoder=${enable_wineqtdecoder:-no}
861 enable_winequartz_drv=${enable_winequartz_drv:-no}
862
863 if test "$LIBEXT" = "a"; then
864   AC_MSG_ERROR(
865 [could not find a way to build shared libraries.
866 It is currently not possible to build Wine without shared library
867 (.so) support to allow transparent switch between .so and .dll files.
868 If you are using Linux, you will need a newer binutils.]
869 )
870 fi
871
872 dnl Check for cross compiler to build test programs
873 AC_SUBST([CROSSTEST_DISABLE],[\#])
874 if test "$cross_compiling" = "no" -a "x$enable_tests" != xno -a "$LIBEXT" != "dll"
875 then
876     WINE_CHECK_MINGW_PROG(CROSSCC,gcc,false)
877     if test "$CROSSCC" != "false"
878     then
879         ac_save_CC="$CC"
880         CC="$CROSSCC"
881         AC_MSG_CHECKING([whether $CROSSCC works])
882         AC_COMPILE_IFELSE(AC_LANG_PROGRAM([]),
883                           [AC_MSG_RESULT([yes])
884                            set x $CROSSCC
885                            shift
886                            target=""
887                            while test $# -ge 1
888                            do
889                                case "$1" in
890                                  *-gcc) target=`expr "$1" : '\(.*\)-gcc'` ;;
891                                esac
892                                shift
893                            done
894                            if test -n "$target"
895                            then
896                                CROSSTEST_DISABLE=""
897                                AC_SUBST(CROSSTARGET,"$target")
898                            fi],
899                           [AC_MSG_RESULT([no])])
900         CC="$ac_save_CC"
901     fi
902 fi
903
904 dnl **** Check for pthread ****
905
906 if test "$ac_cv_header_pthread_h" = "yes"
907 then
908     AC_CHECK_LIB(pthread,pthread_create,[AC_SUBST(LIBPTHREAD,"-lpthread")])
909 fi
910 WINE_ERROR_WITH(pthread,[test "x$LIBPTHREAD" = "x"],[pthread ${notice_platform}development files not found.
911 Wine cannot support threads without libpthread.])
912
913 dnl **** Check for X11 ****
914
915 AC_PATH_XTRA
916
917 if test "$have_x" = "yes"
918 then
919     XLIB="-lX11"
920     ac_save_CPPFLAGS="$CPPFLAGS"
921     CPPFLAGS="$CPPFLAGS $X_CFLAGS"
922
923     WINE_CHECK_SONAME(X11,XCreateWindow,,,[$X_LIBS $X_EXTRA_LIBS])
924     WINE_CHECK_SONAME(Xext,XextCreateExtension,[XLIB="-lXext $XLIB"],,[$X_LIBS -lX11 $X_EXTRA_LIBS])
925
926     dnl *** All of the following tests require X11/Xlib.h
927     AC_CHECK_HEADERS([X11/Xlib.h \
928                       X11/XKBlib.h \
929                       X11/Xutil.h \
930                       X11/Xcursor/Xcursor.h \
931                       X11/extensions/shape.h \
932                       X11/extensions/XInput.h \
933                       X11/extensions/XShm.h \
934                       X11/extensions/Xcomposite.h \
935                       X11/extensions/Xinerama.h \
936                       X11/extensions/Xrandr.h \
937                       X11/extensions/Xrender.h \
938                       X11/extensions/xf86vmode.h \
939                       X11/extensions/xf86vmproto.h],,,
940 [#ifdef HAVE_X11_XLIB_H
941 # include <X11/Xlib.h>
942 #endif
943 #ifdef HAVE_X11_XUTIL_H
944 # include <X11/Xutil.h>
945 #endif])
946
947         dnl *** Check for X keyboard extension
948         if test "$ac_cv_header_X11_XKBlib_h" = "yes"
949         then
950               AC_CHECK_LIB(X11, XkbQueryExtension,
951               AC_DEFINE(HAVE_XKB, 1, [Define if you have the XKB extension]),,
952               $X_LIBS $XLIB $X_EXTRA_LIBS)
953         fi
954
955         dnl *** Check for X cursor
956         if test "$ac_cv_header_X11_Xcursor_Xcursor_h" = "yes"
957         then
958             WINE_CHECK_SONAME(Xcursor,XcursorImageLoadCursor,,,[$X_LIBS $XLIB $X_EXTRA_LIBS])
959         fi
960         WINE_NOTICE_WITH(xcursor,[test "x$ac_cv_lib_soname_Xcursor" = "x"],
961                          [libxcursor ${notice_platform}development files not found, the Xcursor extension won't be supported.])
962
963         dnl *** Check for X input extension
964         if test "$ac_cv_header_X11_extensions_XInput_h" = "yes"
965         then
966             WINE_CHECK_SONAME(Xi,XOpenDevice,,,[$X_LIBS $XLIB $X_EXTRA_LIBS])
967         fi
968         WINE_NOTICE_WITH(xinput,[test "x$ac_cv_lib_soname_Xi" = "x"],
969                          [libxi ${notice_platform}development files not found, the Xinput extension won't be supported.])
970
971         dnl *** Check for X Shm extension
972         if test "$ac_cv_header_X11_extensions_XShm_h" = "yes"
973         then
974               AC_CHECK_LIB(Xext, XShmQueryExtension,
975               AC_DEFINE(HAVE_LIBXXSHM, 1, [Define if you have the X Shm extension]),,
976               $X_LIBS $XLIB $X_EXTRA_LIBS)
977         fi
978         WINE_NOTICE_WITH(xshm,[test "$ac_cv_lib_Xext_XShmQueryExtension" != "yes"],
979                          [XShm ${notice_platform}development files not found, X Shared Memory won't be supported.])
980
981         dnl *** Check for X shape extension
982         if test "$ac_cv_header_X11_extensions_shape_h" = "yes"
983         then
984               AC_CHECK_LIB(Xext,XShapeQueryExtension,
985               AC_DEFINE(HAVE_LIBXSHAPE, 1, [Define if you have the X Shape extension]),,
986               $X_LIBS $XLIB $X_EXTRA_LIBS)
987         fi
988         WINE_NOTICE_WITH(xshape,[test "$ac_cv_lib_Xext_XShapeQueryExtension" != "yes"],
989                          [XShape ${notice_platform}development files not found, XShape won't be supported.])
990
991         dnl *** Check for XFree86 VMODE extension
992         if test "$ac_cv_header_X11_extensions_xf86vmode_h" = "yes" -o "$ac_cv_header_X11_extensions_xf86vmproto_h" = "yes"
993         then
994             WINE_CHECK_SONAME(Xxf86vm,XF86VidModeQueryExtension,,,[$X_LIBS $XLIB $X_EXTRA_LIBS])
995         fi
996         WINE_NOTICE_WITH(xxf86vm,[test "x$ac_cv_lib_soname_Xxf86vm" = "x"],
997                          [libXxf86vm ${notice_platform}development files not found, XFree86 Vidmode won't be supported.])
998
999         dnl *** Check for Transform functions in Xrender
1000         if test "$ac_cv_header_X11_extensions_Xrender_h" = "yes" -a "x$ac_cv_lib_soname_X11" != "x" -a "x$ac_cv_lib_soname_Xext" != "x"
1001         then
1002             WINE_CHECK_SONAME(Xrender,XRenderQueryExtension,
1003               [AC_CHECK_LIB(Xrender,XRenderSetPictureTransform,
1004                 [AC_DEFINE(HAVE_XRENDERSETPICTURETRANSFORM, 1,
1005                  [Define if Xrender has the XRenderSetPictureTransform function])],,
1006                 [$X_LIBS $XLIB $X_EXTRA_LIBS])],,[$X_LIBS $XLIB $X_EXTRA_LIBS])
1007
1008         fi
1009         WINE_WARNING_WITH(xrender,[test "x$ac_cv_lib_soname_Xrender" = "x"],
1010                          [libxrender ${notice_platform}development files not found, XRender won't be supported.])
1011
1012         dnl *** Check for X RandR extension
1013         if test "$ac_cv_header_X11_extensions_Xrandr_h" = "yes" -a "x$ac_cv_lib_soname_Xrender" != "x"
1014         then
1015                 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>
1016 #include <X11/extensions/Xrandr.h>]], [[static typeof(XRRSetScreenConfigAndRate) * func;]])],
1017                   [WINE_CHECK_SONAME(Xrandr,XRRQueryExtension,,,[$X_LIBS $XLIB $X_EXTRA_LIBS])])
1018         fi
1019         WINE_NOTICE_WITH(xrandr,[test "x$ac_cv_lib_soname_Xrandr" = "x"],
1020                          [libxrandr ${notice_platform}development files not found, XRandr won't be supported.])
1021
1022         dnl *** Check for Xinerama extension
1023         if test "$ac_cv_header_X11_extensions_Xinerama_h" = "yes"
1024         then
1025                 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>
1026 #include <X11/extensions/Xinerama.h>]], [[static typeof(XineramaQueryScreens) * func;]])],
1027                   [WINE_CHECK_SONAME(Xinerama,XineramaQueryScreens,,,[$X_LIBS $XLIB $X_EXTRA_LIBS])])
1028         fi
1029         WINE_NOTICE_WITH(xinerama,[test "x$ac_cv_lib_soname_Xinerama" = "x"],
1030                          [libxinerama ${notice_platform}development files not found, multi-monitor setups won't be supported.])
1031
1032         dnl *** Check for X Composite extension
1033         if test "$ac_cv_header_X11_extensions_Xcomposite_h" = "yes"
1034         then
1035             WINE_CHECK_SONAME(Xcomposite,XCompositeRedirectWindow,,,[$X_LIBS $XLIB $X_EXTRA_LIBS])
1036         fi
1037         WINE_NOTICE_WITH(xcomposite,[test "x$ac_cv_lib_soname_Xcomposite" = "x"],
1038                          [libxcomposite ${notice_platform}development files not found, Xcomposite won't be supported.])
1039
1040         dnl *** Check for XICCallback struct
1041         AC_CHECK_MEMBERS([XICCallback.callback],,,
1042 [#ifdef HAVE_X11_XLIB_H
1043 #include <X11/Xlib.h>
1044 #endif])
1045
1046     dnl *** End of X11/Xlib.h check
1047
1048     dnl Check for the presence of OpenGL
1049     opengl_msg=""
1050     if test "x$with_opengl" != "xno"
1051     then
1052         AC_CHECK_HEADERS(GL/gl.h GL/glx.h GL/glu.h,,,
1053 [#ifdef HAVE_GL_GLX_H
1054 # include <GL/glx.h>
1055 #endif])
1056         if test "$ac_cv_header_GL_gl_h" = "yes" -a "$ac_cv_header_GL_glx_h" = "yes"
1057         then
1058             dnl Check for some problems due to old Mesa versions
1059             AC_CACHE_CHECK([for up-to-date OpenGL version], wine_cv_opengl_header_version_OK,
1060               AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <GL/gl.h>]], [[GLenum test = GL_UNSIGNED_SHORT_5_6_5;]])],
1061                 [wine_cv_opengl_header_version_OK="yes"],
1062                 [wine_cv_opengl_header_version_OK="no"]))
1063
1064             if test "$wine_cv_opengl_header_version_OK" = "yes"
1065             then
1066                 dnl Check for the presence of the library
1067                 WINE_CHECK_SONAME(GL,glXCreateContext,
1068                              [OPENGL_LIBS="-lGL"
1069                              AC_DEFINE(HAVE_OPENGL, 1, [Define if OpenGL is present on the system])],
1070                              [WINE_CHECK_SONAME(GL,glXCreateContext,
1071                                     [OPENGL_LIBS="-Xlinker -dylib_file -Xlinker /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib -lGL"
1072                                     AC_DEFINE(HAVE_OPENGL, 1, [Define if OpenGL is present on the system])],
1073                                     [if test -f /usr/X11R6/lib/libGL.a
1074                                     then
1075                                         opengl_msg="/usr/X11R6/lib/libGL.a is present on your system.
1076 This probably prevents linking to OpenGL. Try deleting the file and restarting configure."
1077                                     else
1078                                         opengl_msg="No OpenGL library found on this system."
1079                                     fi],
1080                                     $X_LIBS $XLIB -lm $X_EXTRA_LIBS -dylib_file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib)],
1081                              $X_LIBS $XLIB -lm $X_EXTRA_LIBS)
1082                  if test "$ac_cv_header_GL_glu_h" = "yes"
1083                  then
1084                     WINE_CHECK_SONAME(GLU,gluLookAt,,,[$OPENGL_LIBS $X_LIBS $X_PRE_LIBS $XLIB -lm $X_EXTRA_LIBS])
1085                  fi
1086                  WINE_NOTICE_WITH(glu,[test "x$ac_cv_lib_soname_GLU" = "x"],
1087                                  [libGLU ${notice_platform}development files not found, GLU won't be supported.])
1088              else
1089                  opengl_msg="Old Mesa headers detected. Consider upgrading your Mesa libraries."
1090              fi
1091          else
1092              opengl_msg="OpenGL development headers not found."
1093          fi
1094          test -n "$opengl_msg" && enable_opengl32=${enable_opengl32:-no}
1095          test "x$ac_cv_lib_soname_GLU" = "x" && enable_glu32=${enable_glu32:-no}
1096     else
1097          enable_opengl32=${enable_opengl32:-no}
1098          enable_glu32=${enable_glu32:-no}
1099     fi
1100     WINE_WARNING_WITH(opengl,[test -n "$opengl_msg"],[$opengl_msg
1101 OpenGL and Direct3D won't be supported.])
1102
1103     dnl **** Check for NAS ****
1104     AC_SUBST(NASLIBS,"")
1105     AC_CHECK_HEADERS(audio/audiolib.h,
1106          [AC_CHECK_HEADERS(audio/soundlib.h,,,[#include <audio/audiolib.h>])
1107           AC_CHECK_LIB(audio,AuCreateFlow,
1108                        [AC_DEFINE(HAVE_NAS,1,[Define if you have NAS including devel headers])
1109                         AC_CHECK_LIB(Xau,XauGetBestAuthByAddr,
1110                           [NASLIBS="-lXau -laudio -lXt $X_LIBS $XLIB $X_EXTRA_LIBS"],
1111                           [NASLIBS="-laudio -lXt $X_LIBS $XLIB $X_EXTRA_LIBS"],
1112                           [$X_LIBS])
1113                        ],,
1114                        [-lXt $X_LIBS $XLIB $X_EXTRA_LIBS])])
1115
1116     CPPFLAGS="$ac_save_CPPFLAGS"
1117 else
1118     XLIB=""
1119     X_CFLAGS=""
1120     X_LIBS=""
1121     enable_winex11_drv=${enable_winex11_drv:-no}
1122     enable_opengl32=${enable_opengl32:-no}
1123     enable_glu32=${enable_glu32:-no}
1124 fi
1125 WINE_ERROR_WITH(x,[test "x$XLIB" = "x"],[X ${notice_platform}development files not found. Wine will be built
1126 without X support, which probably isn't what you want. You will need
1127 to install ${notice_platform}development packages of Xlib/Xfree86 at the very least.])
1128
1129 dnl **** Check for OpenCL ****
1130 if test "$ac_cv_header_CL_cl_h" = "yes"
1131 then
1132     AC_CHECK_LIB(OpenCL,clGetPlatformInfo,[AC_SUBST(LIBOPENCL,["-lOpenCL"])])
1133 fi
1134 WINE_NOTICE_WITH(opencl,[test "x$ac_cv_lib_OpenCL_clGetPlatformInfo" != xyes],
1135                  [OpenCL ${notice_platform}development files not found, OpenCL won't be supported.])
1136 test "x$ac_cv_lib_OpenCL_clGetPlatformInfo" != xyes && enable_opencl=${enable_opencl:-no}
1137
1138 dnl **** Check for libxml2 ****
1139
1140 AC_SUBST(XML2LIBS,"")
1141 AC_SUBST(XML2INCL,"")
1142 AC_SUBST(XSLTINCL,"")
1143 if test "x$with_xml" != "xno"
1144 then
1145     ac_save_CPPFLAGS="$CPPFLAGS"
1146     if test "$PKG_CONFIG" != "false"
1147     then
1148         ac_xml_libs="`$PKG_CONFIG --libs libxml-2.0 2>/dev/null`"
1149         ac_xml_cflags="`$PKG_CONFIG --cflags libxml-2.0 2>/dev/null`"
1150     else
1151         ac_xml_libs="`xml2-config --libs 2>/dev/null`"
1152         ac_xml_cflags="`xml2-config --cflags  2>/dev/null`"
1153     fi
1154     CPPFLAGS="$CPPFLAGS $ac_xml_cflags"
1155     AC_CHECK_HEADERS(libxml/parser.h,
1156             [AC_CHECK_LIB(xml2, xmlParseMemory,
1157                 [AC_DEFINE(HAVE_LIBXML2, 1, [Define if you have the libxml2 library])
1158                  XML2LIBS="$ac_xml_libs"
1159                  XML2INCL="$ac_xml_cflags"],,$ac_xml_libs)
1160              AC_CHECK_LIB(xml2, xmlReadMemory,
1161                 [AC_DEFINE(HAVE_XMLREADMEMORY,1,[Define if libxml2 has the xmlReadMemory function])],,$ac_xml_libs)
1162              AC_CHECK_LIB(xml2, xmlNewDocPI,
1163                 [AC_DEFINE(HAVE_XMLNEWDOCPI,1,[Define if libxml2 has the xmlNewDocPI function])],,$ac_xml_libs)
1164              AC_CHECK_LIB(xml2, xmlSchemaSetParserStructuredErrors,
1165                 [AC_DEFINE(HAVE_XMLSCHEMASSETPARSERSTRUCTUREDERRORS,1,[Define if libxml2 has the xmlSchemaSetParserStructuredErrors function])],,$ac_xml_libs)
1166              AC_CHECK_LIB(xml2, xmlSchemaSetValidStructuredErrors,
1167                 [AC_DEFINE(HAVE_XMLSCHEMASSETVALIDSTRUCTUREDERRORS,1,[Define if libxml2 has the xmlSchemaSetValidStructuredErrors function])],,$ac_xml_libs)
1168              AC_CHECK_LIB(xml2, xmlFirstElementChild,
1169                 [AC_DEFINE(HAVE_XMLFIRSTELEMENTCHILD,1,[Define if libxml2 has the xmlFirstElementChild function])],,$ac_xml_libs)
1170              AC_CHECK_TYPE([xmlDocProperties],
1171                 [AC_DEFINE(HAVE_XMLDOC_PROPERTIES,1,[Define if libxml2 has the xmlDocProperties enum])],,[[#include <libxml/tree.h>]])
1172         ])
1173     CPPFLAGS="$ac_save_CPPFLAGS"
1174 fi
1175 WINE_WARNING_WITH(xml,[test "$ac_cv_lib_xml2_xmlParseMemory" != "yes"],
1176                  [libxml2 ${notice_platform}development files not found, XML won't be supported.])
1177
1178 if test "x$with_xslt" != "xno"
1179 then
1180     if test "$PKG_CONFIG" != "false"
1181     then
1182         ac_xslt_libs="`$PKG_CONFIG --libs libxslt 2>/dev/null`"
1183         ac_xslt_cflags="`$PKG_CONFIG --cflags libxslt 2>/dev/null`"
1184     else
1185         ac_xslt_libs="`xslt-config --libs 2>/dev/null`"
1186         ac_xslt_cflags="`xslt-config --cflags 2>/dev/null`"
1187     fi
1188     ac_save_CPPFLAGS="$CPPFLAGS"
1189     CPPFLAGS="$CPPFLAGS $ac_xslt_cflags"
1190     AC_CHECK_HEADERS([libxslt/pattern.h libxslt/transform.h],,,
1191     [#ifdef HAVE_LIBXSLT_PATTERN_H
1192 # include <libxslt/pattern.h>
1193 #endif])
1194     CPPFLAGS="$ac_save_CPPFLAGS"
1195     if test "$ac_cv_header_libxslt_transform_h" = "yes"
1196     then
1197         WINE_CHECK_SONAME(xslt,xsltCompilePattern,
1198                          [XSLTINCL="$ac_xslt_cflags"],,[$ac_xslt_libs])
1199     fi
1200 fi
1201 WINE_WARNING_WITH(xslt,[test "x$ac_cv_lib_soname_xslt" = "x"],
1202                  [libxslt ${notice_platform}development files not found, xslt won't be supported.])
1203
1204 dnl **** Check for libhal ****
1205 AC_SUBST(HALINCL,"")
1206 if test "x$with_hal" != "xno"
1207 then
1208     ac_save_CPPFLAGS="$CPPFLAGS"
1209     if test "$PKG_CONFIG" != "false"
1210     then
1211         ac_hal_libs="`$PKG_CONFIG --libs hal 2>/dev/null`"
1212         ac_hal_cflags="`$PKG_CONFIG --cflags hal 2>/dev/null`"
1213         CPPFLAGS="$CPPFLAGS $ac_hal_cflags"
1214     fi
1215     AC_CHECK_HEADERS([dbus/dbus.h hal/libhal.h])
1216     if test "$ac_cv_header_dbus_dbus_h" = "yes" -a "$ac_cv_header_hal_libhal_h" = "yes"
1217     then
1218         AC_CHECK_LIB(dbus-1, dbus_connection_close,
1219           [WINE_CHECK_SONAME(hal, libhal_ctx_new,
1220             [HALINCL="$ac_hal_cflags"],,[$ac_hal_libs])],,[$ac_hal_libs])
1221     fi
1222     CPPFLAGS="$ac_save_CPPFLAGS"
1223 fi
1224 WINE_NOTICE_WITH(hal,[test "x$ac_cv_lib_soname_hal" = "x" -a "x$ac_cv_header_DiskArbitration_DiskArbitration_h" != "xyes"],
1225                  [libhal/libdbus ${notice_platform}development files not found, no dynamic device support.])
1226
1227 dnl **** Check for libgnutls ****
1228 if test "x$with_gnutls" != "xno"
1229 then
1230     ac_save_CPPFLAGS="$CPPFLAGS"
1231     if test "$PKG_CONFIG" != "false"
1232     then
1233         ac_gnutls_libs="`$PKG_CONFIG --libs gnutls 2>/dev/null`"
1234         ac_gnutls_cflags="`$PKG_CONFIG --cflags gnutls 2>/dev/null`"
1235         CPPFLAGS="$CPPFLAGS $ac_gnutls_cflags"
1236     fi
1237     AC_CHECK_HEADER(gnutls/gnutls.h,
1238         [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <gnutls/gnutls.h>]], [[typeof(gnutls_mac_get_key_size) *pfunc;]])],
1239             [WINE_CHECK_SONAME(gnutls,gnutls_global_init,
1240                 [AC_SUBST(GNUTLSINCL,"$ac_gnutls_cflags")],,[$ac_gnutls_libs])])])
1241     CPPFLAGS="$ac_save_CPPFLAGS"
1242 fi
1243 WINE_NOTICE_WITH(gnutls,[test "x$ac_cv_lib_soname_gnutls" = "x"],
1244                  [libgnutls ${notice_platform}development files not found, no schannel support.])
1245
1246 dnl **** Check which curses lib to use ***
1247 CURSESLIBS=""
1248 if test "$ac_cv_header_ncurses_h" = "yes"
1249 then
1250     WINE_CHECK_SONAME(ncurses,waddch,[CURSESLIBS="-lncurses"])
1251 elif test "$ac_cv_header_curses_h" = "yes"
1252 then
1253     WINE_CHECK_SONAME(curses,waddch,[CURSESLIBS="-lcurses"])
1254 fi
1255 ac_save_LIBS="$LIBS"
1256 LIBS="$LIBS $CURSESLIBS"
1257 AC_CHECK_FUNCS(mousemask)
1258 LIBS="$ac_save_LIBS"
1259 WINE_NOTICE_WITH(curses,[test "x$ac_cv_lib_soname_curses$ac_cv_lib_soname_ncurses" = "x"],
1260                  [lib(n)curses ${notice_platform}development files not found, curses won't be supported.])
1261
1262 dnl **** Check for SANE ****
1263 if test "x$with_sane" != "xno"
1264 then
1265     ac_save_CPPFLAGS="$CPPFLAGS"
1266     AC_CHECK_PROG(sane_devel,sane-config,sane-config,no)
1267     if test "$sane_devel" != "no"
1268     then
1269         ac_sane_incl="`$sane_devel --cflags`"
1270         ac_sane_libs="`$sane_devel --ldflags`"
1271         CPPFLAGS="$CPPFLAGS $ac_sane_incl"
1272     fi
1273     AC_CHECK_HEADER(sane/sane.h,
1274         [WINE_CHECK_SONAME(sane,sane_init,[AC_SUBST(SANEINCL,"$ac_sane_incl")],,[$ac_sane_libs])])
1275     CPPFLAGS="$ac_save_CPPFLAGS"
1276 fi
1277 WINE_NOTICE_WITH(sane,[test "x$ac_cv_lib_soname_sane" = "x"],
1278                  [libsane ${notice_platform}development files not found, scanners won't be supported.])
1279
1280 dnl **** Check for libv4l1 ****
1281 if test "x$with_v4l" != "xno"
1282 then
1283     WINE_CHECK_SONAME(v4l1,v4l1_open,,,)
1284 fi
1285 WINE_NOTICE_WITH(v4l,[test "x$ac_cv_lib_soname_v4l1" = "x"],
1286                  [libv4l ${notice_platform}development files not found.])
1287
1288 dnl **** Check for libgphoto2 ****
1289 if test "x$with_gphoto" != "xno"
1290 then
1291     ac_save_CPPFLAGS="$CPPFLAGS"
1292     AC_CHECK_PROG(gphoto2_devel,gphoto2-config,gphoto2-config,no)
1293     AC_CHECK_PROG(gphoto2port_devel,gphoto2-port-config,gphoto2-port-config,no)
1294     if test "$gphoto2_devel" != "no" -a "$gphoto2port_devel" != "no"
1295     then
1296         ac_gphoto2_incl="`$gphoto2_devel --cflags` `$gphoto2port_devel --cflags`"
1297         ac_gphoto2_libs=""
1298         for i in `$gphoto2_devel --libs` `$gphoto2port_devel --libs`
1299         do
1300             case "$i" in
1301             -L/usr/lib|-L/usr/lib64) ;;
1302             -L*|-l*) ac_gphoto2_libs="$ac_gphoto2_libs $i";;
1303             esac
1304         done
1305         CPPFLAGS="$CPPFLAGS $ac_gphoto2_incl"
1306     fi
1307     ac_gphoto2_libs=${ac_gphoto2_libs:-"-lgphoto2"}
1308     AC_CHECK_HEADER(gphoto2-camera.h,
1309                     [AC_CHECK_LIB(gphoto2,gp_camera_new,
1310                                   [AC_DEFINE(HAVE_GPHOTO2, 1, [Define if we have libgphoto2 development environment])
1311                                    AC_SUBST(GPHOTO2LIBS,"$ac_gphoto2_libs")
1312                                    AC_SUBST(GPHOTO2INCL,"$ac_gphoto2_incl")],,
1313                                   [$ac_gphoto2_libs])])
1314     CPPFLAGS="$ac_save_CPPFLAGS"
1315 fi
1316 WINE_NOTICE_WITH(gphoto,[test "$ac_cv_lib_gphoto2_gp_camera_new" != "yes"],
1317                  [libgphoto2 ${notice_platform}development files not found, digital cameras won't be supported.])
1318
1319
1320 dnl **** Check for resolver library ***
1321 if test "$ac_cv_header_resolv_h" = "yes"
1322 then
1323     ac_save_LIBS="$LIBS"
1324     for lib in '' -lresolv
1325     do
1326       LIBS="$lib $ac_save_LIBS"
1327       AC_LINK_IFELSE([AC_LANG_PROGRAM([[#ifdef HAVE_NETINET_IN_H
1328 #include <netinet/in.h>
1329 #endif
1330 #include <resolv.h>]],[[res_query("foo",ns_c_in,0,0,0);]])],
1331         [AC_DEFINE(HAVE_RESOLV, 1, [Define if you have the resolver library and header])
1332          AC_SUBST(RESOLVLIBS,"$lib")])
1333       if test "${RESOLVLIBS+set}" = set; then
1334         break
1335       fi
1336     done
1337     LIBS="$ac_save_LIBS"
1338 fi
1339
1340 dnl **** Check for LittleCMS ***
1341 AC_SUBST(LCMSLIBS,"")
1342 if test "$ac_cv_header_lcms_h" = "yes" -o "$ac_cv_header_lcms_lcms_h" = "yes"
1343 then
1344     AC_CHECK_LIB(lcms, cmsOpenProfileFromFile,
1345         [AC_DEFINE(HAVE_LCMS, 1, [Define if you have the LittleCMS development environment])
1346          LCMSLIBS="-llcms"])
1347 fi
1348 WINE_NOTICE_WITH(cms,[test "$ac_cv_lib_lcms_cmsOpenProfileFromFile" != "yes"],
1349                  [liblcms ${notice_platform}development files not found, Color Management won't be supported.])
1350
1351 dnl **** Check for FreeType 2 ****
1352 if test "x$with_freetype" != "xno"
1353 then
1354     AC_CHECK_PROGS(ft_devel,[freetype-config freetype2-config],no)
1355     if test "$ft_devel" != "no"
1356     then
1357         ac_freetype_incl=`$ft_devel --cflags`
1358         ac_freetype_libs=`$ft_devel --libs`
1359     fi
1360     ac_freetype_libs=${ac_freetype_libs:-"-lfreetype"}
1361     WINE_CHECK_SONAME(freetype,FT_Init_FreeType,[ft_lib=yes],[ft_lib=no],[$ac_freetype_libs])
1362     if test "$ft_lib" = "yes"
1363     then
1364         ac_save_CPPFLAGS="$CPPFLAGS"
1365         CPPFLAGS="$ac_freetype_incl $CPPFLAGS"
1366         AC_CHECK_HEADERS(ft2build.h \
1367                          freetype/freetype.h \
1368                          freetype/ftglyph.h \
1369                          freetype/fttypes.h \
1370                          freetype/tttables.h \
1371                          freetype/ftsnames.h \
1372                          freetype/ttnameid.h \
1373                          freetype/ftoutln.h \
1374                          freetype/ftwinfnt.h \
1375                          freetype/ftmodapi.h \
1376                          freetype/ftlcdfil.h \
1377                          freetype/internal/sfnt.h,,,
1378                          [#ifdef HAVE_FT2BUILD_H
1379                           # include <ft2build.h>
1380                           #endif])
1381         AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <ft2build.h>
1382                     #include <freetype/fttrigon.h>]])],[AC_DEFINE(HAVE_FREETYPE_FTTRIGON_H, 1,
1383           [Define if you have the <freetype/fttrigon.h> header file.])
1384                     wine_cv_fttrigon=yes],[wine_cv_fttrigon=no])
1385         AC_CHECK_TYPES(FT_TrueTypeEngineType,,,[#include <freetype/ftmodapi.h>])
1386         ac_save_CFLAGS="$CFLAGS"
1387         CFLAGS="$CFLAGS $ac_freetype_libs"
1388         AC_CHECK_FUNCS(FT_Load_Sfnt_Table)
1389         CFLAGS="$ac_save_CFLAGS"
1390         CPPFLAGS="$ac_save_CPPFLAGS"
1391         dnl Check that we have at least freetype/freetype.h
1392         if test "$ac_cv_header_freetype_freetype_h" = "yes" -a "$wine_cv_fttrigon" = "yes"
1393         then
1394             AC_DEFINE(HAVE_FREETYPE, 1, [Define if FreeType 2 is installed])
1395             AC_SUBST(FREETYPELIBS,"$ac_freetype_libs")
1396             AC_SUBST(FREETYPEINCL,"$ac_freetype_incl")
1397         fi
1398     fi
1399 fi
1400 WINE_ERROR_WITH(freetype,[test "x$FREETYPELIBS" = "x"],[FreeType ${notice_platform}development files not found. Fonts will not be built.])
1401 test "x$FREETYPELIBS" = "x" && enable_fonts=${enable_fonts:-no}
1402
1403 dnl **** Check for parport (currently Linux only) ****
1404 AC_CACHE_CHECK([for parport header/ppdev.h], ac_cv_c_ppdev,
1405  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#ifdef HAVE_SYS_IOCTL_H
1406 # include <sys/ioctl.h>
1407 #endif
1408 #include <linux/ppdev.h>]], [[ioctl (1,PPCLAIM,0)]])],
1409     [ac_cv_c_ppdev="yes"],[ac_cv_c_ppdev="no"]))
1410 if test "$ac_cv_c_ppdev" = "yes"
1411 then
1412     AC_DEFINE(HAVE_PPDEV, 1, [Define if we can use ppdev.h for parallel port access])
1413 fi
1414
1415 dnl **** Check for pthread functions ****
1416 WINE_CHECK_LIB_FUNCS(\
1417         pthread_attr_get_np \
1418         pthread_getattr_np \
1419         pthread_get_stackaddr_np \
1420         pthread_get_stacksize_np,
1421         [$LIBPTHREAD])
1422
1423 dnl **** Check for zlib ****
1424 if test "$ac_cv_header_zlib_h" = "yes"
1425 then
1426     AC_CHECK_LIB(z,inflate,[AC_DEFINE(HAVE_ZLIB,1,[Define to 1 if you have the `z' library (-lz).])
1427                             AC_SUBST(ZLIB,"-lz")])
1428 fi
1429
1430 dnl **** Check for gettextpo ****
1431 if test "x$enable_tools" != xno
1432 then
1433     if test "$ac_cv_header_gettext_po_h" = "yes"
1434     then
1435         AC_CHECK_LIB(gettextpo,po_message_msgctxt,
1436                      [AC_DEFINE(HAVE_LIBGETTEXTPO,1,[Define to 1 if you have the `gettextpo' library (-lgettextpo).])
1437                       AC_SUBST(LIBGETTEXTPO,"-lgettextpo")])
1438     fi
1439     WINE_WARNING_WITH(gettextpo,[test "x$LIBGETTEXTPO" = "x"],[GetText ${notice_platform}development files not found (or too old). Internationalization won't be fully supported.])
1440 fi
1441
1442 dnl **** Check for EsounD ****
1443 if test "x$with_esd" != xno
1444 then
1445     save_CFLAGS="$CFLAGS"
1446     AC_PATH_PROG(ESDCONFIG, esd-config, no)
1447     if test "x$ESDCONFIG" != "xno"
1448     then
1449         ac_esd_incl=""
1450         for i in `$ESDCONFIG --cflags`
1451         do
1452             case "$i" in
1453                 -I*) ac_esd_incl="$ac_esd_incl $i";;
1454             esac
1455         done
1456         ac_esd_libs=`$ESDCONFIG --libs`
1457         CFLAGS="$CFLAGS $ac_esd_incl"
1458     fi
1459     ac_esd_libs=${ac_esd_libs:-"-lesd"}
1460     AC_CHECK_HEADER(esd.h,
1461         [AC_CHECK_LIB(esd,esd_open_sound,
1462             [AC_SUBST(ESDINCL, "$ac_esd_incl")
1463              AC_SUBST(ESDLIBS, "$ac_esd_libs")
1464              AC_DEFINE(HAVE_ESD, 1, [Define if you have EsounD sound server])],,
1465             [$ac_esd_libs])])
1466     CFLAGS="$save_CFLAGS"
1467 fi
1468
1469 dnl **** Check for gstreamer ****
1470 if test "x$with_gstreamer" != "xno"
1471 then
1472     ac_save_CPPFLAGS="$CPPFLAGS"
1473     if test "$PKG_CONFIG" != "false"; then
1474         ac_gst_incl=""
1475         for i in `$PKG_CONFIG --cflags gstreamer-app-0.10 2>/dev/null`
1476         do
1477             case "$i" in
1478                 -I*) ac_gst_incl="$ac_gst_incl $i";;
1479             esac
1480         done
1481         ac_gst_libs="`$PKG_CONFIG --libs gstreamer-app-0.10 2>/dev/null`"
1482         CPPFLAGS="$CPPFLAGS $ac_gst_incl"
1483         AC_CHECK_HEADER([gst/gstpad.h],
1484           [AC_CHECK_HEADER([gst/app/gstappsink.h],
1485              [AC_CHECK_LIB(gstreamer-0.10,gst_pad_get_caps_reffed,
1486                 [AC_CHECK_LIB(gstapp-0.10,gst_app_buffer_new,
1487                     [AC_SUBST(GSTREAMER_LIBS,"$ac_gst_libs")
1488                      AC_SUBST(GSTREAMER_INCL,"$ac_gst_incl")],,[$ac_gst_libs])])])])
1489     fi
1490     CPPFLAGS="$ac_save_CPPFLAGS"
1491 fi
1492 WINE_NOTICE_WITH(gstreamer,[test "x$ac_cv_lib_gstapp_0_10_gst_app_buffer_new" != xyes -a "x$ac_cv_header_QuickTime_ImageCompression_h" != xyes],
1493                  [gstreamer-0.10 base plugins ${notice_platform}development files not found, gstreamer support disabled])
1494 test "x$ac_cv_lib_gstapp_0_10_gst_app_buffer_new" = xyes || enable_winegstreamer=${enable_winegstreamer:-no}
1495
1496 dnl **** Check for ALSA 1.x ****
1497 AC_SUBST(ALSALIBS,"")
1498 if test "$ac_cv_header_sys_asoundlib_h" = "yes" -o "$ac_cv_header_alsa_asoundlib_h" = "yes"
1499 then
1500     AC_CHECK_LIB(asound,snd_pcm_hw_params_get_access_mask,
1501         [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#ifdef HAVE_ALSA_ASOUNDLIB_H
1502 #include <alsa/asoundlib.h>
1503 #elif defined(HAVE_SYS_ASOUNDLIB_H)
1504 #include <sys/asoundlib.h>
1505 #endif]], [[int ret = snd_pcm_hw_params_get_access_mask(NULL, NULL)]])],
1506                         [AC_DEFINE(HAVE_ALSA,1,[Define if you have ALSA 1.x including devel headers])
1507                          ALSALIBS="-lasound"],[])])
1508 fi
1509
1510 dnl **** Check for capi4linux ****
1511
1512 if test "$ac_cv_header_capi20_h" = "yes" -a "$ac_cv_header_linux_capi_h" = "yes"
1513 then
1514     WINE_CHECK_SONAME(capi20,capi20_register)
1515 fi
1516 WINE_NOTICE_WITH(capi,[test "x$ac_cv_lib_soname_capi20" = "x"],
1517                  [libcapi20 ${notice_platform}development files not found, ISDN won't be supported.])
1518
1519 dnl **** Check for cups ****
1520 AC_SUBST(CUPSINCL,"")
1521 if test "x$with_cups" != "xno"
1522 then
1523     ac_save_CPPFLAGS="$CPPFLAGS"
1524     ac_cups_cflags=`cups-config --cflags 2>/dev/null`
1525     ac_cups_libs=`cups-config --ldflags 2>/dev/null`
1526     CPPFLAGS="$CPPFLAGS $ac_cups_cflags"
1527     AC_CHECK_HEADERS(cups/cups.h,
1528             [WINE_CHECK_SONAME(cups,cupsGetDefault,
1529                        [CUPSINCL="$ac_cups_cflags"],,
1530                        [$ac_cups_libs])])
1531     CPPFLAGS="$ac_save_CPPFLAGS"
1532 fi
1533 WINE_NOTICE_WITH(cups,[test "x$ac_cv_lib_soname_cups" = "x"],
1534                  [libcups ${notice_platform}development files not found, CUPS won't be supported.])
1535
1536 dnl **** Check for jack ****
1537 if test "$ac_cv_header_jack_jack_h" = "yes"
1538 then
1539     WINE_CHECK_SONAME(jack,jack_client_new,,,,[[libjack-*[[0-9.]]*]])
1540 fi
1541
1542 dnl **** Check for fontconfig ****
1543 if test "$ac_cv_header_fontconfig_fontconfig_h" = "yes"
1544 then
1545     WINE_CHECK_SONAME(fontconfig,FcInit)
1546 elif test -n "$X_CFLAGS" -a "x$with_fontconfig" != "xno"
1547 then
1548     dnl fontconfig is in the X directory on Mac OS X
1549     ac_save_CPPFLAGS="$CPPFLAGS"
1550     CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1551     $as_unset ac_cv_header_fontconfig_fontconfig_h
1552     AC_CHECK_HEADERS([fontconfig/fontconfig.h])
1553     CPPFLAGS="$ac_save_CPPFLAGS"
1554     if test "$ac_cv_header_fontconfig_fontconfig_h" = "yes"
1555     then
1556         AC_SUBST(FONTCONFIGINCL,"$X_CFLAGS")
1557         WINE_CHECK_SONAME(fontconfig,FcInit,,,[$X_LIBS])
1558     fi
1559 fi
1560 WINE_NOTICE_WITH(fontconfig,[test "x$ac_cv_lib_soname_fontconfig" = "x"],
1561                  [fontconfig ${notice_platform}development files not found, fontconfig won't be supported.])
1562
1563 dnl **** Check for SSL ****
1564 if test "$ac_cv_header_openssl_err_h" = "yes" -a "$ac_cv_header_openssl_ssl_h" = "yes"
1565 then
1566     WINE_CHECK_SONAME(ssl,SSL_library_init)
1567     WINE_CHECK_SONAME(crypto,BIO_new_socket)
1568 fi
1569 WINE_WARNING_WITH(openssl,[test "x$ac_cv_lib_soname_ssl" = "x" -o "x$ac_cv_lib_soname_crypto" = "x"],
1570                  [OpenSSL ${notice_platform}development files not found, SSL won't be supported.])
1571
1572 dnl **** Check for gsm codec ****
1573 if test "$ac_cv_header_gsm_h" = "yes" -o "$ac_cv_header_gsm_gsm_h" = "yes"
1574 then
1575     WINE_CHECK_SONAME(gsm,gsm_create)
1576 fi
1577 WINE_NOTICE_WITH(gsm,[test "x$ac_cv_lib_soname_gsm" = "x"],
1578                  [libgsm ${notice_platform}development files not found, gsm 06.10 codec won't be supported.])
1579
1580 dnl **** Check for libjpeg ****
1581 if test "$ac_cv_header_jpeglib_h" = "yes"
1582 then
1583     WINE_CHECK_SONAME(jpeg,jpeg_start_decompress)
1584 fi
1585 WINE_WARNING_WITH(jpeg,[test "x$ac_cv_lib_soname_jpeg" = "x"],
1586                  [libjpeg ${notice_platform}development files not found, JPEG won't be supported.])
1587
1588 dnl **** Check for libpng ****
1589 if test "$ac_cv_header_png_h" = "yes"
1590 then
1591     WINE_CHECK_SONAME(png,png_create_read_struct,,,-lm -lz,[[libpng[[0-9]]*]])
1592     AC_CHECK_LIB(png,png_set_expand_gray_1_2_4_to_8,
1593         [AC_DEFINE(HAVE_PNG_SET_EXPAND_GRAY_1_2_4_TO_8,1,[Define to 1 if libpng has the png_set_expand_gray_1_2_4_to_8 function.])]
1594         ,,-lm -lz)
1595 elif test -n "$X_CFLAGS" -a "x$with_png" != "xno"
1596 then
1597     dnl libpng is in the X directory on Mac OS X
1598     ac_save_CPPFLAGS="$CPPFLAGS"
1599     CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1600     $as_unset ac_cv_header_png_h
1601     AC_CHECK_HEADERS([png.h])
1602     CPPFLAGS="$ac_save_CPPFLAGS"
1603     if test "$ac_cv_header_png_h" = "yes"
1604     then
1605         AC_SUBST(PNGINCL,"$X_CFLAGS")
1606         WINE_CHECK_SONAME(png,png_create_read_struct,,,[$X_LIBS -lm -lz],[[libpng[[0-9]]*]])
1607         AC_CHECK_LIB(png,png_set_expand_gray_1_2_4_to_8,
1608                 [AC_DEFINE(HAVE_PNG_SET_EXPAND_GRAY_1_2_4_TO_8,1)],,[$X_LIBS -lm -lz])
1609     fi
1610 fi
1611 WINE_WARNING_WITH(png,[test "x$ac_cv_lib_soname_png" = "x"],
1612                  [libpng ${notice_platform}development files not found, PNG won't be supported.])
1613
1614 dnl **** Check for libtiff ****
1615 if test "$ac_cv_header_tiffio_h" = "yes"
1616 then
1617     WINE_CHECK_SONAME(tiff,TIFFClientOpen)
1618 fi
1619 WINE_NOTICE_WITH(tiff,[test "x$ac_cv_lib_soname_tiff" = "x"],
1620                  [libtiff ${notice_platform}development files not found, TIFF won't be supported.])
1621
1622 dnl **** Check for mpg123 ****
1623 if test "$ac_cv_header_mpg123_h" = "yes"
1624 then
1625     AC_CHECK_LIB(mpg123,mpg123_feed,[AC_SUBST(LIBMPG123,"-lmpg123")])
1626 fi
1627 WINE_NOTICE_WITH(mpg123,[test "x$ac_cv_lib_mpg123_mpg123_feed" != xyes -a x"$ac_cv_header_CoreAudio_CoreAudio_h" != xyes],
1628                  [libmpg123 ${notice_platform}development files not found (or too old), mp3 codec won't be supported.])
1629 test "x$ac_cv_lib_mpg123_mpg123_feed" = xyes -o "x$ac_cv_header_AudioToolbox_AudioConverter_h" = xyes || enable_winemp3_acm=${enable_winemp3_acm:-no}
1630
1631 dnl **** Check for OpenAL 1.1 ****
1632 if test "$ac_cv_header_AL_al_h" = "yes"
1633 then
1634     WINE_CHECK_SONAME(openal,alGetSource3i,[AC_SUBST(LIBOPENAL,"-lopenal")
1635                       ac_cv_lib_openal=yes
1636                       AC_DEFINE_UNQUOTED(HAVE_OPENAL,1,[Define to 1 if OpenAL is available])],,)
1637 fi
1638 WINE_NOTICE_WITH(openal,[test "x$ac_cv_lib_openal" != xyes],
1639                  [libopenal ${notice_platform}development files not found (or too old), OpenAL won't be supported.])
1640 test "x$ac_cv_lib_openal" = xyes || enable_openal32=${enable_openal32:-no}
1641
1642 dnl **** Check for libkstat ****
1643 if test "$ac_cv_header_kstat_h" = "yes"
1644 then
1645     AC_CHECK_LIB(kstat,kstat_open,
1646                  [AC_DEFINE(HAVE_LIBKSTAT, 1, [Define to 1 if you have the `kstat' library (-lkstat).])
1647                   AC_SUBST(LIBKSTAT,"-lkstat")])
1648 fi
1649
1650 dnl **** Check for libodbc ****
1651 WINE_CHECK_SONAME(odbc,SQLConnect,,[AC_DEFINE_UNQUOTED(SONAME_LIBODBC,["libodbc.$LIBEXT"])])
1652
1653 dnl **** Check for any sound system ****
1654 if test "x$ALSALIBS$COREAUDIO$NASLIBS$ESDLIBS$ac_cv_lib_soname_jack" = "x" -a \
1655         "$ac_cv_header_sys_soundcard_h" != "yes" -a \
1656         "$ac_cv_header_machine_soundcard_h" != "yes" -a \
1657         "$ac_cv_header_soundcard_h" != "yes" -a \
1658         "x$with_alsa$with_coreaudio$with_nas$with_esd$with_jack$with_oss" != xnononononono
1659 then
1660     WINE_WARNING([No sound system was found. Windows applications will be silent.])
1661 fi
1662
1663 dnl **** Check for gcc specific options ****
1664
1665 AC_SUBST(EXTRACFLAGS,"")
1666 if test "x${GCC}" = "xyes"
1667 then
1668   EXTRACFLAGS="-Wall -pipe"
1669
1670   dnl Check for strength-reduce bug
1671   AC_CACHE_CHECK( [for gcc strength-reduce bug], ac_cv_c_gcc_strength_bug,
1672                   AC_RUN_IFELSE([AC_LANG_PROGRAM([[int L[[4]] = {0,1,2,3};]],
1673 [[static int Array[[3]];
1674   unsigned int B = 3;
1675   int i;
1676   for(i=0; i<B; i++) Array[[i]] = i - 3;
1677   for(i=0; i<4 - 1; i++) L[[i]] = L[[i + 1]];
1678   L[[i]] = 4;
1679   return (Array[[1]] != -2 || L[[2]] != 3)]])],
1680     [ac_cv_c_gcc_strength_bug="no"],[ac_cv_c_gcc_strength_bug="yes"],[ac_cv_c_gcc_strength_bug="yes"]) )
1681   if test "$ac_cv_c_gcc_strength_bug" = "yes"
1682   then
1683     EXTRACFLAGS="$EXTRACFLAGS -fno-strength-reduce"
1684   fi
1685
1686   dnl Check for some compiler flags
1687   WINE_TRY_CFLAGS([-fno-builtin],[AC_SUBST(BUILTINFLAG,"-fno-builtin")])
1688   WINE_TRY_CFLAGS([-fno-strict-aliasing])
1689   WINE_TRY_CFLAGS([-Wdeclaration-after-statement])
1690   WINE_TRY_CFLAGS([-Wstrict-prototypes])
1691   WINE_TRY_CFLAGS([-Wtype-limits])
1692   WINE_TRY_CFLAGS([-Wwrite-strings])
1693
1694   dnl Check for noisy string.h
1695   saved_CFLAGS="$CFLAGS"
1696   CFLAGS="$CFLAGS -Wpointer-arith -Werror"
1697   AC_CACHE_CHECK([for broken string.h that generates warnings with -Wpointer-arith], ac_cv_c_string_h_warnings,
1698       AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <string.h>]], [[]])],[ac_cv_c_string_h_warnings=no],[ac_cv_c_string_h_warnings=yes]))
1699   CFLAGS="$saved_CFLAGS"
1700   if test "$ac_cv_c_string_h_warnings" = "no"
1701   then
1702     EXTRACFLAGS="$EXTRACFLAGS -Wpointer-arith"
1703   fi
1704
1705   dnl Check for noisy string.h on logical ops
1706   saved_CFLAGS="$CFLAGS"
1707   CFLAGS="$CFLAGS -Wlogical-op -Werror"
1708   AC_CACHE_CHECK([for broken string.h that generates warnings with -Wlogical-op], ac_cv_c_logicalop_noisy,
1709       AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <string.h>]], [[char*f(const char *h,char n) {return strchr(h,n);}]])],[ac_cv_c_logicalop_noisy=no],[ac_cv_c_logicalop_noisy=yes]))
1710   CFLAGS="$saved_CFLAGS"
1711   if test "$ac_cv_c_logicalop_noisy" = "no"
1712   then
1713     EXTRACFLAGS="$EXTRACFLAGS -Wlogical-op"
1714   fi
1715
1716   dnl Enable -Werror for maintainer mode
1717   if test "x$enable_maintainer_mode" = "xyes"
1718   then
1719       WINE_TRY_CFLAGS([-Werror])
1720   fi
1721
1722   dnl Check for ms_hook_prologue support
1723   saved_CFLAGS="$CFLAGS"
1724   CFLAGS="$CFLAGS -Werror"
1725   AC_CACHE_CHECK([for ms_hook_prologue attribute], ac_cv_have_ms_hook_prologue,
1726                  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[int __attribute__((__ms_hook_prologue__)) test(void) { return 0; }]])],
1727                                    [ac_cv_have_ms_hook_prologue="yes"],[ac_cv_have_ms_hook_prologue="no"]))
1728   CFLAGS="$saved_CFLAGS"
1729   if test "$ac_cv_have_ms_hook_prologue" = "yes"
1730   then
1731       AC_DEFINE(DECLSPEC_HOTPATCH, [__attribute__((__ms_hook_prologue__))],
1732                 [Define to a function attribute for Microsoft hotpatch assembly prefix.])
1733   else
1734       AC_DEFINE(DECLSPEC_HOTPATCH, [/* */])
1735   fi
1736 fi
1737
1738 dnl **** Disable Fortify, it has too many false positives
1739
1740 AC_CACHE_CHECK([for the need to disable Fortify], ac_cv_c_fortify_enabled,
1741     AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <string.h>]],
1742 [[#if defined(__USE_FORTIFY_LEVEL) && __USE_FORTIFY_LEVEL > 0
1743 #error Fortify enabled
1744 #endif]])],
1745         [ac_cv_c_fortify_enabled=no],[ac_cv_c_fortify_enabled=yes]))
1746 if test "$ac_cv_c_fortify_enabled" = yes
1747 then
1748     CFLAGS="$CFLAGS -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0"
1749 fi
1750
1751 dnl **** Check for underscore on external symbols ****
1752
1753 AC_CACHE_CHECK([whether external symbols need an underscore prefix], ac_cv_c_extern_prefix,
1754     WINE_TRY_ASM_LINK([".globl _ac_test\n_ac_test:\t.long 0"],
1755                       [extern int ac_test;],
1756                       [if (ac_test) return 1],
1757                       ac_cv_c_extern_prefix="yes",ac_cv_c_extern_prefix="no"))
1758
1759 case $host_cpu in
1760   *i[[3456789]]86*)
1761     AC_CACHE_CHECK([whether external symbols need stdcall decoration], ac_cv_c_stdcall_suffix,
1762         WINE_TRY_ASM_LINK(["jmp _ac_test@4"],
1763 [#ifndef _MSC_VER
1764 #define __stdcall __attribute__((__stdcall__))
1765 #endif
1766 int __stdcall ac_test(int i) { return i; }],
1767                           [if (ac_test(1)) return 1],
1768                           ac_cv_c_stdcall_suffix="yes",ac_cv_c_stdcall_suffix="no")) ;;
1769   *) ac_cv_c_stdcall_suffix="no" ;;
1770 esac
1771
1772 AH_TEMPLATE(__ASM_NAME,[Define to a macro to generate an assembly name from a C symbol])
1773 if test "$ac_cv_c_extern_prefix" = "yes"
1774 then
1775     AC_DEFINE([__ASM_NAME(name)], ["_" name])
1776     asm_name_prefix="_"
1777 else
1778     AC_DEFINE([__ASM_NAME(name)], [name])
1779     asm_name_prefix=""
1780 fi
1781
1782 AH_TEMPLATE(__ASM_STDCALL,[Define to a macro to generate an stdcall suffix])
1783 if test "$ac_cv_c_stdcall_suffix" = "yes"
1784 then
1785     AC_DEFINE([__ASM_STDCALL(args)],["@" #args])
1786 else
1787     AC_DEFINE([__ASM_STDCALL(args)],[""])
1788 fi
1789
1790 dnl **** Check how to define a function in assembly code ****
1791
1792 AC_CACHE_CHECK([how to define a function in assembly code], ac_cv_asm_func_def,
1793   WINE_TRY_ASM_LINK(
1794       ["\t.globl _ac_test\n\t.def _ac_test; .scl 2; .type 32; .endef\n_ac_test:\t.long 0"],,,
1795       ac_cv_asm_func_def=".def",
1796     [WINE_TRY_ASM_LINK(["\t.globl _ac_test\n\t.type _ac_test,@function\n_ac_test:\t.long 0"],,,
1797       ac_cv_asm_func_def=".type @function",
1798     [WINE_TRY_ASM_LINK(["\t.globl _ac_test\n\t.type _ac_test,2\n_ac_test:\t.long 0"],,,
1799       ac_cv_asm_func_def=".type 2",
1800       ac_cv_asm_func_def="unknown")])]))
1801
1802 AH_TEMPLATE(__ASM_FUNC,[Define to a macro to generate an assembly function directive])
1803 case "$ac_cv_asm_func_def" in
1804   ".def")
1805      AC_DEFINE([__ASM_FUNC(name)], [".def " __ASM_NAME(name) "; .scl 2; .type 32; .endef"])
1806      asm_func_header=".def $asm_name_prefix\" #name suffix \"; .scl 2; .type 32; .endef" ;;
1807   ".type @function")
1808      AC_DEFINE([__ASM_FUNC(name)], [".type " __ASM_NAME(name) ",@function"])
1809      asm_func_header=".type $asm_name_prefix\" #name suffix \",@function" ;;
1810   ".type 2")
1811      AC_DEFINE([__ASM_FUNC(name)], [".type " __ASM_NAME(name) ",2"])
1812      asm_func_header=".type $asm_name_prefix\" #name suffix \",2" ;;
1813   *)
1814      AC_DEFINE([__ASM_FUNC(name)], [""])
1815      asm_func_header="" ;;
1816 esac
1817
1818 AC_CACHE_CHECK([whether asm() works outside of functions], ac_cv_c_asm_outside_funcs,
1819     AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[asm(".text\n\t.long 0");]],)],
1820                       ac_cv_c_asm_outside_funcs="yes",ac_cv_c_asm_outside_funcs="no"))
1821
1822 AC_CACHE_CHECK([whether .previous is supported in assembly code], ac_cv_c_dot_previous,
1823     WINE_TRY_ASM_LINK([".text\nac_test:\t.long 0\n\t.previous"],,,
1824                       ac_cv_c_dot_previous="yes",ac_cv_c_dot_previous="no"))
1825
1826 AC_CACHE_CHECK([whether CFI directives are supported in assembly code], ac_cv_c_cfi_support,
1827     AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[asm(".text\nac_test:\t.cfi_startproc\n\t.long 0\n\t.cfi_endproc");]])],
1828                       ac_cv_c_cfi_support="yes",ac_cv_c_cfi_support="no"))
1829
1830 asm_func_header=".globl $asm_name_prefix\" #name suffix \"\\n\\t$asm_func_header\\n$asm_name_prefix\" #name suffix \":\\n\\t"
1831 asm_func_trailer=""
1832 if test "$ac_cv_c_dot_previous" = "yes"
1833 then
1834    asm_func_trailer="\\n\\t.previous"
1835 fi
1836 if test "$ac_cv_c_cfi_support" = "yes"
1837 then
1838    asm_func_header="$asm_func_header.cfi_startproc\\n\\t"
1839    asm_func_trailer="\\n\\t.cfi_endproc$asm_func_trailer"
1840    AC_DEFINE([__ASM_CFI(str)],[str],[Define to a macro to output a .cfi assembly pseudo-op])
1841    AC_SUBST([UNWINDFLAGS],[-fasynchronous-unwind-tables])
1842 else
1843    AC_DEFINE([__ASM_CFI(str)],[""])
1844 fi
1845
1846 asm_func_code="$asm_func_header\" code \"$asm_func_trailer"
1847
1848 AH_TEMPLATE(__ASM_DEFINE_FUNC,[Define to a macro to define an assembly function])
1849 if test "$ac_cv_c_asm_outside_funcs" = "yes"
1850 then
1851     AC_DEFINE_UNQUOTED([__ASM_DEFINE_FUNC(name,suffix,code)],[asm(".text\n\t.align 4\n\t$asm_func_code");])
1852 else
1853     AC_DEFINE_UNQUOTED([__ASM_DEFINE_FUNC(name,suffix,code)],[void __asm_dummy_##name(void) { asm(".text\n\t.align 4\n\t$asm_func_code"); }])
1854 fi
1855 AC_DEFINE([__ASM_GLOBAL_FUNC(name,code)],[__ASM_DEFINE_FUNC(name,"",code)],
1856           [Define to a macro to generate an assembly function with C calling convention])
1857 AC_DEFINE([__ASM_STDCALL_FUNC(name,args,code)],[__ASM_DEFINE_FUNC(name,__ASM_STDCALL(args),code)],
1858           [Define to a macro to generate an assembly function with stdcall calling convention])
1859
1860 dnl **** Platform-specific checks ****
1861
1862 AC_SUBST(LDPATH,"")
1863 case $build_os in
1864   cygwin*|mingw32*)
1865     AC_SUBST(TOOLSEXT,".exe")
1866     LDPATH="PATH=\"\$(TOOLSDIR)/libs/wine:\$\$PATH\""
1867     ;;
1868   darwin*|macosx*)
1869     ;;
1870   *)
1871     LDPATH="LD_LIBRARY_PATH=\"\$(TOOLSDIR)/libs/wine:\$\$LD_LIBRARY_PATH\""
1872     ;;
1873 esac
1874
1875 dnl Mingw needs explicit msvcrt for linking libwine and winsock for wininet
1876 case $host_os in
1877   mingw32*)
1878     AC_SUBST(CRTLIBS,"-lmsvcrt")
1879     AC_SUBST(SOCKETLIBS,"-L\$(top_builddir)/dlls/ws2_32 -lws2_32")
1880     ;;
1881 esac
1882
1883 AC_SUBST(MAIN_BINARY,"wine")
1884 test "x$enable_win64" != "xyes" || MAIN_BINARY="wine64"
1885
1886 case $host_os in
1887   linux*)
1888     case $host_cpu in
1889       *i[[3456789]]86*) AC_SUBST(EXTRA_BINARIES,"wine-preloader") ;;
1890       x86_64*) AC_SUBST(EXTRA_BINARIES,"wine64-preloader") ;;
1891     esac
1892     ;;
1893 esac
1894
1895 dnl **** Check for functions ****
1896
1897 ac_save_CFLAGS="$CFLAGS"
1898 CFLAGS="$CFLAGS $BUILTINFLAG"
1899 AC_CHECK_FUNCS(\
1900         _pclose \
1901         _popen \
1902         _snprintf \
1903         _spawnvp \
1904         _strdup \
1905         _stricmp \
1906         _strnicmp \
1907         _strtoi64 \
1908         _strtoui64 \
1909         _vsnprintf \
1910         asctime_r \
1911         chsize \
1912         dlopen \
1913         epoll_create \
1914         ffs \
1915         finite \
1916         fnmatch \
1917         fork \
1918         fpclass \
1919         fstatfs \
1920         fstatvfs \
1921         ftruncate \
1922         futimes \
1923         futimesat \
1924         getattrlist \
1925         getdirentries \
1926         getopt_long \
1927         getpagesize \
1928         getpwuid \
1929         gettimeofday \
1930         getuid \
1931         kqueue \
1932         lstat \
1933         memmove \
1934         mmap \
1935         pclose \
1936         pipe2 \
1937         poll \
1938         popen \
1939         port_create \
1940         prctl \
1941         pread \
1942         pwrite \
1943         readdir \
1944         readlink \
1945         sched_setaffinity \
1946         sched_yield \
1947         select \
1948         setproctitle \
1949         setrlimit \
1950         settimeofday \
1951         sigaltstack \
1952         sigprocmask \
1953         snprintf \
1954         spawnvp \
1955         statfs \
1956         statvfs \
1957         strcasecmp \
1958         strdup \
1959         strerror \
1960         strncasecmp \
1961         strtold \
1962         strtoll \
1963         strtoull \
1964         symlink \
1965         tcgetattr \
1966         thr_kill2 \
1967         timegm \
1968         usleep \
1969         vsnprintf \
1970         wait4 \
1971         waitpid \
1972 )
1973 CFLAGS="$ac_save_CFLAGS"
1974
1975 dnl Check for -ldl
1976 if test "$ac_cv_func_dlopen" = no
1977 then
1978     AC_CHECK_LIB(dl,dlopen,[AC_DEFINE(HAVE_DLOPEN,1) AC_SUBST(LIBDL,"-ldl")])
1979 fi
1980 WINE_CHECK_LIB_FUNCS(dladdr,[$LIBDL])
1981
1982 dnl Check for -lpoll for Mac OS X/Darwin
1983 if test "$ac_cv_func_poll" = no
1984 then
1985     AC_CHECK_LIB(poll,poll,[AC_DEFINE(HAVE_POLL,1) AC_SUBST(LIBPOLL,"-lpoll")])
1986 fi
1987
1988 dnl Check for -lnsl for Solaris
1989 AC_SEARCH_LIBS(gethostbyname, nsl)
1990
1991 dnl Check for -lsocket for Solaris
1992 AC_SEARCH_LIBS(connect, socket)
1993
1994 dnl Check for -lresolv for Solaris
1995 AC_SEARCH_LIBS(inet_aton, resolv)
1996
1997 dnl **** Check for functions which may rely on -lsocket on Solaris.
1998 AC_CHECK_FUNCS(\
1999         getaddrinfo \
2000         getnameinfo \
2001         getnetbyname \
2002         getprotobyname \
2003         getprotobynumber \
2004         getservbyport \
2005         inet_network \
2006         inet_ntop \
2007         inet_pton \
2008         sendmsg \
2009         socketpair \
2010 )
2011
2012 dnl **** Check for OpenLDAP ***
2013 AC_SUBST(LDAPLIBS,"")
2014 if test "$ac_cv_header_ldap_h" = "yes" -a "$ac_cv_header_lber_h" = "yes"
2015 then
2016     AC_CHECK_TYPE(LDAPSortKey,
2017         [AC_CHECK_LIB(ldap_r, ldap_initialize,
2018             [AC_CHECK_LIB(lber, ber_init,
2019                 [AC_DEFINE(HAVE_LDAP, 1, [Define if you have the OpenLDAP development environment])
2020                  LDAPLIBS="-lldap_r -llber"],,
2021                  [$LIBPTHREAD])],,
2022                  [$LIBPTHREAD])],,
2023         [#include <ldap.h>])
2024     WINE_CHECK_LIB_FUNCS(\
2025         ldap_count_references \
2026         ldap_first_reference \
2027         ldap_next_reference \
2028         ldap_parse_reference \
2029         ldap_parse_sort_control \
2030         ldap_parse_sortresponse_control \
2031         ldap_parse_vlv_control \
2032         ldap_parse_vlvresponse_control,
2033         [$LDAPLIBS $LIBPTHREAD])
2034 fi
2035 WINE_NOTICE_WITH(ldap,[test "x$LDAPLIBS" = "x"],
2036                  [libldap (OpenLDAP) ${notice_platform}development files not found, LDAP won't be supported.])
2037
2038 AC_CACHE_CHECK([whether mkdir takes only one argument],
2039         wine_cv_one_arg_mkdir,
2040         AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/stat.h>]],[[mkdir("foo");]])],
2041                           [wine_cv_one_arg_mkdir=yes],[wine_cv_one_arg_mkdir=no]))
2042 if test "$wine_cv_one_arg_mkdir" = "yes"
2043 then
2044   AC_DEFINE(HAVE_ONE_ARG_MKDIR, 1, [Define if mkdir takes only one argument])
2045 fi
2046
2047 dnl **** Check for types ****
2048
2049 AC_C_CONST
2050 AC_C_INLINE
2051 AC_CHECK_TYPES([mode_t, off_t, pid_t, size_t, ssize_t, long long, fsblkcnt_t, fsfilcnt_t])
2052 AC_CHECK_TYPES([sigset_t],,,[#include <sys/types.h>
2053 #include <signal.h>])
2054 AC_CHECK_TYPES([request_sense],,,[#include <linux/cdrom.h>])
2055
2056 AC_CHECK_TYPES([struct xinpgen],,,
2057 [#include <sys/types.h>
2058 #ifdef HAVE_SYS_SOCKET_H
2059 #include <sys/socket.h>
2060 #endif
2061 #ifdef HAVE_SYS_SOCKETVAR_H
2062 #include <sys/socketvar.h>
2063 #endif
2064 #ifdef HAVE_NET_ROUTE_H
2065 #include <net/route.h>
2066 #endif
2067 #ifdef HAVE_NETINET_IN_H
2068 #include <netinet/in.h>
2069 #endif
2070 #ifdef HAVE_NETINET_IN_SYSTM_H
2071 #include <netinet/in_systm.h>
2072 #endif
2073 #ifdef HAVE_NETINET_IP_H
2074 #include <netinet/ip.h>
2075 #endif
2076 #ifdef HAVE_NETINET_IN_PCB_H
2077 #include <netinet/in_pcb.h>
2078 #endif])
2079
2080 AC_CHECK_MEMBERS([struct ff_effect.direction],,,
2081 [#ifdef HAVE_LINUX_INPUT_H
2082 #include <linux/input.h>
2083 #endif])
2084
2085 AC_CACHE_CHECK([for sigaddset],wine_cv_have_sigaddset,
2086                AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <signal.h>]], [[sigset_t set; sigaddset(&set,SIGTERM);]])],[wine_cv_have_sigaddset=yes],[wine_cv_have_sigaddset=no]))
2087 if test "$wine_cv_have_sigaddset" = "yes"
2088 then
2089   AC_DEFINE(HAVE_SIGADDSET, 1, [Define if sigaddset is supported])
2090 fi
2091
2092
2093 AC_CACHE_CHECK([whether we can use re-entrant gethostbyname_r Linux style],
2094         wine_cv_linux_gethostbyname_r_6,
2095         AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <netdb.h>]],[[
2096     char *name=0;
2097     struct hostent he;
2098     struct hostent *result;
2099     char *buf=0;
2100     int bufsize=0;
2101     int res,errnr;
2102     char *addr=0;
2103     int addrlen=0;
2104     int addrtype=0;
2105     res=gethostbyname_r(name,&he,buf,bufsize,&result,&errnr);
2106     res=gethostbyaddr_r(addr, addrlen, addrtype,&he,buf,bufsize,&result,&errnr);
2107     ]])],[wine_cv_linux_gethostbyname_r_6=yes],[wine_cv_linux_gethostbyname_r_6=no
2108         ])
2109    )
2110    if test "$wine_cv_linux_gethostbyname_r_6" = "yes"
2111    then
2112       AC_DEFINE(HAVE_LINUX_GETHOSTBYNAME_R_6, 1,
2113                 [Define if Linux-style gethostbyname_r and gethostbyaddr_r are available])
2114    fi
2115
2116 if test "$ac_cv_header_linux_joystick_h" = "yes"
2117 then
2118    AC_CACHE_CHECK([whether linux/joystick.h uses the Linux 2.2+ API],
2119         wine_cv_linux_joystick_22_api,
2120         AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
2121         #include <sys/ioctl.h>
2122         #include <sys/types.h>
2123         #include <linux/joystick.h>
2124
2125         struct js_event blub;
2126         #if !defined(JS_EVENT_AXIS) || !defined(JS_EVENT_BUTTON)
2127         #error "no 2.2 header"
2128         #endif
2129         ]], [[/*empty*/]])],[wine_cv_linux_joystick_22_api=yes],[wine_cv_linux_joystick_22_api=no])
2130    )
2131    if test "$wine_cv_linux_joystick_22_api" = "yes"
2132    then
2133       AC_DEFINE(HAVE_LINUX_22_JOYSTICK_API, 1,
2134                 [Define if <linux/joystick.h> defines the Linux 2.2 joystick API])
2135    fi
2136 fi
2137
2138 dnl **** FIXME: what about mixed cases, where we need two of them? ***
2139
2140 dnl Check for statfs members
2141 AC_CHECK_MEMBERS([struct statfs.f_bfree, struct statfs.f_bavail, struct statfs.f_frsize, struct statfs.f_ffree, struct statfs.f_favail, struct statfs.f_namelen],,,
2142 [#include <sys/types.h>
2143 #ifdef HAVE_SYS_PARAM_H
2144 # include <sys/param.h>
2145 #endif
2146 #ifdef HAVE_SYS_MOUNT_H
2147 # include <sys/mount.h>
2148 #endif
2149 #ifdef HAVE_SYS_VFS_H
2150 # include <sys/vfs.h>
2151 #endif
2152 #ifdef HAVE_SYS_STATFS_H
2153 # include <sys/statfs.h>
2154 #endif])
2155
2156 AC_CHECK_MEMBERS([struct statvfs.f_blocks],,,
2157 [#ifdef HAVE_SYS_STATVFS_H
2158 #include <sys/statvfs.h>
2159 #endif])
2160
2161 dnl Check for socket structure members
2162 AC_CHECK_MEMBERS([struct msghdr.msg_accrights, struct sockaddr.sa_len, struct sockaddr_un.sun_len],,,
2163 [#include <sys/types.h>
2164 #ifdef HAVE_SYS_SOCKET_H
2165 # include <sys/socket.h>
2166 #endif
2167 #ifdef HAVE_SYS_UN_H
2168 # include <sys/un.h>
2169 #endif])
2170
2171 dnl Check for scsireq_t and sg_io_hdr_t members
2172 AC_CHECK_MEMBERS([scsireq_t.cmd, sg_io_hdr_t.interface_id],,,
2173 [#include <sys/types.h>
2174 #ifdef HAVE_SCSI_SG_H
2175 #include <scsi/sg.h>
2176 #endif])
2177
2178 dnl Check for siginfo_t members
2179 AC_CHECK_MEMBERS([siginfo_t.si_fd],,,[#include <signal.h>])
2180
2181 dnl Check for struct mtget members
2182 AC_CHECK_MEMBERS([struct mtget.mt_blksiz, struct mtget.mt_gstat, struct mtget.mt_blkno],,,
2183 [#include <sys/types.h>
2184 #ifdef HAVE_SYS_MTIO_H
2185 #include <sys/mtio.h>
2186 #endif])
2187
2188 dnl Check for struct option
2189 AC_CHECK_MEMBERS([struct option.name],,,
2190 [#ifdef HAVE_GETOPT_H
2191 #include <getopt.h>
2192 #endif])
2193
2194 dnl Check for stat.st_blocks and ns-resolved times
2195 AC_CHECK_MEMBERS([struct stat.st_blocks,struct stat.st_mtim,struct stat.st_ctim,struct stat.st_atim])
2196
2197 dnl Check for sin6_scope_id
2198 AC_CHECK_MEMBERS([struct sockaddr_in6.sin6_scope_id],,,
2199 [#ifdef HAVE_SYS_TYPES_H
2200 #include <sys/types.h>
2201 #endif
2202 #ifdef HAVE_NETINET_IN_H
2203 #include <netinet/in.h>
2204 #endif])
2205
2206 dnl Check for ns_msg ptr member
2207 AC_CHECK_MEMBERS([ns_msg._msg_ptr],,,
2208 [#ifdef HAVE_SYS_TYPES_H
2209 #include <sys/types.h>
2210 #endif
2211 #ifdef HAVE_NETINET_IN_H
2212 # include <netinet/in.h>
2213 #endif
2214 #ifdef HAVE_ARPA_NAMESER_H
2215 # include <arpa/nameser.h>
2216 #endif])
2217
2218 dnl Check for struct icmpstat.icps_outhist
2219 AC_CHECK_MEMBERS([struct icmpstat.icps_outhist],,,
2220 [#ifdef HAVE_SYS_TYPES_H
2221 #include <sys/types.h>
2222 #endif
2223 #ifdef HAVE_ALIAS_H
2224 #include <alias.h>
2225 #endif
2226 #ifdef HAVE_SYS_SOCKET_H
2227 #include <sys/socket.h>
2228 #endif
2229 #ifdef HAVE_SYS_SOCKETVAR_H
2230 #include <sys/socketvar.h>
2231 #endif
2232 #ifdef HAVE_SYS_TIMEOUT_H
2233 #include <sys/timeout.h>
2234 #endif
2235 #ifdef HAVE_NETINET_IN_H
2236 #include <netinet/in.h>
2237 #endif
2238 #ifdef HAVE_NETINET_IN_SYSTM_H
2239 #include <netinet/in_systm.h>
2240 #endif
2241 #ifdef HAVE_NETINET_IP_H
2242 #include <netinet/ip.h>
2243 #endif
2244 #ifdef HAVE_NETINET_IP_VAR_H
2245 #include <netinet/ip_var.h>
2246 #endif
2247 #ifdef HAVE_NETINET_IP_ICMP_H
2248 #include <netinet/ip_icmp.h>
2249 #endif
2250 #ifdef HAVE_NETINET_ICMP_VAR
2251 #include <netinet/icmp_var.h>
2252 #endif])
2253
2254 dnl Check for struct ifreq.ifr_hwaddr
2255 AC_CHECK_MEMBERS([struct ifreq.ifr_hwaddr],,,
2256 [#ifdef HAVE_SYS_TYPES_H
2257 #include <sys/types.h>
2258 #endif
2259 #ifdef HAVE_NET_IF_H
2260 # include <net/if.h>
2261 #endif])
2262
2263 dnl Check for the external timezone variables timezone and daylight
2264 AC_CACHE_CHECK([for timezone variable], ac_cv_have_timezone,
2265                AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <time.h>]], [[timezone = 1]])],[ac_cv_have_timezone="yes"],[ac_cv_have_timezone="no"]))
2266 if test "$ac_cv_have_timezone" = "yes"
2267 then
2268     AC_DEFINE(HAVE_TIMEZONE, 1, [Define if you have the timezone variable])
2269 fi
2270 AC_CACHE_CHECK([for daylight variable], ac_cv_have_daylight,
2271                AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <time.h>]], [[daylight = 1]])],[ac_cv_have_daylight="yes"],[ac_cv_have_daylight="no"]))
2272 if test "$ac_cv_have_daylight" = "yes"
2273 then
2274     AC_DEFINE(HAVE_DAYLIGHT, 1, [Define if you have the daylight variable])
2275 fi
2276
2277 dnl Check for isinf
2278 AC_CACHE_CHECK([for isinf], ac_cv_have_isinf,
2279                AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <math.h>]], [[float f = 0.0; int i=isinf(f)]])],[ac_cv_have_isinf="yes"],[ac_cv_have_isinf="no"]))
2280 if test "$ac_cv_have_isinf" = "yes"
2281 then
2282     AC_DEFINE(HAVE_ISINF, 1, [Define to 1 if you have the `isinf' function.])
2283 fi
2284
2285 dnl Check for isnan
2286 AC_CACHE_CHECK([for isnan], ac_cv_have_isnan,
2287                AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <math.h>]], [[float f = 0.0; int i=isnan(f)]])],[ac_cv_have_isnan="yes"],[ac_cv_have_isnan="no"]))
2288 if test "$ac_cv_have_isnan" = "yes"
2289 then
2290     AC_DEFINE(HAVE_ISNAN, 1, [Define to 1 if you have the `isnan' function.])
2291 fi
2292
2293 dnl *** check for the need to define platform-specific symbols
2294
2295 case $host_cpu in
2296   *i[[3456789]]86*) WINE_CHECK_DEFINE([__i386__]) ;;
2297   *x86_64*)         WINE_CHECK_DEFINE([__x86_64__]) ;;
2298   *alpha*)          WINE_CHECK_DEFINE([__ALPHA__]) ;;
2299   *sparc*)          WINE_CHECK_DEFINE([__sparc__]) ;;
2300   *powerpc*)        WINE_CHECK_DEFINE([__powerpc__]) ;;
2301 esac
2302
2303 case $host_vendor in
2304   *sun*) WINE_CHECK_DEFINE([__sun__]) ;;
2305 esac
2306
2307 dnl **** Generate output files ****
2308
2309 AH_TOP([#ifndef WINE_CROSSTEST
2310 #define __WINE_CONFIG_H])
2311 AH_BOTTOM([#endif /* WINE_CROSSTEST */])
2312
2313 AC_CONFIG_COMMANDS([include/stamp-h], [echo timestamp > include/stamp-h])
2314
2315 WINE_CONFIG_SYMLINK(dlls/shell32/AUTHORS,AUTHORS)
2316 WINE_CONFIG_SYMLINK(dlls/wineps.drv/generic.ppd)
2317 WINE_CONFIG_SYMLINK(fonts/marlett.ttf,,enable_fonts)
2318 WINE_CONFIG_SYMLINK(fonts/symbol.ttf,,enable_fonts)
2319 WINE_CONFIG_SYMLINK(fonts/tahoma.ttf,,enable_fonts)
2320 WINE_CONFIG_SYMLINK(fonts/tahomabd.ttf,,enable_fonts)
2321 WINE_CONFIG_SYMLINK(tools/l_intl.nls)
2322 WINE_CONFIG_SYMLINK(wine,tools/winewrapper)
2323
2324 WINE_CONFIG_EXTRA_DIR(dlls/gdi32/enhmfdrv)
2325 WINE_CONFIG_EXTRA_DIR(dlls/gdi32/mfdrv)
2326 WINE_CONFIG_EXTRA_DIR(dlls/kernel32/nls)
2327 WINE_CONFIG_EXTRA_DIR(dlls/user32/resources)
2328 WINE_CONFIG_EXTRA_DIR(dlls/wineps.drv/data)
2329 WINE_CONFIG_EXTRA_DIR(include/wine)
2330
2331 WINE_CONFIG_MAKERULES([Make.rules],[MAKE_RULES])
2332 WINE_CONFIG_MAKERULES([Maketest.rules],[MAKE_TEST_RULES],[Make.rules])
2333 WINE_CONFIG_MAKERULES([dlls/Makedll.rules],[MAKE_DLL_RULES],[Make.rules])
2334 WINE_CONFIG_MAKERULES([dlls/Makeimplib.rules],[MAKE_IMPLIB_RULES],[Make.rules])
2335 WINE_CONFIG_MAKERULES([programs/Makeprog.rules],[MAKE_PROG_RULES],[Make.rules])
2336
2337 WINE_CONFIG_DLL(acledit)
2338 WINE_CONFIG_DLL(aclui,,[implib])
2339 WINE_CONFIG_DLL(activeds,,[implib])
2340 WINE_CONFIG_DLL(actxprxy)
2341 WINE_CONFIG_LIB(adsiid)
2342 WINE_CONFIG_DLL(advapi32,,[implib])
2343 WINE_CONFIG_TEST(dlls/advapi32/tests)
2344 WINE_CONFIG_DLL(advpack,,[implib])
2345 WINE_CONFIG_TEST(dlls/advpack/tests)
2346 WINE_CONFIG_DLL(amstream)
2347 WINE_CONFIG_TEST(dlls/amstream/tests)
2348 WINE_CONFIG_DLL(appwiz.cpl,,[po])
2349 WINE_CONFIG_DLL(atl,,[implib])
2350 WINE_CONFIG_TEST(dlls/atl/tests)
2351 WINE_CONFIG_DLL(authz)
2352 WINE_CONFIG_DLL(avicap32,,[implib])
2353 WINE_CONFIG_DLL(avifil32,,[po,implib])
2354 WINE_CONFIG_TEST(dlls/avifil32/tests)
2355 WINE_CONFIG_DLL(avifile.dll16,enable_win16)
2356 WINE_CONFIG_DLL(avrt,,[implib])
2357 WINE_CONFIG_DLL(bcrypt)
2358 WINE_CONFIG_DLL(browseui,,[po])
2359 WINE_CONFIG_TEST(dlls/browseui/tests)
2360 WINE_CONFIG_DLL(cabinet,,[implib])
2361 WINE_CONFIG_TEST(dlls/cabinet/tests)
2362 WINE_CONFIG_DLL(capi2032,,[implib])
2363 WINE_CONFIG_DLL(cards,,[implib])
2364 WINE_CONFIG_DLL(cfgmgr32,,[implib])
2365 WINE_CONFIG_DLL(clusapi,,[implib])
2366 WINE_CONFIG_DLL(comcat)
2367 WINE_CONFIG_TEST(dlls/comcat/tests)
2368 WINE_CONFIG_DLL(comctl32,,[po,implib])
2369 WINE_CONFIG_TEST(dlls/comctl32/tests)
2370 WINE_CONFIG_DLL(comdlg32,,[po,implib])
2371 WINE_CONFIG_TEST(dlls/comdlg32/tests)
2372 WINE_CONFIG_DLL(comm.drv16,enable_win16)
2373 WINE_CONFIG_DLL(commdlg.dll16,enable_win16)
2374 WINE_CONFIG_DLL(compobj.dll16,enable_win16)
2375 WINE_CONFIG_DLL(compstui,,[implib])
2376 WINE_CONFIG_DLL(credui,,[po,implib])
2377 WINE_CONFIG_TEST(dlls/credui/tests)
2378 WINE_CONFIG_DLL(crtdll,,[implib])
2379 WINE_CONFIG_DLL(crypt32,,[po,implib])
2380 WINE_CONFIG_TEST(dlls/crypt32/tests)
2381 WINE_CONFIG_DLL(cryptdlg,,[po])
2382 WINE_CONFIG_DLL(cryptdll,,[implib])
2383 WINE_CONFIG_DLL(cryptnet,,[implib])
2384 WINE_CONFIG_TEST(dlls/cryptnet/tests)
2385 WINE_CONFIG_DLL(cryptui,,[po,implib])
2386 WINE_CONFIG_TEST(dlls/cryptui/tests)
2387 WINE_CONFIG_DLL(ctapi32)
2388 WINE_CONFIG_DLL(ctl3d.dll16,enable_win16)
2389 WINE_CONFIG_DLL(ctl3d32,,[implib])
2390 WINE_CONFIG_DLL(ctl3dv2.dll16,enable_win16)
2391 WINE_CONFIG_DLL(d3d10,,[implib])
2392 WINE_CONFIG_TEST(dlls/d3d10/tests)
2393 WINE_CONFIG_DLL(d3d10core,,[implib])
2394 WINE_CONFIG_TEST(dlls/d3d10core/tests)
2395 WINE_CONFIG_DLL(d3d8,,[implib])
2396 WINE_CONFIG_TEST(dlls/d3d8/tests)
2397 WINE_CONFIG_DLL(d3d9,,[implib])
2398 WINE_CONFIG_TEST(dlls/d3d9/tests)
2399 WINE_CONFIG_DLL(d3dcompiler_33)
2400 WINE_CONFIG_DLL(d3dcompiler_34)
2401 WINE_CONFIG_DLL(d3dcompiler_35)
2402 WINE_CONFIG_DLL(d3dcompiler_36)
2403 WINE_CONFIG_DLL(d3dcompiler_37)
2404 WINE_CONFIG_DLL(d3dcompiler_38)
2405 WINE_CONFIG_DLL(d3dcompiler_39)
2406 WINE_CONFIG_DLL(d3dcompiler_40)
2407 WINE_CONFIG_DLL(d3dcompiler_41)
2408 WINE_CONFIG_DLL(d3dcompiler_42)
2409 WINE_CONFIG_DLL(d3dcompiler_43,,[implib],[d3dcompiler])
2410 WINE_CONFIG_TEST(dlls/d3dcompiler_43/tests)
2411 WINE_CONFIG_DLL(d3dim,,[implib])
2412 WINE_CONFIG_DLL(d3drm,,[implib])
2413 WINE_CONFIG_TEST(dlls/d3drm/tests)
2414 WINE_CONFIG_DLL(d3dx10_33)
2415 WINE_CONFIG_DLL(d3dx10_34)
2416 WINE_CONFIG_DLL(d3dx10_35)
2417 WINE_CONFIG_DLL(d3dx10_36)
2418 WINE_CONFIG_DLL(d3dx10_37)
2419 WINE_CONFIG_DLL(d3dx10_38)
2420 WINE_CONFIG_DLL(d3dx10_39)
2421 WINE_CONFIG_DLL(d3dx10_40)
2422 WINE_CONFIG_DLL(d3dx10_41)
2423 WINE_CONFIG_DLL(d3dx10_42)
2424 WINE_CONFIG_DLL(d3dx10_43)
2425 WINE_CONFIG_DLL(d3dx9_24)
2426 WINE_CONFIG_DLL(d3dx9_25)
2427 WINE_CONFIG_DLL(d3dx9_26)
2428 WINE_CONFIG_DLL(d3dx9_27)
2429 WINE_CONFIG_DLL(d3dx9_28)
2430 WINE_CONFIG_DLL(d3dx9_29)
2431 WINE_CONFIG_DLL(d3dx9_30)
2432 WINE_CONFIG_DLL(d3dx9_31)
2433 WINE_CONFIG_DLL(d3dx9_32)
2434 WINE_CONFIG_DLL(d3dx9_33)
2435 WINE_CONFIG_DLL(d3dx9_34)
2436 WINE_CONFIG_DLL(d3dx9_35)
2437 WINE_CONFIG_DLL(d3dx9_36,,[implib],[d3dx9])
2438 WINE_CONFIG_TEST(dlls/d3dx9_36/tests)
2439 WINE_CONFIG_DLL(d3dx9_37)
2440 WINE_CONFIG_DLL(d3dx9_38)
2441 WINE_CONFIG_DLL(d3dx9_39)
2442 WINE_CONFIG_DLL(d3dx9_40)
2443 WINE_CONFIG_DLL(d3dx9_41)
2444 WINE_CONFIG_DLL(d3dx9_42)
2445 WINE_CONFIG_DLL(d3dx9_43)
2446 WINE_CONFIG_DLL(d3dxof,,[implib])
2447 WINE_CONFIG_TEST(dlls/d3dxof/tests)
2448 WINE_CONFIG_DLL(dbgeng,,[implib])
2449 WINE_CONFIG_DLL(dbghelp,,[implib])
2450 WINE_CONFIG_DLL(dciman32,,[implib])
2451 WINE_CONFIG_DLL(ddeml.dll16,enable_win16)
2452 WINE_CONFIG_DLL(ddraw,,[implib])
2453 WINE_CONFIG_TEST(dlls/ddraw/tests)
2454 WINE_CONFIG_DLL(ddrawex)
2455 WINE_CONFIG_TEST(dlls/ddrawex/tests)
2456 WINE_CONFIG_DLL(devenum,,[po])
2457 WINE_CONFIG_DLL(dinput,,[implib,staticimplib])
2458 WINE_CONFIG_TEST(dlls/dinput/tests)
2459 WINE_CONFIG_DLL(dinput8,,[implib])
2460 WINE_CONFIG_DLL(dispdib.dll16,enable_win16)
2461 WINE_CONFIG_DLL(dispex)
2462 WINE_CONFIG_TEST(dlls/dispex/tests)
2463 WINE_CONFIG_DLL(display.drv16,enable_win16)
2464 WINE_CONFIG_DLL(dmband)
2465 WINE_CONFIG_DLL(dmcompos)
2466 WINE_CONFIG_DLL(dmime)
2467 WINE_CONFIG_TEST(dlls/dmime/tests)
2468 WINE_CONFIG_DLL(dmloader)
2469 WINE_CONFIG_TEST(dlls/dmloader/tests)
2470 WINE_CONFIG_DLL(dmscript)
2471 WINE_CONFIG_DLL(dmstyle)
2472 WINE_CONFIG_DLL(dmsynth)
2473 WINE_CONFIG_DLL(dmusic)
2474 WINE_CONFIG_DLL(dmusic32,,[implib])
2475 WINE_CONFIG_DLL(dnsapi,,[implib])
2476 WINE_CONFIG_TEST(dlls/dnsapi/tests)
2477 WINE_CONFIG_DLL(dplay,,[implib])
2478 WINE_CONFIG_DLL(dplayx,,[implib])
2479 WINE_CONFIG_TEST(dlls/dplayx/tests)
2480 WINE_CONFIG_DLL(dpnaddr)
2481 WINE_CONFIG_DLL(dpnet,,[implib])
2482 WINE_CONFIG_DLL(dpnhpast)
2483 WINE_CONFIG_DLL(dpnlobby)
2484 WINE_CONFIG_DLL(dpwsockx)
2485 WINE_CONFIG_DLL(drmclien)
2486 WINE_CONFIG_DLL(dsound,,[implib])
2487 WINE_CONFIG_TEST(dlls/dsound/tests)
2488 WINE_CONFIG_DLL(dssenh)
2489 WINE_CONFIG_DLL(dswave)
2490 WINE_CONFIG_DLL(dwmapi,,[implib])
2491 WINE_CONFIG_DLL(dxdiagn)
2492 WINE_CONFIG_TEST(dlls/dxdiagn/tests)
2493 WINE_CONFIG_LIB(dxerr8)
2494 WINE_CONFIG_LIB(dxerr9)
2495 WINE_CONFIG_DLL(dxgi,,[implib])
2496 WINE_CONFIG_TEST(dlls/dxgi/tests)
2497 WINE_CONFIG_LIB(dxguid)
2498 WINE_CONFIG_DLL(explorerframe)
2499 WINE_CONFIG_TEST(dlls/explorerframe/tests)
2500 WINE_CONFIG_DLL(faultrep,,[implib])
2501 WINE_CONFIG_TEST(dlls/faultrep/tests)
2502 WINE_CONFIG_DLL(fltlib)
2503 WINE_CONFIG_DLL(fusion)
2504 WINE_CONFIG_TEST(dlls/fusion/tests)
2505 WINE_CONFIG_DLL(fwpuclnt)
2506 WINE_CONFIG_DLL(gameux)
2507 WINE_CONFIG_TEST(dlls/gameux/tests)
2508 WINE_CONFIG_DLL(gdi.exe16,enable_win16)
2509 WINE_CONFIG_DLL(gdi32,,[implib])
2510 WINE_CONFIG_TEST(dlls/gdi32/tests)
2511 WINE_CONFIG_DLL(gdiplus,,[implib])
2512 WINE_CONFIG_TEST(dlls/gdiplus/tests)
2513 WINE_CONFIG_DLL(glu32,,[implib])
2514 WINE_CONFIG_DLL(gphoto2.ds)
2515 WINE_CONFIG_DLL(gpkcsp)
2516 WINE_CONFIG_DLL(hal)
2517 WINE_CONFIG_DLL(hhctrl.ocx,,[po])
2518 WINE_CONFIG_DLL(hid,,[implib])
2519 WINE_CONFIG_DLL(hlink,,[implib])
2520 WINE_CONFIG_TEST(dlls/hlink/tests)
2521 WINE_CONFIG_DLL(hnetcfg)
2522 WINE_CONFIG_DLL(httpapi)
2523 WINE_CONFIG_DLL(iccvid,,[po])
2524 WINE_CONFIG_DLL(icmp)
2525 WINE_CONFIG_DLL(ifsmgr.vxd,enable_win16)
2526 WINE_CONFIG_DLL(imaadp32.acm)
2527 WINE_CONFIG_DLL(imagehlp,,[implib])
2528 WINE_CONFIG_TEST(dlls/imagehlp/tests)
2529 WINE_CONFIG_DLL(imm.dll16,enable_win16)
2530 WINE_CONFIG_DLL(imm32,,[implib])
2531 WINE_CONFIG_TEST(dlls/imm32/tests)
2532 WINE_CONFIG_DLL(inetcomm,,[implib])
2533 WINE_CONFIG_TEST(dlls/inetcomm/tests)
2534 WINE_CONFIG_DLL(inetcpl.cpl,,[po])
2535 WINE_CONFIG_DLL(inetmib1)
2536 WINE_CONFIG_TEST(dlls/inetmib1/tests)
2537 WINE_CONFIG_DLL(infosoft)
2538 WINE_CONFIG_TEST(dlls/infosoft/tests)
2539 WINE_CONFIG_DLL(initpki)
2540 WINE_CONFIG_DLL(inkobj)
2541 WINE_CONFIG_DLL(inseng)
2542 WINE_CONFIG_DLL(iphlpapi,,[implib])
2543 WINE_CONFIG_TEST(dlls/iphlpapi/tests)
2544 WINE_CONFIG_DLL(itircl)
2545 WINE_CONFIG_DLL(itss)
2546 WINE_CONFIG_TEST(dlls/itss/tests)
2547 WINE_CONFIG_DLL(jscript,,[po])
2548 WINE_CONFIG_TEST(dlls/jscript/tests)
2549 WINE_CONFIG_DLL(kernel32,,[mc,implib])
2550 WINE_CONFIG_TEST(dlls/kernel32/tests)
2551 WINE_CONFIG_DLL(keyboard.drv16,enable_win16)
2552 WINE_CONFIG_DLL(krnl386.exe16,enable_win16,[implib],[kernel])
2553 WINE_CONFIG_DLL(ktmw32)
2554 WINE_CONFIG_DLL(loadperf,,[implib])
2555 WINE_CONFIG_DLL(localspl,,[po])
2556 WINE_CONFIG_TEST(dlls/localspl/tests)
2557 WINE_CONFIG_DLL(localui,,[po])
2558 WINE_CONFIG_TEST(dlls/localui/tests)
2559 WINE_CONFIG_DLL(lz32,,[implib])
2560 WINE_CONFIG_TEST(dlls/lz32/tests)
2561 WINE_CONFIG_DLL(lzexpand.dll16,enable_win16)
2562 WINE_CONFIG_DLL(mapi32,,[po,implib])
2563 WINE_CONFIG_TEST(dlls/mapi32/tests)
2564 WINE_CONFIG_DLL(mapistub)
2565 WINE_CONFIG_DLL(mciavi32)
2566 WINE_CONFIG_DLL(mcicda)
2567 WINE_CONFIG_DLL(mciqtz32)
2568 WINE_CONFIG_DLL(mciseq)
2569 WINE_CONFIG_DLL(mciwave)
2570 WINE_CONFIG_DLL(midimap)
2571 WINE_CONFIG_DLL(mlang,,[implib])
2572 WINE_CONFIG_TEST(dlls/mlang/tests)
2573 WINE_CONFIG_DLL(mmdevapi)
2574 WINE_CONFIG_TEST(dlls/mmdevapi/tests)
2575 WINE_CONFIG_DLL(mmdevldr.vxd,enable_win16)
2576 WINE_CONFIG_DLL(mmsystem.dll16,enable_win16)
2577 WINE_CONFIG_DLL(monodebg.vxd,enable_win16)
2578 WINE_CONFIG_DLL(mountmgr.sys)
2579 WINE_CONFIG_DLL(mouse.drv16,enable_win16)
2580 WINE_CONFIG_DLL(mpr,,[po,implib])
2581 WINE_CONFIG_DLL(mprapi,,[implib])
2582 WINE_CONFIG_DLL(msacm.dll16,enable_win16)
2583 WINE_CONFIG_DLL(msacm32.drv)
2584 WINE_CONFIG_DLL(msacm32,,[implib])
2585 WINE_CONFIG_TEST(dlls/msacm32/tests)
2586 WINE_CONFIG_DLL(msadp32.acm)
2587 WINE_CONFIG_DLL(mscat32)
2588 WINE_CONFIG_DLL(mscms,,[implib])
2589 WINE_CONFIG_TEST(dlls/mscms/tests)
2590 WINE_CONFIG_DLL(mscoree)
2591 WINE_CONFIG_TEST(dlls/mscoree/tests)
2592 WINE_CONFIG_DLL(msctf)
2593 WINE_CONFIG_TEST(dlls/msctf/tests)
2594 WINE_CONFIG_DLL(msdaps)
2595 WINE_CONFIG_DLL(msdmo,,[implib])
2596 WINE_CONFIG_DLL(msftedit)
2597 WINE_CONFIG_DLL(msg711.acm)
2598 WINE_CONFIG_DLL(msgsm32.acm)
2599 WINE_CONFIG_DLL(mshtml.tlb)
2600 WINE_CONFIG_DLL(mshtml,,[po,implib])
2601 WINE_CONFIG_TEST(dlls/mshtml/tests)
2602 WINE_CONFIG_DLL(msi,,[po,implib])
2603 WINE_CONFIG_TEST(dlls/msi/tests)
2604 WINE_CONFIG_DLL(msimg32,,[implib])
2605 WINE_CONFIG_DLL(msimtf)
2606 WINE_CONFIG_DLL(msisip)
2607 WINE_CONFIG_DLL(msisys.ocx)
2608 WINE_CONFIG_DLL(msnet32)
2609 WINE_CONFIG_DLL(msrle32,,[po])
2610 WINE_CONFIG_DLL(mssign32)
2611 WINE_CONFIG_DLL(mssip32)
2612 WINE_CONFIG_DLL(mstask)
2613 WINE_CONFIG_TEST(dlls/mstask/tests)
2614 WINE_CONFIG_DLL(msvcirt)
2615 WINE_CONFIG_DLL(msvcp80)
2616 WINE_CONFIG_DLL(msvcp90)
2617 WINE_CONFIG_TEST(dlls/msvcp90/tests)
2618 WINE_CONFIG_DLL(msvcr100)
2619 WINE_CONFIG_DLL(msvcr70,,[implib])
2620 WINE_CONFIG_DLL(msvcr71,,[implib])
2621 WINE_CONFIG_DLL(msvcr80)
2622 WINE_CONFIG_DLL(msvcr90)
2623 WINE_CONFIG_TEST(dlls/msvcr90/tests)
2624 WINE_CONFIG_DLL(msvcrt,,[implib])
2625 WINE_CONFIG_TEST(dlls/msvcrt/tests)
2626 WINE_CONFIG_DLL(msvcrt20,,[implib])
2627 WINE_CONFIG_DLL(msvcrt40,,[implib])
2628 WINE_CONFIG_DLL(msvcrtd,,[implib])
2629 WINE_CONFIG_TEST(dlls/msvcrtd/tests)
2630 WINE_CONFIG_DLL(msvfw32,,[po,implib])
2631 WINE_CONFIG_TEST(dlls/msvfw32/tests)
2632 WINE_CONFIG_DLL(msvidc32,,[po])
2633 WINE_CONFIG_DLL(msvideo.dll16,enable_win16)
2634 WINE_CONFIG_DLL(mswsock,,[implib])
2635 WINE_CONFIG_DLL(msxml)
2636 WINE_CONFIG_DLL(msxml2)
2637 WINE_CONFIG_DLL(msxml3)
2638 WINE_CONFIG_TEST(dlls/msxml3/tests)
2639 WINE_CONFIG_DLL(msxml4)
2640 WINE_CONFIG_DLL(msxml6)
2641 WINE_CONFIG_DLL(nddeapi,,[implib])
2642 WINE_CONFIG_DLL(netapi32,,[implib])
2643 WINE_CONFIG_TEST(dlls/netapi32/tests)
2644 WINE_CONFIG_DLL(newdev,,[implib])
2645 WINE_CONFIG_DLL(normaliz,,[implib])
2646 WINE_CONFIG_DLL(npmshtml)
2647 WINE_CONFIG_DLL(ntdll,,[implib])
2648 WINE_CONFIG_TEST(dlls/ntdll/tests)
2649 WINE_CONFIG_DLL(ntdsapi,,[implib])
2650 WINE_CONFIG_TEST(dlls/ntdsapi/tests)
2651 WINE_CONFIG_DLL(ntoskrnl.exe,,[implib])
2652 WINE_CONFIG_DLL(ntprint)
2653 WINE_CONFIG_TEST(dlls/ntprint/tests)
2654 WINE_CONFIG_DLL(objsel)
2655 WINE_CONFIG_DLL(odbc32,,[implib])
2656 WINE_CONFIG_DLL(odbccp32,,[implib])
2657 WINE_CONFIG_TEST(dlls/odbccp32/tests)
2658 WINE_CONFIG_DLL(ole2.dll16,enable_win16)
2659 WINE_CONFIG_DLL(ole2conv.dll16,enable_win16)
2660 WINE_CONFIG_DLL(ole2disp.dll16,enable_win16)
2661 WINE_CONFIG_DLL(ole2nls.dll16,enable_win16)
2662 WINE_CONFIG_DLL(ole2prox.dll16,enable_win16)
2663 WINE_CONFIG_DLL(ole2thk.dll16,enable_win16)
2664 WINE_CONFIG_DLL(ole32,,[implib])
2665 WINE_CONFIG_TEST(dlls/ole32/tests)
2666 WINE_CONFIG_DLL(oleacc,,[po,implib])
2667 WINE_CONFIG_TEST(dlls/oleacc/tests)
2668 WINE_CONFIG_DLL(oleaut32,,[po,implib])
2669 WINE_CONFIG_TEST(dlls/oleaut32/tests)
2670 WINE_CONFIG_DLL(olecli.dll16,enable_win16)
2671 WINE_CONFIG_DLL(olecli32,,[implib])
2672 WINE_CONFIG_DLL(oledb32)
2673 WINE_CONFIG_TEST(dlls/oledb32/tests)
2674 WINE_CONFIG_DLL(oledlg,,[po,implib])
2675 WINE_CONFIG_DLL(olepro32,,[implib])
2676 WINE_CONFIG_DLL(olesvr.dll16,enable_win16)
2677 WINE_CONFIG_DLL(olesvr32,,[implib])
2678 WINE_CONFIG_DLL(olethk32)
2679 WINE_CONFIG_DLL(openal32)
2680 WINE_CONFIG_DLL(opencl)
2681 WINE_CONFIG_DLL(opengl32,,[implib])
2682 WINE_CONFIG_TEST(dlls/opengl32/tests)
2683 WINE_CONFIG_DLL(pdh,,[implib])
2684 WINE_CONFIG_TEST(dlls/pdh/tests)
2685 WINE_CONFIG_DLL(pidgen)
2686 WINE_CONFIG_DLL(powrprof,,[implib])
2687 WINE_CONFIG_DLL(printui)
2688 WINE_CONFIG_DLL(propsys,,[implib])
2689 WINE_CONFIG_TEST(dlls/propsys/tests)
2690 WINE_CONFIG_DLL(psapi,,[implib])
2691 WINE_CONFIG_TEST(dlls/psapi/tests)
2692 WINE_CONFIG_DLL(pstorec)
2693 WINE_CONFIG_DLL(qcap)
2694 WINE_CONFIG_DLL(qedit)
2695 WINE_CONFIG_TEST(dlls/qedit/tests)
2696 WINE_CONFIG_DLL(qmgr)
2697 WINE_CONFIG_TEST(dlls/qmgr/tests)
2698 WINE_CONFIG_DLL(qmgrprxy)
2699 WINE_CONFIG_DLL(quartz,,[implib])
2700 WINE_CONFIG_TEST(dlls/quartz/tests)
2701 WINE_CONFIG_DLL(query)
2702 WINE_CONFIG_DLL(rasapi16.dll16,enable_win16)
2703 WINE_CONFIG_DLL(rasapi32,,[implib])
2704 WINE_CONFIG_TEST(dlls/rasapi32/tests)
2705 WINE_CONFIG_DLL(rasdlg,,[implib])
2706 WINE_CONFIG_DLL(resutils,,[implib])
2707 WINE_CONFIG_DLL(riched20,,[implib])
2708 WINE_CONFIG_TEST(dlls/riched20/tests)
2709 WINE_CONFIG_DLL(riched32)
2710 WINE_CONFIG_TEST(dlls/riched32/tests)
2711 WINE_CONFIG_DLL(rpcrt4,,[implib])
2712 WINE_CONFIG_TEST(dlls/rpcrt4/tests)
2713 WINE_CONFIG_DLL(rsabase)
2714 WINE_CONFIG_DLL(rsaenh,,[implib])
2715 WINE_CONFIG_TEST(dlls/rsaenh/tests)
2716 WINE_CONFIG_DLL(rstrtmgr)
2717 WINE_CONFIG_DLL(rtutils,,[implib])
2718 WINE_CONFIG_DLL(samlib)
2719 WINE_CONFIG_DLL(sane.ds,,[po])
2720 WINE_CONFIG_DLL(sccbase)
2721 WINE_CONFIG_DLL(schannel)
2722 WINE_CONFIG_TEST(dlls/schannel/tests)
2723 WINE_CONFIG_DLL(secur32,,[implib])
2724 WINE_CONFIG_TEST(dlls/secur32/tests)
2725 WINE_CONFIG_DLL(security)
2726 WINE_CONFIG_DLL(sensapi,,[implib])
2727 WINE_CONFIG_DLL(serialui,,[implib])
2728 WINE_CONFIG_TEST(dlls/serialui/tests)
2729 WINE_CONFIG_DLL(setupapi,,[po,implib])
2730 WINE_CONFIG_TEST(dlls/setupapi/tests)
2731 WINE_CONFIG_DLL(setupx.dll16,enable_win16)
2732 WINE_CONFIG_DLL(sfc,,[implib])
2733 WINE_CONFIG_DLL(sfc_os,,[implib])
2734 WINE_CONFIG_DLL(shdoclc,,[po])
2735 WINE_CONFIG_DLL(shdocvw,,[po,implib])
2736 WINE_CONFIG_TEST(dlls/shdocvw/tests)
2737 WINE_CONFIG_DLL(shell.dll16,enable_win16)
2738 WINE_CONFIG_DLL(shell32,,[po,implib])
2739 WINE_CONFIG_TEST(dlls/shell32/tests)
2740 WINE_CONFIG_DLL(shfolder,,[implib])
2741 WINE_CONFIG_DLL(shlwapi,,[po,implib])
2742 WINE_CONFIG_TEST(dlls/shlwapi/tests)
2743 WINE_CONFIG_DLL(slbcsp)
2744 WINE_CONFIG_DLL(slc,,[implib])
2745 WINE_CONFIG_DLL(snmpapi,,[implib])
2746 WINE_CONFIG_TEST(dlls/snmpapi/tests)
2747 WINE_CONFIG_DLL(softpub)
2748 WINE_CONFIG_DLL(sound.drv16,enable_win16)
2749 WINE_CONFIG_DLL(spoolss,,[implib])
2750 WINE_CONFIG_TEST(dlls/spoolss/tests)
2751 WINE_CONFIG_DLL(stdole2.tlb)
2752 WINE_CONFIG_DLL(stdole32.tlb)
2753 WINE_CONFIG_DLL(sti,,[implib])
2754 WINE_CONFIG_TEST(dlls/sti/tests)
2755 WINE_CONFIG_DLL(storage.dll16,enable_win16)
2756 WINE_CONFIG_DLL(stress.dll16,enable_win16)
2757 WINE_CONFIG_LIB(strmbase)
2758 WINE_CONFIG_LIB(strmiids)
2759 WINE_CONFIG_DLL(svrapi)
2760 WINE_CONFIG_DLL(sxs)
2761 WINE_CONFIG_DLL(system.drv16,enable_win16)
2762 WINE_CONFIG_DLL(t2embed)
2763 WINE_CONFIG_DLL(tapi32,,[implib])
2764 WINE_CONFIG_DLL(toolhelp.dll16,enable_win16)
2765 WINE_CONFIG_DLL(traffic)
2766 WINE_CONFIG_DLL(twain.dll16,enable_win16)
2767 WINE_CONFIG_DLL(twain_32)
2768 WINE_CONFIG_TEST(dlls/twain_32/tests)
2769 WINE_CONFIG_DLL(typelib.dll16,enable_win16)
2770 WINE_CONFIG_DLL(unicows,,[implib])
2771 WINE_CONFIG_DLL(updspapi)
2772 WINE_CONFIG_DLL(url,,[implib])
2773 WINE_CONFIG_DLL(urlmon,,[implib])
2774 WINE_CONFIG_TEST(dlls/urlmon/tests)
2775 WINE_CONFIG_DLL(usbd.sys,,[implib])
2776 WINE_CONFIG_DLL(user.exe16,enable_win16)
2777 WINE_CONFIG_DLL(user32,,[po,implib])
2778 WINE_CONFIG_TEST(dlls/user32/tests)
2779 WINE_CONFIG_DLL(userenv,,[implib])
2780 WINE_CONFIG_TEST(dlls/userenv/tests)
2781 WINE_CONFIG_DLL(usp10,,[implib])
2782 WINE_CONFIG_TEST(dlls/usp10/tests)
2783 WINE_CONFIG_LIB(uuid)
2784 WINE_CONFIG_DLL(uxtheme,,[implib])
2785 WINE_CONFIG_TEST(dlls/uxtheme/tests)
2786 WINE_CONFIG_DLL(vdhcp.vxd,enable_win16)
2787 WINE_CONFIG_DLL(vdmdbg,,[implib])
2788 WINE_CONFIG_DLL(ver.dll16,enable_win16)
2789 WINE_CONFIG_DLL(version,,[implib])
2790 WINE_CONFIG_TEST(dlls/version/tests)
2791 WINE_CONFIG_DLL(vmm.vxd,enable_win16)
2792 WINE_CONFIG_DLL(vnbt.vxd,enable_win16)
2793 WINE_CONFIG_DLL(vnetbios.vxd,enable_win16)
2794 WINE_CONFIG_DLL(vtdapi.vxd,enable_win16)
2795 WINE_CONFIG_DLL(vwin32.vxd,enable_win16)
2796 WINE_CONFIG_DLL(w32skrnl,enable_win16)
2797 WINE_CONFIG_DLL(w32sys.dll16,enable_win16)
2798 WINE_CONFIG_DLL(wbemprox)
2799 WINE_CONFIG_DLL(wer,,[implib])
2800 WINE_CONFIG_TEST(dlls/wer/tests)
2801 WINE_CONFIG_DLL(wiaservc)
2802 WINE_CONFIG_DLL(win32s16.dll16,enable_win16)
2803 WINE_CONFIG_DLL(win87em.dll16,enable_win16)
2804 WINE_CONFIG_DLL(winaspi.dll16,enable_win16)
2805 WINE_CONFIG_DLL(windebug.dll16,enable_win16)
2806 WINE_CONFIG_DLL(windowscodecs,,[implib])
2807 WINE_CONFIG_TEST(dlls/windowscodecs/tests)
2808 WINE_CONFIG_DLL(winealsa.drv)
2809 WINE_CONFIG_DLL(winecoreaudio.drv)
2810 WINE_CONFIG_LIB(winecrt0)
2811 WINE_CONFIG_DLL(wined3d,,[implib])
2812 WINE_CONFIG_DLL(wineesd.drv)
2813 WINE_CONFIG_DLL(winegstreamer)
2814 WINE_CONFIG_DLL(winejack.drv)
2815 WINE_CONFIG_DLL(winejoystick.drv)
2816 WINE_CONFIG_DLL(winemapi)
2817 WINE_CONFIG_DLL(winemp3.acm)
2818 WINE_CONFIG_DLL(winenas.drv)
2819 WINE_CONFIG_DLL(wineoss.drv)
2820 WINE_CONFIG_DLL(wineps.drv)
2821 WINE_CONFIG_DLL(wineps16.drv16,enable_win16)
2822 WINE_CONFIG_DLL(wineqtdecoder)
2823 WINE_CONFIG_DLL(winequartz.drv)
2824 WINE_CONFIG_DLL(winex11.drv)
2825 WINE_CONFIG_DLL(wing.dll16,enable_win16)
2826 WINE_CONFIG_DLL(wing32)
2827 WINE_CONFIG_DLL(winhttp,,[implib])
2828 WINE_CONFIG_TEST(dlls/winhttp/tests)
2829 WINE_CONFIG_DLL(wininet,,[po,implib])
2830 WINE_CONFIG_TEST(dlls/wininet/tests)
2831 WINE_CONFIG_DLL(winmm,,[po,implib])
2832 WINE_CONFIG_TEST(dlls/winmm/tests)
2833 WINE_CONFIG_DLL(winnls.dll16,enable_win16)
2834 WINE_CONFIG_DLL(winnls32,,[implib])
2835 WINE_CONFIG_DLL(winscard,,[implib])
2836 WINE_CONFIG_DLL(winsock.dll16,enable_win16)
2837 WINE_CONFIG_DLL(winspool.drv,,[po,implib],[winspool])
2838 WINE_CONFIG_TEST(dlls/winspool.drv/tests)
2839 WINE_CONFIG_DLL(wintab.dll16,enable_win16)
2840 WINE_CONFIG_DLL(wintab32,,[implib])
2841 WINE_CONFIG_TEST(dlls/wintab32/tests)
2842 WINE_CONFIG_DLL(wintrust,,[implib])
2843 WINE_CONFIG_TEST(dlls/wintrust/tests)
2844 WINE_CONFIG_DLL(wlanapi)
2845 WINE_CONFIG_DLL(wldap32,,[po,implib])
2846 WINE_CONFIG_TEST(dlls/wldap32/tests)
2847 WINE_CONFIG_DLL(wmi)
2848 WINE_CONFIG_DLL(wmiutils)
2849 WINE_CONFIG_DLL(wnaspi32,,[implib])
2850 WINE_CONFIG_DLL(wow32,enable_win16,[implib])
2851 WINE_CONFIG_DLL(ws2_32,,[implib])
2852 WINE_CONFIG_TEST(dlls/ws2_32/tests)
2853 WINE_CONFIG_DLL(wsock32,,[implib])
2854 WINE_CONFIG_DLL(wtsapi32,,[implib])
2855 WINE_CONFIG_DLL(wuapi)
2856 WINE_CONFIG_DLL(wuaueng)
2857 WINE_CONFIG_DLL(xapofx1_1)
2858 WINE_CONFIG_DLL(xinput1_1)
2859 WINE_CONFIG_DLL(xinput1_2)
2860 WINE_CONFIG_DLL(xinput1_3,,[implib],[xinput])
2861 WINE_CONFIG_TEST(dlls/xinput1_3/tests)
2862 WINE_CONFIG_DLL(xinput9_1_0)
2863 WINE_CONFIG_DLL(xmllite)
2864 WINE_CONFIG_TEST(dlls/xmllite/tests)
2865 WINE_CONFIG_MAKEFILE([documentation])
2866 WINE_CONFIG_MAKEFILE([fonts])
2867 WINE_CONFIG_MAKEFILE([include])
2868 WINE_CONFIG_MAKEFILE([libs/port])
2869 WINE_CONFIG_MAKEFILE([libs/wine])
2870 WINE_CONFIG_MAKEFILE([libs/wpp])
2871 WINE_CONFIG_MAKEFILE([loader])
2872 WINE_CONFIG_PROGRAM(aspnet_regiis,,[install])
2873 WINE_CONFIG_PROGRAM(attrib,,[install])
2874 WINE_CONFIG_PROGRAM(cacls,,[install])
2875 WINE_CONFIG_PROGRAM(clock,,[po,install])
2876 WINE_CONFIG_PROGRAM(cmd,,[po,install])
2877 WINE_CONFIG_TEST(programs/cmd/tests)
2878 WINE_CONFIG_PROGRAM(cmdlgtst)
2879 WINE_CONFIG_PROGRAM(control,,[install])
2880 WINE_CONFIG_PROGRAM(dxdiag,,[install])
2881 WINE_CONFIG_PROGRAM(eject,,[install])
2882 WINE_CONFIG_PROGRAM(expand,,[install])
2883 WINE_CONFIG_PROGRAM(explorer,,[install])
2884 WINE_CONFIG_PROGRAM(extrac32,,[install])
2885 WINE_CONFIG_PROGRAM(hh,,[install])
2886 WINE_CONFIG_PROGRAM(icinfo,,[install])
2887 WINE_CONFIG_PROGRAM(iexplore,,[install])
2888 WINE_CONFIG_PROGRAM(ipconfig,,[po,install])
2889 WINE_CONFIG_PROGRAM(lodctr,,[install])
2890 WINE_CONFIG_PROGRAM(mofcomp,,[install])
2891 WINE_CONFIG_PROGRAM(mshta,,[install])
2892 WINE_CONFIG_PROGRAM(msiexec,,[install,installbin])
2893 WINE_CONFIG_PROGRAM(net,,[po,install])
2894 WINE_CONFIG_PROGRAM(netsh,,[install])
2895 WINE_CONFIG_PROGRAM(ngen,,[install])
2896 WINE_CONFIG_PROGRAM(notepad,,[po,install,installbin])
2897 WINE_CONFIG_PROGRAM(oleview,,[po,install])
2898 WINE_CONFIG_PROGRAM(ping,,[install])
2899 WINE_CONFIG_PROGRAM(progman,,[po,install])
2900 WINE_CONFIG_PROGRAM(reg,,[po,install])
2901 WINE_CONFIG_PROGRAM(regedit,,[po,install,installbin])
2902 WINE_CONFIG_TEST(programs/regedit/tests)
2903 WINE_CONFIG_PROGRAM(regsvcs,,[install])
2904 WINE_CONFIG_PROGRAM(regsvr32,,[install,installbin])
2905 WINE_CONFIG_PROGRAM(rpcss,,[install])
2906 WINE_CONFIG_PROGRAM(rundll.exe16,enable_win16,[install])
2907 WINE_CONFIG_PROGRAM(rundll32,,[install])
2908 WINE_CONFIG_PROGRAM(sc,,[install])
2909 WINE_CONFIG_PROGRAM(secedit,,[install])
2910 WINE_CONFIG_PROGRAM(servicemodelreg,,[install])
2911 WINE_CONFIG_PROGRAM(services,,[install])
2912 WINE_CONFIG_PROGRAM(spoolsv,,[install])
2913 WINE_CONFIG_PROGRAM(start,,[po,install])
2914 WINE_CONFIG_PROGRAM(svchost,,[install])
2915 WINE_CONFIG_PROGRAM(taskkill,,[po,install])
2916 WINE_CONFIG_PROGRAM(taskmgr,,[po,install])
2917 WINE_CONFIG_PROGRAM(termsv,,[install])
2918 WINE_CONFIG_PROGRAM(uninstaller,,[po,install])
2919 WINE_CONFIG_PROGRAM(unlodctr,,[install])
2920 WINE_CONFIG_PROGRAM(view,,[po])
2921 WINE_CONFIG_PROGRAM(wineboot,,[install,installbin])
2922 WINE_CONFIG_PROGRAM(winebrowser,,[install])
2923 WINE_CONFIG_PROGRAM(winecfg,,[po,install,installbin])
2924 WINE_CONFIG_PROGRAM(wineconsole,,[po,install,installbin])
2925 WINE_CONFIG_PROGRAM(winedbg,,[po,install,installbin])
2926 WINE_CONFIG_PROGRAM(winedevice,,[install])
2927 WINE_CONFIG_PROGRAM(winefile,,[po,install,installbin])
2928 WINE_CONFIG_PROGRAM(winemenubuilder,,[install])
2929 WINE_CONFIG_PROGRAM(winemine,,[po,install,installbin])
2930 WINE_CONFIG_PROGRAM(winepath,,[install,installbin])
2931 WINE_CONFIG_PROGRAM(winetest)
2932 WINE_CONFIG_PROGRAM(winevdm,enable_win16,[install])
2933 WINE_CONFIG_PROGRAM(winhelp.exe16,enable_win16,[install])
2934 WINE_CONFIG_PROGRAM(winhlp32,,[po,install])
2935 WINE_CONFIG_PROGRAM(winoldap.mod16,enable_win16,[install])
2936 WINE_CONFIG_PROGRAM(winver,,[install])
2937 WINE_CONFIG_PROGRAM(wmic,,[install])
2938 WINE_CONFIG_PROGRAM(wordpad,,[po,install])
2939 WINE_CONFIG_PROGRAM(write,,[po,install])
2940 WINE_CONFIG_PROGRAM(wscript,,[install])
2941 WINE_CONFIG_PROGRAM(xcopy,,[po,install])
2942 WINE_CONFIG_MAKEFILE([server])
2943 WINE_CONFIG_TOOL(tools)
2944 WINE_CONFIG_TOOL(tools/widl)
2945 WINE_CONFIG_TOOL(tools/winebuild)
2946 WINE_CONFIG_TOOL(tools/winedump)
2947 WINE_CONFIG_TOOL(tools/winegcc)
2948 WINE_CONFIG_TOOL(tools/wmc)
2949 WINE_CONFIG_TOOL(tools/wrc)
2950
2951 AC_SUBST([LINGUAS],["\
2952 ar \
2953 bg \
2954 ca \
2955 cs \
2956 da \
2957 de \
2958 el \
2959 en \
2960 en_US \
2961 eo \
2962 es \
2963 fa \
2964 fi \
2965 fr \
2966 he \
2967 hi \
2968 hu \
2969 it \
2970 ja \
2971 ko \
2972 lt \
2973 ml \
2974 nb_NO \
2975 nl \
2976 or \
2977 pa \
2978 pl \
2979 pt_BR \
2980 pt_PT \
2981 rm \
2982 ro \
2983 ru \
2984 sk \
2985 sl \
2986 sr_RS@cyrillic \
2987 sr_RS@latin \
2988 sv \
2989 te \
2990 th \
2991 tr \
2992 uk \
2993 wa \
2994 zh_CN \
2995 zh_TW"])
2996
2997 dnl End of auto-generated output commands
2998
2999 AC_CONFIG_COMMANDS([Makefile], [wine_fn_output_makefile Makefile],
3000 [wine_fn_output_makefile ()
3001 {
3002     cat Make.tmp - <<\_WINE_EOF >\$tmp/makefile && mv -f \$tmp/makefile \$[]1 && rm -f Make.tmp && return
3003 $ALL_MAKEFILE_DEPENDS
3004 _WINE_EOF
3005     AS_ERROR([could not create Makefile])
3006 }])
3007
3008 AC_CONFIG_FILES([Make.tmp:Make.vars.in:Makefile.in])
3009
3010 dnl Some final makefile rules
3011
3012 if test "x$enable_maintainer_mode" = xyes
3013 then
3014     WINE_APPEND_RULE([ALL_MAKEFILE_DEPENDS],
3015 [\$(srcdir)/configure: configure.ac aclocal.m4
3016         cd \$(srcdir) && autoconf --warnings=all
3017 \$(srcdir)/include/config.h.in: include/stamp-h.in
3018 \$(srcdir)/include/stamp-h.in: configure.ac aclocal.m4
3019         cd \$(srcdir) && autoheader --warnings=all
3020         @echo timestamp > \$[@]
3021
3022 ALL_POT_FILES =$ALL_POT_FILES
3023 all: \$(ALL_PO_FILES)
3024 \$(ALL_PO_FILES): \$(srcdir)/po/wine.pot
3025         msgmerge -q \$[@] \$(srcdir)/po/wine.pot | msgattrib --no-obsolete -o \$[@].new && mv \$[@].new \$[@]
3026 \$(srcdir)/po/wine.pot: \$(ALL_POT_FILES)
3027         msgcat -o \$[@] \$(ALL_POT_FILES)])
3028 fi
3029
3030 if test -n "$with_wine64"
3031 then
3032 WINE_APPEND_RULE([ALL_MAKEFILE_DEPENDS],
3033 [all: fonts server $with_wine64/loader/wine $with_wine64/loader/wine-preloader
3034 fonts server:
3035         \$(RM) \$[@] && \$(LN_S) $with_wine64/\$[@] \$[@]
3036 $with_wine64/loader/wine:
3037         \$(RM) \$[@] && \$(LN_S) $ac_pwd/loader/wine \$[@]
3038 $with_wine64/loader/wine-preloader:
3039         \$(RM) \$[@] && \$(LN_S) $ac_pwd/loader/wine-preloader \$[@]
3040 clean::
3041         \$(RM) fonts server $with_wine64/loader/wine $with_wine64/loader/wine-preloader])
3042 fi
3043
3044 WINE_APPEND_RULE([ALL_MAKEFILE_DEPENDS],
3045 [uninstall::
3046         -rmdir \$(DESTDIR)\$(datadir)/wine \$(DESTDIR)\$(fakedlldir) \$(DESTDIR)\$(dlldir)])
3047
3048 AC_OUTPUT
3049
3050 if test "$no_create" = "yes"
3051 then
3052   exit 0
3053 fi
3054
3055 WINE_PRINT_MESSAGES
3056
3057 echo "
3058 $as_me: Finished.  Do '${ac_make}' to compile Wine.
3059 " >&AS_MESSAGE_FD
3060
3061 dnl Local Variables:
3062 dnl comment-start: "dnl "
3063 dnl comment-end: ""
3064 dnl comment-start-skip: "\\bdnl\\b\\s *"
3065 dnl compile-command: "autoreconf --warnings=all"
3066 dnl End: