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