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