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