ws2_32: ws_sockaddr_u2ws should zero the sockaddr_in.sin_zero field.
[wine/hacks.git] / configure.ac
blobefbf32d4a7da4e3c615f4805ebff0b2527b3ce92
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.
5 m4_define(WINE_VERSION,regexp(m4_include(VERSION),[version \([-.0-9A-Za-z]+\)],[\1]))
7 AC_PREREQ(2.53b)
8 AC_INIT([Wine],WINE_VERSION,[wine-devel@winehq.org])
9 AC_CONFIG_SRCDIR(server/atom.c)
10 AC_CONFIG_HEADERS(include/config.h)
11 AC_CONFIG_AUX_DIR(tools)
13 dnl **** Command-line arguments ****
15 AC_ARG_ENABLE(win16, AC_HELP_STRING([--disable-win16],[do not include Win16 support]))
16 AC_ARG_ENABLE(win64, AC_HELP_STRING([--enable-win64], [build a Win64 emulator on AMD64 (won't run Win32 binaries)]))
18 AC_ARG_WITH(opengl,    AC_HELP_STRING([--without-opengl],[do not use OpenGL]))
19 AC_ARG_WITH(wine-tools,AC_HELP_STRING([--with-wine-tools=<dir>],[use Wine tools from directory <dir>]))
21 AC_CANONICAL_HOST
22 case $host in
23   x86_64*linux*)
24     if test "x$enable_win64" != "xyes"
25     then
26       test -n "$CC" || CC="gcc -m32"
27       test -n "$LD" || LD="ld -m elf_i386"
28       test -n "$AS" || AS="as --32"
29       host_cpu="i386"
30     fi
31     ;;
32 esac
34 dnl enable_win16 defaults to yes on x86, to no on other CPUs
35 case $host_cpu in
36   *i[[3456789]]86*)
37     if test "x$enable_win16" != "xno" 
38     then
39       enable_win16="yes"
40     fi
41     ;;
42 esac
43    
44 AC_SUBST(WIN16_FILES,"\$(WIN16_FILES)")
45 AC_SUBST(WIN16_INSTALL,"\$(WIN16_INSTALL)")
46 if test "x$enable_win16" != "xyes"
47 then
48   WIN16_FILES=""
49   WIN16_INSTALL=""
52 dnl **** Check for some programs ****
54 AC_PROG_MAKE_SET
55 AC_PROG_CC
56 AC_PROG_CXX
57 dnl We can't use AC_PROG_CPP for winegcc, it uses by default $(CC) -E
58 AC_CHECK_TOOL(CPPBIN,cpp,cpp)
60 AC_CACHE_CHECK([for the directory containing the Wine tools], wine_cv_toolsdir,
61   [if test -z "$with_wine_tools"; then
62      if test "$cross_compiling" = "yes"; then
63        AC_MSG_ERROR([you must use the --with-wine-tools option when cross-compiling.])
64      else
65        wine_cv_toolsdir="\$(TOPOBJDIR)"
66      fi
67    elif test -d "$with_wine_tools/tools/winebuild"; then
68      case $with_wine_tools in
69        /*) wine_cv_toolsdir="$with_wine_tools" ;;
70        *)  wine_cv_toolsdir="\$(TOPOBJDIR)/$with_wine_tools" ;;
71      esac
72    else
73      AC_MSG_ERROR([could not find Wine tools in $with_wine_tools.])
74    fi])
75 AC_SUBST(TOOLSDIR,$wine_cv_toolsdir)
77 AC_PATH_XTRA
78 AC_PROG_LEX
80 dnl **** Just additional warning checks, since AC_PROG just sets 'lex' even
81 dnl **** without one present.
82 AC_CHECK_PROGS(XLEX,$LEX flex lex,none)
83 if test "$XLEX" = "none"
84 then
85   AC_MSG_ERROR([no suitable lex found. Please install the 'flex' package.])
88 dnl Check for bison
89 AC_CHECK_PROGS(BISON,bison,none)
90 if test "$BISON" = "none"
91 then
92   AC_MSG_ERROR([no suitable bison found. Please install the 'bison' package.])
95 AC_CHECK_TOOLS(AS,[gas as],as)
96 AC_CHECK_TOOL(LD,ld,ld)
97 AC_CHECK_TOOL(AR,ar,ar)
98 AC_PROG_RANLIB
99 AC_CHECK_TOOL(STRIP,strip,strip)
100 AC_CHECK_TOOL(WINDRES,windres,false)
101 AC_PROG_LN_S
102 WINE_PROG_LN
103 AC_PROG_EGREP
104 AC_PATH_PROG(LDCONFIG, ldconfig, true, [/sbin /usr/sbin $PATH])
105 AC_PROG_INSTALL
106 dnl Prepend src dir to install path dir if it's a relative path
107 case "$INSTALL" in
108   [[\\/$]]* | ?:[[\\/]]* ) ;;
109   *)  INSTALL="\\\$(TOPSRCDIR)/$INSTALL" ;;
110 esac
112 dnl Check for lint
113 AC_CHECK_PROGS(LINT, lclint lint)
114 if test "$LINT" = "lint"
115 then
116   LINTFLAGS="$LINTFLAGS -errchk=%all,no%longptr64 -errhdr=%user -Ncheck=macro -Nlevel=4"
117   dnl LINTFLAGS='-D_SIZE_T "-Dsize_t=unsigned long" -errchk=longptr64'
119 AC_SUBST(LINT)
120 AC_SUBST(LINTFLAGS)
122 dnl Check for various programs
123 AC_CHECK_PROGS(FONTFORGE, fontforge, false)
124 AC_CHECK_PROGS(PKG_CONFIG, pkg-config, false)
126 case $host_cpu in
127   *i[[3456789]]86*)
128     AC_PATH_PROG(PRELINK, prelink, false, [/sbin /usr/sbin $PATH])
129     ;;
130 esac
132 dnl **** Check for some libraries ****
134 dnl Check for -li386 for NetBSD and OpenBSD
135 AC_CHECK_LIB(i386,i386_set_ldt)
136 dnl Check for -lossaudio for NetBSD
137 AC_CHECK_LIB(ossaudio,_oss_ioctl)
138 dnl Check for -lxpg4 for FreeBSD
139 AC_CHECK_LIB(xpg4,_xpg4_setrunelocale)
140 dnl Check for -lpthread
141 AC_CHECK_LIB(pthread,pthread_create,AC_SUBST(LIBPTHREAD,"-lpthread"))
143 AC_SUBST(XLIB,"")
144 AC_SUBST(XFILES,"")
145 AC_SUBST(OPENGLFILES,"")
146 AC_SUBST(GLU32FILES,"")
147 AC_SUBST(OPENGL_LIBS,"")
148 AC_SUBST(QUARTZFILES,"")
150 dnl **** Check for header files ****
152 AC_CHECK_HEADERS(\
153         AudioUnit/AudioUnit.h \
154         Carbon/Carbon.h \
155         CoreAudio/CoreAudio.h \
156         DiskArbitration/DiskArbitration.h \
157         IOKit/IOKitLib.h \
158         alsa/asoundlib.h \
159         arpa/inet.h \
160         arpa/nameser.h \
161         asm/types.h \
162         capi20.h \
163         cups/cups.h \
164         curses.h \
165         direct.h \
166         dlfcn.h \
167         elf.h \
168         float.h \
169         fontconfig/fontconfig.h \
170         getopt.h \
171         ieeefp.h \
172         io.h \
173         jack/jack.h \
174         jpeglib.h \
175         lber.h \
176         lcms.h \
177         lcms/lcms.h \
178         ldap.h \
179         libaudioio.h \
180         link.h \
181         linux/cdrom.h \
182         linux/compiler.h \
183         linux/hdreg.h \
184         linux/input.h \
185         linux/ioctl.h \
186         linux/joystick.h \
187         linux/major.h \
188         linux/param.h \
189         linux/serial.h \
190         linux/ucdrom.h \
191         mach/machine.h \
192         machine/cpu.h \
193         machine/limits.h \
194         machine/soundcard.h \
195         mntent.h \
196         ncurses.h \
197         netdb.h \
198         netinet/in.h \
199         netinet/in_systm.h \
200         netinet/tcp.h \
201         netinet/tcp_fsm.h \
202         openssl/err.h \
203         openssl/ssl.h \
204         poll.h \
205         process.h \
206         pthread.h \
207         pwd.h \
208         regex.h \
209         sched.h \
210         scsi/scsi.h \
211         scsi/scsi_ioctl.h \
212         scsi/sg.h \
213         soundcard.h \
214         stdint.h \
215         strings.h \
216         sys/asoundlib.h \
217         sys/cdio.h \
218         sys/elf32.h \
219         sys/epoll.h \
220         sys/errno.h \
221         sys/event.h \
222         sys/exec_elf.h \
223         sys/filio.h \
224         sys/ioctl.h \
225         sys/ipc.h \
226         sys/limits.h \
227         sys/link.h \
228         sys/lwp.h \
229         sys/mman.h \
230         sys/modem.h \
231         sys/msg.h \
232         sys/mtio.h \
233         sys/param.h \
234         sys/poll.h \
235         sys/prctl.h \
236         sys/ptrace.h \
237         sys/reg.h \
238         sys/resource.h \
239         sys/scsiio.h \
240         sys/shm.h \
241         sys/signal.h \
242         sys/socket.h \
243         sys/sockio.h \
244         sys/soundcard.h \
245         sys/statvfs.h \
246         sys/strtio.h \
247         sys/syscall.h \
248         sys/sysctl.h \
249         sys/time.h \
250         sys/times.h \
251         sys/uio.h \
252         sys/un.h \
253         sys/vm86.h \
254         sys/wait.h \
255         syscall.h \
256         termios.h \
257         unicode/ubidi.h \
258         unistd.h \
259         utime.h \
260         valgrind/memcheck.h
262 AC_HEADER_STAT()
264 dnl **** Checks for headers that depend on other ones ****
266 AC_CHECK_HEADERS([sys/mount.h sys/statfs.h sys/user.h sys/vfs.h],,,
267     [#include <sys/types.h>
268      #if HAVE_SYS_PARAM_H
269      # include <sys/param.h>
270      #endif])
272 AC_CHECK_HEADERS([net/if.h net/if_arp.h net/if_dl.h net/if_types.h net/route.h netipx/ipx.h],,,
273     [#include <sys/types.h>
274      #if HAVE_SYS_SOCKET_H
275      # include <sys/socket.h>
276      #endif])
278 AC_CHECK_HEADERS([linux/ipx.h],,,
279     [#include <sys/types.h>
280      #ifdef HAVE_ASM_TYPES_H
281      # include <asm/types.h>
282      #endif
283      #if HAVE_SYS_SOCKET_H
284      # include <sys/socket.h>
285      #endif])
287 AC_CHECK_HEADERS([resolv.h],,,
288     [#include <sys/types.h>
289      #if HAVE_SYS_SOCKET_H
290      # include <sys/socket.h>
291      #endif
292      #if HAVE_NETINET_IN_H
293      # include <netinet/in.h>
294      #endif
295      #if HAVE_ARPA_NAMESER_H
296      # include <arpa/nameser.h>
297      #endif])
299 AC_CHECK_HEADERS(ucontext.h,,,[#include <signal.h>])
301 AC_CHECK_HEADERS([pthread_np.h],,,
302 [#ifdef HAVE_PTHREAD_H
303 #include <pthread.h>
304 #endif])
306 AC_CHECK_HEADERS([linux/videodev.h],,,
307 [#ifdef HAVE_SYS_TIME_H
308 #include <sys/time.h>
309 #endif
310 #include <sys/types.h>
311 #ifdef HAVE_ASM_TYPES_H
312 #include <asm/types.h>
313 #endif])
315 dnl Check for broken kernel header that doesn't define __user
316 AC_CHECK_HEADERS([linux/capi.h],,,[#define __user])
318 dnl **** Check for X11 ****
320 if test "$have_x" = "yes"
321 then
322     XLIB="-lXext -lX11"
323     ac_save_CPPFLAGS="$CPPFLAGS"
324     CPPFLAGS="$CPPFLAGS $X_CFLAGS"
326     dnl *** All of the following tests require X11/Xlib.h
327     AC_CHECK_HEADERS([X11/Xlib.h \
328                       X11/XKBlib.h \
329                       X11/Xutil.h \
330                       X11/extensions/shape.h \
331                       X11/extensions/XInput.h \
332                       X11/extensions/XShm.h \
333                       X11/extensions/Xinerama.h \
334                       X11/extensions/Xrandr.h \
335                       X11/extensions/Xrender.h \
336                       X11/extensions/xf86vmode.h],,,
337 [#ifdef HAVE_X11_XLIB_H
338 # include <X11/Xlib.h>
339 #endif
340 #ifdef HAVE_X11_XUTIL_H
341 # include <X11/Xutil.h>
342 #endif])
344         dnl *** Check for X keyboard extension
345         if test "$ac_cv_header_X11_XKBlib_h" = "yes"
346         then
347               AC_CHECK_LIB(X11, XkbQueryExtension,
348               AC_DEFINE(HAVE_XKB, 1, [Define if you have the XKB extension]),,
349               $X_LIBS -lXext -lX11 $X_EXTRA_LIBS)
350         fi
352         dnl *** Check for X Shm extension
353         if test "$ac_cv_header_X11_extensions_XShm_h" = "yes"
354         then
355               AC_CHECK_LIB(Xext, XShmQueryExtension,
356               AC_DEFINE(HAVE_LIBXXSHM, 1, [Define if you have the X Shm extension]),,
357               $X_LIBS -lXext -lX11 $X_EXTRA_LIBS)
358         fi
360         dnl *** Check for X shape extension
361         if test "$ac_cv_header_X11_extensions_shape_h" = "yes"
362         then
363               AC_CHECK_LIB(Xext,XShapeQueryExtension,
364               AC_DEFINE(HAVE_LIBXSHAPE, 1, [Define if you have the X Shape extension]),,
365               $X_LIBS -lXext -lX11 $X_EXTRA_LIBS)
366         fi
368         dnl *** Check for XFree86 VMODE extension
369         if test "$ac_cv_header_X11_extensions_xf86vmode_h" = "yes"
370         then
371                 AC_CHECK_LIB(Xxf86vm, XF86VidModeQueryExtension,
372                   [ AC_DEFINE(HAVE_LIBXXF86VM, 1, [Define if you have the Xxf86vm library])
373                      X_PRE_LIBS="$X_PRE_LIBS -lXxf86vm"
374                   ],,
375                   $X_LIBS -lXext -lX11 $X_EXTRA_LIBS)
376         fi
378         dnl *** Check for X RandR extension
379         if test "$ac_cv_header_X11_extensions_Xrandr_h" = "yes"
380         then
381                 AC_TRY_COMPILE([#include <X11/Xlib.h>
382 #include <X11/extensions/Xrandr.h>],[static typeof(XRRSetScreenConfigAndRate) * func;],
383                   [AC_DEFINE(HAVE_LIBXRANDR, 1, [Define if you have the Xrandr library])])
384         fi
386         dnl *** Check for Transform functions in Xrender
387         if test "$ac_cv_header_X11_extensions_Xrender_h" = "yes"
388         then
389               AC_CHECK_LIB(Xrender, XRenderSetPictureTransform,
390                 [AC_DEFINE(HAVE_XRENDERSETPICTURETRANSFORM, 1,
391                  [Define if Xrender has the XRenderSetPictureTransform function])],,
392                 $X_LIBS -lXext -lX11 $X_EXTRA_LIBS)
393         fi
395         dnl *** Check for Xinerama extension
396         if test "$ac_cv_header_X11_extensions_Xinerama_h" = "yes"
397         then
398                 AC_TRY_COMPILE([#include <X11/Xlib.h>
399 #include <X11/extensions/Xinerama.h>],[static typeof(XineramaQueryScreens) * func;],
400                   [AC_DEFINE(HAVE_LIBXINERAMA, 1, [Define if you have the Xinerama library])])
401         fi
403     dnl *** End of X11/Xlib.h check
405     dnl Check for the presence of OpenGL
406     if test "x$with_opengl" != "xno"
407     then
408         AC_CHECK_HEADERS(GL/gl.h GL/glx.h GL/glext.h GL/glu.h,,,
409 [#ifdef HAVE_GL_GLX_H
410 # include <GL/glx.h>
411 #endif])
412         if test "$ac_cv_header_GL_gl_h" = "yes" -a "$ac_cv_header_GL_glx_h" = "yes"
413         then
414             dnl Check for some problems due to old Mesa versions
415             AC_CACHE_CHECK([for up-to-date OpenGL version], wine_cv_opengl_header_version_OK,
416               AC_TRY_COMPILE(
417                 [#include <GL/gl.h>],
418                 [GLenum test = GL_UNSIGNED_SHORT_5_6_5;],
419                 [wine_cv_opengl_header_version_OK="yes"],
420                 [wine_cv_opengl_header_version_OK="no"]
421               )
422             )
424             if test "$wine_cv_opengl_header_version_OK" = "yes"
425             then
426                 dnl Check for the presence of the library
427                 AC_CHECK_LIB(GL,glXCreateContext,
428                              [OPENGL_LIBS="-lGL"
429                              OPENGLFILES='$(OPENGLFILES)'
430                              AC_DEFINE(HAVE_OPENGL, 1, [Define if OpenGL is present on the system])]
431                              ,,
432                              $X_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS)
434                 dnl Check for GLU32 library.
435                 AC_CHECK_LIB(GLU,gluLookAt,
436                              [OPENGL_LIBS="$OPENGL_LIBS -lGLU"
437                              GLU32FILES='$(GLU32FILES)']
438                              ,,
439                              $OPENGL_LIBS $X_LIBS $X_PRE_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS
440                 )
441              fi
442          else
443              wine_cv_opengl_headers_found="no"
444          fi
445     fi
446     dnl **** Check for NAS ****
447     AC_SUBST(NASLIBS,"")
448     AC_CHECK_HEADERS(audio/audiolib.h,
449          [AC_CHECK_HEADERS(audio/soundlib.h,,,[#include <audio/audiolib.h>])
450           AC_CHECK_LIB(audio,AuCreateFlow,
451                        [AC_DEFINE(HAVE_NAS,1,[Define if you have NAS including devel headers])
452                         NASLIBS="-laudio -lXt $X_LIBS -lXext -lX11 $X_EXTRA_LIBS"],,
453                        [-lXt $X_LIBS -lXext -lX11 $X_EXTRA_LIBS])])
455     CPPFLAGS="$ac_save_CPPFLAGS"
456     XFILES='$(XFILES)'
457 else
458     XLIB=""
459     X_CFLAGS=""
460     X_LIBS=""
463 dnl **** Check for libxml2 ****
465 AC_SUBST(XML2LIBS,"")
466 AC_SUBST(XML2INCL,"")
467 AC_SUBST(XSLTLIBS,"")
468 AC_SUBST(XSLTINCL,"")
469 if test "$PKG_CONFIG" != "false"
470 then
471     ac_save_CPPFLAGS="$CPPFLAGS"
472     ac_xml_libs="`$PKG_CONFIG --libs libxml-2.0 2>/dev/null`"
473     ac_xml_cflags="`$PKG_CONFIG --cflags libxml-2.0 2>/dev/null`"
474     CPPFLAGS="$CPPFLAGS $ac_xml_cflags"
475     AC_CHECK_HEADERS(libxml/parser.h,
476         [AC_CHECK_LIB(xml2, xmlParseMemory,
477             [AC_DEFINE(HAVE_LIBXML2, 1, [Define if you have the libxml2 library])
478              XML2LIBS="$ac_xml_libs"
479              XML2INCL="$ac_xml_cflags"],,$ac_xml_libs)
480          AC_CHECK_LIB(xml2, xmlReadMemory,
481             [AC_DEFINE(HAVE_XMLREADMEMORY,1,[Define if libxml2 has the xmlReadMemory function])],,$ac_xml_libs)
482          AC_CHECK_LIB(xml2, xmlNewDocPI,
483             [AC_DEFINE(HAVE_XMLNEWDOCPI,1,[Define if libxml2 has the xmlNewDocPI function])],,$ac_xml_libs)
484         ])
485     CPPFLAGS="$ac_save_CPPFLAGS"
486     ac_xslt_libs="`$PKG_CONFIG --libs libxslt 2>/dev/null`"
487     ac_xslt_cflags="`$PKG_CONFIG --cflags libxslt 2>/dev/null`"
488     CPPFLAGS="$CPPFLAGS $ac_xslt_cflags"
489     AC_CHECK_HEADERS([libxslt/pattern.h libxslt/transform.h],
490         [AC_CHECK_LIB(xslt, xsltCompilePattern,
491             [AC_DEFINE(HAVE_LIBXSLT, 1, [Define if you have the libxslt library])
492              XSLTLIBS="$ac_xslt_libs"
493              XSLTINCL="$ac_xslt_cflags"],,$ac_xslt_libs)
494         ],,
495 [#ifdef HAVE_LIBXSLT_PATTERN_H
496 # include <libxslt/pattern.h>
497 #endif])
498     CPPFLAGS="$ac_save_CPPFLAGS"
501 dnl **** Check for libhal ****
502 AC_SUBST(HALINCL,"")
503 if test "$PKG_CONFIG" != "false"
504 then
505     ac_save_CPPFLAGS="$CPPFLAGS"
506     ac_hal_libs="`$PKG_CONFIG --libs hal 2>/dev/null`"
507     ac_hal_cflags="`$PKG_CONFIG --cflags hal 2>/dev/null`"
508     CPPFLAGS="$CPPFLAGS $ac_hal_cflags"
509     AC_CHECK_HEADERS([dbus/dbus.h hal/libhal.h])
510     if test "$ac_cv_header_dbus_dbus_h" = "yes" -a "$ac_cv_header_hal_libhal_h" = "yes"
511     then
512         AC_CHECK_LIB(hal, libhal_ctx_new,
513           [AC_CHECK_LIB(dbus-1, dbus_connection_close,
514             [AC_DEFINE(HAVE_LIBHAL, 1, [Define if you have the hal library])
515              HALINCL="$ac_hal_cflags"],,$ac_hal_libs)])
516     fi
517     CPPFLAGS="$ac_save_CPPFLAGS"
520 dnl **** Check which curses lib to use ***
521 CURSESLIBS=""
522 if test "$ac_cv_header_ncurses_h" = "yes"
523 then
524     AC_CHECK_LIB(ncurses,waddch,[CURSESLIBS="-lncurses"])
525 elif test "$ac_cv_header_curses_h" = "yes"
526 then
527     AC_CHECK_LIB(curses,waddch,[CURSESLIBS="-lcurses"])
529 ac_save_LIBS="$LIBS"
530 LIBS="$LIBS $CURSESLIBS"
531 AC_CHECK_FUNCS(mousemask)
532 LIBS="$ac_save_LIBS"
534 dnl **** Check for SANE ****
535 AC_CHECK_PROG(sane_devel,sane-config,sane-config,no)
536 AC_SUBST(SANELIBS,"")
537 AC_SUBST(SANEINCL,"")
538 if test "$sane_devel" != "no"
539 then
540     SANELIBS="`$sane_devel --libs`"
541     SANEINCL="`$sane_devel --cflags`"
542     ac_save_CPPFLAGS="$CPPFLAGS"
543     ac_save_LIBS="$LIBS"
544     CPPFLAGS="$CPPFLAGS $SANEINCL"
545     LIBS="$LIBS $SANELIBS"
546     AC_CHECK_HEADER(sane/sane.h,
547                     [AC_CHECK_LIB(sane,sane_open,
548                                   [AC_DEFINE(HAVE_SANE, 1, [Define if we have SANE development environment])],
549                                   [SANELIBS=""
550                                   SANEINCL=""])],
551                     [SANELIBS=""
552                     SANEINCL=""])
553     LIBS="$ac_save_LIBS"
554     CPPFLAGS="$ac_save_CPPFLAGS"
557 dnl **** Check for libgphoto2 ****
558 AC_CHECK_PROG(gphoto2_devel,gphoto2-config,gphoto2-config,no)
559 AC_CHECK_PROG(gphoto2port_devel,gphoto2-port-config,gphoto2-port-config,no)
560 AC_SUBST(GPHOTO2LIBS,"")
561 AC_SUBST(GPHOTO2INCL,"")
562 if test "$gphoto2_devel" != "no" -a "$gphoto2port_devel" != "no"
563 then
564     GPHOTO2INCL="`$gphoto2_devel --cflags` `$gphoto2port_devel --cflags`"
565     GPHOTO2LIBS=""
566     for i in `$gphoto2_devel --libs` `$gphoto2port_devel --libs`
567     do
568       case "$i" in
569         -L/usr/lib|-L/usr/lib64) ;;
570         -L*|-l*) GPHOTO2LIBS="$GPHOTO2LIBS $i";;
571       esac
572     done
573     ac_save_CPPFLAGS="$CPPFLAGS"
574     ac_save_LIBS="$LIBS"
575     CPPFLAGS="$CPPFLAGS $GPHOTO2INCL"
576     LIBS="$LIBS $GPHOTO2LIBS"
577     AC_CHECK_HEADER(gphoto2-camera.h,
578                     [AC_CHECK_LIB(gphoto2,gp_camera_new,
579                                   [AC_DEFINE(HAVE_GPHOTO2, 1, [Define if we have libgphoto2 development environment])],
580                                   [GPHOTO2LIBS=""
581                                   GPHOTO2INCL=""])],
582                     [GPHOTO2LIBS=""
583                     GPHOTO2INCL=""])
584     LIBS="$ac_save_LIBS"
585     CPPFLAGS="$ac_save_CPPFLAGS"
588 dnl **** Check for the ICU library ****
589 if test "$ac_cv_header_unicode_ubidi_h" = "yes"
590 then
591     saved_libs="$LIBS"
592     for i in ${ICU_LIB_DIR-/usr/lib}/libsicu ${ICU_LIB_DIR-/usr/lib}/libicu
593     do
594         TEST_ICUUC_LIB="${ICUUC_LIB-${i}uc.a}"
595         TEST_ICUDATA_LIB="${ICUDATA_LIB-${i}data.a}"
596         AC_MSG_CHECKING(whether can link with ICU libraries $TEST_ICUUC_LIB and $TEST_ICUDATA_LIB)
597         LIBS="$saved_libs $TEST_ICUUC_LIB $TEST_ICUDATA_LIB -lstdc++ -lgcc_s"
598         AC_TRY_LINK([#include <unicode/ubidi.h>],[ubidi_open()],
599                     [AC_DEFINE(HAVE_ICU,1,[Define to 1 if the ICU libraries are installed])
600                      AC_SUBST(ICULIBS,"$TEST_ICUUC_LIB $TEST_ICUDATA_LIB -lstdc++ -lgcc_s")
601                      AC_MSG_RESULT(yes)],
602                     [AC_MSG_RESULT(no)])
603     done
604     LIBS="$saved_libs"
607 dnl **** Check for resolver library ***
608 AC_SUBST(RESOLVLIBS,"")
609 if test "$ac_cv_header_resolv_h" = "yes"
610 then
611     AC_CHECK_LIB(resolv, res_query,
612         [AC_DEFINE(HAVE_RESOLV, 1, [Define if you have the resolver library and header])
613          RESOLVLIBS="-lresolv"])
616 dnl **** Check for LittleCMS ***
617 AC_SUBST(LCMSLIBS,"")
618 if test "$ac_cv_header_lcms_h" = "yes" -o "$ac_cv_header_lcms_lcms_h" = "yes"
619 then
620     AC_CHECK_LIB(lcms, cmsOpenProfileFromFile,
621         [AC_DEFINE(HAVE_LCMS, 1, [Define if you have the LittleCMS development environment])
622          LCMSLIBS="-llcms"])
625 dnl **** Check for OpenLDAP ***
626 AC_SUBST(LDAPLIBS,"")
627 if test "$ac_cv_header_ldap_h" = "yes" -a "$ac_cv_header_lber_h" = "yes"
628 then
629     AC_CHECK_LIB(ldap_r, ldap_initialize,
630         [AC_CHECK_LIB(lber, ber_init,
631             [AC_DEFINE(HAVE_LDAP, 1, [Define if you have the OpenLDAP development environment])
632              LDAPLIBS="-lldap_r -llber"],,
633              [$LIBPTHREAD])],,
634              [$LIBPTHREAD])
635     WINE_CHECK_LIB_FUNCS(\
636         ldap_count_references \
637         ldap_first_reference \
638         ldap_next_reference \
639         ldap_parse_reference,
640         [$LDAPLIBS $LIBPTHREAD])
643 dnl **** Check for FreeType 2 ****
644 AC_SUBST(FREETYPELIBS,"")
645 AC_SUBST(FREETYPEINCL,"")
646 AC_CHECK_PROG(ft_devel,freetype-config,freetype-config,no)
647 if test "$ft_devel" = "no"
648 then
649     AC_CHECK_PROG(ft_devel2,freetype2-config,freetype2-config,no)
650     if test "$ft_devel2" = "freetype2-config"
651     then
652         ft_devel=$ft_devel2
653     fi
656 if test "$ft_devel" = "no"
657 then
658     wine_cv_msg_freetype=yes
659 else
660     FREETYPELIBS=`$ft_devel --libs`
661     FREETYPEINCL=`$ft_devel --cflags`
662     AC_CHECK_LIB(freetype,FT_Init_FreeType,ft_lib=yes,ft_lib=no,$FREETYPELIBS)
663     if test "$ft_lib" = "no"
664     then
665         wine_cv_msg_freetype=yes
666         FREETYPELIBS=""
667         FREETYPEINCL=""
668     else
669         ac_save_CPPFLAGS="$CPPFLAGS"
670         CPPFLAGS="$FREETYPEINCL $CPPFLAGS"
671         AC_CHECK_HEADERS(ft2build.h \
672                          freetype/freetype.h \
673                          freetype/ftglyph.h \
674                          freetype/tttables.h \
675                          freetype/ftnames.h \
676                          freetype/ftsnames.h \
677                          freetype/ttnameid.h \
678                          freetype/ftoutln.h \
679                          freetype/ftwinfnt.h \
680                          freetype/ftmodapi.h \
681                          freetype/internal/sfnt.h,,,
682                          [#if HAVE_FT2BUILD_H
683                           #include <ft2build.h>
684                           #endif])
685         AC_TRY_CPP([#include <ft2build.h>
686                     #include <freetype/fttrigon.h>],
687                     [AC_DEFINE(HAVE_FREETYPE_FTTRIGON_H, 1,
688           [Define if you have the <freetype/fttrigon.h> header file.])
689                     wine_cv_fttrigon=yes],
690                     wine_cv_fttrigon=no)
691         AC_CHECK_TYPES(FT_TrueTypeEngineType,,,[#include <freetype/ftmodapi.h>])
692         ac_save_CFLAGS="$CFLAGS"
693         CFLAGS="$CFLAGS $FREETYPELIBS"
694         AC_CHECK_FUNCS(FT_Load_Sfnt_Table)
695         CFLAGS="$ac_save_CFLAGS"
696         CPPFLAGS="$ac_save_CPPFLAGS"
697         dnl Check that we have at least freetype/freetype.h
698         if test "$ac_cv_header_freetype_freetype_h" = "yes" -a "$wine_cv_fttrigon" = "yes"
699         then
700             AC_DEFINE(HAVE_FREETYPE, 1, [Define if FreeType 2 is installed])
701             wine_cv_msg_freetype=no
702         else
703             FREETYPELIBS=""
704             FREETYPEINCL=""
705             wine_cv_msg_freetype=yes
706         fi
707     fi
710 dnl Only build the fonts dir if we have both freetype and fontforge
711 if test "$FONTFORGE" != "false" -a -n "$FREETYPELIBS"
712 then
713   AC_SUBST(FONTSSUBDIRS,"fonts")
716 dnl **** Check for parport (currently Linux only) ****
717 AC_CACHE_CHECK([for parport header/ppdev.h], ac_cv_c_ppdev,
718  AC_TRY_COMPILE(
719    [#include <linux/ppdev.h>],
720    [ioctl (1,PPCLAIM,0)],
721    [ac_cv_c_ppdev="yes"],
722    [ac_cv_c_ppdev="no"])
724 if test "$ac_cv_c_ppdev" = "yes"
725 then
726     AC_DEFINE(HAVE_PPDEV, 1, [Define if we can use ppdev.h for parallel port access])
729 dnl **** Check for va_copy ****
730 AC_CACHE_CHECK([for va_copy], ac_cv_c_va_copy,
731  AC_TRY_LINK(
732    [#include <stdarg.h>],
733    [va_list ap1, ap2;
734     va_copy(ap1,ap2);
735    ],
736    [ac_cv_c_va_copy="yes"],
737    [ac_cv_c_va_copy="no"])
739 if test "$ac_cv_c_va_copy" = "yes"
740 then
741     AC_DEFINE(HAVE_VA_COPY, 1, [Define if we have va_copy])
743 AC_CACHE_CHECK([for __va_copy], ac_cv_c___va_copy,
744  AC_TRY_LINK(
745    [#include <stdarg.h>],
746    [va_list ap1, ap2;
747     __va_copy(ap1,ap2);
748    ],
749    [ac_cv_c___va_copy="yes"],
750    [ac_cv_c___va_copy="no"])
752 if test "$ac_cv_c___va_copy" = "yes"
753 then
754     AC_DEFINE(HAVE___VA_COPY, 1, [Define if we have __va_copy])
757 dnl **** Check for sigsetjmp ****
758 AC_CACHE_CHECK([for sigsetjmp], ac_cv_c_sigsetjmp,
759  AC_TRY_LINK(
760    [#include <setjmp.h>],
761    [sigjmp_buf buf;
762     sigsetjmp( buf, 1 );
763     siglongjmp( buf, 1 );],
764    [ac_cv_c_sigsetjmp="yes"],
765    [ac_cv_c_sigsetjmp="no"])
767 if test "$ac_cv_c_sigsetjmp" = "yes"
768 then
769     AC_DEFINE(HAVE_SIGSETJMP, 1, [Define to 1 if you have the sigsetjmp (and siglongjmp) function])
772 dnl **** Check for pthread_rwlock_t ****
773 AC_CHECK_TYPES([pthread_rwlock_t, pthread_rwlockattr_t],,,[#define _GNU_SOURCE
774 #include <pthread.h>])
776 dnl **** Check for pthread functions ****
777 WINE_CHECK_LIB_FUNCS(\
778         pthread_attr_get_np \
779         pthread_getattr_np \
780         pthread_get_stackaddr_np \
781         pthread_get_stacksize_np,
782         [$LIBPTHREAD])
784 dnl **** Check for aRts Sound Server ****
785 AC_PATH_PROG(ARTSCCONFIG, artsc-config)
786 if test x$ARTSCCONFIG != x -a x$ARTSCCONFIG != x'"$ARTSCCONFIG"';
787 then
788     ARTSC_CFLAGS=""
789     for i in `$ARTSCCONFIG --cflags`
790     do
791       case "$i" in
792         -I*) ARTSC_CFLAGS="$ARTSC_CFLAGS $i";;
793       esac
794     done
795     ARTSC_LIBS=""
796     for i in `$ARTSCCONFIG --libs`
797     do
798       case "$i" in
799         -L/usr/lib|-L/usr/lib64) ;;
800         -L*|-l*) ARTSC_LIBS="$ARTSC_LIBS $i";;
801       esac
802     done
803     save_CFLAGS="$CFLAGS"
804     CFLAGS="$CFLAGS $ARTSC_CFLAGS"
805     AC_CHECK_LIB(artsc,arts_init,
806         [AC_TRY_COMPILE([#include <artsc.h>],[arts_stream_t stream;],
807             [AC_SUBST(ARTSLIBS, $ARTSC_LIBS)
808             AC_SUBST(ARTSINCL, $ARTSC_CFLAGS)
809             AC_DEFINE(HAVE_ARTS, 1, [Define if you have ARTS sound server])])],,
810             $ARTSC_LIBS)
811     CFLAGS="$save_CFLAGS"
814 dnl **** Check for EsounD ****
815 AC_PATH_PROG(ESDCONFIG, esd-config)
816 if test x$ESDCONFIG != x -a x$ESDCONFIG != x'"$ESDCONFIG"';
817 then
818     ESD_CFLAGS=""
819     for i in `$ESDCONFIG --cflags`
820     do
821       case "$i" in
822         -I*) ESD_CFLAGS="$ESD_CFLAGS $i";;
823       esac
824     done
825     ESD_LIBS=`$ESDCONFIG --libs`
826     save_CFLAGS="$CFLAGS"
827     CFLAGS="$CFLAGS $ESD_CFLAGS"
828     AC_CHECK_LIB(esd,esd_open_sound,
829         [AC_SUBST(ESDLIBS, $ESD_LIBS)
830          AC_SUBST(ESDINCL, $ESD_CFLAGS)
831          AC_DEFINE(HAVE_ESD, 1, [Define if you have EsounD sound server])])
832     CFLAGS="$save_CFLAGS"
835 dnl **** Check for ALSA 1.x ****
836 AC_SUBST(ALSALIBS,"")
837 if test "$ac_cv_header_sys_asoundlib_h" = "yes" -o "$ac_cv_header_alsa_asoundlib_h" = "yes"
838 then
839     AC_CHECK_LIB(asound,snd_pcm_hw_params_get_access,
840         [AC_TRY_COMPILE([#ifdef HAVE_ALSA_ASOUNDLIB_H
841 #include <alsa/asoundlib.h>
842 #elif defined(HAVE_SYS_ASOUNDLIB_H)
843 #include <sys/asoundlib.h>
844 #endif],
845                         [int ret = snd_pcm_hw_params_get_access(NULL, NULL)],
846                         [AC_DEFINE(HAVE_ALSA,1,[Define if you have ALSA 1.x including devel headers])
847                          ALSALIBS="-lasound"])])
850 dnl **** Check for libaudioio (which can be used to get solaris audio support) ****
852 AC_SUBST(AUDIOIOLIBS,"")
853 if test "$ac_cv_header_libaudioio_h" = "yes"
854 then
855     AC_CHECK_LIB(audioio,AudioIOGetVersion,
856                   [AUDIOIOLIBS="-laudioio"
857                    AC_DEFINE(HAVE_LIBAUDIOIO, 1, [Define if you have libaudioIO])])
860 dnl **** Check for capi4linux ****
862 if test "$ac_cv_header_capi20_h" = "yes" -a "$ac_cv_header_linux_capi_h" = "yes"
863 then
864     AC_CHECK_LIB(capi20,capi20_register,[AC_DEFINE(HAVE_CAPI4LINUX,1,[Define if you have capi4linux libs and headers])])
867 dnl **** Check for gcc specific options ****
869 AC_SUBST(EXTRACFLAGS,"")
870 if test "x${GCC}" = "xyes"
871 then
872   EXTRACFLAGS="-Wall -pipe"
874   dnl Check for strength-reduce bug
875   AC_CACHE_CHECK( [for gcc strength-reduce bug], ac_cv_c_gcc_strength_bug,
876                   AC_TRY_RUN([
877 int     L[[4]] = {0,1,2,3};
878 int main(void) {
879   static int Array[[3]];
880   unsigned int B = 3;
881   int i;
882   for(i=0; i<B; i++) Array[[i]] = i - 3;
883   for(i=0; i<4 - 1; i++) L[[i]] = L[[i + 1]];
884   L[[i]] = 4;
886   exit( Array[[1]] != -2 || L[[2]] != 3);
888     ac_cv_c_gcc_strength_bug="no",
889     ac_cv_c_gcc_strength_bug="yes",
890     ac_cv_c_gcc_strength_bug="yes") )
891   if test "$ac_cv_c_gcc_strength_bug" = "yes"
892   then
893     EXTRACFLAGS="$EXTRACFLAGS -fno-strength-reduce"
894   fi
896   dnl Check for some compiler flags
898   WINE_TRY_CFLAGS([-fshort-wchar],
899                   [AC_DEFINE(CC_FLAG_SHORT_WCHAR, "-fshort-wchar",
900                              [Specifies the compiler flag that forces a short wchar_t])])
901   WINE_TRY_CFLAGS([-fno-strict-aliasing])
902   WINE_TRY_CFLAGS([-Wdeclaration-after-statement])
903   WINE_TRY_CFLAGS([-Wwrite-strings])
905   dnl Check for noisy string.h
906   saved_CFLAGS="$CFLAGS"
907   CFLAGS="$CFLAGS -Wpointer-arith -Werror"
908   AC_CACHE_CHECK([for broken string.h that generates warnings], ac_cv_c_string_h_warnings,
909       AC_TRY_COMPILE([#include <string.h>],[],
910                      [ac_cv_c_string_h_warnings=no],[ac_cv_c_string_h_warnings=yes]))
911   CFLAGS="$saved_CFLAGS"
912   if test "$ac_cv_c_string_h_warnings" = "no"
913   then
914     EXTRACFLAGS="$EXTRACFLAGS -Wpointer-arith"
915   fi
917   AC_SUBST(BUILTINFLAG,"")
918   saved_CFLAGS="$CFLAGS"
919   CFLAGS="$CFLAGS -Werror"
920   AC_CACHE_CHECK([for builtin wchar inlines], ac_cv_c_builtin_wchar_ctype,
921       AC_TRY_COMPILE([],
922                      [int iswlower(unsigned short);],
923                      [ac_cv_c_builtin_wchar_ctype=no],[ac_cv_c_builtin_wchar_ctype=yes]))
924   CFLAGS="$saved_CFLAGS"
925   if test "$ac_cv_c_builtin_wchar_ctype" = "yes"
926   then
927     BUILTINFLAG="-fno-builtin"
928   fi
931 dnl **** Check how to define a function in assembly code ****
933 AC_CACHE_CHECK([how to define a function in assembly code], ac_cv_asm_func_def,
934   WINE_TRY_ASM_LINK(
935       ["\t.globl _ac_test\n\t.def _ac_test; .scl 2; .type 32; .endef\n_ac_test:\t.long 0"],,,
936       ac_cv_asm_func_def=".def",
937     [WINE_TRY_ASM_LINK(["\t.globl _ac_test\n\t.type _ac_test,@function\n_ac_test:\t.long 0"],,,
938       ac_cv_asm_func_def=".type @function",
939     [WINE_TRY_ASM_LINK(["\t.globl _ac_test\n\t.type _ac_test,2\n_ac_test:\t.long 0"],,,
940       ac_cv_asm_func_def=".type 2",
941       ac_cv_asm_func_def="unknown")])]))
943 AH_TEMPLATE(__ASM_FUNC,[Define to a macro to generate an assembly function directive])
944 case "$ac_cv_asm_func_def" in
945   ".def")
946      AC_DEFINE([__ASM_FUNC(name)], [".def " __ASM_NAME(name) "; .scl 2; .type 32; .endef"]) ;;
947   ".type @function")
948      AC_DEFINE([__ASM_FUNC(name)], [".type " __ASM_NAME(name) ",@function"]) ;;
949   ".type 2")
950      AC_DEFINE([__ASM_FUNC(name)], [".type " __ASM_NAME(name) ",2"]) ;;
951   *)
952      AC_DEFINE([__ASM_FUNC(name)], [""]) ;;
953 esac
955 dnl **** Check for underscore on external symbols ****
957 AC_CACHE_CHECK([whether external symbols need an underscore prefix], ac_cv_c_extern_prefix,
958     WINE_TRY_ASM_LINK([".globl _ac_test\n_ac_test:\t.long 0"],
959                       [extern int ac_test;],
960                       [if (ac_test) return 1],
961                       ac_cv_c_extern_prefix="yes",ac_cv_c_extern_prefix="no"))
963 AH_TEMPLATE(__ASM_NAME,[Define to a macro to generate an assembly name from a C symbol])
964 if test "$ac_cv_c_extern_prefix" = "yes"
965 then
966   AC_DEFINE([__ASM_NAME(name)], ["_" name])
967 else
968   AC_DEFINE([__ASM_NAME(name)], [name])
971 dnl **** Check for working dll ****
973 AC_SUBST(DLLEXT,"")
974 AC_SUBST(DLLFLAGS,"-D_REENTRANT")
975 AC_SUBST(LDSHARED,"")
976 AC_SUBST(LDDLLFLAGS,"")
977 AC_SUBST(LIBEXT,"so")
978 AC_SUBST(IMPLIBEXT,"def")
979 AC_SUBST(LIBWINE_LDFLAGS,"")
981 case $host_os in
982   cygwin*|mingw32*)
983     AC_CHECK_TOOL(DLLTOOL,dlltool,false)
984     AC_CHECK_TOOL(DLLWRAP,dllwrap,false)
985     if test "$DLLWRAP" = "false"; then
986       LIBEXT="a"
987     else
988       dnl FIXME - check whether dllwrap works correctly...
989       LIBEXT="dll"
990     fi
991     IMPLIBEXT="a"
992     dnl We can't build 16-bit NE dlls
993     WIN16_FILES=""
994     WIN16_INSTALL=""
995     ;;
996   darwin*|macosx*)
997     DLLEXT=".so"
998     LIBEXT="dylib"
999     DLLFLAGS="$DLLFLAGS -fPIC"
1000     LDDLLFLAGS="-bundle -multiply_defined suppress"
1001     LIBWINE_LDFLAGS="-multiply_defined suppress"
1002     LDSHARED="\$(CC) -dynamiclib -install_name @executable_path/\`\$(RELPATH) \$(bindir) \$(libdir)\`/\$(DYNAME)"
1003     STRIP="$STRIP -u -r"
1004     dnl declare needed frameworks
1005     AC_SUBST(COREFOUNDATIONLIB,"-framework CoreFoundation")
1006     AC_SUBST(IOKITLIB,"-framework IOKit -framework CoreFoundation")
1007     AC_SUBST(LDEXECFLAGS,["-image_base 0x7bf00000 -Wl,-segaddr,WINE_DOS,0x00000000,-segaddr,WINE_SHARED_HEAP,0x7f000000"])
1008     if test "$ac_cv_header_DiskArbitration_DiskArbitration_h" = "yes"
1009     then
1010         dnl DiskArbitration API is not public on Darwin < 8.0, use it only if header found
1011         AC_SUBST(DISKARBITRATIONLIB,"-framework DiskArbitration -framework CoreFoundation")
1012     fi
1013     if test "$ac_cv_header_CoreAudio_CoreAudio_h" = "yes" -a "$ac_cv_header_AudioUnit_AudioUnit_h" = "yes"
1014     then
1015         dnl CoreServices needed by AudioUnit
1016         AC_SUBST(COREAUDIO,"-framework CoreAudio -framework AudioUnit -framework CoreServices")
1017     fi
1018     case $host_cpu in
1019       *powerpc*)
1020         LDDLLFLAGS="$LDDLLFLAGS -read_only_relocs warning"  dnl FIXME
1021         ;;
1022     esac
1023     dnl Enable quartz driver on Mac OS X
1024     if test "$ac_cv_header_Carbon_Carbon_h" = "yes"
1025     then
1026         QUARTZFILES='$(QUARTZFILES)'
1027     fi
1028     ;;
1029   *)
1030     DLLFLAGS="$DLLFLAGS -fPIC"
1031     DLLEXT=".so"
1032     AC_CACHE_CHECK([whether we can build a GNU style ELF dll], ac_cv_c_dll_gnuelf,
1033         [WINE_TRY_SHLIB_FLAGS([-fPIC -shared -Wl,-Bsymbolic],
1034                               ac_cv_c_dll_gnuelf="yes",ac_cv_c_dll_gnuelf="no")])
1035     if test "$ac_cv_c_dll_gnuelf" = "yes"
1036     then
1037       LDSHARED="\$(CC) -shared"
1038       LDDLLFLAGS="-shared -Wl,-Bsymbolic"
1039       WINE_TRY_CFLAGS([-fPIC -shared -Wl,-soname,confest.so.1],
1040                       [LDSHARED="\$(CC) -shared \$(SONAME:%=-Wl,-soname,%)"],
1041                       [WINE_TRY_CFLAGS([-fPIC -shared -Wl,-h,confest.so.1],
1042                                        [LDSHARED="\$(CC) -shared \$(SONAME:%=-Wl,-h,%)"])])
1044       WINE_TRY_CFLAGS([-fPIC -shared -Wl,-Bsymbolic,-z,defs], [LDDLLFLAGS="$LDDLLFLAGS,-z,defs"])
1046       WINE_TRY_CFLAGS([-fPIC -shared -Wl,-Bsymbolic,-init,__wine_spec_init,-fini,__wine_spec_fini],
1047                       [LDDLLFLAGS="$LDDLLFLAGS,-init,__wine_spec_init,-fini,__wine_spec_fini"])
1049       echo '{ global: *; };' >conftest.map
1050       WINE_TRY_CFLAGS([-fPIC -shared -Wl,--version-script=conftest.map],
1051                       [LDSHARED="$LDSHARED \$(VERSCRIPT:%=-Wl,--version-script=%)"])
1052       rm -f conftest.map
1054       WINE_TRY_CFLAGS([-fPIC -Wl,--export-dynamic],
1055                       [AC_SUBST(LDEXECFLAGS,["-Wl,--export-dynamic"])])
1057       WINE_TRY_CFLAGS([-fPIC -Wl,--rpath,\$ORIGIN/../lib],
1058                       [LIBWINE_LDFLAGS="-Wl,--rpath,\\\$\$ORIGIN/\`\$(RELPATH) \$(bindir) \$(libdir)\`"])
1060       case $host_cpu in
1061         *i[[3456789]]86* | x86_64)
1062           WINE_TRY_CFLAGS([-Wl,--section-start,.interp=0x7bf00400],
1063                           [LDEXECFLAGS="$LDEXECFLAGS -Wl,--section-start,.interp=0x7bf00400"])
1064           ;;
1065       esac
1067     else
1068       AC_CACHE_CHECK(whether we can build a UnixWare (Solaris) dll, ac_cv_c_dll_unixware,
1069           [WINE_TRY_SHLIB_FLAGS([-fPIC -Wl,-G,-h,conftest.so.1.0,-B,symbolic],
1070                                 ac_cv_c_dll_unixware="yes",ac_cv_c_dll_unixware="no")])
1071       if test "$ac_cv_c_dll_unixware" = "yes"
1072       then
1073         LDSHARED="\$(CC) -Wl,-G \$(SONAME:%=-Wl,-h,%)"
1074         LDDLLFLAGS="-Wl,-G,-B,symbolic"
1076       else
1077         AC_CACHE_CHECK(whether we can build an HP-UX dll, ac_cv_c_dll_hpux,
1078           [WINE_TRY_SHLIB_FLAGS([-shared], ac_cv_c_dll_hpux="yes", ac_cv_c_dll_hpux="no")])
1079         if test "$ac_cv_c_dll_hpux" = "yes"
1080         then
1081           LIBEXT="sl"
1082           DLLEXT=".sl"
1083           LDDLLFLAGS="-shared -fPIC"
1084           LDSHARED="\$(CC) -shared"
1085         fi
1086       fi
1087     fi
1089     dnl Check for cross compiler to build test programs
1090     AC_SUBST(CROSSTEST,"")
1091     if test "$cross_compiling" = "no"
1092     then
1093       AC_CHECK_PROGS(CROSSCC,i586-mingw32msvc-gcc i386-mingw32msvc-gcc i386-mingw32-gcc mingw32-gcc mingw-gcc,false)
1094       AC_CHECK_PROGS(DLLTOOL,i586-mingw32msvc-dlltool i386-mingw32msvc-dlltool i386-mingw32-dlltool mingw32-dlltool mingw-dlltool,false)
1095       AC_CHECK_PROGS(CROSSWINDRES,i586-mingw32msvc-windres i386-mingw32msvc-windres i386-mingw32-windres mingw32-windres mingw-windres,false)
1096       if test "$CROSSCC" != "false"; then CROSSTEST="\$(CROSSTEST)"; fi
1097     fi
1098     ;;
1099 esac
1101 if test "$LIBEXT" = "a"; then
1102   AC_MSG_ERROR(
1103 [could not find a way to build shared libraries.
1104 It is currently not possible to build Wine without shared library
1105 (.so) support to allow transparent switch between .so and .dll files.
1106 If you are using Linux, you will need a newer binutils.]
1110 case $build_os in
1111   cygwin*|mingw32*)
1112     AC_SUBST(LDPATH,"PATH=\"\$(TOOLSDIR)/libs/wine:\$\$PATH\"") ;;
1113   darwin*|macosx*)
1114     AC_SUBST(LDPATH,"DYLD_LIBRARY_PATH=\"\$(TOOLSDIR)/libs/wine:\$\$DYLD_LIBRARY_PATH\"") ;;
1115   *)
1116     AC_SUBST(LDPATH,"LD_LIBRARY_PATH=\"\$(TOOLSDIR)/libs/wine:\$\$LD_LIBRARY_PATH\"") ;;
1117 esac
1119 dnl Mingw needs explicit msvcrt for linking libwine and winsock for wininet
1120 case $host_os in
1121   mingw32*)
1122     AC_SUBST(CRTLIBS,"-lmsvcrt")
1123     AC_SUBST(SOCKETLIBS,"-lws2_32")
1124     ;;
1125 esac
1127 AC_SUBST(MAIN_BINARY,"wine-pthread")  dnl Default value
1128 case $host_cpu in
1129   *i[[3456789]]86*)
1130     case $host_os in
1131       linux* | k*bsd*-gnu)
1132         AC_SUBST(MAIN_BINARY,"wine-glibc")
1133         AC_SUBST(EXTRA_BINARIES,"wine-kthread wine-pthread wine-preloader") ;;
1134     esac
1135     ;;
1136 esac
1138 dnl **** Get the soname for libraries that we load dynamically ****
1140 if test "$LIBEXT" = "so" -o "$LIBEXT" = "dylib"
1141 then
1142   WINE_GET_SONAME(X11,XCreateWindow,[$X_LIBS $X_EXTRA_LIBS])
1143   WINE_GET_SONAME(Xext,XextCreateExtension,[$X_LIBS -lX11 $X_EXTRA_LIBS])
1144   WINE_GET_SONAME(Xi,XOpenDevice,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
1145   WINE_GET_SONAME(Xinerama,XineramaQueryScreens,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
1146   WINE_GET_SONAME(Xrender,XRenderQueryExtension,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
1147   WINE_GET_SONAME(Xrandr,XRRQueryExtension,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
1148   WINE_GET_SONAME(freetype,FT_Init_FreeType,[$X_LIBS])
1149   WINE_GET_SONAME(GL,glXQueryExtension,[$X_LIBS $X_EXTRA_LIBS])
1150   WINE_GET_SONAME(hal,libhal_ctx_new)
1151   WINE_GET_SONAME(txc_dxtn,fetch_2d_texel_rgba_dxt1)
1152   WINE_GET_SONAME(cups,cupsGetDefault)
1153   WINE_GET_SONAME(jack,jack_client_new)
1154   WINE_GET_SONAME(fontconfig,FcInit)
1155   WINE_GET_SONAME(ssl,SSL_library_init)
1156   WINE_GET_SONAME(crypto,BIO_new_socket)
1157   WINE_GET_SONAME(ncurses,waddch)
1158   WINE_GET_SONAME(curses,waddch)
1159   WINE_GET_SONAME(jpeg,jpeg_start_decompress)
1160   WINE_GET_SONAME(capi20,capi20_isinstalled)
1164 dnl **** Check for functions ****
1166 AC_CHECK_FUNCS(\
1167         _pclose \
1168         _popen \
1169         _snprintf \
1170         _spawnvp \
1171         _stricmp \
1172         _strnicmp \
1173         _vsnprintf \
1174         asctime_r \
1175         chsize \
1176         clone \
1177         connect \
1178         dlopen \
1179         epoll_create \
1180         ffs \
1181         finite \
1182         fork \
1183         fpclass \
1184         fstatfs \
1185         fstatvfs \
1186         ftruncate \
1187         futimes \
1188         futimesat \
1189         getaddrinfo \
1190         getdirentries \
1191         gethostbyname \
1192         getnameinfo \
1193         getnetbyname \
1194         getopt_long \
1195         getpagesize \
1196         getprotobyname \
1197         getprotobynumber \
1198         getpwuid \
1199         getservbyport \
1200         gettid \
1201         gettimeofday \
1202         getuid \
1203         inet_aton \
1204         inet_network \
1205         kqueue \
1206         lstat \
1207         memmove \
1208         mmap \
1209         pclose \
1210         poll \
1211         popen \
1212         prctl \
1213         pread \
1214         pwrite \
1215         readlink \
1216         rfork \
1217         sched_yield \
1218         select \
1219         sendmsg \
1220         setrlimit \
1221         settimeofday \
1222         sigaltstack \
1223         sigprocmask \
1224         snprintf \
1225         spawnvp \
1226         statfs \
1227         statvfs \
1228         strcasecmp \
1229         strerror \
1230         strncasecmp \
1231         strtold \
1232         tcgetattr \
1233         timegm \
1234         usleep \
1235         vsnprintf \
1236         wait4 \
1237         waitpid \
1240 dnl Check for -ldl
1241 if test "$ac_cv_func_dlopen" = no
1242 then
1243     AC_CHECK_LIB(dl,dlopen,[AC_DEFINE(HAVE_DLOPEN,1) AC_SUBST(LIBDL,"-ldl")])
1245 WINE_CHECK_LIB_FUNCS(dladdr,[$LIBDL])
1247 dnl Check for -lpoll for Mac OS X/Darwin
1248 if test "$ac_cv_func_poll" = no
1249 then
1250     AC_CHECK_LIB(poll,poll,[AC_DEFINE(HAVE_POLL,1) AC_SUBST(LIBPOLL,"-lpoll")])
1253 dnl Check for -lnsl for Solaris
1254 if test "$ac_cv_func_gethostbyname" = no
1255 then
1256     AC_CHECK_LIB(nsl,gethostbyname)
1259 dnl Check for -lsocket for Solaris
1260 if test "$ac_cv_func_connect" = no
1261 then
1262     AC_CHECK_LIB(socket,connect)
1265 dnl Check for -lresolv for Solaris
1266 if test "$ac_cv_func_inet_aton" = no
1267 then
1268     AC_CHECK_LIB(resolv,inet_aton)
1271 dnl **** Check for types ****
1273 AC_C_CONST
1274 AC_C_INLINE
1275 AC_CHECK_TYPES([mode_t, off_t, pid_t, size_t, ssize_t, long long, fsblkcnt_t, fsfilcnt_t])
1276 AC_CHECK_TYPES([sigset_t],,,[#include <signal.h>])
1277 AC_CHECK_TYPES([request_sense],,,[#include <linux/cdrom.h>])
1279 AC_CHECK_MEMBERS([struct ff_effect.direction],,,
1280 [#ifdef HAVE_LINUX_INPUT_H
1281 #include <linux/input.h>
1282 #endif])
1284 AC_CACHE_CHECK([for sigaddset],wine_cv_have_sigaddset,
1285                AC_TRY_LINK([#include <signal.h>],[sigset_t set; sigaddset(&set,SIGTERM);],
1286                            wine_cv_have_sigaddset=yes,wine_cv_have_sigaddset=no))
1287 if test "$wine_cv_have_sigaddset" = "yes"
1288 then
1289   AC_DEFINE(HAVE_SIGADDSET, 1, [Define if sigaddset is supported])
1293 AC_CACHE_CHECK([whether we can use re-entrant gethostbyname_r Linux style],
1294         wine_cv_linux_gethostbyname_r_6,
1295         AC_TRY_LINK([
1296 #include <netdb.h>
1297         ], [
1298     char *name=NULL;
1299     struct hostent he;
1300     struct hostent *result;
1301     char *buf=NULL;
1302     int bufsize=0;
1303     int res,errnr;
1304     char *addr=NULL;
1305     int addrlen=0;
1306     int addrtype=0;
1307     res=gethostbyname_r(name,&he,buf,bufsize,&result,&errnr);
1308     res=gethostbyaddr_r(addr, addrlen, addrtype,&he,buf,bufsize,&result,&errnr);
1309     ],
1310         wine_cv_linux_gethostbyname_r_6=yes,
1311         wine_cv_linux_gethostbyname_r_6=no
1312         )
1313    )
1314    if test "$wine_cv_linux_gethostbyname_r_6" = "yes"
1315    then
1316       AC_DEFINE(HAVE_LINUX_GETHOSTBYNAME_R_6, 1,
1317                 [Define if Linux-style gethostbyname_r and gethostbyaddr_r are available])
1318    fi
1320 if test "$ac_cv_header_linux_joystick_h" = "yes"
1321 then
1322    AC_CACHE_CHECK([whether linux/joystick.h uses the Linux 2.2+ API],
1323         wine_cv_linux_joystick_22_api,
1324         AC_TRY_COMPILE([
1325         #include <sys/ioctl.h>
1326         #include <linux/joystick.h>
1328         struct js_event blub;
1329         #if !defined(JS_EVENT_AXIS) || !defined(JS_EVENT_BUTTON)
1330         #error "no 2.2 header"
1331         #endif
1332         ],/*empty*/,
1333         wine_cv_linux_joystick_22_api=yes,
1334         wine_cv_linux_joystick_22_api=no,
1335         wine_cv_linux_joystick_22_api=no
1336         )
1337    )
1338    if test "$wine_cv_linux_joystick_22_api" = "yes"
1339    then
1340       AC_DEFINE(HAVE_LINUX_22_JOYSTICK_API, 1,
1341                 [Define if <linux/joystick.h> defines the Linux 2.2 joystick API])
1342    fi
1345 dnl **** FIXME: what about mixed cases, where we need two of them? ***
1347 dnl Check for statfs members
1348 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],,,
1349 [#include <sys/types.h>
1350 #ifdef HAVE_SYS_PARAM_H
1351 # include <sys/param.h>
1352 #endif
1353 #ifdef HAVE_SYS_MOUNT_H
1354 # include <sys/mount.h>
1355 #endif
1356 #ifdef HAVE_SYS_VFS_H
1357 # include <sys/vfs.h>
1358 #endif
1359 #ifdef HAVE_SYS_STATFS_H
1360 # include <sys/statfs.h>
1361 #endif])
1363 AC_CHECK_MEMBERS([struct statvfs.f_blocks],,,
1364 [#ifdef HAVE_SYS_STATVFS_H
1365 #include <sys/statvfs.h>
1366 #endif])
1368 dnl Check for socket structure members
1369 AC_CHECK_MEMBERS([struct msghdr.msg_accrights, struct sockaddr.sa_len, struct sockaddr_un.sun_len],,,
1370 [#include <sys/types.h>
1371 #ifdef HAVE_SYS_SOCKET_H
1372 # include <sys/socket.h>
1373 #endif
1374 #ifdef HAVE_SYS_UN_H
1375 # include <sys/un.h>
1376 #endif])
1378 dnl Check for scsireq_t and sg_io_hdr_t members
1379 AC_CHECK_MEMBERS([scsireq_t.cmd, sg_io_hdr_t.interface_id],,,
1380 [#include <sys/types.h>
1381 #ifdef HAVE_SCSI_SG_H
1382 #include <scsi/sg.h>
1383 #endif])
1385 dnl Check for siginfo_t members
1386 AC_CHECK_MEMBERS([siginfo_t.si_fd],,,[#include <signal.h>])
1388 dnl Check for struct mtget members
1389 AC_CHECK_MEMBERS([struct mtget.mt_blksiz, struct mtget.mt_gstat, struct mtget.mt_blkno],,,
1390 [#include <sys/types.h>
1391 #ifdef HAVE_SYS_MTIO_H
1392 #include <sys/mtio.h>
1393 #endif])
1395 dnl Check for struct option
1396 AC_CHECK_MEMBERS([struct option.name],,,
1397 [#ifdef HAVE_GETOPT_H
1398 #include <getopt.h>
1399 #endif])
1401 dnl Check for stat.st_blocks
1402 AC_CHECK_MEMBERS([struct stat.st_blocks])
1404 dnl Check for sin6_scope_id
1405 AC_CHECK_MEMBERS([struct sockaddr_in6.sin6_scope_id],,,
1406 [#ifdef HAVE_SYS_TYPES_H
1407 #include <sys/types.h>
1408 #endif
1409 #ifdef HAVE_NETINET_IN_H
1410 #include <netinet/in.h>
1411 #endif])
1413 dnl Check for ns_msg ptr member
1414 AC_CHECK_MEMBERS([ns_msg._msg_ptr],,,
1415 [#ifdef HAVE_SYS_TYPES_H
1416 #include <sys/types.h>
1417 #endif
1418 #ifdef HAVE_NETINET_IN_H
1419 # include <netinet/in.h>
1420 #endif
1421 #ifdef HAVE_ARPA_NAMESER_H
1422 # include <arpa/nameser.h>
1423 #endif])
1425 dnl Check for the external timezone variables timezone and daylight
1426 AC_CACHE_CHECK([for timezone variable], ac_cv_have_timezone,
1427                AC_TRY_LINK([#include <time.h>],[timezone = 1],
1428                            ac_cv_have_timezone="yes", ac_cv_have_timezone="no"))
1429 if test "$ac_cv_have_timezone" = "yes"
1430 then
1431     AC_DEFINE(HAVE_TIMEZONE, 1, [Define if you have the timezone variable])
1433 AC_CACHE_CHECK([for daylight variable], ac_cv_have_daylight,
1434                AC_TRY_LINK([#include <time.h>],[daylight = 1],
1435                            ac_cv_have_daylight="yes", ac_cv_have_daylight="no"))
1436 if test "$ac_cv_have_daylight" = "yes"
1437 then
1438     AC_DEFINE(HAVE_DAYLIGHT, 1, [Define if you have the daylight variable])
1441 dnl *** check for the need to define platform-specific symbols
1443 case $host_cpu in
1444   *i[[3456789]]86*) WINE_CHECK_DEFINE([__i386__]) ;;
1445   *x86_64*)         WINE_CHECK_DEFINE([__x86_64__]) ;;
1446   *alpha*)          WINE_CHECK_DEFINE([__ALPHA__]) ;;
1447   *sparc*)          WINE_CHECK_DEFINE([__sparc__]) ;;
1448   *powerpc*)        WINE_CHECK_DEFINE([__powerpc__]) ;;
1449 esac
1451 case $host_vendor in
1452   *sun*) WINE_CHECK_DEFINE([__sun__]) ;;
1453 esac
1455 dnl **** Generate output files ****
1457 dnl autoconf versions before 2.59d need backslashes to escape newlines in subst variables
1458 AC_SUBST(DEPENDENCIES,m4_if(m4_version_compare(m4_defn([m4_PACKAGE_VERSION]), [2.59d]), -1,
1459 ["### Dependencies:\\
1461 .INIT: Makefile\\
1462 .BEGIN: Makefile\\
1463 Makefile: dummy\\
1464         -\$(MAKEDEP) -C\$(SRCDIR) -S\$(TOPSRCDIR) -T\$(TOPOBJDIR) \$(EXTRAINCL) \$(DEPEND_SRCS)\\
1466 \$(ALL_OBJS): \$(IDL_H_SRCS:.idl=.h)\\
1467 \$(IDL_GEN_C_SRCS:.c=.o): \$(IDL_GEN_C_SRCS)\\
1468 \$(LEX_SRCS:.l=.yy.o): \$(LEX_SRCS:.l=.yy.c)\\
1469 \$(BISON_SRCS:.y=.tab.o): \$(BISON_SRCS:.y=.tab.c)"],
1470 ["### Dependencies:
1472 .INIT: Makefile
1473 .BEGIN: Makefile
1474 Makefile: dummy
1475         -\$(MAKEDEP) -C\$(SRCDIR) -S\$(TOPSRCDIR) -T\$(TOPOBJDIR) \$(EXTRAINCL) \$(DEPEND_SRCS)
1477 \$(ALL_OBJS): \$(IDL_H_SRCS:.idl=.h)
1478 \$(IDL_GEN_C_SRCS:.c=.o): \$(IDL_GEN_C_SRCS)
1479 \$(LEX_SRCS:.l=.yy.o): \$(LEX_SRCS:.l=.yy.c)
1480 \$(BISON_SRCS:.y=.tab.o): \$(BISON_SRCS:.y=.tab.c)"]))
1482 AH_TOP([#define __WINE_CONFIG_H])
1484 AC_CONFIG_COMMANDS([include/stamp-h], [echo timestamp > include/stamp-h])
1486 WINE_CONFIG_EXTRA_DIR(dlls/gdi32/enhmfdrv)
1487 WINE_CONFIG_EXTRA_DIR(dlls/gdi32/mfdrv)
1488 WINE_CONFIG_EXTRA_DIR(dlls/kernel32/nls)
1489 WINE_CONFIG_EXTRA_DIR(dlls/user32/resources)
1490 WINE_CONFIG_EXTRA_DIR(dlls/wineps.drv/data)
1491 WINE_CONFIG_EXTRA_DIR(include/wine)
1493 MAKE_RULES=Make.rules
1494 AC_SUBST_FILE(MAKE_RULES)
1496 MAKE_DLL_RULES=dlls/Makedll.rules
1497 AC_SUBST_FILE(MAKE_DLL_RULES)
1499 MAKE_IMPLIB_RULES=dlls/Makeimplib.rules
1500 AC_SUBST_FILE(MAKE_IMPLIB_RULES)
1502 MAKE_TEST_RULES=dlls/Maketest.rules
1503 AC_SUBST_FILE(MAKE_TEST_RULES)
1505 MAKE_PROG_RULES=programs/Makeprog.rules
1506 AC_SUBST_FILE(MAKE_PROG_RULES)
1508 AC_CONFIG_FILES([
1509 Make.rules
1510 dlls/Makedll.rules
1511 dlls/Makeimplib.rules
1512 dlls/Maketest.rules
1513 programs/Makeprog.rules
1514 Makefile
1515 dlls/Makefile
1516 dlls/activeds/Makefile
1517 dlls/advapi32/Makefile
1518 dlls/advapi32/tests/Makefile
1519 dlls/advpack/Makefile
1520 dlls/advpack/tests/Makefile
1521 dlls/amstream/Makefile
1522 dlls/atl/Makefile
1523 dlls/avicap32/Makefile
1524 dlls/avifil32/Makefile
1525 dlls/cabinet/Makefile
1526 dlls/cabinet/tests/Makefile
1527 dlls/capi2032/Makefile
1528 dlls/cards/Makefile
1529 dlls/cfgmgr32/Makefile
1530 dlls/clusapi/Makefile
1531 dlls/comcat/Makefile
1532 dlls/comcat/tests/Makefile
1533 dlls/comctl32/Makefile
1534 dlls/comctl32/tests/Makefile
1535 dlls/comdlg32/Makefile
1536 dlls/comdlg32/tests/Makefile
1537 dlls/compstui/Makefile
1538 dlls/crtdll/Makefile
1539 dlls/crypt32/Makefile
1540 dlls/crypt32/tests/Makefile
1541 dlls/cryptdll/Makefile
1542 dlls/cryptnet/Makefile
1543 dlls/ctl3d32/Makefile
1544 dlls/d3d8/Makefile
1545 dlls/d3d8/tests/Makefile
1546 dlls/d3d9/Makefile
1547 dlls/d3d9/tests/Makefile
1548 dlls/d3dim/Makefile
1549 dlls/d3drm/Makefile
1550 dlls/d3dx8/Makefile
1551 dlls/d3dxof/Makefile
1552 dlls/dbghelp/Makefile
1553 dlls/dciman32/Makefile
1554 dlls/ddraw/Makefile
1555 dlls/ddraw/tests/Makefile
1556 dlls/ddrawex/Makefile
1557 dlls/devenum/Makefile
1558 dlls/dinput/Makefile
1559 dlls/dinput/tests/Makefile
1560 dlls/dinput8/Makefile
1561 dlls/dmband/Makefile
1562 dlls/dmcompos/Makefile
1563 dlls/dmime/Makefile
1564 dlls/dmloader/Makefile
1565 dlls/dmscript/Makefile
1566 dlls/dmstyle/Makefile
1567 dlls/dmsynth/Makefile
1568 dlls/dmusic/Makefile
1569 dlls/dmusic32/Makefile
1570 dlls/dnsapi/Makefile
1571 dlls/dnsapi/tests/Makefile
1572 dlls/dplay/Makefile
1573 dlls/dplayx/Makefile
1574 dlls/dpnet/Makefile
1575 dlls/dpnhpast/Makefile
1576 dlls/dsound/Makefile
1577 dlls/dsound/tests/Makefile
1578 dlls/dswave/Makefile
1579 dlls/dxdiagn/Makefile
1580 dlls/dxerr8/Makefile
1581 dlls/dxerr9/Makefile
1582 dlls/dxguid/Makefile
1583 dlls/gdi32/Makefile
1584 dlls/gdi32/tests/Makefile
1585 dlls/glu32/Makefile
1586 dlls/gphoto2.ds/Makefile
1587 dlls/hhctrl.ocx/Makefile
1588 dlls/hid/Makefile
1589 dlls/hlink/Makefile
1590 dlls/hlink/tests/Makefile
1591 dlls/iccvid/Makefile
1592 dlls/icmp/Makefile
1593 dlls/ifsmgr.vxd/Makefile
1594 dlls/imaadp32.acm/Makefile
1595 dlls/imagehlp/Makefile
1596 dlls/imm32/Makefile
1597 dlls/infosoft/Makefile
1598 dlls/infosoft/tests/Makefile
1599 dlls/inseng/Makefile
1600 dlls/iphlpapi/Makefile
1601 dlls/iphlpapi/tests/Makefile
1602 dlls/itss/Makefile
1603 dlls/kernel32/Makefile
1604 dlls/kernel32/tests/Makefile
1605 dlls/localspl/Makefile
1606 dlls/localspl/tests/Makefile
1607 dlls/lz32/Makefile
1608 dlls/lz32/tests/Makefile
1609 dlls/mapi32/Makefile
1610 dlls/mapi32/tests/Makefile
1611 dlls/mciavi32/Makefile
1612 dlls/mcicda/Makefile
1613 dlls/mciseq/Makefile
1614 dlls/mciwave/Makefile
1615 dlls/midimap/Makefile
1616 dlls/mlang/Makefile
1617 dlls/mlang/tests/Makefile
1618 dlls/mmdevldr.vxd/Makefile
1619 dlls/monodebg.vxd/Makefile
1620 dlls/mpr/Makefile
1621 dlls/mprapi/Makefile
1622 dlls/msacm32.drv/Makefile
1623 dlls/msacm32/Makefile
1624 dlls/msacm32/tests/Makefile
1625 dlls/msadp32.acm/Makefile
1626 dlls/mscms/Makefile
1627 dlls/mscms/tests/Makefile
1628 dlls/mscoree/Makefile
1629 dlls/msdmo/Makefile
1630 dlls/msftedit/Makefile
1631 dlls/msg711.acm/Makefile
1632 dlls/mshtml/Makefile
1633 dlls/mshtml/tests/Makefile
1634 dlls/msi/Makefile
1635 dlls/msi/tests/Makefile
1636 dlls/msimg32/Makefile
1637 dlls/msisys.ocx/Makefile
1638 dlls/msnet32/Makefile
1639 dlls/msrle32/Makefile
1640 dlls/msvcrt/Makefile
1641 dlls/msvcrt/tests/Makefile
1642 dlls/msvcrt20/Makefile
1643 dlls/msvcrt40/Makefile
1644 dlls/msvcrtd/Makefile
1645 dlls/msvcrtd/tests/Makefile
1646 dlls/msvfw32/Makefile
1647 dlls/msvidc32/Makefile
1648 dlls/mswsock/Makefile
1649 dlls/msxml3/Makefile
1650 dlls/msxml3/tests/Makefile
1651 dlls/nddeapi/Makefile
1652 dlls/netapi32/Makefile
1653 dlls/netapi32/tests/Makefile
1654 dlls/newdev/Makefile
1655 dlls/ntdll/Makefile
1656 dlls/ntdll/tests/Makefile
1657 dlls/ntdsapi/Makefile
1658 dlls/objsel/Makefile
1659 dlls/odbc32/Makefile
1660 dlls/odbccp32/Makefile
1661 dlls/ole32/Makefile
1662 dlls/ole32/tests/Makefile
1663 dlls/oleacc/Makefile
1664 dlls/oleaut32/Makefile
1665 dlls/oleaut32/tests/Makefile
1666 dlls/olecli32/Makefile
1667 dlls/oledlg/Makefile
1668 dlls/olepro32/Makefile
1669 dlls/olesvr32/Makefile
1670 dlls/opengl32/Makefile
1671 dlls/powrprof/Makefile
1672 dlls/psapi/Makefile
1673 dlls/psapi/tests/Makefile
1674 dlls/pstorec/Makefile
1675 dlls/qcap/Makefile
1676 dlls/quartz/Makefile
1677 dlls/quartz/tests/Makefile
1678 dlls/query/Makefile
1679 dlls/rasapi32/Makefile
1680 dlls/resutils/Makefile
1681 dlls/riched20/Makefile
1682 dlls/riched20/tests/Makefile
1683 dlls/riched32/Makefile
1684 dlls/rpcrt4/Makefile
1685 dlls/rpcrt4/tests/Makefile
1686 dlls/rsabase/Makefile
1687 dlls/rsabase/tests/Makefile
1688 dlls/rsaenh/Makefile
1689 dlls/rsaenh/tests/Makefile
1690 dlls/sane.ds/Makefile
1691 dlls/secur32/Makefile
1692 dlls/secur32/tests/Makefile
1693 dlls/security/Makefile
1694 dlls/sensapi/Makefile
1695 dlls/serialui/Makefile
1696 dlls/setupapi/Makefile
1697 dlls/setupapi/tests/Makefile
1698 dlls/sfc/Makefile
1699 dlls/shdoclc/Makefile
1700 dlls/shdocvw/Makefile
1701 dlls/shdocvw/tests/Makefile
1702 dlls/shell32/Makefile
1703 dlls/shell32/tests/Makefile
1704 dlls/shfolder/Makefile
1705 dlls/shlwapi/Makefile
1706 dlls/shlwapi/tests/Makefile
1707 dlls/snmpapi/Makefile
1708 dlls/spoolss/Makefile
1709 dlls/stdole2.tlb/Makefile
1710 dlls/stdole32.tlb/Makefile
1711 dlls/sti/Makefile
1712 dlls/strmiids/Makefile
1713 dlls/svrapi/Makefile
1714 dlls/tapi32/Makefile
1715 dlls/twain_32/Makefile
1716 dlls/unicows/Makefile
1717 dlls/url/Makefile
1718 dlls/urlmon/Makefile
1719 dlls/urlmon/tests/Makefile
1720 dlls/user32/Makefile
1721 dlls/user32/tests/Makefile
1722 dlls/userenv/Makefile
1723 dlls/usp10/Makefile
1724 dlls/usp10/tests/Makefile
1725 dlls/uuid/Makefile
1726 dlls/uxtheme/Makefile
1727 dlls/uxtheme/tests/Makefile
1728 dlls/vdhcp.vxd/Makefile
1729 dlls/vdmdbg/Makefile
1730 dlls/version/Makefile
1731 dlls/version/tests/Makefile
1732 dlls/vmm.vxd/Makefile
1733 dlls/vnbt.vxd/Makefile
1734 dlls/vnetbios.vxd/Makefile
1735 dlls/vtdapi.vxd/Makefile
1736 dlls/vwin32.vxd/Makefile
1737 dlls/w32skrnl/Makefile
1738 dlls/winecrt0/Makefile
1739 dlls/wined3d/Makefile
1740 dlls/winedos/Makefile
1741 dlls/winemp3.acm/Makefile
1742 dlls/wineps.drv/Makefile
1743 dlls/winequartz.drv/Makefile
1744 dlls/winex11.drv/Makefile
1745 dlls/wininet/Makefile
1746 dlls/wininet/tests/Makefile
1747 dlls/winmm/Makefile
1748 dlls/winmm/joystick/Makefile
1749 dlls/winmm/tests/Makefile
1750 dlls/winmm/winealsa/Makefile
1751 dlls/winmm/winearts/Makefile
1752 dlls/winmm/wineaudioio/Makefile
1753 dlls/winmm/winecoreaudio/Makefile
1754 dlls/winmm/wineesd/Makefile
1755 dlls/winmm/winejack/Makefile
1756 dlls/winmm/winenas/Makefile
1757 dlls/winmm/wineoss/Makefile
1758 dlls/winnls32/Makefile
1759 dlls/winspool.drv/Makefile
1760 dlls/winspool.drv/tests/Makefile
1761 dlls/wintab32/Makefile
1762 dlls/wintrust/Makefile
1763 dlls/wintrust/tests/Makefile
1764 dlls/wldap32/Makefile
1765 dlls/wnaspi32/Makefile
1766 dlls/wow32/Makefile
1767 dlls/ws2_32/Makefile
1768 dlls/ws2_32/tests/Makefile
1769 dlls/wsock32/Makefile
1770 dlls/wtsapi32/Makefile
1771 documentation/Makefile
1772 fonts/Makefile
1773 include/Makefile
1774 libs/Makefile
1775 libs/port/Makefile
1776 libs/wine/Makefile
1777 libs/wpp/Makefile
1778 loader/Makefile
1779 programs/Makefile
1780 programs/clock/Makefile
1781 programs/cmd/Makefile
1782 programs/cmdlgtst/Makefile
1783 programs/control/Makefile
1784 programs/eject/Makefile
1785 programs/expand/Makefile
1786 programs/explorer/Makefile
1787 programs/hh/Makefile
1788 programs/icinfo/Makefile
1789 programs/iexplore/Makefile
1790 programs/msiexec/Makefile
1791 programs/notepad/Makefile
1792 programs/oleview/Makefile
1793 programs/progman/Makefile
1794 programs/regedit/Makefile
1795 programs/regsvr32/Makefile
1796 programs/rpcss/Makefile
1797 programs/rundll32/Makefile
1798 programs/start/Makefile
1799 programs/taskmgr/Makefile
1800 programs/uninstaller/Makefile
1801 programs/view/Makefile
1802 programs/wineboot/Makefile
1803 programs/winebrowser/Makefile
1804 programs/winecfg/Makefile
1805 programs/wineconsole/Makefile
1806 programs/winedbg/Makefile
1807 programs/winefile/Makefile
1808 programs/winemenubuilder/Makefile
1809 programs/winemine/Makefile
1810 programs/winepath/Makefile
1811 programs/winetest/Makefile
1812 programs/winevdm/Makefile
1813 programs/winhelp/Makefile
1814 programs/winver/Makefile
1815 programs/wordpad/Makefile
1816 server/Makefile
1817 tools/Makefile
1818 tools/widl/Makefile
1819 tools/winebuild/Makefile
1820 tools/winedump/Makefile
1821 tools/winegcc/Makefile
1822 tools/wmc/Makefile
1823 tools/wrc/Makefile])
1825 AC_OUTPUT
1827 dnl **** Display messages about additional packages ***
1829 if test "$no_create" = "yes"
1830 then
1831   exit 0
1834 if test "$verbose" = "yes"
1835 then
1836   dnl **** libcapi20-dev devel package ***
1837   if test "$ac_cv_header_capi20_h" != "yes" -o "$ac_cv_header_linux_capi_h" != "yes"
1838   then
1839     echo >&2
1840     AC_MSG_NOTICE([libcapi20 development files not found.])
1841     AC_MSG_NOTICE([Wine will be built without ISDN support. (capi2032.dll)])
1842   fi
1844   dnl **** libcupsys-dev devel package ***
1845   if test "$ac_cv_header_cups_cups_h" != "yes"
1846   then
1847     echo >&2
1848     AC_MSG_NOTICE([libcups development files not found.])
1849     AC_MSG_NOTICE([Wine will be built without CUPS support.])
1850   fi
1852   dnl **** libcurses devel package: see libncurses ***
1853   dnl **** libdbus-1 devel package ***
1854   dnl **** libdbus-1-dev is required for libhal-dev ***
1856   dnl **** libgphoto2 devel package ***
1857   if test "$ac_cv_header_gphoto2_camera_h" != "yes"
1858   then
1859     echo >&2
1860     AC_MSG_NOTICE([libgphoto2 development files not found.])
1861     if test "$ac_cv_header_sane_sane_h" = "yes"
1862     then
1863       AC_MSG_NOTICE([Wine will be built with limited Digital Camera support. (twain_32.dll)])
1864     else
1865       AC_MSG_NOTICE([Wine will be built without Digital Camera support. (gphoto2.ds/twain_32.dll)])
1866     fi
1867   fi
1869   dnl **** libhal devel package ***
1870   dnl **** libhal-dev depends on libdbus-1-dev ***
1871   if test "$ac_cv_header_hal_libhal_h" != "yes"
1872   then
1873     echo >&2
1874     AC_MSG_NOTICE([libhal development files not found.])
1875     AC_MSG_NOTICE([Wine will be built without dynamic device support. (explorer.exe)])
1876   fi
1878   dnl **** libicu devel package ****
1879   if test "$ac_cv_header_unicode_ubidi_h" != "yes"
1880   then
1881     echo >&2
1882     AC_MSG_NOTICE([libicu development files not found.])
1883     AC_MSG_NOTICE([Wine will be built without bidi (Right to Left) support. (gdi32.dll)])
1884   fi
1886   dnl **** liblcms devel package ****
1887   if test "$ac_cv_header_lcms_h" != "yes" -a "$ac_cv_header_lcms_lcms_h" != "yes"
1888   then
1889     echo >&2
1890     AC_MSG_NOTICE([liblcms development files not found.])
1891     AC_MSG_NOTICE([Wine will be built without Color Management support. (mscms.dll)])
1892   fi
1894   dnl **** libldap devel package ****
1895   if test "$ac_cv_header_ldap_h" != "yes" -o "$ac_cv_header_lber_h" != "yes"
1896   then
1897     echo >&2
1898     AC_MSG_NOTICE([libldap (OpenLDAP) development files not found.])
1899     AC_MSG_NOTICE([Wine will be built without LDAP support. (wldap32.dll)])
1900   fi
1902   dnl **** libncurses / libcurses devel package ***
1903   if test "x$with_curses" != "xno" -a "$ac_cv_header_ncurses_h" != "yes" -a "$ac_cv_header_curses_h" != "yes"
1904   then
1905     echo >&2
1906     AC_MSG_NOTICE([lib(n)curses development files not found.])
1907     AC_MSG_NOTICE([Wine will be built without (n)curses support. (wineconsole.exe)])
1908   fi
1910   dnl **** libsane devel package ***
1911   if test "$ac_cv_header_sane_sane_h" != "yes"
1912   then
1913     echo >&2
1914     AC_MSG_NOTICE([libsane development files not found.])
1915     AC_MSG_NOTICE([Wine will be built without Scanner support. (sane.ds/twain_32.dll)])
1916   fi
1918   dnl **** libX11-dev includes Xlib.h and Xutil.h and depends on ***
1919   dnl **** x11proto-input-dev (extensions/XInput.h) and x11proto-kb-dev (XKBlib.h) ***
1920   if test "$have_x" = "yes"
1921   then
1922     dnl **** libX11 - extension: Xext ***
1923     if test "$ac_cv_header_X11_extensions_shape_h" != "yes" -o "$ac_cv_header_X11_extensions_XShm_h" != "yes"
1924     then
1925       echo >&2
1926       AC_MSG_NOTICE([libxext development files not found.])
1927       AC_MSG_NOTICE([Wine will be built without Shm / Shape support. (winex11.drv)])
1928     fi
1930     dnl **** libX11 - extension: Xrandr ***
1931     if test "$ac_cv_header_X11_extensions_Xrandr_h" != "yes"
1932     then
1933       echo >&2
1934       AC_MSG_NOTICE([libXrandr development files not found.])
1935       AC_MSG_NOTICE([Wine will be built without Xrandr support. (winex11.drv)])
1936     fi
1938     dnl **** libX11 - extension: Xrender ***
1939     if test "$ac_cv_header_X11_extensions_Xrender_h" != "yes"
1940     then
1941       echo >&2
1942       AC_MSG_NOTICE([libXrender development files not found.])
1943       AC_MSG_NOTICE([Wine will be built without Xrender support. (winex11.drv)])
1944     fi
1946     dnl **** libX11 - extension: Xxf86vm ***
1947     if test "$ac_cv_header_X11_extensions_xf86vmode_h" != "yes"
1948     then
1949       echo >&2
1950       AC_MSG_NOTICE([libXxf86vm development files not found.])
1951       AC_MSG_NOTICE([Wine will be built without XFree86-VidMode support. (winex11.drv)])
1952     fi
1953   fi
1955   dnl **** libxml2 devel package ***
1956   if test "$ac_cv_header_libxml_parser_h" != "yes"
1957   then
1958     echo >&2
1959     AC_MSG_NOTICE([libxml2 development files not found.])
1960     AC_MSG_NOTICE([Wine will be built without XML support. (msxml.dll)])
1961   fi
1963   dnl **** libxslt devel package ***
1964   if test "$ac_cv_header_libxslt_pattern_h" != "yes" -o "$ac_cv_header_libxslt_transform_h" != "yes"
1965   then
1966     echo >&2
1967     AC_MSG_NOTICE([libxslt development files not found.])
1968     AC_MSG_NOTICE([Wine will be built without xslt support. (msxml.dll)])
1969   fi
1973 dnl **** Display warnings about important packages ***
1974 if test "$have_x" = "no"
1975 then
1976   echo >&2
1977   AC_MSG_WARN([X development files not found. Wine will be built without])
1978   AC_MSG_WARN([X support, which currently does not work, and probably])
1979   AC_MSG_WARN([isn't what you want anyway. You will need to install devel])
1980   AC_MSG_WARN([ packages of Xlib/Xfree86 at the very least.])
1983 if test -z "$OPENGLFILES"
1984 then
1985   echo >&2
1986   AC_MSG_WARN([Wine will be build without OpenGL or Direct3D support])
1987   AC_MSG_WARN([because something is wrong with the OpenGL setup:])
1988   if test "$wine_cv_opengl_headers_found" = "no"
1989   then
1990     AC_MSG_WARN([No OpenGL development headers were found])
1991   fi
1992   if test "$wine_cv_opengl_header_version_OK" = "no"
1993   then
1994     AC_MSG_WARN([Old Mesa headers detected. Consider upgrading your Mesa libraries (http://www.mesa3d.org/).])
1995   elif test "$ac_cv_lib_GL_glXCreateContext" = "no"
1996   then
1997      if test -f /usr/X11R6/lib/libGL.a
1998      then 
1999         AC_MSG_WARN([/usr/X11R6/lib/libGL.a is present on your system.
2000 This probably prevents linking to OpenGL. Try deleting the file and restarting configure.])
2001      else
2002         AC_MSG_WARN([No OpenGL library found on this system.])
2003      fi
2004   fi
2007 if test "$wine_cv_msg_freetype" = "yes"
2008 then
2009   echo >&2
2010   AC_MSG_WARN([Your system appears to have the FreeType 2 runtime libraries])
2011   AC_MSG_WARN([installed, but 'freetype-config' is not in your PATH. Install])
2012   AC_MSG_WARN([the freetype-devel package (or its equivalent on your distribution)])
2013   AC_MSG_WARN([to enable Wine to use TrueType fonts.])
2016 if test -z "$FONTSSUBDIRS"
2017 then
2018   echo >&2
2019   if test "$FONTFORGE" = "false"
2020   then
2021     AC_MSG_WARN([FontForge is missing.])
2022   else
2023     AC_MSG_WARN([FreeType is missing.])
2024   fi
2025   AC_MSG_WARN([Fonts will not be built. Dialog text may be invisible or unaligned.])
2028 if test -z "$ALSALIBS" -a \
2029         -z "$ARTSC_LIBS" -a \
2030         -z "$AUDIOIOLIBS" -a \
2031         -z "$NASLIBS" -a \
2032         -z "$ESD_LIBS" -a \
2033         -z "$ac_cv_lib_soname_jack" -a \
2034         "$ac_cv_header_sys_soundcard_h" != "yes" -a \
2035         "$ac_cv_header_machine_soundcard_h" != "yes" -a \
2036         "$ac_cv_header_soundcard_h" != "yes"
2037 then
2038   echo >&2
2039   AC_MSG_WARN([No sound system was found. Windows applications will be silent.])
2040   AC_MSG_WARN([The currently supported sound systems are:])
2041   AC_MSG_WARN([ALSA, ARTS, EsounD, AudioIO, Jack, NAS and OSS])
2044 echo
2045 echo "Configure finished.  Do '${ac_make} depend && ${ac_make}' to compile Wine."
2046 echo
2048 dnl Local Variables:
2049 dnl comment-start: "dnl "
2050 dnl comment-end: ""
2051 dnl comment-start-skip: "\\bdnl\\b\\s *"
2052 dnl compile-command: "autoconf && autoheader"
2053 dnl End: