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