Initialize dwOSVersionInfoSize in GlobalMemoryStatus.
[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.53)
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(debug, AC_HELP_STRING([--disable-debug],[compile out all debugging messages]))
17 AC_ARG_ENABLE(trace, AC_HELP_STRING([--disable-trace],[compile out TRACE messages]))
18 AC_ARG_ENABLE(win64, AC_HELP_STRING([--enable-win64], [build a Win64 emulator on AMD64 (won't run Win32 binaries)]))
19
20 AC_ARG_WITH(opengl,    AC_HELP_STRING([--without-opengl],[do not use OpenGL]))
21 AC_ARG_WITH(curses,    AC_HELP_STRING([--without-curses],[do not use curses]))
22 AC_ARG_WITH(wine-tools,AC_HELP_STRING([--with-wine-tools=<dir>],[use Wine tools from directory <dir>]))
23
24 AC_SUBST(WIN16_FILES,"\$(WIN16_FILES)")
25 AC_SUBST(WIN16_INSTALL,"\$(WIN16_INSTALL)")
26 if test "x$enable_win16" = "xno"
27 then
28   WIN16_FILES=""
29   WIN16_INSTALL=""
30 fi
31
32 AC_SUBST(DLLDEFS,"")
33 if test "x$enable_debug" = "xno"
34 then
35   DLLDEFS="$DLLDEFS -DWINE_NO_DEBUG_MSGS"
36 fi
37 if test "x$enable_trace" = "xno" -o "x$enable_debug" = "xno"
38 then
39   DLLDEFS="$DLLDEFS -DWINE_NO_TRACE_MSGS"
40 fi
41
42 dnl **** Check for some programs ****
43
44 AC_CANONICAL_HOST
45 case $host in
46   x86_64*linux*)
47     if test "x$enable_win64" != "xyes"
48     then
49       test -n "$CC" || CC="gcc -m32"
50       test -n "$LD" || LD="ld -m elf_i386"
51       test -n "$AS" || AS="as --32"
52     fi
53     ;;
54 esac
55
56 AC_PROG_MAKE_SET
57 AC_PROG_CC
58 AC_PROG_CXX
59 dnl We can't use AC_PROG_CPP for winegcc, it uses by default $(CC) -E
60 AC_CHECK_TOOL(CPPBIN,cpp,cpp)
61
62 AC_CACHE_CHECK([for the directory containing the Wine tools], wine_cv_toolsdir,
63   [if test -z "$with_wine_tools"; then
64      if test "$cross_compiling" = "yes"; then
65        AC_MSG_ERROR([you must use the --with-wine-tools option when cross-compiling.])
66      else
67        wine_cv_toolsdir="\$(TOPOBJDIR)"
68      fi
69    elif test -d "$with_wine_tools/tools/winebuild"; then
70      case $with_wine_tools in
71        /*) wine_cv_toolsdir="$with_wine_tools" ;;
72        *)  wine_cv_toolsdir="\$(TOPOBJDIR)/$with_wine_tools" ;;
73      esac
74    else
75      AC_MSG_ERROR([could not find Wine tools in $with_wine_tools.])
76    fi])
77 AC_SUBST(TOOLSDIR,$wine_cv_toolsdir)
78
79 AC_PATH_XTRA
80 AC_PROG_LEX
81
82 dnl **** Just additional warning checks, since AC_PROG just sets 'lex' even
83 dnl **** without one present.
84 AC_CHECK_PROGS(XLEX,$LEX flex lex,none)
85 if test "$XLEX" = "none"
86 then
87   AC_MSG_ERROR([no suitable lex found. Please install the 'flex' package.])
88 fi
89
90 dnl Check for bison
91 AC_CHECK_PROGS(BISON,bison,none)
92 if test "$BISON" = "none"
93 then
94   AC_MSG_ERROR([no suitable bison found. Please install the 'bison' package.])
95 fi
96
97 AC_CHECK_TOOLS(AS,[gas as],as)
98 AC_CHECK_TOOL(LD,ld,ld)
99 AC_CHECK_TOOL(AR,ar,ar)
100 AC_PROG_RANLIB
101 AC_CHECK_TOOL(STRIP,strip,strip)
102 AC_CHECK_TOOL(WINDRES,windres,false)
103 AC_PROG_LN_S
104 WINE_PROG_LN
105 AC_PROG_EGREP
106 AC_PATH_PROG(LDCONFIG, ldconfig, true, [/sbin /usr/sbin $PATH])
107 AC_PROG_INSTALL
108 dnl Prepend src dir to install path dir if it's a relative path
109 case "$INSTALL" in
110   [[\\/$]]* | ?:[[\\/]]* ) ;;
111   *)  INSTALL="\\\$(TOPSRCDIR)/$INSTALL" ;;
112 esac
113
114 dnl Check for lint
115 AC_CHECK_PROGS(LINT, lclint lint)
116 if test "$LINT" = "lint"
117 then
118   LINTFLAGS="$LINTFLAGS -errchk=%all,no%longptr64 -errhdr=%user -Ncheck=macro -Nlevel=4"
119   dnl LINTFLAGS='-D_SIZE_T "-Dsize_t=unsigned long" -errchk=longptr64'
120 fi
121 AC_SUBST(LINT)
122 AC_SUBST(LINTFLAGS)
123
124 dnl Check for various programs
125 AC_CHECK_PROGS(DB2HTML, docbook2html db2html, false)
126 AC_CHECK_PROGS(DB2PDF, docbook2pdf db2pdf, false)
127 AC_CHECK_PROGS(DB2PS, docbook2ps db2ps, false)
128 AC_CHECK_PROGS(DB2TXT, docbook2txt db2txt, false)
129 AC_CHECK_PROGS(FONTFORGE, fontforge, false)
130
131 dnl **** Check for some libraries ****
132
133 dnl Check for -li386 for NetBSD and OpenBSD
134 AC_CHECK_LIB(i386,i386_set_ldt)
135 dnl Check for -lossaudio for NetBSD
136 AC_CHECK_LIB(ossaudio,_oss_ioctl)
137 dnl Check for -lw for Solaris
138 AC_CHECK_FUNCS(iswalnum,,AC_CHECK_LIB(w,iswalnum))
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 -lresolv for Mac OS X/Darwin
150 AC_CHECK_LIB(resolv,res_9_init)
151 dnl Check for -lpthread
152 AC_CHECK_LIB(pthread,pthread_create,AC_SUBST(LIBPTHREAD,"-lpthread"))
153
154 AC_SUBST(XLIB)
155 AC_SUBST(XFILES)
156 XFILES=""
157 AC_SUBST(OPENGLFILES)
158 OPENGLFILES=""
159 AC_SUBST(GLU32FILES)
160 GLU32FILES=""
161 AC_SUBST(OPENGL_LIBS)
162 OPENGL_LIBS=""
163
164 dnl **** Check for header files ****
165
166 AC_CHECK_HEADERS(\
167         arpa/inet.h \
168         arpa/nameser.h \
169         cups/cups.h \
170         direct.h \
171         elf.h \
172         float.h \
173         fontconfig/fontconfig.h \
174         getopt.h \
175         gif_lib.h \
176         ieeefp.h \
177         io.h \
178         jack/jack.h \
179         jpeglib.h \
180         lcms/lcms.h \
181         lcms.h \
182         link.h \
183         linux/cdrom.h \
184         linux/compiler.h \
185         linux/hdreg.h \
186         linux/input.h \
187         linux/ioctl.h \
188         linux/joystick.h \
189         linux/major.h \
190         linux/param.h \
191         linux/serial.h \
192         linux/ucdrom.h \
193         machine/cpu.h \
194         mntent.h \
195         netdb.h \
196         netinet/in.h \
197         netinet/in_systm.h \
198         netinet/tcp.h \
199         netinet/tcp_fsm.h \
200         openssl/ssl.h \
201         process.h \
202         pthread.h \
203         pwd.h \
204         regex.h \
205         sched.h \
206         scsi/sg.h \
207         scsi/scsi.h \
208         scsi/scsi_ioctl.h \
209         stdint.h \
210         strings.h \
211         sys/cdio.h \
212         sys/elf32.h \
213         sys/errno.h \
214         sys/epoll.h \
215         sys/exec_elf.h \
216         sys/filio.h \
217         sys/ioctl.h \
218         sys/ipc.h \
219         sys/link.h \
220         sys/lwp.h \
221         sys/mman.h \
222         sys/modem.h \
223         sys/msg.h \
224         sys/param.h \
225         sys/poll.h \
226         sys/ptrace.h \
227         sys/reg.h \
228         sys/scsiio.h \
229         sys/shm.h \
230         sys/signal.h \
231         sys/socket.h \
232         sys/sockio.h \
233         sys/statfs.h \
234         sys/statvfs.h \
235         sys/strtio.h \
236         sys/syscall.h \
237         sys/sysctl.h \
238         sys/time.h \
239         sys/times.h \
240         sys/uio.h \
241         sys/un.h \
242         sys/vfs.h \
243         sys/vm86.h \
244         sys/wait.h \
245         syscall.h \
246         termios.h \
247         unistd.h \
248         utime.h \
249         valgrind/memcheck.h
250 )
251 AC_HEADER_STAT()
252
253 dnl **** Check for X11 ****
254
255 if test "$have_x" = "yes"
256 then
257     XLIB="-lXext -lX11"
258     ac_save_CPPFLAGS="$CPPFLAGS"
259     CPPFLAGS="$CPPFLAGS $X_CFLAGS"
260
261     dnl *** All of the following tests require X11/Xlib.h
262     AC_CHECK_HEADERS(X11/Xlib.h,
263       [
264         AC_CHECK_HEADERS([X11/XKBlib.h \
265                           X11/Xutil.h \
266                           X11/extensions/shape.h \
267                           X11/extensions/XInput.h \
268                           X11/extensions/XShm.h \
269                           X11/extensions/Xrandr.h \
270                           X11/extensions/Xrender.h \
271                           X11/extensions/xf86dga.h \
272                           X11/extensions/xf86vmode.h],,,
273                          [#include <X11/Xlib.h>
274                           #ifdef HAVE_X11_XUTIL_H
275                           # include <X11/Xutil.h>
276                           #endif])
277
278         dnl *** Check for X keyboard extension
279         if test "$ac_cv_header_X11_XKBlib_h" = "yes"
280         then
281               AC_CHECK_LIB(X11, XkbQueryExtension,
282               AC_DEFINE(HAVE_XKB, 1, [Define if you have the XKB extension]),,
283               $X_LIBS -lXext -lX11 $X_EXTRA_LIBS)
284         fi
285
286         dnl *** Check for X Shm extension
287         if test "$ac_cv_header_X11_extensions_XShm_h" = "yes"
288         then
289               AC_CHECK_LIB(Xext, XShmQueryExtension,
290               AC_DEFINE(HAVE_LIBXXSHM, 1, [Define if you have the X Shm extension]),,
291               $X_LIBS -lXext -lX11 $X_EXTRA_LIBS)
292         fi
293
294         dnl *** Check for X shape extension
295         if test "$ac_cv_header_X11_extensions_shape_h" = "yes"
296         then
297               AC_CHECK_LIB(Xext,XShapeQueryExtension,
298               AC_DEFINE(HAVE_LIBXSHAPE, 1, [Define if you have the X Shape extension]),,
299               $X_LIBS -lXext -lX11 $X_EXTRA_LIBS)
300         fi
301
302         dnl *** Check for XFree86 DGA / DGA 2.0 extension
303         if test "$ac_cv_header_X11_extensions_xf86dga_h" = "yes"
304         then
305               AC_CHECK_LIB(Xxf86dga, XDGAQueryExtension,
306                 [ AC_DEFINE(HAVE_LIBXXF86DGA2, 1,
307                             [Define if you have the Xxf86dga library version 2])
308                   X_PRE_LIBS="$X_PRE_LIBS -lXxf86dga"
309                 ],,
310                 $X_LIBS -lXext -lX11 $X_EXTRA_LIBS)
311         fi
312
313         dnl *** Check for XFree86 VMODE extension
314         if test "$ac_cv_header_X11_extensions_xf86vmode_h" = "yes"
315         then
316                 AC_CHECK_LIB(Xxf86vm, XF86VidModeQueryExtension,
317                   [ AC_DEFINE(HAVE_LIBXXF86VM, 1, [Define if you have the Xxf86vm library])
318                      X_PRE_LIBS="$X_PRE_LIBS -lXxf86vm"
319                   ],,
320                   $X_LIBS -lXext -lX11 $X_EXTRA_LIBS)
321         fi
322
323         dnl *** Check for X RandR extension
324         if test "$ac_cv_header_X11_extensions_Xrandr_h" = "yes"
325         then
326                 AC_TRY_COMPILE([#include <X11/Xlib.h>
327 #include <X11/extensions/Xrandr.h>],[static typeof(XRRSetScreenConfigAndRate) * func;],
328                   [AC_DEFINE(HAVE_LIBXRANDR, 1, [Define if you have the Xrandr library])])
329         fi
330
331         dnl *** Check for Transform functions in Xrender
332         if test "$ac_cv_header_X11_extensions_Xrender_h" = "yes"
333         then
334               AC_CHECK_LIB(Xrender, XRenderSetPictureTransform,
335                 [AC_DEFINE(HAVE_XRENDERSETPICTURETRANSFORM, 1,
336                  [Define if Xrender has the XRenderSetPictureTransform function])],,
337                 $X_LIBS -lXext -lX11 $X_EXTRA_LIBS)
338         fi
339       ]
340     ) dnl *** End of X11/Xlib.h check
341
342     dnl Check for the presence of OpenGL
343     if test "x$with_opengl" != "xno"
344     then
345         if test -f /usr/X11R6/lib/libGL.a -a ! -f /usr/X11R6/lib/libGL.so
346         then
347             AC_MSG_ERROR([/usr/X11R6/lib/libGL.a is present on your system.
348 This prevents linking to OpenGL. Delete the file and restart configure.])
349         fi
350
351         AC_CHECK_HEADERS(GL/gl.h GL/glx.h)
352         if test "$ac_cv_header_GL_gl_h" = "yes" -a "$ac_cv_header_GL_glx_h" = "yes"
353         then
354             AC_CHECK_HEADERS(GL/glext.h,,,[#include <GL/glx.h>])
355             dnl Check for some problems due to old Mesa versions
356             AC_CACHE_CHECK([for up-to-date OpenGL version], wine_cv_opengl_version_OK,
357               AC_TRY_COMPILE(
358                 [#include <GL/gl.h>],
359                 [GLenum test = GL_UNSIGNED_SHORT_5_6_5;],
360                 [wine_cv_opengl_version_OK="yes"],
361                 [wine_cv_opengl_version_OK="no"]
362               )
363             )
364
365             if test "$wine_cv_opengl_version_OK" = "yes"
366             then
367                 dnl Check for the presence of the library
368                 AC_CHECK_LIB(GL,glXCreateContext,
369                              OPENGL_LIBS="-lGL"
370                              ,,
371                              $X_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS)
372
373                 if test "$ac_cv_lib_GL_glXCreateContext" = "yes"
374                 then
375                         OPENGLFILES='$(OPENGLFILES)'
376                         AC_DEFINE(HAVE_OPENGL, 1, [Define if OpenGL is present on the system])
377                 fi
378                 dnl Check for GLU32 library.
379                 AC_CHECK_LIB(GLU,gluLookAt,
380                              [OPENGL_LIBS="$OPENGL_LIBS -lGLU"
381                              GLU32FILES='$(GLU32FILES)']
382                              ,,
383                              $OPENGL_LIBS $X_LIBS $X_PRE_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS
384                 )
385              fi
386
387              dnl Check for glut32 library.
388              AC_CHECK_LIB(glut,glutMainLoop,
389                        [AC_SUBST(GLUT_LIBS,"-lglut -lXmu -lXi")
390                         AC_SUBST(GLUT32FILES,'$(GLUT32FILES)')],,
391                         $OPENGL_LIBS $X_LIBS $X_PRE_LIBS -lXmu -lXi -lX11 $X_EXTRA_LIBS)
392          fi
393     fi
394
395     dnl **** Check for NAS ****
396     AC_SUBST(NASLIBS,"")
397     AC_CHECK_HEADERS(audio/audiolib.h,
398          [AC_CHECK_HEADERS(audio/soundlib.h,,,[#include <audio/audiolib.h>])
399           AC_CHECK_LIB(audio,AuCreateFlow,
400                        [AC_DEFINE(HAVE_NAS,1,[Define if you have NAS including devel headers])
401                         NASLIBS="-laudio -lXt $X_LIBS -lXext -lX11 $X_EXTRA_LIBS"],,
402                        [-lXt $X_LIBS -lXext -lX11 $X_EXTRA_LIBS])])
403
404     CPPFLAGS="$ac_save_CPPFLAGS"
405     XFILES='$(XFILES)'
406 else
407     XLIB=""
408     X_CFLAGS=""
409     X_LIBS=""
410 fi
411
412 dnl **** Check which curses lib to use ***
413 CURSESLIBS=""
414 if test "x$with_curses" != "xno"
415 then
416     AC_CHECK_HEADERS(ncurses.h,
417         [AC_CHECK_LIB(ncurses,waddch,
418             [AC_DEFINE(HAVE_LIBNCURSES, 1, [Define if you have the ncurses library (-lncurses)])
419              CURSESLIBS="-lncurses"],
420              [AC_CHECK_HEADERS(curses.h,
421                  [AC_CHECK_LIB(curses,waddch,
422                      [AC_DEFINE(HAVE_LIBCURSES, 1, [Define if you have the curses library (-lcurses)])
423                       CURSESLIBS="-lcurses"])])])])
424 fi
425 AC_SUBST(CURSESLIBS)
426
427 dnl **** Check for SANE ****
428 AC_CHECK_PROG(sane_devel,sane-config,sane-config,no)
429 if test "$sane_devel" = "no"
430 then
431     SANELIBS=""
432     SANEINCL=""
433 else
434     SANELIBS="`$sane_devel --libs`"
435     SANEINCL="`$sane_devel --cflags`"
436     ac_save_CPPFLAGS="$CPPFLAGS"
437     ac_save_LIBS="$LIBS"
438     CPPFLAGS="$CPPFLAGS $SANEINCL"
439     LIBS="$LIBS $SANELIBS"
440     AC_CHECK_HEADER(sane/sane.h,
441                     [AC_CHECK_LIB(sane,sane_open,
442                                   [AC_DEFINE(HAVE_SANE, 1, [Define if we have SANE development environment])],
443                                   [SANELIBS=""
444                                   SANEINCL=""])],
445                     [SANELIBS=""
446                     SANEINCL=""])
447     LIBS="$ac_save_LIBS"
448     CPPFLAGS="$ac_save_CPPFLAGS"
449 fi
450 AC_SUBST(SANELIBS)
451 AC_SUBST(SANEINCL)
452
453 dnl **** Check for the ICU library ****
454 AC_CHECK_HEADERS(unicode/ubidi.h)
455 if test "$ac_cv_header_unicode_ubidi_h" = "yes"
456 then
457     saved_libs="$LIBS"
458     ICU_LIB_DIR="${ICU_LIB_DIR-/usr/lib}"
459     ICUUC_LIB="${ICUUC_LIB-$ICU_LIB_DIR/libsicuuc.a}"
460     ICUDATA_LIB="${ICUDATA_LIB-$ICU_LIB_DIR/libsicudata.a}"
461     AC_MSG_CHECKING(whether can link with ICU libraries $ICUUC_LIB and $ICUDATA_LIB)
462     LIBS="$LIBS $ICUUC_LIB $ICUDATA_LIB -lstdc++ -lgcc_s"
463     AC_TRY_LINK([#include <unicode/ubidi.h>],[ubidi_open()],
464                 [AC_DEFINE(HAVE_ICU,1,[Define to 1 if the ICU libraries are installed])
465                  AC_SUBST(ICULIBS,"$ICUUC_LIB $ICUDATA_LIB -lstdc++ -lgcc_s")
466                  AC_MSG_RESULT(yes)],
467                 [AC_MSG_RESULT(no)])
468     LIBS="$saved_libs"
469 fi
470
471 dnl **** Check for FreeType 2 ****
472 AC_CHECK_LIB(freetype,FT_Init_FreeType,ft_lib=yes,ft_lib=no,$X_LIBS)
473 if test "$ft_lib" = "no"
474 then
475     FREETYPELIBS=""
476     FREETYPEINCL=""
477     wine_cv_msg_freetype=no
478 else
479     AC_CHECK_PROG(ft_devel,freetype-config,freetype-config,no)
480     if test "$ft_devel" = "no"
481     then
482         AC_CHECK_PROG(ft_devel2,freetype2-config,freetype2-config,no)
483         if test "$ft_devel2" = "freetype2-config"
484         then
485                 ft_devel=$ft_devel2
486         fi
487     fi
488     if test "$ft_devel" = "no"
489     then
490         FREETYPELIBS=""
491         FREETYPEINCL=""
492         wine_cv_msg_freetype=yes
493     else
494         FREETYPELIBS=`$ft_devel --libs`
495         FREETYPEINCL=`$ft_devel --cflags`
496         ac_save_CPPFLAGS="$CPPFLAGS"
497         CPPFLAGS="$FREETYPEINCL $CPPFLAGS"
498         AC_CHECK_HEADERS(ft2build.h \
499                          freetype/freetype.h \
500                          freetype/ftglyph.h \
501                          freetype/tttables.h \
502                          freetype/ftnames.h \
503                          freetype/ftsnames.h \
504                          freetype/ttnameid.h \
505                          freetype/ftoutln.h \
506                          freetype/ftwinfnt.h \
507                          freetype/internal/sfnt.h,,,
508                          [#if HAVE_FT2BUILD_H
509                           #include <ft2build.h>
510                           #endif])
511         AC_TRY_CPP([#include <ft2build.h>
512                     #include <freetype/fttrigon.h>],
513                     [AC_DEFINE(HAVE_FREETYPE_FTTRIGON_H, 1,
514           [Define if you have the <freetype/fttrigon.h> header file.])
515                     wine_cv_fttrigon=yes],
516                     wine_cv_fttrigon=no)
517         CPPFLAGS="$ac_save_CPPFLAGS"
518         dnl Check that we have at least freetype/freetype.h
519         if test "$ac_cv_header_freetype_freetype_h" = "yes" -a "$wine_cv_fttrigon" = "yes"
520         then
521             AC_DEFINE(HAVE_FREETYPE, 1, [Define if FreeType 2 is installed])
522             wine_cv_msg_freetype=no
523         else
524             FREETYPELIBS=""
525             FREETYPEINCL=""
526             wine_cv_msg_freetype=yes
527         fi
528     fi
529 fi
530 AC_SUBST(FREETYPELIBS)
531 AC_SUBST(FREETYPEINCL)
532
533 dnl Only build the fonts dir if we have both freetype and fontforge
534 if test "$FONTFORGE" != "false" -a -n "$FREETYPELIBS"
535 then
536   AC_SUBST(FONTSSUBDIRS,"fonts")
537 fi
538
539 dnl **** Check for parport (currently Linux only) ****
540 AC_CACHE_CHECK([for parport header/ppdev.h], ac_cv_c_ppdev,
541  AC_TRY_COMPILE(
542    [#include <linux/ppdev.h>],
543    [ioctl (1,PPCLAIM,0)],
544    [ac_cv_c_ppdev="yes"],
545    [ac_cv_c_ppdev="no"])
546  )
547 if test "$ac_cv_c_ppdev" = "yes"
548 then
549     AC_DEFINE(HAVE_PPDEV, 1, [Define if we can use ppdev.h for parallel port access])
550 fi
551
552 dnl **** Check for va_copy ****
553 AC_CACHE_CHECK([for va_copy], ac_cv_c_va_copy,
554  AC_TRY_LINK(
555    [#include <stdarg.h>],
556    [va_list ap1, ap2;
557     va_copy(ap1,ap2);
558    ],
559    [ac_cv_c_va_copy="yes"],
560    [ac_cv_c_va_copy="no"])
561  )
562 if test "$ac_cv_c_va_copy" = "yes"
563 then
564     AC_DEFINE(HAVE_VA_COPY, 1, [Define if we have va_copy])
565 fi
566 AC_CACHE_CHECK([for __va_copy], ac_cv_c___va_copy,
567  AC_TRY_LINK(
568    [#include <stdarg.h>],
569    [va_list ap1, ap2;
570     __va_copy(ap1,ap2);
571    ],
572    [ac_cv_c___va_copy="yes"],
573    [ac_cv_c___va_copy="no"])
574  )
575 if test "$ac_cv_c___va_copy" = "yes"
576 then
577     AC_DEFINE(HAVE___VA_COPY, 1, [Define if we have __va_copy])
578 fi
579
580 dnl **** Check for sigsetjmp ****
581 AC_CACHE_CHECK([for sigsetjmp], ac_cv_c_sigsetjmp,
582  AC_TRY_LINK(
583    [#include <setjmp.h>],
584    [sigjmp_buf buf;
585     sigsetjmp( buf, 1 );
586     siglongjmp( buf, 1 );],
587    [ac_cv_c_sigsetjmp="yes"],
588    [ac_cv_c_sigsetjmp="no"])
589  )
590 if test "$ac_cv_c_sigsetjmp" = "yes"
591 then
592     AC_DEFINE(HAVE_SIGSETJMP, 1, [Define to 1 if you have the sigsetjmp (and siglongjmp) function])
593 fi
594
595 dnl **** Check for pthread_rwlock_t ****
596 AC_CHECK_TYPES([pthread_rwlock_t, pthread_rwlockattr_t],,,[#define _GNU_SOURCE
597 #include <pthread.h>])
598
599 dnl **** Check for pthread functions ****
600 ac_save_LIBS="$LIBS"
601 LIBS="$LIBS $LIBPTHREAD"
602 AC_CHECK_FUNCS(\
603         pthread_getattr_np \
604         pthread_get_stackaddr_np \
605         pthread_get_stacksize_np \
606 )
607 LIBS="$ac_save_LIBS"
608
609 dnl **** Check for Open Sound System ****
610 AC_CHECK_HEADERS(sys/soundcard.h machine/soundcard.h soundcard.h, break)
611
612 AC_CACHE_CHECK([for Open Sound System],
613         ac_cv_c_opensoundsystem,
614         AC_TRY_COMPILE([
615         #if defined(HAVE_SYS_SOUNDCARD_H)
616                 #include <sys/soundcard.h>
617         #elif defined(HAVE_MACHINE_SOUNDCARD_H)
618                 #include <machine/soundcard.h>
619         #elif defined(HAVE_SOUNDCARD_H)
620                 #include <soundcard.h>
621         #endif
622         ],[
623
624 /* check for one of the Open Sound System specific SNDCTL_ defines */
625 #if !defined(SNDCTL_DSP_STEREO)
626 #error No open sound system
627 #endif
628 ],ac_cv_c_opensoundsystem="yes",ac_cv_c_opensoundsystem="no"))
629
630 if test "$ac_cv_c_opensoundsystem" = "yes"
631 then
632     AC_DEFINE(HAVE_OSS, 1, [Define if you have the Open Sound system])
633 fi
634
635 AC_CACHE_CHECK([for Open Sound System/MIDI interface],
636         ac_cv_c_opensoundsystem_midi,
637         AC_TRY_COMPILE([
638         #if defined(HAVE_SYS_SOUNDCARD_H)
639                 #include <sys/soundcard.h>
640         #elif defined(HAVE_MACHINE_SOUNDCARD_H)
641                 #include <machine/soundcard.h>
642         #elif defined(HAVE_SOUNDCARD_H)
643                 #include <soundcard.h>
644         #endif
645         ],[
646
647 /* check for one of the Open Sound System specific SNDCTL_SEQ defines */
648 #if !defined(SNDCTL_SEQ_SYNC)
649 #error No open sound system MIDI interface
650 #endif
651 ],ac_cv_c_opensoundsystem_midi="yes",ac_cv_c_opensoundsystem_midi="no"))
652
653 if test "$ac_cv_c_opensoundsystem_midi" = "yes"
654 then
655     AC_DEFINE(HAVE_OSS_MIDI, 1, [Define if you have the Open Sound system (MIDI interface)])
656 fi
657
658 dnl **** Check for aRts Sound Server ****
659 AC_PATH_PROG(ARTSCCONFIG, artsc-config)
660 if test x$ARTSCCONFIG != x -a x$ARTSCCONFIG != x'"$ARTSCCONFIG"';
661 then
662     ARTSC_CFLAGS=""
663     for i in `$ARTSCCONFIG --cflags`
664     do
665       case "$i" in
666         -I*) ARTSC_CFLAGS="$ARTSC_CFLAGS $i";;
667       esac
668     done
669     ARTSC_LIBS=`$ARTSCCONFIG --libs`
670     save_CFLAGS="$CFLAGS"
671     CFLAGS="$CFLAGS $ARTSC_CFLAGS"
672     AC_TRY_COMPILE([#include <artsc.h>],[arts_stream_t stream;],
673         [AC_SUBST(ARTSLIBS, $ARTSC_LIBS)
674          AC_SUBST(ARTSINCL, $ARTSC_CFLAGS)
675          AC_DEFINE(HAVE_ARTS, 1, [Define if you have ARTS sound server])])
676     CFLAGS="$save_CFLAGS"
677 fi
678
679 dnl **** Check for ALSA ****
680 AC_SUBST(ALSALIBS,"")
681 AC_CHECK_HEADERS(alsa/asoundlib.h sys/asoundlib.h, break)
682 if test "$ac_cv_header_sys_asoundlib_h" = "yes" -o "$ac_cv_header_alsa_asoundlib_h" = "yes"
683 then
684     AC_CHECK_LIB(asound,snd_pcm_open,
685         AC_DEFINE(HAVE_ALSA,1,[Define if you have ALSA including devel headers])
686         ALSALIBS="-lasound")
687 fi
688
689 dnl **** Check for libaudioio (which can be used to get solaris audio support) ****
690
691 AC_SUBST(AUDIOIOLIBS,"")
692 AC_CHECK_HEADERS(libaudioio.h,
693     [AC_CHECK_LIB(audioio,AudioIOGetVersion,
694                   [AUDIOIOLIBS="-laudioio"
695                    AC_DEFINE(HAVE_LIBAUDIOIO, 1, [Define if you have libaudioIO])])])
696
697 dnl **** Check for capi4linux ****
698
699 AC_CHECK_HEADERS(capi20.h,[
700         AC_CHECK_HEADERS(linux/capi.h,[
701                 AC_CHECK_LIB(capi20,capi20_register,[
702                         AC_DEFINE(HAVE_CAPI4LINUX,1,[Define if you have capi4linux libs and headers])
703                         AC_SUBST(CAPI4LINUXLIBS,"-lcapi20")
704                 ])
705         ])
706 ])
707
708 dnl **** Check for broken glibc mmap64 ****
709
710 AC_CACHE_CHECK( [whether mmap64 works defined as mmap], ac_cv_mmap64_works,
711         AC_TRY_RUN([
712                 #define _FILE_OFFSET_BITS 64
713                 #include <stdio.h>
714                 #include <unistd.h>
715                 #include <fcntl.h>
716                 #include <sys/mman.h>
717                 #include <errno.h>
718
719                 int main(int argc,char **argv) {
720                         int fd = open("conftest.map",O_CREAT|O_RDWR,0600);
721                         if (fd == -1) exit(1);
722
723                         unlink("conftest.map");
724
725                         write(fd,"test",4);
726
727                         if ((-1 == mmap(0,4,PROT_READ|PROT_WRITE,MAP_SHARED,fd,0)) &&
728                             (errno == EINVAL)
729                         ) {
730                                 exit(1);
731                         }
732                         close(fd);
733                         fprintf(stderr,"success!\n");
734                         exit(0);
735                 }
736
737         ],
738     ac_cv_mmap64_works="yes",
739     ac_cv_mmap64_works="no",
740     ac_cv_mmap64_works="no") )
741
742 if test "$ac_cv_mmap64_works" = "yes"
743 then
744     AC_DEFINE(_FILE_OFFSET_BITS, 64, [Set this to 64 to enable 64-bit file support on Linux])
745 fi
746
747 dnl **** Check for gcc specific options ****
748
749 AC_SUBST(EXTRACFLAGS,"")
750 if test "x${GCC}" = "xyes"
751 then
752   EXTRACFLAGS="-Wall -pipe"
753
754   dnl Check for strength-reduce bug
755   AC_CACHE_CHECK( [for gcc strength-reduce bug], ac_cv_c_gcc_strength_bug,
756                   AC_TRY_RUN([
757 int     L[[4]] = {0,1,2,3};
758 int main(void) {
759   static int Array[[3]];
760   unsigned int B = 3;
761   int i;
762   for(i=0; i<B; i++) Array[[i]] = i - 3;
763   for(i=0; i<4 - 1; i++) L[[i]] = L[[i + 1]];
764   L[[i]] = 4;
765
766   exit( Array[[1]] != -2 || L[[2]] != 3);
767 }],
768     ac_cv_c_gcc_strength_bug="no",
769     ac_cv_c_gcc_strength_bug="yes",
770     ac_cv_c_gcc_strength_bug="yes") )
771   if test "$ac_cv_c_gcc_strength_bug" = "yes"
772   then
773     EXTRACFLAGS="$EXTRACFLAGS -fno-strength-reduce"
774   fi
775
776   dnl Check for -fshort-wchar
777   AC_CACHE_CHECK([for gcc -fshort-wchar support], ac_cv_c_gcc_fshort_wchar,
778       [WINE_TRY_CFLAGS([-fshort-wchar],
779                       ac_cv_c_gcc_fshort_wchar="yes",ac_cv_c_gcc_fshort_wchar="no")])
780   if test "$ac_cv_c_gcc_fshort_wchar" = "yes"
781   then
782       AC_DEFINE(CC_FLAG_SHORT_WCHAR, "-fshort-wchar", [Specifies the compiler flag that forces a short wchar_t])
783   fi
784
785   dnl Check for -mpreferred-stack-boundary
786   AC_CACHE_CHECK([for gcc -mpreferred-stack-boundary=2 support], ac_cv_c_gcc_stack_boundary,
787       [WINE_TRY_CFLAGS([-mpreferred-stack-boundary=2],
788                       ac_cv_c_gcc_stack_boundary="yes",ac_cv_c_gcc_stack_boundary="no")])
789   if test "$ac_cv_c_gcc_stack_boundary" = "yes"
790   then
791     EXTRACFLAGS="$EXTRACFLAGS -mpreferred-stack-boundary=2"
792   fi
793
794   dnl Check for -fno-strict-aliasing
795   AC_CACHE_CHECK([for gcc -fno-strict-aliasing support], ac_cv_c_gcc_no_strict_aliasing,
796       [WINE_TRY_CFLAGS([-fno-strict-aliasing],
797                       ac_cv_c_gcc_no_strict_aliasing="yes",ac_cv_c_gcc_no_strict_aliasing="no")])
798   if test "$ac_cv_c_gcc_no_strict_aliasing" = "yes"
799   then
800     EXTRACFLAGS="$EXTRACFLAGS -fno-strict-aliasing"
801   fi
802
803   dnl Check for -gstabs+ option
804   AC_CACHE_CHECK([for gcc -gstabs+ support], ac_cv_c_gcc_gstabs,
805       [WINE_TRY_CFLAGS([-gstabs+],ac_cv_c_gcc_gstabs="yes", ac_cv_c_gcc_gstabs="no")])
806   if test "$ac_cv_c_gcc_gstabs" = "yes"
807   then
808     EXTRACFLAGS="$EXTRACFLAGS -gstabs+"
809   fi
810
811   dnl Check for noisy string.h
812   saved_CFLAGS="$CFLAGS"
813   CFLAGS="$CFLAGS -Wpointer-arith -Werror"
814   AC_CACHE_CHECK([for broken string.h that generates warnings], ac_cv_c_string_h_warnings,
815       AC_TRY_COMPILE([#include <string.h>],[],
816                      [ac_cv_c_string_h_warnings=no],[ac_cv_c_string_h_warnings=yes]))
817   CFLAGS="$saved_CFLAGS"
818   if test "$ac_cv_c_string_h_warnings" = "no"
819   then
820     EXTRACFLAGS="$EXTRACFLAGS -Wpointer-arith"
821   fi
822 fi
823
824 dnl **** Check how to define a function in assembly code ****
825
826 AC_CACHE_CHECK([how to define a function in assembly code], ac_cv_asm_func_def,
827   WINE_TRY_ASM_LINK(
828       ["\t.globl _ac_test\n\t.def _ac_test; .scl 2; .type 32; .endef\n_ac_test:\t.long 0"],,,
829       ac_cv_asm_func_def=".def",
830     [WINE_TRY_ASM_LINK(["\t.globl _ac_test\n\t.type _ac_test,@function\n_ac_test:\t.long 0"],,,
831       ac_cv_asm_func_def=".type @function",
832     [WINE_TRY_ASM_LINK(["\t.globl _ac_test\n\t.type _ac_test,2\n_ac_test:\t.long 0"],,,
833       ac_cv_asm_func_def=".type 2",
834       ac_cv_asm_func_def="unknown")])]))
835
836 AH_TEMPLATE(__ASM_FUNC,[Define to a macro to generate an assembly function directive])
837 case "$ac_cv_asm_func_def" in
838   ".def")
839      AC_DEFINE([__ASM_FUNC(name)], [".def " __ASM_NAME(name) "; .scl 2; .type 32; .endef"]) ;;
840   ".type @function")
841      AC_DEFINE([__ASM_FUNC(name)], [".type " __ASM_NAME(name) ",@function"]) ;;
842   ".type 2")
843      AC_DEFINE([__ASM_FUNC(name)], [".type " __ASM_NAME(name) ",2"]) ;;
844   *)
845      AC_DEFINE([__ASM_FUNC(name)], [""]) ;;
846 esac
847
848 dnl **** Check for underscore on external symbols ****
849
850 AC_CACHE_CHECK([whether external symbols need an underscore prefix], ac_cv_c_extern_prefix,
851     WINE_TRY_ASM_LINK([".globl _ac_test\n_ac_test:\t.long 0"],
852                       [extern int ac_test;],
853                       [if (ac_test) return 1],
854                       ac_cv_c_extern_prefix="yes",ac_cv_c_extern_prefix="no"))
855
856 AH_TEMPLATE(__ASM_NAME,[Define to a macro to generate an assembly name from a C symbol])
857 if test "$ac_cv_c_extern_prefix" = "yes"
858 then
859   AC_DEFINE([__ASM_NAME(name)], ["_" name])
860 else
861   AC_DEFINE([__ASM_NAME(name)], [name])
862 fi
863
864 dnl **** Check how to do strings in assembler ****
865
866 AC_CACHE_CHECK([for assembler keyword for ASCII strings], ac_cv_c_asm_string,
867     WINE_TRY_ASM_LINK([".data\\n\\t.string \\"test\\"\\n\\t.text"],,,ac_cv_c_asm_string=".string",
868       WINE_TRY_ASM_LINK([".data\\n\\t.asciz \\"test\\"\\n\\t.text"],,,ac_cv_c_asm_string=".asciz",
869         WINE_TRY_ASM_LINK([".data\\n\\t.ascii \\"test\\"\\n\\t.text"],,,ac_cv_c_asm_string=".ascii",
870           AC_MSG_ERROR([could not discover how to produce C strings with assembler.])))))
871
872 AC_DEFINE_UNQUOTED(__ASM_STRING, ["$ac_cv_c_asm_string"],
873                    [Define to the assembler keyword used to specify an ASCII string])
874
875 dnl **** Check for .short in assembler ****
876
877 AC_CACHE_CHECK([for assembler keyword for word values], ac_cv_c_asm_short,
878     WINE_TRY_ASM_LINK([".data\\n\\t.short 1\\n\\t.text"],,,ac_cv_c_asm_short=".short",
879       WINE_TRY_ASM_LINK([".data\\n\\t.half 1\\n\\t.text"],,,ac_cv_c_asm_short=".half",
880         AC_MSG_ERROR([could not discover how to specify word values with assembler.]))))
881
882 AC_DEFINE_UNQUOTED(__ASM_SHORT, ["$ac_cv_c_asm_short"],
883                    [Define to the assembler keyword used to specify a word value])
884
885 dnl **** Check for .size in assembler ****
886
887 AC_CACHE_CHECK([for .size in assembler], ac_cv_c_asm_size,
888     WINE_TRY_ASM_LINK([".globl _ac_test\n.size _ac_test, . - _ac_test"],,,
889                       ac_cv_c_asm_size="yes",ac_cv_c_asm_size="no"))
890
891 if test "$ac_cv_c_asm_size" = "yes"
892 then
893   AC_DEFINE(HAVE_ASM_DOT_SIZE, 1, [Define if the assembler keyword .size is accepted])
894 fi
895
896 dnl **** Check for working dll ****
897
898 AC_SUBST(DLLEXT,"")
899 AC_SUBST(DLLFLAGS,"-D_REENTRANT")
900 AC_SUBST(DLLIBS,"")
901 AC_SUBST(LDSHARED,"")
902 AC_SUBST(LDDLLFLAGS,"")
903 AC_SUBST(LIBEXT,"so")
904 AC_SUBST(IMPLIBEXT,"def")
905
906 case $host_os in
907   cygwin*|mingw32*)
908     AC_CHECK_TOOL(DLLTOOL,dlltool,false)
909     AC_CHECK_TOOL(DLLWRAP,dllwrap,false)
910     if test "$DLLWRAP" = "false"; then
911       LIBEXT="a"
912     else
913       dnl FIXME - check whether dllwrap works correctly...
914       LIBEXT="dll"
915     fi
916     IMPLIBEXT="a"
917     dnl We can't build 16-bit NE dlls
918     WIN16_FILES=""
919     WIN16_INSTALL=""
920     ;;
921   *)
922     AC_CHECK_HEADERS(dlfcn.h,
923         [AC_CHECK_FUNCS(dlopen,,
924             [AC_CHECK_LIB(dl,dlopen,
925                          [AC_DEFINE(HAVE_DLOPEN,1,[Define if you have dlopen])
926                           DLLIBS="-ldl"],
927                          [LIBEXT="a"])])],
928         [LIBEXT="a"])
929
930     if test "$LIBEXT" = "so"
931     then
932       DLLFLAGS="$DLLFLAGS -fPIC"
933       DLLEXT=".so"
934       AC_CACHE_CHECK([whether we can build a GNU style ELF dll], ac_cv_c_dll_gnuelf,
935           [WINE_TRY_SHLIB_FLAGS([-fPIC -shared -Wl,-soname,conftest.so.1.0,-Bsymbolic],
936                                 ac_cv_c_dll_gnuelf="yes",ac_cv_c_dll_gnuelf="no")])
937       if test "$ac_cv_c_dll_gnuelf" = "yes"
938       then
939         LDSHARED="\$(CC) -shared \$(SONAME:%=-Wl,-soname,%)"
940         LDDLLFLAGS="-shared -Wl,-Bsymbolic"
941         AC_CACHE_CHECK([whether the linker accepts -z defs], ac_cv_c_dll_zdefs,
942           [WINE_TRY_CFLAGS([-fPIC -shared -Wl,-Bsymbolic,-z,defs],
943                            ac_cv_c_dll_zdefs="yes",ac_cv_c_dll_zdefs="no")])
944         if test "$ac_cv_c_dll_zdefs" = "yes"
945         then
946           LDDLLFLAGS="$LDDLLFLAGS,-z,defs"
947         fi
948
949         AC_CACHE_CHECK([whether the linker accepts -init and -fini], ac_cv_c_dll_init_fini,
950           [WINE_TRY_CFLAGS([-fPIC -shared -Wl,-Bsymbolic,-init,__wine_spec_init,-fini,__wine_spec_fini],
951                            ac_cv_c_dll_init_fini="yes",ac_cv_c_dll_init_fini="no")])
952         if test "$ac_cv_c_dll_init_fini" = "yes"
953         then
954           LDDLLFLAGS="$LDDLLFLAGS,-init,__wine_spec_init,-fini,__wine_spec_fini"
955         fi
956
957         AC_CACHE_CHECK([whether the linker accepts version scripts], ac_cv_c_ld_version_scripts,
958           [echo '{ global: *; };' >conftest.map
959            WINE_TRY_CFLAGS([-fPIC -shared -Wl,--version-script=conftest.map],
960                            ac_cv_c_ld_version_scripts="yes",ac_cv_c_ld_version_scripts="no")
961            rm -f conftest.map])
962         if test "$ac_cv_c_ld_version_scripts" = "yes"
963         then
964           LDSHARED="$LDSHARED \$(VERSCRIPT:%=-Wl,--version-script=%)"
965         fi
966
967         AC_CACHE_CHECK([whether the linker accepts --export-dynamic], ac_cv_c_export_dynamic,
968           [WINE_TRY_CFLAGS([-fPIC -Wl,--export-dynamic],
969                            ac_cv_c_export_dynamic="yes",ac_cv_c_export_dynamic="no")])
970         if test "$ac_cv_c_export_dynamic" = "yes"
971         then
972           AC_SUBST(LDEXECFLAGS,["-Wl,--export-dynamic"])
973         fi
974
975         case $host_cpu in
976           *i[[3456789]]86*)
977             AC_CACHE_CHECK([whether we can relocate the executable to 0x77f00000], ac_cv_ld_reloc_exec,
978               [WINE_TRY_CFLAGS([-Wl,--section-start,.interp=0x77f00400],
979                                ac_cv_ld_reloc_exec="yes", ac_cv_ld_reloc_exec="no")])
980             if test "$ac_cv_ld_reloc_exec" = "yes"
981             then
982               LDEXECFLAGS="$LDEXECFLAGS -Wl,--section-start,.interp=0x77f00400"
983             fi
984             ;;
985         esac
986
987       else
988         AC_CACHE_CHECK(whether we can build a UnixWare (Solaris) dll, ac_cv_c_dll_unixware,
989             [WINE_TRY_SHLIB_FLAGS([-fPIC -Wl,-G,-h,conftest.so.1.0,-B,symbolic],
990                                   ac_cv_c_dll_unixware="yes",ac_cv_c_dll_unixware="no")])
991         if test "$ac_cv_c_dll_unixware" = "yes"
992         then
993           LDSHARED="\$(CC) -Wl,-G \$(SONAME:%=-Wl,-h,%)"
994           LDDLLFLAGS="-Wl,-G,-B,symbolic"
995
996         else
997           AC_CACHE_CHECK(whether we can build a Mach-O (Mac OS X/Darwin) dll, ac_cv_c_dll_macho,
998             [WINE_TRY_SHLIB_FLAGS([-bundle], ac_cv_c_dll_macho="yes", ac_cv_c_dll_macho="no")])
999           if test "$ac_cv_c_dll_macho" = "yes"
1000           then
1001             LIBEXT="dylib"
1002             LDDLLFLAGS="-bundle -flat_namespace -undefined suppress"
1003             LDSHARED="\$(CC) -dynamiclib"
1004             CFLAGS="$CFLAGS -ffixed-r13 -no-cpp-precomp"
1005             STRIP="$STRIP -u -r"
1006             dnl Relocate wine executable
1007             AC_SUBST(LDEXECFLAGS,"-seg1addr 0x120000")
1008             dnl Relocate libwine.dyld too
1009             AC_SUBST(LDLIBWINEFLAGS,"-seg1addr 0x140000")
1010             dnl declare needed frameworks
1011             AC_SUBST(COREFOUNDATIONLIB,"-framework CoreFoundation")
1012             AC_SUBST(IOKITLIB,"-framework IOKit")
1013             dnl using IOKit imply we use CoreFoundation too
1014             IOKITLIB = "$IOKITLIB $COREFOUNDATIONLIB"
1015           else
1016             AC_CACHE_CHECK(whether we can build an HP-UX dll, ac_cv_c_dll_hpux,
1017               [WINE_TRY_SHLIB_FLAGS([-shared], ac_cv_c_dll_hpux="yes", ac_cv_c_dll_hpux="no")])
1018             if test "$ac_cv_c_dll_hpux" = "yes"
1019             then
1020               LIBEXT="sl"
1021               DLLEXT=".sl"
1022               LDDLLFLAGS="-shared -fPIC"
1023               LDSHARED="\$(CC) -shared"
1024             fi
1025           fi
1026         fi
1027       fi
1028     fi
1029
1030     dnl Check for cross compiler to build test programs
1031     AC_SUBST(CROSSTEST,"")
1032     if test "$cross_compiling" = "no"
1033     then
1034       AC_CHECK_PROGS(CROSSCC,i586-mingw32msvc-gcc i386-mingw32msvc-gcc i386-mingw32-gcc mingw-gcc,false)
1035       AC_CHECK_PROGS(DLLTOOL,i586-mingw32msvc-dlltool i386-mingw32msvc-dlltool i386-mingw32-dlltool mingw-dlltool,false)
1036       AC_CHECK_PROGS(CROSSWINDRES,i586-mingw32msvc-windres i386-mingw32msvc-windres i386-mingw32-windres mingw-windres,false)
1037       if test "$CROSSCC" != "false"; then CROSSTEST="\$(CROSSTEST)"; fi
1038     fi
1039     ;;
1040 esac
1041
1042 if test "$LIBEXT" = "a"; then
1043   AC_MSG_ERROR(
1044 [could not find a way to build shared libraries.
1045 It is currently not possible to build Wine without shared library
1046 (.so) support to allow transparent switch between .so and .dll files.
1047 If you are using Linux, you will need a newer binutils.]
1048 )
1049 fi
1050
1051 case $build_os in
1052   cygwin*|mingw32*)
1053     AC_SUBST(LDPATH,"PATH=\"\$(TOOLSDIR)/libs/unicode:\$\$PATH\"") ;;
1054   darwin*|macosx*)
1055     AC_SUBST(LDPATH,"DYLD_LIBRARY_PATH=\"\$(TOOLSDIR)/libs/unicode:\$\$DYLD_LIBRARY_PATH\"") ;;
1056   *)
1057     AC_SUBST(LDPATH,"LD_LIBRARY_PATH=\"\$(TOOLSDIR)/libs/unicode:\$\$LD_LIBRARY_PATH\"") ;;
1058 esac
1059
1060 dnl Mingw needs explicit msvcrt for linking libwine and winsock for wininet
1061 case $host_os in
1062   mingw32*)
1063     AC_SUBST(CRTLIBS,"-lmsvcrt")
1064     AC_SUBST(SOCKETLIBS,"-lws2_32")
1065     ;;
1066 esac
1067
1068 case $host_os in
1069   linux*)
1070     case $host_cpu in
1071       *i[[3456789]]86*) AC_SUBST(WINE_BINARIES,"wine-glibc wine-kthread wine-pthread wine-preloader") ;;
1072       *) AC_SUBST(WINE_BINARIES,"wine-glibc wine-kthread wine-pthread") ;;
1073     esac
1074     AC_SUBST(MAIN_BINARY,"wine-glibc")
1075     ;;
1076   darwin*)
1077     AC_SUBST(WINE_BINARIES,"wine-pthread")
1078     AC_SUBST(MAIN_BINARY,"wine-pthread")
1079     ;;
1080   *)
1081     AC_SUBST(WINE_BINARIES,"wine-kthread")
1082     AC_SUBST(MAIN_BINARY,"wine-kthread")
1083     ;;
1084 esac
1085
1086 dnl **** Get the soname for libraries that we load dynamically ****
1087
1088 if test "$LIBEXT" = "so" -o "$LIBEXT" = "dylib"
1089 then
1090   WINE_GET_SONAME(X11,XCreateWindow,[$X_LIBS $X_EXTRA_LIBS])
1091   WINE_GET_SONAME(Xext,XextCreateExtension,[$X_LIBS -lX11 $X_EXTRA_LIBS])
1092   WINE_GET_SONAME(Xi,XOpenDevice,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
1093   WINE_GET_SONAME(Xrender,XRenderQueryExtension,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
1094   WINE_GET_SONAME(Xrandr,XRRQueryExtension,[$X_LIBS -lXext -lX11 $X_EXTRA_LIBS])
1095   WINE_GET_SONAME(freetype,FT_Init_FreeType,[$X_LIBS])
1096   WINE_GET_SONAME(GL,glXQueryExtension,[$X_LIBS $X_EXTRA_LIBS])
1097   WINE_GET_SONAME(txc_dxtn,fetch_2d_texel_rgba_dxt1)
1098   WINE_GET_SONAME(cups,cupsGetDefault)
1099   WINE_GET_SONAME(jack,jack_client_new)
1100   WINE_GET_SONAME(fontconfig,FcInit)
1101   WINE_GET_SONAME(ssl,SSL_library_init)
1102   WINE_GET_SONAME(crypto,BIO_new_socket)
1103   WINE_GET_SONAME(ncurses,waddch)
1104   WINE_GET_SONAME(curses,waddch)
1105   WINE_GET_SONAME(jpeg,jpeg_start_decompress)
1106   WINE_GET_SONAME(ungif,DGifOpen)
1107   WINE_GET_SONAME(gif,DGifOpen)
1108   WINE_GET_SONAME(lcms,cmsOpenProfileFromFile)
1109 fi
1110
1111
1112 dnl **** Check for functions ****
1113
1114 AC_FUNC_ALLOCA()
1115 AC_CHECK_FUNCS(\
1116         _lwp_create \
1117         _lwp_self \
1118         _pclose \
1119         _popen \
1120         _snprintf \
1121         _spawnvp \
1122         _stricmp \
1123         _strnicmp \
1124         _vsnprintf \
1125         chsize \
1126         clone \
1127         epoll_create \
1128         ffs \
1129         finite \
1130         fork \
1131         fpclass \
1132         fstatfs \
1133         fstatvfs \
1134         ftruncate \
1135         futimes \
1136         getnetbyname \
1137         getopt_long \
1138         getpagesize \
1139         getprotobyname \
1140         getprotobynumber \
1141         getpwuid \
1142         getservbyport \
1143         gettid \
1144         gettimeofday \
1145         getuid \
1146         inet_network \
1147         lstat \
1148         memmove \
1149         mmap \
1150         pclose \
1151         popen \
1152         pread \
1153         pwrite \
1154         readlink \
1155         rfork \
1156         sched_yield \
1157         select \
1158         sendmsg \
1159         settimeofday \
1160         sigaltstack \
1161         sigprocmask \
1162         snprintf \
1163         spawnvp \
1164         statfs \
1165         statvfs \
1166         strcasecmp \
1167         strerror \
1168         strncasecmp \
1169         tcgetattr \
1170         timegm \
1171         usleep \
1172         vsnprintf \
1173         wait4 \
1174         waitpid \
1175 )
1176
1177 dnl **** Checks for headers that depend on other ones ****
1178
1179 AC_CHECK_HEADERS(sys/mount.h sys/user.h,,,
1180     [#include <sys/types.h>
1181      #if HAVE_SYS_PARAM_H
1182      # include <sys/param.h>
1183      #endif])
1184
1185 AC_CHECK_HEADERS([net/if.h net/if_arp.h net/if_dl.h net/if_types.h net/route.h],,,
1186     [#include <sys/types.h>
1187      #if HAVE_SYS_SOCKET_H
1188      # include <sys/socket.h>
1189      #endif])
1190
1191 AC_CHECK_HEADERS([resolv.h],,,
1192     [#include <sys/types.h>
1193      #if HAVE_SYS_SOCKET_H
1194      # include <sys/socket.h>
1195      #endif
1196      #if HAVE_NETINET_IN_H
1197      # include <netinet/in.h>
1198      #endif
1199      #if HAVE_ARPA_NAMESER_H
1200      # include <arpa/nameser.h>
1201      #endif])
1202
1203 AC_CHECK_HEADERS(ucontext.h,,,[#include <signal.h>])
1204
1205 dnl **** Check for IPX headers (currently Linux only) ****
1206
1207 AC_CACHE_CHECK([for GNU style IPX support], ac_cv_c_ipx_gnu,
1208  AC_TRY_COMPILE(
1209    [#include <sys/types.h>
1210     #ifdef HAVE_SYS_SOCKET_H
1211     # include <sys/socket.h>
1212     #endif
1213     #include <netipx/ipx.h>],
1214    [((struct sockaddr_ipx *)0)->sipx_family == AF_IPX],
1215    [ac_cv_c_ipx_gnu="yes"],
1216    [ac_cv_c_ipx_gnu="no"])
1217  )
1218 if test "$ac_cv_c_ipx_gnu" = "yes"
1219 then
1220     AC_DEFINE(HAVE_IPX_GNU, 1, [Define if IPX should use netipx/ipx.h from libc])
1221 fi
1222
1223 if test "$ac_cv_c_ipx_gnu" = "no"
1224 then
1225  AC_CACHE_CHECK([for linux style IPX support], ac_cv_c_ipx_linux,
1226   AC_TRY_COMPILE(
1227     [#include <sys/types.h>
1228      #ifdef HAVE_SYS_SOCKET_H
1229      # include <sys/socket.h>
1230      #endif
1231      #include <asm/types.h>
1232      #include <linux/ipx.h>],
1233     [((struct sockaddr_ipx *)0)->sipx_family == AF_IPX],
1234     [ac_cv_c_ipx_linux="yes"],
1235     [ac_cv_c_ipx_linux="no"])
1236   )
1237   if test "$ac_cv_c_ipx_linux" = "yes"
1238   then
1239       AC_DEFINE(HAVE_IPX_LINUX, 1, [Define if IPX includes are taken from Linux kernel])
1240   fi
1241 fi
1242
1243 dnl **** Check for types ****
1244
1245 AC_C_CONST
1246 AC_C_INLINE
1247 AC_CHECK_TYPES([mode_t, off_t, pid_t, size_t, ssize_t, long long, fsblkcnt_t, fsfilcnt_t])
1248 AC_CHECK_TYPES([sigset_t],,,[#include <signal.h>])
1249
1250 AC_CACHE_CHECK([whether linux/input.h is for real],
1251         wine_cv_linux_input_h,
1252         AC_TRY_COMPILE([
1253             #include <linux/input.h>
1254         ] , [
1255             int foo = EVIOCGBIT(EV_ABS,42);
1256             int bar = BTN_PINKIE;
1257             int fortytwo = 42;
1258         ],
1259         wine_cv_linux_input_h=yes,
1260         wine_cv_linux_input_h=no,
1261         no
1262         )
1263     )
1264     if test "$wine_cv_linux_input_h" = "yes"
1265     then
1266         AC_DEFINE(HAVE_CORRECT_LINUXINPUT_H, 1,
1267                   [Define if we have linux/input.h AND it contains the INPUT event API])
1268     fi
1269
1270 AC_CACHE_CHECK([for sigaddset],wine_cv_have_sigaddset,
1271                AC_TRY_LINK([#include <signal.h>],[sigset_t set; sigaddset(&set,SIGTERM);],
1272                            wine_cv_have_sigaddset=yes,wine_cv_have_sigaddset=no))
1273 if test "$wine_cv_have_sigaddset" = "yes"
1274 then
1275   AC_DEFINE(HAVE_SIGADDSET, 1, [Define if sigaddset is supported])
1276 fi
1277
1278
1279 AC_CACHE_CHECK([whether we can use re-entrant gethostbyname_r Linux style],
1280         wine_cv_linux_gethostbyname_r_6,
1281         AC_TRY_LINK([
1282 #include <netdb.h>
1283         ], [
1284     char *name=NULL;
1285     struct hostent he;
1286     struct hostent *result;
1287     char *buf=NULL;
1288     int bufsize=0;
1289     int res,errnr;
1290     char *addr=NULL;
1291     int addrlen=0;
1292     int addrtype=0;
1293     res=gethostbyname_r(name,&he,buf,bufsize,&result,&errnr);
1294     res=gethostbyaddr_r(addr, addrlen, addrtype,&he,buf,bufsize,&result,&errnr);
1295     ],
1296         wine_cv_linux_gethostbyname_r_6=yes,
1297         wine_cv_linux_gethostbyname_r_6=no
1298         )
1299    )
1300    if test "$wine_cv_linux_gethostbyname_r_6" = "yes"
1301    then
1302       AC_DEFINE(HAVE_LINUX_GETHOSTBYNAME_R_6, 1,
1303                 [Define if Linux-style gethostbyname_r and gethostbyaddr_r are available])
1304    fi
1305
1306 if test "$ac_cv_header_linux_joystick_h" = "yes"
1307 then
1308    AC_CACHE_CHECK([whether linux/joystick.h uses the Linux 2.2+ API],
1309         wine_cv_linux_joystick_22_api,
1310         AC_TRY_COMPILE([
1311         #include <sys/ioctl.h>
1312         #include <linux/joystick.h>
1313
1314         struct js_event blub;
1315         #if !defined(JS_EVENT_AXIS) || !defined(JS_EVENT_BUTTON)
1316         #error "no 2.2 header"
1317         #endif
1318         ],/*empty*/,
1319         wine_cv_linux_joystick_22_api=yes,
1320         wine_cv_linux_joystick_22_api=no,
1321         wine_cv_linux_joystick_22_api=no
1322         )
1323    )
1324    if test "$wine_cv_linux_joystick_22_api" = "yes"
1325    then
1326       AC_DEFINE(HAVE_LINUX_22_JOYSTICK_API, 1,
1327                 [Define if <linux/joystick.h> defines the Linux 2.2 joystick API])
1328    fi
1329 fi
1330
1331 dnl **** statfs checks ****
1332
1333 if test "$ac_cv_header_sys_vfs_h" = "yes"
1334 then
1335     AC_CACHE_CHECK( [whether sys/vfs.h defines statfs],
1336                     wine_cv_sys_vfs_has_statfs,
1337         AC_TRY_COMPILE([
1338         #include <sys/types.h>
1339         #ifdef HAVE_SYS_PARAM_H
1340         # include <sys/param.h>
1341         #endif
1342         #include <sys/vfs.h>
1343         ],[
1344                 struct statfs stfs;
1345
1346                 memset(&stfs,0,sizeof(stfs));
1347         ],wine_cv_sys_vfs_has_statfs=yes,wine_cv_sys_vfs_has_statfs=no
1348         )
1349     )
1350     if test "$wine_cv_sys_vfs_has_statfs" = "yes"
1351     then
1352       AC_DEFINE(STATFS_DEFINED_BY_SYS_VFS, 1,
1353                 [Define if the struct statfs is defined by <sys/vfs.h>])
1354     fi
1355 fi
1356
1357 if test "$ac_cv_header_sys_statfs_h" = "yes"
1358 then
1359     AC_CACHE_CHECK( [whether sys/statfs.h defines statfs],
1360                     wine_cv_sys_statfs_has_statfs,
1361         AC_TRY_COMPILE([
1362         #include <sys/types.h>
1363         #ifdef HAVE_SYS_PARAM_H
1364         # include <sys/param.h>
1365         #endif
1366         #include <sys/statfs.h>
1367         ],[
1368                 struct statfs stfs;
1369         ],wine_cv_sys_statfs_has_statfs=yes,wine_cv_sys_statfs_has_statfs=no
1370         )
1371     )
1372     if test "$wine_cv_sys_statfs_has_statfs" = "yes"
1373     then
1374       AC_DEFINE(STATFS_DEFINED_BY_SYS_STATFS, 1,
1375                 [Define if the struct statfs is defined by <sys/statfs.h>])
1376     fi
1377 fi
1378
1379 if test "$ac_cv_header_sys_mount_h" = "yes"
1380 then
1381     AC_CACHE_CHECK( [whether sys/mount.h defines statfs],
1382                     wine_cv_sys_mount_has_statfs,
1383         AC_TRY_COMPILE([
1384         #include <sys/types.h>
1385         #ifdef HAVE_SYS_PARAM_H
1386         # include <sys/param.h>
1387         #endif
1388         #include <sys/mount.h>
1389         ],[
1390                 struct statfs stfs;
1391         ],wine_cv_sys_mount_has_statfs=yes,wine_cv_sys_mount_has_statfs=no
1392         )
1393     )
1394     if test "$wine_cv_sys_mount_has_statfs" = "yes"
1395     then
1396       AC_DEFINE(STATFS_DEFINED_BY_SYS_MOUNT, 1,
1397                 [Define if the struct statfs is defined by <sys/mount.h>])
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 STATFS_DEFINED_BY_SYS_MOUNT
1410 # include <sys/mount.h>
1411 #else
1412 # ifdef STATFS_DEFINED_BY_SYS_VFS
1413 #  include <sys/vfs.h>
1414 # else
1415 #  ifdef STATFS_DEFINED_BY_SYS_STATFS
1416 #   include <sys/statfs.h>
1417 #  endif
1418 # endif
1419 #endif])
1420
1421 AC_CHECK_MEMBERS([struct statvfs.f_blocks],,,
1422 [#ifdef HAVE_SYS_STATVFS_H
1423 #include <sys/statvfs.h>
1424 #endif])
1425
1426 dnl Check for socket structure members
1427 AC_CHECK_MEMBERS([struct msghdr.msg_accrights, struct sockaddr.sa_len, struct sockaddr_un.sun_len],,,
1428 [#include <sys/types.h>
1429 #ifdef HAVE_SYS_SOCKET_H
1430 # include <sys/socket.h>
1431 #endif
1432 #ifdef HAVE_SYS_UN_H
1433 # include <sys/un.h>
1434 #endif])
1435
1436 dnl Check for siginfo_t members
1437 AC_CHECK_MEMBERS([siginfo_t.si_fd],,,[#include <signal.h>])
1438
1439 dnl Check for struct option
1440 AC_CHECK_MEMBERS([struct option.name],,,
1441 [#ifdef HAVE_GETOPT_H
1442 #include <getopt.h>
1443 #endif])
1444
1445 dnl Check for stat.st_blocks
1446 AC_CHECK_MEMBERS([struct stat.st_blocks])
1447
1448 dnl *** check for the need to define platform-specific symbols
1449
1450 case $host_cpu in
1451   *i[[3456789]]86*) WINE_CHECK_DEFINE([__i386__]) ;;
1452   *alpha*)          WINE_CHECK_DEFINE([__ALPHA__]) ;;
1453   *sparc*)          WINE_CHECK_DEFINE([__sparc__]) ;;
1454   *powerpc*)        WINE_CHECK_DEFINE([__powerpc__]) ;;
1455 esac
1456
1457 case $host_vendor in
1458   *sun*) WINE_CHECK_DEFINE([__sun__]) ;;
1459 esac
1460
1461 dnl **** Generate output files ****
1462
1463 AH_TOP([#define __WINE_CONFIG_H])
1464
1465 WINE_CONFIG_EXTRA_DIR(dlls/ddraw/d3ddevice)
1466 WINE_CONFIG_EXTRA_DIR(dlls/ddraw/dclipper)
1467 WINE_CONFIG_EXTRA_DIR(dlls/ddraw/ddraw)
1468 WINE_CONFIG_EXTRA_DIR(dlls/ddraw/direct3d)
1469 WINE_CONFIG_EXTRA_DIR(dlls/ddraw/dpalette)
1470 WINE_CONFIG_EXTRA_DIR(dlls/ddraw/dsurface)
1471 WINE_CONFIG_EXTRA_DIR(dlls/gdi/enhmfdrv)
1472 WINE_CONFIG_EXTRA_DIR(dlls/gdi/mfdrv)
1473 WINE_CONFIG_EXTRA_DIR(dlls/kernel/messages)
1474 WINE_CONFIG_EXTRA_DIR(dlls/user/dde)
1475 WINE_CONFIG_EXTRA_DIR(dlls/user/resources)
1476 WINE_CONFIG_EXTRA_DIR(dlls/wineps/data)
1477 WINE_CONFIG_EXTRA_DIR(include/wine)
1478 WINE_CONFIG_EXTRA_DIR(misc)
1479 WINE_CONFIG_EXTRA_DIR(programs/regedit/tests)
1480 WINE_CONFIG_EXTRA_DIR(windows)
1481
1482 MAKE_RULES=Make.rules
1483 AC_SUBST_FILE(MAKE_RULES)
1484
1485 MAKE_DLL_RULES=dlls/Makedll.rules
1486 AC_SUBST_FILE(MAKE_DLL_RULES)
1487
1488 MAKE_TEST_RULES=dlls/Maketest.rules
1489 AC_SUBST_FILE(MAKE_TEST_RULES)
1490
1491 MAKE_LIB_RULES=libs/Makelib.rules
1492 AC_SUBST_FILE(MAKE_LIB_RULES)
1493
1494 MAKE_PROG_RULES=programs/Makeprog.rules
1495 AC_SUBST_FILE(MAKE_PROG_RULES)
1496
1497 AC_CONFIG_FILES([
1498 Make.rules
1499 dlls/Makedll.rules
1500 dlls/Maketest.rules
1501 libs/Makelib.rules
1502 programs/Makeprog.rules
1503 Makefile
1504 dlls/Makefile
1505 dlls/advapi32/Makefile
1506 dlls/advapi32/tests/Makefile
1507 dlls/advpack/Makefile
1508 dlls/amstream/Makefile
1509 dlls/atl/Makefile
1510 dlls/avicap32/Makefile
1511 dlls/avifil32/Makefile
1512 dlls/cabinet/Makefile
1513 dlls/capi2032/Makefile
1514 dlls/cards/Makefile
1515 dlls/cfgmgr32/Makefile
1516 dlls/comcat/Makefile
1517 dlls/comctl32/Makefile
1518 dlls/comctl32/tests/Makefile
1519 dlls/commdlg/Makefile
1520 dlls/crtdll/Makefile
1521 dlls/crypt32/Makefile
1522 dlls/ctl3d/Makefile
1523 dlls/d3d8/Makefile
1524 dlls/d3d9/Makefile
1525 dlls/d3dim/Makefile
1526 dlls/d3drm/Makefile
1527 dlls/d3dx8/Makefile
1528 dlls/d3dxof/Makefile
1529 dlls/dbghelp/Makefile
1530 dlls/dciman32/Makefile
1531 dlls/ddraw/Makefile
1532 dlls/ddraw/tests/Makefile
1533 dlls/devenum/Makefile
1534 dlls/dinput/Makefile
1535 dlls/dinput8/Makefile
1536 dlls/dmband/Makefile
1537 dlls/dmcompos/Makefile
1538 dlls/dmime/Makefile
1539 dlls/dmloader/Makefile
1540 dlls/dmscript/Makefile
1541 dlls/dmstyle/Makefile
1542 dlls/dmsynth/Makefile
1543 dlls/dmusic/Makefile
1544 dlls/dmusic32/Makefile
1545 dlls/dplay/Makefile
1546 dlls/dplayx/Makefile
1547 dlls/dpnet/Makefile
1548 dlls/dpnhpast/Makefile
1549 dlls/dsound/Makefile
1550 dlls/dsound/tests/Makefile
1551 dlls/dswave/Makefile
1552 dlls/dxdiagn/Makefile
1553 dlls/dxerr8/Makefile
1554 dlls/dxerr9/Makefile
1555 dlls/dxguid/Makefile
1556 dlls/gdi/Makefile
1557 dlls/gdi/tests/Makefile
1558 dlls/glu32/Makefile
1559 dlls/glut32/Makefile
1560 dlls/hhctrl.ocx/Makefile
1561 dlls/iccvid/Makefile
1562 dlls/icmp/Makefile
1563 dlls/ifsmgr.vxd/Makefile
1564 dlls/imagehlp/Makefile
1565 dlls/imm32/Makefile
1566 dlls/iphlpapi/Makefile
1567 dlls/iphlpapi/tests/Makefile
1568 dlls/itss/Makefile
1569 dlls/kernel/Makefile
1570 dlls/kernel/tests/Makefile
1571 dlls/lzexpand/Makefile
1572 dlls/lzexpand/tests/Makefile
1573 dlls/mapi32/Makefile
1574 dlls/mapi32/tests/Makefile
1575 dlls/mlang/Makefile
1576 dlls/mlang/tests/Makefile
1577 dlls/mmdevldr.vxd/Makefile
1578 dlls/monodebg.vxd/Makefile
1579 dlls/mpr/Makefile
1580 dlls/msacm/Makefile
1581 dlls/msacm/imaadp32/Makefile
1582 dlls/msacm/msadp32/Makefile
1583 dlls/msacm/msg711/Makefile
1584 dlls/msacm/winemp3/Makefile
1585 dlls/msacm/tests/Makefile
1586 dlls/mscms/Makefile
1587 dlls/mscms/tests/Makefile
1588 dlls/msdmo/Makefile
1589 dlls/mshtml/Makefile
1590 dlls/msi/Makefile
1591 dlls/msimg32/Makefile
1592 dlls/msisys/Makefile
1593 dlls/msnet32/Makefile
1594 dlls/msrle32/Makefile
1595 dlls/msvcrt/Makefile
1596 dlls/msvcrt/tests/Makefile
1597 dlls/msvcrt20/Makefile
1598 dlls/msvcrt40/Makefile
1599 dlls/msvcrtd/Makefile
1600 dlls/msvcrtd/tests/Makefile
1601 dlls/msvidc32/Makefile
1602 dlls/msvideo/Makefile
1603 dlls/mswsock/Makefile
1604 dlls/netapi32/Makefile
1605 dlls/netapi32/tests/Makefile
1606 dlls/newdev/Makefile
1607 dlls/ntdll/Makefile
1608 dlls/ntdll/tests/Makefile
1609 dlls/odbc32/Makefile
1610 dlls/ole32/Makefile
1611 dlls/ole32/tests/Makefile
1612 dlls/oleacc/Makefile
1613 dlls/oleaut32/Makefile
1614 dlls/oleaut32/tests/Makefile
1615 dlls/olecli/Makefile
1616 dlls/oledlg/Makefile
1617 dlls/olepro32/Makefile
1618 dlls/olesvr/Makefile
1619 dlls/opengl32/Makefile
1620 dlls/psapi/Makefile
1621 dlls/psapi/tests/Makefile
1622 dlls/qcap/Makefile
1623 dlls/quartz/Makefile
1624 dlls/quartz/tests/Makefile
1625 dlls/rasapi32/Makefile
1626 dlls/richedit/Makefile
1627 dlls/rpcrt4/Makefile
1628 dlls/rpcrt4/tests/Makefile
1629 dlls/rsabase/Makefile
1630 dlls/rsabase/tests/Makefile
1631 dlls/rsaenh/Makefile
1632 dlls/rsaenh/tests/Makefile
1633 dlls/secur32/Makefile
1634 dlls/serialui/Makefile
1635 dlls/setupapi/Makefile
1636 dlls/shdocvw/Makefile
1637 dlls/shell32/Makefile
1638 dlls/shell32/tests/Makefile
1639 dlls/shfolder/Makefile
1640 dlls/shlwapi/Makefile
1641 dlls/shlwapi/tests/Makefile
1642 dlls/snmpapi/Makefile
1643 dlls/sti/Makefile
1644 dlls/strmiids/Makefile
1645 dlls/tapi32/Makefile
1646 dlls/ttydrv/Makefile
1647 dlls/twain/Makefile
1648 dlls/unicows/Makefile
1649 dlls/url/Makefile
1650 dlls/urlmon/Makefile
1651 dlls/urlmon/tests/Makefile
1652 dlls/user/Makefile
1653 dlls/user/tests/Makefile
1654 dlls/uuid/Makefile
1655 dlls/uxtheme/Makefile
1656 dlls/vdhcp.vxd/Makefile
1657 dlls/vdmdbg/Makefile
1658 dlls/version/Makefile
1659 dlls/version/tests/Makefile
1660 dlls/vmm.vxd/Makefile
1661 dlls/vnbt.vxd/Makefile
1662 dlls/vnetbios.vxd/Makefile
1663 dlls/vtdapi.vxd/Makefile
1664 dlls/vwin32.vxd/Makefile
1665 dlls/win32s/Makefile
1666 dlls/winaspi/Makefile
1667 dlls/wined3d/Makefile
1668 dlls/winedos/Makefile
1669 dlls/wineps/Makefile
1670 dlls/wininet/Makefile
1671 dlls/wininet/tests/Makefile
1672 dlls/winmm/Makefile
1673 dlls/winmm/joystick/Makefile
1674 dlls/winmm/mcianim/Makefile
1675 dlls/winmm/mciavi/Makefile
1676 dlls/winmm/mcicda/Makefile
1677 dlls/winmm/mciseq/Makefile
1678 dlls/winmm/mciwave/Makefile
1679 dlls/winmm/midimap/Makefile
1680 dlls/winmm/tests/Makefile
1681 dlls/winmm/wavemap/Makefile
1682 dlls/winmm/winealsa/Makefile
1683 dlls/winmm/winearts/Makefile
1684 dlls/winmm/wineaudioio/Makefile
1685 dlls/winmm/winejack/Makefile
1686 dlls/winmm/winenas/Makefile
1687 dlls/winmm/wineoss/Makefile
1688 dlls/winnls/Makefile
1689 dlls/winsock/Makefile
1690 dlls/winsock/tests/Makefile
1691 dlls/winspool/Makefile
1692 dlls/winspool/tests/Makefile
1693 dlls/wintab32/Makefile
1694 dlls/wintrust/Makefile
1695 dlls/wow32/Makefile
1696 dlls/wsock32/Makefile
1697 dlls/x11drv/Makefile
1698 documentation/Makefile
1699 fonts/Makefile
1700 include/Makefile
1701 libs/Makefile
1702 libs/port/Makefile
1703 libs/unicode/Makefile
1704 libs/wine/Makefile
1705 libs/wpp/Makefile
1706 loader/Makefile
1707 programs/Makefile
1708 programs/avitools/Makefile
1709 programs/clock/Makefile
1710 programs/cmdlgtst/Makefile
1711 programs/control/Makefile
1712 programs/expand/Makefile
1713 programs/msiexec/Makefile
1714 programs/notepad/Makefile
1715 programs/progman/Makefile
1716 programs/regedit/Makefile
1717 programs/regsvr32/Makefile
1718 programs/rpcss/Makefile
1719 programs/rundll32/Makefile
1720 programs/start/Makefile
1721 programs/taskmgr/Makefile
1722 programs/uninstaller/Makefile
1723 programs/view/Makefile
1724 programs/wcmd/Makefile
1725 programs/wineboot/Makefile
1726 programs/winebrowser/Makefile
1727 programs/winecfg/Makefile
1728 programs/wineconsole/Makefile
1729 programs/winedbg/Makefile
1730 programs/winefile/Makefile
1731 programs/winemenubuilder/Makefile
1732 programs/winemine/Makefile
1733 programs/winepath/Makefile
1734 programs/winetest/Makefile
1735 programs/winevdm/Makefile
1736 programs/winhelp/Makefile
1737 programs/winver/Makefile
1738 server/Makefile
1739 tools/Makefile
1740 tools/widl/Makefile
1741 tools/winapi/Makefile
1742 tools/winebuild/Makefile
1743 tools/winedump/Makefile
1744 tools/winegcc/Makefile
1745 tools/wmc/Makefile
1746 tools/wrc/Makefile])
1747
1748 AC_OUTPUT
1749
1750 if test "$have_x" = "no"
1751 then
1752   echo
1753   echo "*** Warning: X development files not found. Wine will be built without"
1754   echo "*** X support, which currently does not work, and would probably not be"
1755   echo "*** what you want anyway. You will need to install devel packages of"
1756   echo "*** Xlib/Xfree86 at the very least."
1757 fi
1758
1759 if test "$wine_cv_opengl_version_OK" = "no"
1760 then
1761   echo
1762   echo "*** Warning: old Mesa headers detected. Wine will be built without Direct3D"
1763   echo "*** support. Consider upgrading your Mesa libraries (http://www.mesa3d.org/)."
1764 fi
1765
1766 if test "$wine_cv_msg_freetype" = "yes"
1767 then
1768   echo
1769   echo "*** Note: Your system appears to have the FreeType 2 runtime libraries"
1770   echo "*** installed, but 'freetype-config' is not in your PATH. Install the"
1771   echo "*** freetype-devel package (or its equivalent on your distribution) to"
1772   echo "*** enable Wine to use TrueType fonts."
1773 fi
1774
1775 echo
1776 echo "Configure finished.  Do '${ac_make} depend && ${ac_make}' to compile Wine."
1777 echo
1778
1779 dnl Local Variables:
1780 dnl comment-start: "dnl "
1781 dnl comment-end: ""
1782 dnl comment-start-skip: "\\bdnl\\b\\s *"
1783 dnl compile-command: "autoconf"
1784 dnl End: