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