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