configure.ac 112 KB
Newer Older
Alexandre Julliard's avatar
Alexandre Julliard committed
1
dnl Process this file with autoconf to produce a configure script.
2 3 4 5 6
dnl Original author: Michael Patra
dnl See ChangeLog file for detailed change history.

m4_define(WINE_VERSION,regexp(m4_include(VERSION),[version \([-.0-9A-Za-z]+\)],[\1]))

7 8
dnl autoconf versions before 2.62 don't handle source dir symlinks correctly
AC_PREREQ(2.62)
9
AC_INIT([Wine],[WINE_VERSION],[wine-devel@winehq.org],[wine],[http://www.winehq.org])
10
AC_CONFIG_SRCDIR(server/atom.c)
11
AC_CONFIG_HEADERS(include/config.h)
Alexandre Julliard's avatar
Alexandre Julliard committed
12
AC_CONFIG_AUX_DIR(tools)
Alexandre Julliard's avatar
Alexandre Julliard committed
13

14
dnl autoconf versions before 2.63b don't have AS_VAR_APPEND or AS_VAR_IF
15 16
m4_ifdef([AS_VAR_APPEND],,[as_fn_append () { eval $[1]=\$$[1]\$[2]; }
AC_DEFUN([AS_VAR_APPEND],[as_fn_append $1 $2])])dnl
17 18 19 20 21
m4_ifdef([AS_VAR_IF],,[AC_DEFUN([AS_VAR_IF],
[AS_LITERAL_IF([$1],
  [AS_IF([test "x$$1" = x""$2], [$3], [$4])],
  [eval as_val=\$$1
   AS_IF([test "x$as_val" = x""$2], [$3], [$4])])])])dnl
22 23 24 25
dnl autoconf versions before 2.64 don't have AC_PACKAGE_URL
m4_ifdef([AC_PACKAGE_URL],,
  [AC_DEFINE([PACKAGE_URL], ["http://www.winehq.org"], [Define to the home page for this package.])
   AC_SUBST([PACKAGE_URL], ["http://www.winehq.org"])])dnl
26

Alexandre Julliard's avatar
Alexandre Julliard committed
27 28
dnl **** Command-line arguments ****

29 30
AC_ARG_ENABLE(win16, AS_HELP_STRING([--disable-win16],[do not include Win16 support]))
AC_ARG_ENABLE(win64, AS_HELP_STRING([--enable-win64],[build a Win64 emulator on AMD64 (won't run Win32 binaries)]))
31
AC_ARG_ENABLE(tests, AS_HELP_STRING([--disable-tests],[do not build the regression tests]))
32
AC_ARG_ENABLE(maintainer-mode, AS_HELP_STRING([--enable-maintainer-mode],[enable maintainer-specific build rules]))
33

34 35 36 37 38 39 40 41
AC_ARG_WITH(alsa,      AS_HELP_STRING([--without-alsa],[do not use the Alsa sound support]),
            [if test "x$withval" = "xno"; then ac_cv_header_sys_asoundlib_h=no; ac_cv_header_alsa_asoundlib_h=no; fi])
AC_ARG_WITH(capi,      AS_HELP_STRING([--without-capi],[do not use CAPI (ISDN support)]),
            [if test "x$withval" = "xno"; then ac_cv_header_capi20_h=no; ac_cv_header_linux_capi_h=no; fi])
AC_ARG_WITH(cms,       AS_HELP_STRING([--without-cms],[do not use CMS (color management support)]),
            [if test "x$withval" = "xno"; then ac_cv_header_lcms_h=no; ac_cv_header_lcms_lcms_h=no; fi])
AC_ARG_WITH(coreaudio, AS_HELP_STRING([--without-coreaudio],[do not use the CoreAudio sound support]),
            [if test "x$withval" = "xno"; then ac_cv_header_CoreAudio_CoreAudio_h=no; fi])
42
AC_ARG_WITH(cups,      AS_HELP_STRING([--without-cups],[do not use CUPS]))
43 44
AC_ARG_WITH(curses,    AS_HELP_STRING([--without-curses],[do not use (n)curses]),
            [if test "x$withval" = "xno"; then ac_cv_header_ncurses_h=no; ac_cv_header_curses_h=no; fi])
45
AC_ARG_WITH(dbus,      AS_HELP_STRING([--without-dbus],[do not use DBus (dynamic device support)]))
46
AC_ARG_WITH(fontconfig,AS_HELP_STRING([--without-fontconfig],[do not use fontconfig]))
47
AC_ARG_WITH(freetype,  AS_HELP_STRING([--without-freetype],[do not use the FreeType library]))
48
AC_ARG_WITH(gettext,   AS_HELP_STRING([--without-gettext],[do not use gettext]))
49
AC_ARG_WITH(gettextpo, AS_HELP_STRING([--with-gettextpo],[use the GetTextPO library to rebuild po files]),
50
            [if test "x$withval" = "xno"; then ac_cv_header_gettext_po_h=no; fi])
51
AC_ARG_WITH(gphoto,    AS_HELP_STRING([--without-gphoto],[do not use gphoto (Digital Camera support)]))
52 53
AC_ARG_WITH(glu,       AS_HELP_STRING([--without-glu],[do not use the GLU library]),
            [if test "x$withval" = "xno"; then ac_cv_header_GL_glu_h=no; fi])
54
AC_ARG_WITH(gnutls,    AS_HELP_STRING([--without-gnutls],[do not use GnuTLS (schannel support)]))
55
AC_ARG_WITH(gsm,       AS_HELP_STRING([--without-gsm],[do not use libgsm (GSM 06.10 codec support)]),
56
            [if test "x$withval" = "xno"; then ac_cv_header_gsm_h=no; ac_cv_header_gsm_gsm_h=no; fi])
57
AC_ARG_WITH(gstreamer, AS_HELP_STRING([--without-gstreamer],[do not use GStreamer (codecs support)]))
58 59 60 61 62
AC_ARG_WITH(hal,       AS_HELP_STRING([--without-hal],[do not use HAL (dynamic device support)]))
AC_ARG_WITH(jpeg,      AS_HELP_STRING([--without-jpeg],[do not use JPEG]),
            [if test "x$withval" = "xno"; then ac_cv_header_jpeglib_h=no; fi])
AC_ARG_WITH(ldap,      AS_HELP_STRING([--without-ldap],[do not use LDAP]),
            [if test "x$withval" = "xno"; then ac_cv_header_ldap_h=no; ac_cv_header_lber_h=no; fi])
63 64
AC_ARG_WITH(mpg123,    AS_HELP_STRING([--without-mpg123],[do not use the mpg123 library]),
            [if test "x$withval" = "xno"; then ac_cv_header_mpg123_h=no; fi])
65
AC_ARG_WITH(openal,    AS_HELP_STRING([--without-openal],[do not use OpenAL]),
66
            [if test "x$withval" = "xno"; then ac_cv_header_AL_al_h=no; ac_cv_header_OpenAL_al_h=no; fi])
67
AC_ARG_WITH(opencl,    AS_HELP_STRING([--without-opencl],[do not use OpenCL]),
68
            [if test "x$withval" = "xno"; then ac_cv_header_CL_cl_h=no; ac_cv_header_OpenCL_opencl_h=no; fi])
69
AC_ARG_WITH(opengl,    AS_HELP_STRING([--without-opengl],[do not use OpenGL]))
70 71
AC_ARG_WITH(openssl,   AS_HELP_STRING([--without-openssl],[do not use OpenSSL]),
            [if test "x$withval" = "xno"; then ac_cv_header_openssl_err_h=no; ac_cv_header_openssl_ssl_h=no; fi])
72
AC_ARG_WITH(oss,       AS_HELP_STRING([--without-oss],[do not use the OSS sound support]))
73 74
AC_ARG_WITH(png,       AS_HELP_STRING([--without-png],[do not use PNG]),
            [if test "x$withval" = "xno"; then ac_cv_header_png_h=no; fi])
75 76
AC_ARG_WITH(pthread,   AS_HELP_STRING([--without-pthread],[do not use the pthread library]),
            [if test "x$withval" = "xno"; then ac_cv_header_pthread_h=no; fi])
77
AC_ARG_WITH(sane,      AS_HELP_STRING([--without-sane],[do not use SANE (scanner support)]))
78 79
AC_ARG_WITH(tiff,       AS_HELP_STRING([--without-tiff],[do not use TIFF]),
            [if test "x$withval" = "xno"; then ac_cv_header_tiffio_h=no; fi])
80
AC_ARG_WITH(v4l,       AS_HELP_STRING([--without-v4l],[do not use v4l1 (v4l support)]))
81 82 83 84 85 86 87 88
AC_ARG_WITH(xcomposite,AS_HELP_STRING([--without-xcomposite],[do not use the Xcomposite extension]),
            [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_Xcomposite_h=no; fi])
AC_ARG_WITH(xcursor,   AS_HELP_STRING([--without-xcursor],[do not use the Xcursor extension]),
            [if test "x$withval" = "xno"; then ac_cv_header_X11_Xcursor_Xcursor_h=no; fi])
AC_ARG_WITH(xinerama,  AS_HELP_STRING([--without-xinerama],[do not use Xinerama (multi-monitor support)]),
            [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_Xinerama_h=no; fi])
AC_ARG_WITH(xinput,    AS_HELP_STRING([--without-xinput],[do not use the Xinput extension]),
            [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_XInput_h=no; fi])
89 90
AC_ARG_WITH(xinput2,   AS_HELP_STRING([--without-xinput2],[do not use the Xinput 2 extension]),
            [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_XInput2_h=no; fi])
91 92 93 94 95 96 97 98
AC_ARG_WITH(xml,       AS_HELP_STRING([--without-xml],[do not use XML]))
AC_ARG_WITH(xrandr,    AS_HELP_STRING([--without-xrandr],[do not use Xrandr (resolution changes)]),
            [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_Xrandr_h=no; fi])
AC_ARG_WITH(xrender,   AS_HELP_STRING([--without-xrender],[do not use the Xrender extension]),
            [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_Xrender_h=no; fi])
AC_ARG_WITH(xshape,    AS_HELP_STRING([--without-xshape],[do not use the Xshape extension]),
            [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_shape_h=no; fi])
AC_ARG_WITH(xslt,      AS_HELP_STRING([--without-xslt],[do not use XSLT]))
99
AC_ARG_WITH(xxf86vm,   AS_HELP_STRING([--without-xxf86vm],[do not use XFree video mode extension]),
100
            [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_xf86vmode_h=no; ac_cv_header_X11_extensions_xf86vmproto_h=no; fi])
101 102
AC_ARG_WITH(zlib,      AS_HELP_STRING([--without-zlib],[do not use Zlib (data compression)]),
            [if test "x$withval" = "xno"; then ac_cv_header_zlib_h=no; fi])
103 104

AC_ARG_WITH(wine-tools,AS_HELP_STRING([--with-wine-tools=DIR],[use Wine tools from directory DIR]))
105
AC_ARG_WITH(wine64,    AS_HELP_STRING([--with-wine64=DIR],[use the 64-bit Wine in DIR for a Wow64 build]))
Alexandre Julliard's avatar
Alexandre Julliard committed
106

107
AC_CANONICAL_HOST
108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124

dnl check for out of tree build with unclean source tree
case "$srcdir" in
 .) ;;
 *) if test -f "$srcdir/Makefile" -o -f "$srcdir/include/config.h"; then
      AC_MSG_ERROR([you are building out of the source tree, but the source tree contains object files.
You need to run 'make distclean' in the source tree first.])
    fi ;;
esac

dnl **** Check for some programs ****

AC_PROG_MAKE_SET
AC_PROG_CC
AC_PROG_CXX
dnl We can't use AC_PROG_CPP for winegcc, it uses by default $(CC) -E
AC_CHECK_TOOL(CPPBIN,cpp,cpp)
125
AC_DEFINE_UNQUOTED(EXEEXT,["$ac_exeext"],[Define to the file extension for executables.])
126

127
case $host in
128
  *-darwin*)
129
    if test "x$enable_win64" = "xyes"
130 131 132 133 134 135 136 137 138 139 140 141 142 143
    then
      CC="$CC -m64"
      CXX="$CXX -m64"
      host_cpu="x86_64"
      notice_platform="64-bit "
      AC_SUBST(TARGETFLAGS,"-m64")
    else
      CC="$CC -m32"
      CXX="$CXX -m32"
      host_cpu="i386"
      notice_platform="32-bit "
      AC_SUBST(TARGETFLAGS,"-m32")
      enable_win16=${enable_win16:-yes}
    fi
144
    with_fontconfig=${with_fontconfig:-no}
145
    ;;
146
  x86_64*)
147
    if test "x$enable_win64" != "xyes" -a "$cross_compiling" != "yes"
148
    then
149 150 151
      CC="$CC -m32"
      CXX="$CXX -m32"
      AC_MSG_CHECKING([whether $CC works])
152
      AC_LINK_IFELSE([AC_LANG_PROGRAM()],AC_MSG_RESULT([yes]),
153 154
                     [AC_MSG_RESULT([no])
                      AC_MSG_ERROR([Cannot build a 32-bit program, you need to install 32-bit development libraries.])])
155
      host_cpu="i386"
156
      notice_platform="32-bit "
157
      AC_SUBST(TARGETFLAGS,"-m32")
158
      enable_win16=${enable_win16:-yes}
159
    else
160 161 162 163 164 165 166 167
      if test "x${GCC}" = "xyes"
      then
        AC_MSG_CHECKING([whether $CC supports __builtin_ms_va_list])
        AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdarg.h>]], [[void func(__builtin_ms_va_list *args);]])],
                          [AC_MSG_RESULT([yes])],
                          [AC_MSG_RESULT([no])
                           AC_MSG_ERROR([You need gcc >= 4.4 to build Wine as 64-bit.])])
      fi
168
      AC_SUBST(TARGETFLAGS,"-m64")
169 170
    fi
    ;;
171 172 173 174 175 176 177 178
  arm*)
    AC_MSG_CHECKING([whether $CC supports Thumb2])
    WINE_TRY_ASM_LINK([".syntax unified\n.thumb\nb.w ac_test\n.arm"],[int ac_test(int i) { return i; }], [if (ac_test(1)) return 1],
                      [AC_MSG_RESULT([yes])],
                      [AC_MSG_RESULT([no])
                       AC_MSG_ERROR([You need a target with Thumb2 support to build Wine for ARM.])])
    CFLAGS="$CFLAGS -marm"
    ;;
179
  *-mingw32*|*-cygwin*)
180
    enable_win16=${enable_win16:-no}
181
    CFLAGS="$CFLAGS -D_WIN32"
182 183 184 185
    ;;
  i[[3456789]]86*)
    enable_win16=${enable_win16:-yes}
    ;;
186 187
esac

188
dnl enable_win16 defaults to yes on x86, to no on other CPUs
189
enable_win16=${enable_win16:-no}
190
enable_win64=${enable_win64:-no}
191

192 193 194
dnl Disable winetest too if tests are disabled
enable_winetest=${enable_winetest:-$enable_tests}

195 196 197 198 199 200 201 202
dnl Some special cases for the wow64 build
if test -n "$with_wine64"
then
    if test "x$enable_win64" = "xyes"
    then
        AC_MSG_ERROR([--enable-win64 and --with-wine64 are mutually exclusive.
--enable-win64 should be used in the 64-bit build tree, --with-wine64 in the 32-bit Wow64 build tree.])
    fi
203
    AC_SUBST([WOW64_DISABLE],[\#])
204 205 206
    enable_fonts=${enable_fonts:-no}
    enable_server=${enable_server:-no}
    enable_tools=${enable_tools:-no}
207 208 209
elif test "x$enable_win64" = "xyes"
then
    test "x$libdir" != "x\${exec_prefix}/lib" || libdir="\${exec_prefix}/lib64"
210 211
fi

212
AC_CACHE_CHECK([for the directory containing the Wine tools], wine_cv_toolsdir,
213 214
  [wine_cv_toolsdir="$with_wine_tools"
   if test -z "$with_wine_tools"; then
215 216
     if test "$cross_compiling" = "yes"; then
       AC_MSG_ERROR([you must use the --with-wine-tools option when cross-compiling.])
217 218
     elif test -n "$with_wine64"; then
       wine_cv_toolsdir="$with_wine64"
219
     fi
220 221
   fi
   if test -z "$wine_cv_toolsdir"; then
222
     wine_cv_toolsdir="\$(top_builddir)"
223 224 225
   elif test -d "$wine_cv_toolsdir/tools/winebuild"; then
     case "$wine_cv_toolsdir" in
       /*) ;;
226
       *)  wine_cv_toolsdir="\$(top_builddir)/$wine_cv_toolsdir" ;;
227 228
     esac
   else
229
     AC_MSG_ERROR([could not find Wine tools in $wine_cv_toolsdir])
230 231
   fi])
AC_SUBST(TOOLSDIR,$wine_cv_toolsdir)
232
if test -n "$host_alias" -a "$host_alias" != "$build_alias"
233
then
234
    AC_SUBST(TARGETFLAGS,"-b $host_alias $TARGETFLAGS")
235
fi
236

237 238 239
dnl Check for flex
AC_CHECK_PROGS(FLEX,flex,none)
if test "$FLEX" = "none"
240
then
241
  AC_MSG_ERROR([no suitable flex found. Please install the 'flex' package.])
242
fi
243 244 245 246 247 248 249
AC_MSG_CHECKING([whether flex is recent enough])
cat >conftest.l <<EOF
%top{
#include "prediluvian.h"
}
%%
EOF
250
if $FLEX -t conftest.l >/dev/null 2>&AS_MESSAGE_LOG_FD
251 252 253 254 255 256
then
  AC_MSG_RESULT([yes])
else
  AC_MSG_RESULT([no])
  AC_MSG_ERROR([Your flex version is too old. Please install flex version 2.5.33 or newer.])
fi
257

258 259 260 261 262 263 264
dnl Check for bison
AC_CHECK_PROGS(BISON,bison,none)
if test "$BISON" = "none"
then
  AC_MSG_ERROR([no suitable bison found. Please install the 'bison' package.])
fi

265
AC_CHECK_TOOLS(AR,[ar gar],ar)
266
AC_SUBST(ARFLAGS,rc)
Alexandre Julliard's avatar
Alexandre Julliard committed
267
AC_PROG_RANLIB
Alexandre Julliard's avatar
Alexandre Julliard committed
268
AC_PROG_LN_S
269
AC_PROG_EGREP
270
AC_PATH_PROG(LDCONFIG, ldconfig, true, [/sbin /usr/sbin $PATH])
271 272 273
AC_PROG_INSTALL
dnl Prepend src dir to install path dir if it's a relative path
case "$INSTALL" in
274
  [[\\/$]]* | ?:[[\\/]]* ) ;;
275
  *)  INSTALL="\\\$(top_srcdir)/$INSTALL" ;;
276
esac
Alexandre Julliard's avatar
Alexandre Julliard committed
277

278 279 280 281 282 283 284 285 286
dnl Check for lint
AC_CHECK_PROGS(LINT, lclint lint)
if test "$LINT" = "lint"
then
  LINTFLAGS="$LINTFLAGS -errchk=%all,no%longptr64 -errhdr=%user -Ncheck=macro -Nlevel=4"
  dnl LINTFLAGS='-D_SIZE_T "-Dsize_t=unsigned long" -errchk=longptr64'
fi
AC_SUBST(LINTFLAGS)

287 288
dnl Check for various programs
AC_CHECK_PROGS(FONTFORGE, fontforge, false)
289
AC_CHECK_PROGS(PKG_CONFIG, pkg-config, false)
290
AC_CHECK_PROGS(RSVG, rsvg, false)
291
AC_CHECK_PROGS(CONVERT, convert, false)
292
AC_CHECK_PROGS(ICOTOOL, icotool, false)
293
AC_CHECK_PROGS(MSGFMT, msgfmt, false)
294

295
if test "x$enable_maintainer_mode" != "xyes"
296
then
297 298
  AC_SUBST([MAINTAINER_MODE],[\#])
else
299 300
  if test "$FONTFORGE" = "false"; then AC_MSG_ERROR([You need fontforge to rebuild fonts in maintainer mode.]); fi
  if test "$RSVG" = "false"; then AC_MSG_ERROR([You need rsvg to rebuild icons in maintainer mode.]); fi
301 302 303 304

  dnl Check the imagemagick version
  if test "$CONVERT" = false
  then
305
    AC_MSG_ERROR([You need imagemagick to rebuild icons in maintainer mode.])
306 307 308 309 310 311 312 313 314 315 316 317 318 319 320
  else
    AC_MSG_CHECKING([for recent enough imagemagick])
    convert_version=`convert --version | head -n1`
    if test "x$convert_version" != "x"
    then
      convert_version_major=`expr "$convert_version" : '.* \([[0-9]]*\)\.[[0-9]]*'`
      convert_version_minor=`expr "$convert_version" : '.* [[0-9]]*\.\([[0-9]]*\)'`
      if test "$convert_version_major" -eq 6 -a "$convert_version_minor" -lt 6
      then
        CONVERT=false
      fi
    fi
    if test "$CONVERT" = false
    then
      AC_MSG_RESULT([no ($convert_version_major.$convert_version_minor)])
321
      AC_MSG_ERROR([You need imagemagick version 6.6 or newer to rebuild icons in maintainer mode.])
322 323 324 325
    else
      AC_MSG_RESULT([yes ($convert_version_major.$convert_version_minor)])
    fi
  fi
326 327 328 329

  dnl Check the icotool version
  if test "$ICOTOOL" = false
  then
330
    AC_MSG_ERROR([You need icotool to rebuild icons in maintainer mode.])
331 332 333 334 335
  else
    AC_MSG_CHECKING([for recent enough icotool])
    icotool_version=`icotool --version | head -n1`
    if test "x$icotool_version" != "x"
    then
336 337
      icotool_version_major=`expr "$icotool_version" : '.* \([[0-9]]*\)\.[[0-9]]*'`
      icotool_version_minor=`expr "$icotool_version" : '.* [[0-9]]*\.\([[0-9]]*\)'`
338 339 340 341 342 343 344 345 346
      if test "$icotool_version_major" -eq 0 -a "$icotool_version_minor" -lt 29
      then
        ICOTOOL=false
        WINE_WARNING([icotool version 0.29.0 or newer is needed to rebuild icons.])
      fi
    fi
    if test "$ICOTOOL" = false
    then
      AC_MSG_RESULT([no ($icotool_version_major.$icotool_version_minor)])
347
      AC_MSG_ERROR([You need icotool version 0.29.0 or newer to rebuild icons in maintainer mode.])
348 349 350 351 352
    else
      AC_MSG_RESULT([yes ($icotool_version_major.$icotool_version_minor)])
    fi
  fi

353 354 355 356
  dnl Maintainer mode requires gettext
  with_gettext=yes
  with_gettextpo=yes
  AS_UNSET(ac_cv_header_gettext_po_h)
357
fi
358

359
test "x$with_gettext" != xno || MSGFMT=false
360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376
if test "$MSGFMT" != "false"
then
  AC_MSG_CHECKING([whether msgfmt supports contexts])
  cat >conftest.po <<EOF
# comment
msgctxt "ctxt"
msgid "id"
msgstr "str"
EOF
  if $MSGFMT -o /dev/null conftest.po 2>&AS_MESSAGE_LOG_FD
  then
    AC_MSG_RESULT([yes])
  else
    AC_MSG_RESULT([no])
    MSGFMT=false
  fi
fi
377
WINE_WARNING_WITH(gettext,[test "$MSGFMT" = false],
378
                  [gettext tools not found (or too old), translations won't be built.])
379

Alexandre Julliard's avatar
Alexandre Julliard committed
380 381
dnl **** Check for some libraries ****

Alexandre Julliard's avatar
Alexandre Julliard committed
382
dnl Check for -li386 for NetBSD and OpenBSD
Alexandre Julliard's avatar
Alexandre Julliard committed
383
AC_CHECK_LIB(i386,i386_set_ldt)
384 385
dnl Check for -lossaudio for NetBSD
AC_CHECK_LIB(ossaudio,_oss_ioctl)
386

387 388
AC_SUBST(XLIB,"")
AC_SUBST(OPENGL_LIBS,"")
389 390 391

dnl **** Check for header files ****

392 393
test "x$with_fontconfig" != "xno" || ac_cv_header_fontconfig_fontconfig_h=no

394 395
AC_SYS_LARGEFILE()

396
AC_CHECK_HEADERS(\
397
	AL/al.h \
398
	ApplicationServices/ApplicationServices.h \
399
	AudioToolbox/AudioConverter.h \
400
	AudioUnit/AudioUnit.h \
401
	AudioUnit/AudioComponent.h \
402
	CL/cl.h \
403
	Carbon/Carbon.h \
404
	CoreAudio/CoreAudio.h \
405
	CoreServices/CoreServices.h \
406
	DiskArbitration/DiskArbitration.h \
407
	IOKit/IOKitLib.h \
408
	IOKit/hid/IOHIDLib.h \
409
	OpenAL/al.h \
410
	OpenCL/opencl.h \
411
	QuickTime/ImageCompression.h \
412
	Security/Security.h \
413
	alias.h \
414
	alsa/asoundlib.h \
415 416
	arpa/inet.h \
	arpa/nameser.h \
417
	asm/types.h \
418 419
	capi20.h \
	curses.h \
420
	direct.h \
421
	dirent.h \
422
	dlfcn.h \
423 424
	elf.h \
	float.h \
425
	fnmatch.h \
426 427
	fontconfig/fontconfig.h \
	getopt.h \
428
	gettext-po.h \
429
	grp.h \
430
	gsm.h \
431
	gsm/gsm.h \
432
	ieeefp.h \
433
	inet/mib2.h \
434 435
	io.h \
	jpeglib.h \
436
	kstat.h \
437
	lber.h \
438
	lcms.h \
439
	lcms/lcms.h \
440
	ldap.h \
441 442 443 444 445 446 447 448 449 450
	link.h \
	linux/cdrom.h \
	linux/compiler.h \
	linux/hdreg.h \
	linux/input.h \
	linux/ioctl.h \
	linux/joystick.h \
	linux/major.h \
	linux/param.h \
	linux/serial.h \
451
	linux/types.h \
452
	linux/ucdrom.h \
453
	mach-o/nlist.h \
454
	mach-o/loader.h \
455
	mach/mach.h \
456
	mach/machine.h \
457
	machine/cpu.h \
458
	machine/limits.h \
459
	machine/sysarch.h \
460
	mntent.h \
461
	mpg123.h \
462
	ncurses.h \
463 464 465 466 467
	netdb.h \
	netinet/in.h \
	netinet/in_systm.h \
	netinet/tcp.h \
	netinet/tcp_fsm.h \
468
	openssl/err.h \
469
	openssl/ssl.h \
470
	png.h \
471
	poll.h \
472
	port.h \
473 474 475 476 477 478
	process.h \
	pthread.h \
	pwd.h \
	sched.h \
	scsi/scsi.h \
	scsi/scsi_ioctl.h \
479
	scsi/sg.h \
480
	stdbool.h \
481 482
	stdint.h \
	strings.h \
483
	stropts.h \
484
	sys/asoundlib.h \
485
	sys/attr.h \
486 487 488
	sys/cdio.h \
	sys/elf32.h \
	sys/epoll.h \
489
	sys/event.h \
490 491
	sys/exec_elf.h \
	sys/filio.h \
492
	sys/inotify.h \
493 494
	sys/ioctl.h \
	sys/ipc.h \
495
	sys/limits.h \
496 497 498 499
	sys/link.h \
	sys/mman.h \
	sys/modem.h \
	sys/msg.h \
500
	sys/mtio.h \
501 502
	sys/param.h \
	sys/poll.h \
503
	sys/prctl.h \
504
	sys/protosw.h \
505
	sys/ptrace.h \
506
	sys/resource.h \
507 508 509 510
	sys/scsiio.h \
	sys/shm.h \
	sys/signal.h \
	sys/socket.h \
511
	sys/socketvar.h \
512 513 514 515
	sys/sockio.h \
	sys/statvfs.h \
	sys/strtio.h \
	sys/syscall.h \
516
	sys/tihdr.h \
517
	sys/time.h \
518
	sys/timeout.h \
519 520 521
	sys/times.h \
	sys/uio.h \
	sys/un.h \
522
	sys/utsname.h \
523 524 525 526
	sys/vm86.h \
	sys/wait.h \
	syscall.h \
	termios.h \
527
	tiffio.h \
528 529
	unistd.h \
	utime.h \
530
	valgrind/memcheck.h \
531 532
	valgrind/valgrind.h \
	zlib.h
533 534 535
)
AC_HEADER_STAT()

536 537
dnl **** Checks for headers that depend on other ones ****

538
AC_CHECK_HEADERS([sys/mount.h sys/statfs.h sys/sysctl.h sys/user.h sys/vfs.h],,,
539
    [#include <sys/types.h>
540
     #ifdef HAVE_SYS_PARAM_H
541 542 543
     # include <sys/param.h>
     #endif])

544 545 546 547 548 549 550 551
AC_CHECK_HEADERS(\
	netinet/ip.h \
	net/if.h \
	net/if_arp.h \
	net/if_dl.h \
	net/if_types.h \
	net/route.h \
	netinet/if_ether.h \
552
	netinet/if_inarp.h \
553 554 555 556 557 558
	netinet/in_pcb.h \
	netinet/ip_icmp.h \
	netinet/ip_var.h \
	netinet/udp.h \
	netipx/ipx.h \
,,,[#include <sys/types.h>
559
     #ifdef HAVE_SYS_SOCKET_H
560
     # include <sys/socket.h>
561
     #endif
562
     #ifdef HAVE_SYS_SOCKETVAR_H
563
     # include <sys/socketvar.h>
564
     #endif
565 566 567
     #ifdef HAVE_NET_ROUTE_H
     # include <net/route.h>
     #endif
568
     #ifdef HAVE_NETINET_IN_H
569
     # include <netinet/in.h>
570
     #endif
571 572 573
     #ifdef HAVE_NETINET_IN_SYSTM_H
     # include <netinet/in_systm.h>
     #endif
574 575 576
     #ifdef HAVE_NET_IF_H
     # include <net/if.h>
     #endif
577 578
     #ifdef HAVE_NETINET_IP_H
     # include <netinet/ip.h>
579
     #endif])
580

581
AC_CHECK_HEADERS([netinet/tcp_timer.h netinet/udp_var.h netinet/icmp_var.h netinet/tcp_var.h ],,,
582
    [#include <sys/types.h>
583 584 585
     #ifdef HAVE_ALIAS_H
     # include <alias.h>
     #endif
586
     #ifdef HAVE_SYS_SOCKET_H
587 588
     # include <sys/socket.h>
     #endif
589
     #ifdef HAVE_SYS_SOCKETVAR_H
590 591
     # include <sys/socketvar.h>
     #endif
592 593 594
     #ifdef HAVE_SYS_TIMEOUT_H
     # include <sys/timeout.h>
     #endif
595
     #ifdef HAVE_NETINET_IN_H
596 597
     # include <netinet/in.h>
     #endif
598 599 600
     #ifdef HAVE_NETINET_IN_SYSTM_H
     # include <netinet/in_systm.h>
     #endif
601 602 603
     #ifdef HAVE_NETINET_IP_H
     # include <netinet/ip.h>
     #endif
604 605 606
     #ifdef HAVE_NETINET_IP_VAR_H
     # include <netinet/ip_var.h>
     #endif
607 608 609
     #ifdef HAVE_NETINET_IP_ICMP_H
     # include <netinet/ip_icmp.h>
     #endif
610 611 612
     #ifdef HAVE_NETINET_UDP_H
     # include <netinet/udp.h>
     #endif
613 614
     #ifdef HAVE_NETINET_TCP_H
     # include <netinet/tcp.h>
615 616 617
     #endif
     #ifdef HAVE_NETINET_TCP_TIMER_H
     #include <netinet/tcp_timer.h>
618
     #endif])
619

620
AC_CHECK_HEADERS([linux/ipx.h linux/irda.h],,,
621 622 623 624
    [#include <sys/types.h>
     #ifdef HAVE_ASM_TYPES_H
     # include <asm/types.h>
     #endif
625
     #ifdef HAVE_SYS_SOCKET_H
626
     # include <sys/socket.h>
627 628 629
     #endif
     #ifdef HAVE_LINUX_TYPES_H
     # include <linux/types.h>
630 631
     #endif])

632 633 634 635 636 637 638 639
AC_CHECK_HEADERS([mach-o/dyld_images.h],,,
    [#ifdef HAVE_STDBOOL_H
     # include <stdbool.h>
     #endif
     #ifdef HAVE_STDINT_H
     # include <stdint.h>
     #endif])

640 641
AC_CHECK_HEADERS([resolv.h],,,
    [#include <sys/types.h>
642
     #ifdef HAVE_SYS_SOCKET_H
643 644
     # include <sys/socket.h>
     #endif
645
     #ifdef HAVE_NETINET_IN_H
646 647
     # include <netinet/in.h>
     #endif
648
     #ifdef HAVE_ARPA_NAMESER_H
649 650 651
     # include <arpa/nameser.h>
     #endif])

652 653
AC_CHECK_HEADERS([ifaddrs.h],,,[#include <sys/types.h>])

654 655
AC_CHECK_HEADERS(ucontext.h,,,[#include <signal.h>])

656 657
AC_CHECK_HEADERS([sys/thr.h],,,
[#include <sys/types.h>
658
#ifdef HAVE_UCONTEXT_H
659 660 661
#include <ucontext.h>
#endif])

662 663 664 665 666
AC_CHECK_HEADERS([pthread_np.h],,,
[#ifdef HAVE_PTHREAD_H
#include <pthread.h>
#endif])

667
AC_CHECK_HEADERS([linux/videodev.h linux/videodev2.h],,,
668 669 670 671 672 673 674 675
[#ifdef HAVE_SYS_TIME_H
#include <sys/time.h>
#endif
#include <sys/types.h>
#ifdef HAVE_ASM_TYPES_H
#include <asm/types.h>
#endif])

676 677 678
dnl Check for broken kernel header that doesn't define __user
AC_CHECK_HEADERS([linux/capi.h],,,[#define __user])

679 680 681 682 683 684 685 686 687 688
dnl **** Check for working dll ****

AC_SUBST(DLLEXT,"")
AC_SUBST(DLLFLAGS,"-D_REENTRANT")
AC_SUBST(LDSHARED,"")
AC_SUBST(LDDLLFLAGS,"")
AC_SUBST(LIBEXT,"so")
AC_SUBST(IMPLIBEXT,"def")
AC_SUBST(LDRPATH_INSTALL,"")
AC_SUBST(LDRPATH_LOCAL,"")
689
STATIC_IMPLIBEXT="def.a"
690 691 692 693 694 695 696 697 698 699 700 701 702
WINE_PATH_LDD

case $host_os in
  cygwin*|mingw32*)
    AC_CHECK_TOOL(DLLTOOL,dlltool,false)
    AC_CHECK_TOOL(DLLWRAP,dllwrap,false)
    if test "$DLLWRAP" = "false"; then
      LIBEXT="a"
    else
      dnl FIXME - check whether dllwrap works correctly...
      LIBEXT="dll"
    fi
    IMPLIBEXT="a"
703
    STATIC_IMPLIBEXT="a"
704 705 706 707 708 709 710 711
    dnl Disable modules that can't be used on Windows
    enable_iphlpapi=${enable_iphlpapi:-no}
    enable_kernel32=${enable_kernel32:-no}
    enable_msvcrt=${enable_msvcrt:-no}
    enable_ntdll=${enable_ntdll:-no}
    enable_ws2_32=${enable_ws2_32:-no}
    enable_loader=${enable_loader:-no}
    enable_server=${enable_server:-no}
712 713
    dnl Disable dependencies that are not useful on Windows
    with_x=${with_x:-no}
714
    with_pthread=${with_pthread:-no}
715 716 717 718 719 720 721 722
    ;;
  darwin*|macosx*)
    DLLEXT=".so"
    LIBEXT="dylib"
    DLLFLAGS="$DLLFLAGS -fPIC"
    LDDLLFLAGS="-bundle -multiply_defined suppress"
    LIBWINE_LDFLAGS="-multiply_defined suppress"
    LDSHARED="\$(CC) -dynamiclib"
723
    LDRPATH_LOCAL="&& install_name_tool -change @executable_path/\`\$(RELPATH) \$(bindir) \$(libdir)\`/libwine.1.dylib @executable_path/\$(top_builddir)/libs/wine/libwine.1.dylib \$@ || \$(RM) \$@"
724 725 726
    dnl declare needed frameworks
    AC_SUBST(COREFOUNDATIONLIB,"-framework CoreFoundation")
    AC_SUBST(IOKITLIB,"-framework IOKit -framework CoreFoundation")
727
    AC_SUBST(APPLICATIONSERVICESLIB,"-framework ApplicationServices")
728
    AC_SUBST(CORESERVICESLIB,"-framework CoreServices")
729 730 731 732 733 734
    case $host_os in
      darwin11*)
        AC_SUBST(LDEXECFLAGS,["-image_base 0x7bf00000 -Wl,-macosx_version_min,10.6,-segaddr,WINE_DOS,0x00001000,-segaddr,WINE_SHAREDHEAP,0x7f000000"]) ;;
      *)
        AC_SUBST(LDEXECFLAGS,["-image_base 0x7bf00000 -Wl,-segaddr,WINE_DOS,0x00001000,-segaddr,WINE_SHAREDHEAP,0x7f000000"]) ;;
    esac
735 736 737 738 739
    if test "$ac_cv_header_DiskArbitration_DiskArbitration_h" = "yes"
    then
        dnl DiskArbitration API is not public on Darwin < 8.0, use it only if header found
        AC_SUBST(DISKARBITRATIONLIB,"-framework DiskArbitration -framework CoreFoundation")
    fi
740 741 742
    if test "$ac_cv_header_Security_Security_h" = "yes"
    then
        AC_SUBST(SECURITYLIB,"-framework Security -framework CoreFoundation")
743 744 745 746 747
        dnl Check for the SSLCopyPeerCertificates function
        ac_save_LIBS="$LIBS"
        LIBS="$LIBS $SECURITYLIB"
        AC_CHECK_FUNCS(SSLCopyPeerCertificates)
        LIBS="$ac_save_LIBS"
748 749
        with_gnutls=${with_gnutls:-no}
    fi
750 751
    if test "$ac_cv_header_CoreAudio_CoreAudio_h" = "yes" -a "$ac_cv_header_AudioUnit_AudioUnit_h" = "yes"
    then
752 753 754 755 756 757 758
        if test "$ac_cv_header_AudioUnit_AudioComponent_h" = "yes"
        then
            AC_SUBST(COREAUDIO,"-framework CoreFoundation -framework CoreAudio -framework AudioUnit -framework AudioToolbox -framework CoreMIDI")
        else
            dnl CoreServices needed by AudioUnit
            AC_SUBST(COREAUDIO,"-framework CoreAudio -framework AudioUnit -framework CoreServices -framework AudioToolbox -framework CoreMIDI")
        fi
759 760 761 762 763
        dnl Check for the AUGraphAddNode function
        ac_save_LIBS="$LIBS"
        LIBS="$LIBS $COREAUDIO"
        AC_CHECK_FUNCS(AUGraphAddNode)
        LIBS="$ac_save_LIBS"
764
    fi
765 766
    if test "$ac_cv_header_OpenAL_al_h" = "yes"
    then
767 768 769
        AC_SUBST(FRAMEWORK_OPENAL,"-framework OpenAL")
        AC_DEFINE_UNQUOTED(HAVE_OPENAL,1,[Define to 1 if OpenAL is available])
        ac_cv_lib_openal=yes
770
    fi
771 772 773 774 775
    if test "$ac_cv_header_OpenCL_opencl_h" = "yes"
    then
        AC_SUBST(LIBOPENCL,"-framework OpenCL")
        ac_cv_lib_OpenCL_clGetPlatformInfo=yes
    fi
776 777 778 779 780 781 782
    if test "$ac_cv_header_IOKit_hid_IOHIDLib_h" = "yes"
    then
        ac_save_LIBS="$LIBS"
        LIBS="$LIBS $IOKITLIB"
        AC_CHECK_FUNCS(IOHIDManagerCreate)
        LIBS="$ac_save_LIBS"
    fi
783 784 785 786 787
    case $host_cpu in
      *powerpc*)
        LDDLLFLAGS="$LDDLLFLAGS -read_only_relocs warning"  dnl FIXME
        ;;
    esac
788 789 790 791 792 793 794
    if test "$ac_cv_header_QuickTime_ImageCompression_h" = "yes"
    then
        AC_SUBST(QUICKTIMELIB,"-framework QuickTime -framework ApplicationServices -framework CoreVideo")
        enable_wineqtdecoder=${enable_wineqtdecoder:-yes}
    else
        WINE_NOTICE([QuickTime ${notice_platform}development files not found, video decoding won't be supported.])
    fi
795 796 797 798
    dnl Enable quartz driver on Mac OS X
    if test "$ac_cv_header_Carbon_Carbon_h" = "yes"
    then
        AC_SUBST(CARBONLIB,"-framework Carbon")
799
        enable_winequartz_drv=${enable_winequartz_drv:-yes}
800
    fi
801 802 803 804
    dnl Check for Xcode 3.x broken 16-bit support
    if test "x$enable_win16" = "xyes"
    then
        AC_MSG_CHECKING([whether 16-bit code can be built correctly])
805
        AC_RUN_IFELSE([AC_LANG_PROGRAM([[asm(".text\n"
806 807 808 809 810 811
                                            "bad:\tnop;nop\n"
                                            "good:\tnop;nop\n\t"
                                            ".globl _testfunc\n"
                                            "_testfunc:\tcallw good");
                                        extern void testfunc();]],
                                      [[unsigned short *p = (unsigned short *)testfunc;
812
                                        return p[0] != 0xe866 || p[1] != 0xfffa]])],
813 814 815 816 817
                                      AC_MSG_RESULT(yes),
                                      [AC_MSG_RESULT(no)
                                       AC_MSG_ERROR([Xcode 3.x cannot build 16-bit code correctly. Use --disable-win16 if you don't need 16-bit support.])],
                                       AC_MSG_RESULT([[cross-compiling, assuming yes]]))
    fi
818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848
    ;;
  *)
    DLLFLAGS="$DLLFLAGS -fPIC"
    DLLEXT=".so"
    AC_CACHE_CHECK([whether we can build a GNU style ELF dll], ac_cv_c_dll_gnuelf,
        [WINE_TRY_SHLIB_FLAGS([-fPIC -shared -Wl,-Bsymbolic],
                              ac_cv_c_dll_gnuelf="yes",ac_cv_c_dll_gnuelf="no")])
    if test "$ac_cv_c_dll_gnuelf" = "yes"
    then
      LDSHARED="\$(CC) -shared"
      LDDLLFLAGS="-shared -Wl,-Bsymbolic"
      WINE_TRY_CFLAGS([-fPIC -shared -Wl,-soname,confest.so.1],
                      [LDSHARED="\$(CC) -shared \$(SONAME:%=-Wl,-soname,%)"],
                      [WINE_TRY_CFLAGS([-fPIC -shared -Wl,-h,confest.so.1],
                                       [LDSHARED="\$(CC) -shared \$(SONAME:%=-Wl,-h,%)"])])

      WINE_TRY_CFLAGS([-fPIC -shared -Wl,-Bsymbolic,-z,defs], [LDDLLFLAGS="$LDDLLFLAGS,-z,defs"])

      WINE_TRY_CFLAGS([-fPIC -shared -Wl,-Bsymbolic,-init,__wine_spec_init,-fini,__wine_spec_fini],
                      [LDDLLFLAGS="$LDDLLFLAGS,-init,__wine_spec_init,-fini,__wine_spec_fini"])

      echo '{ global: *; };' >conftest.map
      WINE_TRY_CFLAGS([-fPIC -shared -Wl,--version-script=conftest.map],
                      [LDSHARED="$LDSHARED \$(VERSCRIPT:%=-Wl,--version-script=%)"])
      rm -f conftest.map

      WINE_TRY_CFLAGS([-fPIC -Wl,--export-dynamic],
                      [AC_SUBST(LDEXECFLAGS,["-Wl,--export-dynamic"])])

      WINE_TRY_CFLAGS([-fPIC -Wl,--rpath,\$ORIGIN/../lib],
                      [LDRPATH_INSTALL="-Wl,--rpath,\\\$\$ORIGIN/\`\$(RELPATH) \$(bindir) \$(libdir)\`"
849
                       LDRPATH_LOCAL="-Wl,--rpath,\\\$\$ORIGIN/\$(top_builddir)/libs/wine"],
850 851
          [WINE_TRY_CFLAGS([-fPIC -Wl,-R,\$ORIGIN/../lib],
                           [LDRPATH_INSTALL="-Wl,-R,\\\$\$ORIGIN/\`\$(RELPATH) \$(bindir) \$(libdir)\`"
852
                            LDRPATH_LOCAL="-Wl,-R,\\\$\$ORIGIN/\$(top_builddir)/libs/wine"])])
853

854 855 856
      WINE_TRY_CFLAGS([-Wl,--enable-new-dtags],
                      [LDRPATH_INSTALL="$LDRPATH_INSTALL -Wl,--enable-new-dtags"])

857 858 859
      case $host_cpu in
        *i[[3456789]]86* | x86_64)
          WINE_TRY_CFLAGS([-Wl,--section-start,.interp=0x7bf00400],
860
                          [case $host_os in
861
                           freebsd* | kfreebsd*-gnu) LDEXECFLAGS="$LDEXECFLAGS -Wl,--section-start,.interp=0x60000400" ;;
862 863 864
                           *) LDEXECFLAGS="$LDEXECFLAGS -Wl,--section-start,.interp=0x7bf00400" ;;
                           esac
                          ])
865 866 867 868 869
          AC_PATH_PROG(PRELINK, prelink, false, [/sbin /usr/sbin $PATH])
          if test "x$PRELINK" = xfalse
          then
              WINE_WARNING([prelink not found, base address of core dlls won't be set correctly.])
          fi
870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896
          ;;
      esac

    else
      AC_CACHE_CHECK(whether we can build a UnixWare (Solaris) dll, ac_cv_c_dll_unixware,
          [WINE_TRY_SHLIB_FLAGS([-fPIC -Wl,-G,-h,conftest.so.1.0,-B,symbolic],
                                ac_cv_c_dll_unixware="yes",ac_cv_c_dll_unixware="no")])
      if test "$ac_cv_c_dll_unixware" = "yes"
      then
        LDSHARED="\$(CC) -Wl,-G \$(SONAME:%=-Wl,-h,%)"
        LDDLLFLAGS="-Wl,-G,-B,symbolic"

      else
        AC_CACHE_CHECK(whether we can build an HP-UX dll, ac_cv_c_dll_hpux,
          [WINE_TRY_SHLIB_FLAGS([-shared], ac_cv_c_dll_hpux="yes", ac_cv_c_dll_hpux="no")])
        if test "$ac_cv_c_dll_hpux" = "yes"
        then
          LIBEXT="sl"
          DLLEXT=".sl"
          LDDLLFLAGS="-shared -fPIC"
          LDSHARED="\$(CC) -shared"
        fi
      fi
    fi
    ;;
esac

897
enable_wineqtdecoder=${enable_wineqtdecoder:-no}
898 899
enable_winequartz_drv=${enable_winequartz_drv:-no}

900 901 902 903 904 905 906 907 908
if test "$LIBEXT" = "a"; then
  AC_MSG_ERROR(
[could not find a way to build shared libraries.
It is currently not possible to build Wine without shared library
(.so) support to allow transparent switch between .so and .dll files.
If you are using Linux, you will need a newer binutils.]
)
fi

909
dnl Check for cross compiler to build test programs
910 911
AC_SUBST([CROSSTEST_DISABLE],[\#])
if test "$cross_compiling" = "no" -a "x$enable_tests" != xno -a "$LIBEXT" != "dll"
912 913 914 915
then
    WINE_CHECK_MINGW_PROG(CROSSCC,gcc,false)
    if test "$CROSSCC" != "false"
    then
916 917 918
        ac_save_CC="$CC"
        CC="$CROSSCC"
        AC_MSG_CHECKING([whether $CROSSCC works])
919
        AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937
                          [AC_MSG_RESULT([yes])
                           set x $CROSSCC
                           shift
                           target=""
                           while test $# -ge 1
                           do
                               case "$1" in
                                 *-gcc) target=`expr "$1" : '\(.*\)-gcc'` ;;
                               esac
                               shift
                           done
                           if test -n "$target"
                           then
                               CROSSTEST_DISABLE=""
                               AC_SUBST(CROSSTARGET,"$target")
                           fi],
                          [AC_MSG_RESULT([no])])
        CC="$ac_save_CC"
938 939 940
    fi
fi

941 942 943 944 945 946 947 948 949
dnl **** Check for pthread ****

if test "$ac_cv_header_pthread_h" = "yes"
then
    AC_CHECK_LIB(pthread,pthread_create,[AC_SUBST(LIBPTHREAD,"-lpthread")])
fi
WINE_ERROR_WITH(pthread,[test "x$LIBPTHREAD" = "x"],[pthread ${notice_platform}development files not found.
Wine cannot support threads without libpthread.])

950 951
dnl **** Check for X11 ****

952 953
AC_PATH_XTRA

954 955
if test "$have_x" = "yes"
then
956
    XLIB="-lX11"
957 958
    ac_save_CPPFLAGS="$CPPFLAGS"
    CPPFLAGS="$CPPFLAGS $X_CFLAGS"
959

960
    WINE_CHECK_SONAME(X11,XCreateWindow,,,[$X_LIBS $X_EXTRA_LIBS])
961
    WINE_CHECK_SONAME(Xext,XextCreateExtension,[XLIB="-lXext $XLIB"],,[$X_LIBS -lX11 $X_EXTRA_LIBS])
962

963
    dnl *** All of the following tests require X11/Xlib.h
964 965 966
    AC_CHECK_HEADERS([X11/Xlib.h \
                      X11/XKBlib.h \
                      X11/Xutil.h \
967
                      X11/Xcursor/Xcursor.h \
968 969
                      X11/extensions/shape.h \
                      X11/extensions/XInput.h \
970
                      X11/extensions/XInput2.h \
971
                      X11/extensions/Xcomposite.h \
972
                      X11/extensions/Xinerama.h \
973 974
                      X11/extensions/Xrandr.h \
                      X11/extensions/Xrender.h \
975 976
                      X11/extensions/xf86vmode.h \
                      X11/extensions/xf86vmproto.h],,,
977 978 979 980 981 982
[#ifdef HAVE_X11_XLIB_H
# include <X11/Xlib.h>
#endif
#ifdef HAVE_X11_XUTIL_H
# include <X11/Xutil.h>
#endif])
983

984
        dnl *** Check for X keyboard extension
985 986
        if test "$ac_cv_header_X11_XKBlib_h" = "yes"
        then
987
              AC_CHECK_LIB(X11, XkbQueryExtension,
988
              AC_DEFINE(HAVE_XKB, 1, [Define if you have the XKB extension]),,
989
              $X_LIBS $XLIB $X_EXTRA_LIBS)
990
        fi
991

992 993 994
        dnl *** Check for X cursor
        if test "$ac_cv_header_X11_Xcursor_Xcursor_h" = "yes"
        then
995
            WINE_CHECK_SONAME(Xcursor,XcursorImageLoadCursor,,,[$X_LIBS $XLIB $X_EXTRA_LIBS])
996
        fi
997
        WINE_NOTICE_WITH(xcursor,[test "x$ac_cv_lib_soname_Xcursor" = "x"],
998
                         [libxcursor ${notice_platform}development files not found, the Xcursor extension won't be supported.])
999

1000 1001 1002
        dnl *** Check for X input extension
        if test "$ac_cv_header_X11_extensions_XInput_h" = "yes"
        then
1003
            WINE_CHECK_SONAME(Xi,XOpenDevice,,,[$X_LIBS $XLIB $X_EXTRA_LIBS])
1004
        fi
1005
        WINE_NOTICE_WITH(xinput,[test "x$ac_cv_lib_soname_Xi" = "x"],
1006
                         [libxi ${notice_platform}development files not found, the Xinput extension won't be supported.])
1007

1008 1009 1010 1011 1012 1013 1014
        dnl *** Check for X input 2 extension
        if test "x$ac_cv_lib_soname_Xi" != x
        then
            WINE_NOTICE_WITH(xinput2,[test "$ac_cv_header_X11_extensions_XInput2_h" != "yes"],
                             [XInput2 headers not found, the XInput 2 extension won't be supported.])
        fi

1015
        dnl *** Check for X shape extension
1016 1017
        if test "$ac_cv_header_X11_extensions_shape_h" = "yes"
        then
1018
              AC_CHECK_LIB(Xext,XShapeQueryExtension,
1019
	      AC_DEFINE(HAVE_LIBXSHAPE, 1, [Define if you have the X Shape extension]),,
1020
	      $X_LIBS $XLIB $X_EXTRA_LIBS)
1021
        fi
1022
        WINE_NOTICE_WITH(xshape,[test "$ac_cv_lib_Xext_XShapeQueryExtension" != "yes"],
1023
                         [XShape ${notice_platform}development files not found, XShape won't be supported.])
1024

1025
        dnl *** Check for XFree86 VMODE extension
1026
        if test "$ac_cv_header_X11_extensions_xf86vmode_h" = "yes" -o "$ac_cv_header_X11_extensions_xf86vmproto_h" = "yes"
1027
        then
1028
            WINE_CHECK_SONAME(Xxf86vm,XF86VidModeQueryExtension,,,[$X_LIBS $XLIB $X_EXTRA_LIBS])
1029
        fi
1030
        WINE_NOTICE_WITH(xxf86vm,[test "x$ac_cv_lib_soname_Xxf86vm" = "x"],
1031
                         [libXxf86vm ${notice_platform}development files not found, XFree86 Vidmode won't be supported.])
1032

1033
        dnl *** Check for Transform functions in Xrender
1034
        if test "$ac_cv_header_X11_extensions_Xrender_h" = "yes" -a "x$ac_cv_lib_soname_X11" != "x" -a "x$ac_cv_lib_soname_Xext" != "x"
1035
        then
1036 1037
            WINE_CHECK_SONAME(Xrender,XRenderQueryExtension,
              [AC_CHECK_LIB(Xrender,XRenderSetPictureTransform,
1038
                [AC_DEFINE(HAVE_XRENDERSETPICTURETRANSFORM, 1,
1039 1040 1041 1042 1043
                 [Define if Xrender has the XRenderSetPictureTransform function])],,[$X_LIBS $XLIB $X_EXTRA_LIBS])
               AC_CHECK_LIB(Xrender,XRenderCreateLinearGradient,
                [AC_DEFINE(HAVE_XRENDERCREATELINEARGRADIENT, 1,
                 [Define if Xrender has the XRenderCreateLinearGradient function])],,[$X_LIBS $XLIB $X_EXTRA_LIBS])],,
              [$X_LIBS $XLIB $X_EXTRA_LIBS])
1044 1045

        fi
1046
        WINE_WARNING_WITH(xrender,[test "x$ac_cv_lib_soname_Xrender" = "x"],
1047
                         [libxrender ${notice_platform}development files not found, XRender won't be supported.])
1048 1049 1050 1051 1052

        dnl *** Check for X RandR extension
        if test "$ac_cv_header_X11_extensions_Xrandr_h" = "yes" -a "x$ac_cv_lib_soname_Xrender" != "x"
        then
                AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>
1053
#include <X11/extensions/Xrandr.h>]], [[static typeof(XRRSetScreenConfigAndRate) * func; if (func) return 0;]])],
1054
                  [WINE_CHECK_SONAME(Xrandr,XRRQueryExtension,,,[$X_LIBS $XLIB $X_EXTRA_LIBS])])
1055
        fi
1056
        WINE_NOTICE_WITH(xrandr,[test "x$ac_cv_lib_soname_Xrandr" = "x"],
1057
                         [libxrandr ${notice_platform}development files not found, XRandr won't be supported.])
1058 1059 1060 1061

        dnl *** Check for Xinerama extension
        if test "$ac_cv_header_X11_extensions_Xinerama_h" = "yes"
        then
1062
                AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>
1063
#include <X11/extensions/Xinerama.h>]], [[static typeof(XineramaQueryScreens) * func; if (func) return 0;]])],
1064
                  [WINE_CHECK_SONAME(Xinerama,XineramaQueryScreens,,,[$X_LIBS $XLIB $X_EXTRA_LIBS])])
1065
        fi
1066
        WINE_NOTICE_WITH(xinerama,[test "x$ac_cv_lib_soname_Xinerama" = "x"],
1067
                         [libxinerama ${notice_platform}development files not found, multi-monitor setups won't be supported.])
1068

1069 1070 1071
        dnl *** Check for X Composite extension
        if test "$ac_cv_header_X11_extensions_Xcomposite_h" = "yes"
        then
1072
            WINE_CHECK_SONAME(Xcomposite,XCompositeRedirectWindow,,,[$X_LIBS $XLIB $X_EXTRA_LIBS])
1073
        fi
1074
        WINE_NOTICE_WITH(xcomposite,[test "x$ac_cv_lib_soname_Xcomposite" = "x"],
1075
                         [libxcomposite ${notice_platform}development files not found, Xcomposite won't be supported.])
1076

1077
        dnl *** Check for XICCallback struct
1078
        AC_CHECK_MEMBERS([XICCallback.callback, XEvent.xcookie],,,
1079 1080 1081 1082
[#ifdef HAVE_X11_XLIB_H
#include <X11/Xlib.h>
#endif])

1083
    dnl *** End of X11/Xlib.h check
1084

Lionel Ulmer's avatar
Lionel Ulmer committed
1085
    dnl Check for the presence of OpenGL
1086
    opengl_msg=""
1087
    if test "x$with_opengl" != "xno"
1088
    then
1089
	AC_CHECK_HEADERS(GL/gl.h GL/glx.h GL/glu.h,,,
1090 1091 1092
[#ifdef HAVE_GL_GLX_H
# include <GL/glx.h>
#endif])
1093
	if test "$ac_cv_header_GL_gl_h" = "yes" -a "$ac_cv_header_GL_glx_h" = "yes"
1094 1095
	then
	    dnl Check for some problems due to old Mesa versions
1096
	    AC_CACHE_CHECK([for up-to-date OpenGL version], wine_cv_opengl_header_version_OK,
1097
	      AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <GL/gl.h>]], [[GLenum test = GL_UNSIGNED_SHORT_5_6_5;  return (test == GL_UNSIGNED_SHORT_5_6_5);]])],
1098
		[wine_cv_opengl_header_version_OK="yes"],
1099
		[wine_cv_opengl_header_version_OK="no"]))
1100

1101
	    if test "$wine_cv_opengl_header_version_OK" = "yes"
1102
            then
1103
		dnl Check for the presence of the library
1104
		WINE_CHECK_SONAME(GL,glXCreateContext,
1105
			     [OPENGL_LIBS="-lGL"
1106
                             AC_DEFINE(HAVE_OPENGL, 1, [Define if OpenGL is present on the system])],
1107 1108 1109 1110 1111
                             [WINE_CHECK_SONAME(GL,glXCreateContext,
				    [OPENGL_LIBS="-Xlinker -dylib_file -Xlinker /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib -lGL"
	                            AC_DEFINE(HAVE_OPENGL, 1, [Define if OpenGL is present on the system])],
				    [if test -f /usr/X11R6/lib/libGL.a
	                            then
1112 1113
		                        opengl_msg="/usr/X11R6/lib/libGL.a is present on your system.
This probably prevents linking to OpenGL. Try deleting the file and restarting configure."
1114
	                            else
1115
	                                opengl_msg="No OpenGL library found on this system."
1116
	                            fi],
1117 1118
				    $X_LIBS $XLIB -lm $X_EXTRA_LIBS -dylib_file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib)],
			     $X_LIBS $XLIB -lm $X_EXTRA_LIBS)
1119 1120
                 if test "$ac_cv_header_GL_glu_h" = "yes"
                 then
1121
                    WINE_CHECK_SONAME(GLU,gluLookAt,,,[$OPENGL_LIBS $X_LIBS $X_PRE_LIBS $XLIB -lm $X_EXTRA_LIBS])
1122 1123
                 fi
                 WINE_NOTICE_WITH(glu,[test "x$ac_cv_lib_soname_GLU" = "x"],
1124
                                 [libGLU ${notice_platform}development files not found, GLU won't be supported.])
1125
             else
1126
                 opengl_msg="Old Mesa headers detected. Consider upgrading your Mesa libraries."
1127
	     fi
1128
         else
1129
             opengl_msg="OpenGL development headers not found."
1130
	 fi
1131 1132 1133 1134 1135
         test -n "$opengl_msg" && enable_opengl32=${enable_opengl32:-no}
         test "x$ac_cv_lib_soname_GLU" = "x" && enable_glu32=${enable_glu32:-no}
    else
         enable_opengl32=${enable_opengl32:-no}
         enable_glu32=${enable_glu32:-no}
1136
    fi
1137 1138
    WINE_WARNING_WITH(opengl,[test -n "$opengl_msg"],[$opengl_msg
OpenGL and Direct3D won't be supported.])
1139

1140
    CPPFLAGS="$ac_save_CPPFLAGS"
1141 1142 1143 1144
else
    XLIB=""
    X_CFLAGS=""
    X_LIBS=""
1145 1146 1147
    enable_winex11_drv=${enable_winex11_drv:-no}
    enable_opengl32=${enable_opengl32:-no}
    enable_glu32=${enable_glu32:-no}
1148
fi
1149
WINE_ERROR_WITH(x,[test "x$XLIB" = "x"],[X ${notice_platform}development files not found. Wine will be built
1150 1151
without X support, which probably isn't what you want. You will need
to install ${notice_platform}development packages of Xlib/Xfree86 at the very least.])
Alexandre Julliard's avatar
Alexandre Julliard committed
1152

1153
dnl **** Check for OpenCL ****
1154
if test "$ac_cv_header_CL_cl_h" = "yes"
1155 1156 1157 1158 1159 1160 1161
then
    AC_CHECK_LIB(OpenCL,clGetPlatformInfo,[AC_SUBST(LIBOPENCL,["-lOpenCL"])])
fi
WINE_NOTICE_WITH(opencl,[test "x$ac_cv_lib_OpenCL_clGetPlatformInfo" != xyes],
                 [OpenCL ${notice_platform}development files not found, OpenCL won't be supported.])
test "x$ac_cv_lib_OpenCL_clGetPlatformInfo" != xyes && enable_opencl=${enable_opencl:-no}

1162 1163 1164 1165
dnl **** Check for libxml2 ****

AC_SUBST(XML2LIBS,"")
AC_SUBST(XML2INCL,"")
1166
AC_SUBST(XSLTINCL,"")
1167
if test "x$with_xml" != "xno"
1168
then
1169 1170 1171 1172 1173 1174 1175 1176 1177 1178
    ac_save_CPPFLAGS="$CPPFLAGS"
    if test "$PKG_CONFIG" != "false"
    then
        ac_xml_libs="`$PKG_CONFIG --libs libxml-2.0 2>/dev/null`"
        ac_xml_cflags="`$PKG_CONFIG --cflags libxml-2.0 2>/dev/null`"
    else
        ac_xml_libs="`xml2-config --libs 2>/dev/null`"
        ac_xml_cflags="`xml2-config --cflags  2>/dev/null`"
    fi
    CPPFLAGS="$CPPFLAGS $ac_xml_cflags"
1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198
    AC_CHECK_HEADERS([libxml/parser.h libxml/xmlsave.h libxml/SAX2.h])
    if test "$ac_cv_header_libxml_parser_h" = "yes" -a "$ac_cv_header_libxml_xmlsave_h" = "yes" -a "$ac_cv_header_libxml_SAX2_h" = "yes"
    then
        AC_CHECK_LIB(xml2, xmlParseMemory,
            [AC_DEFINE(HAVE_LIBXML2, 1, [Define if you have the libxml2 library])
             XML2LIBS="$ac_xml_libs"
             XML2INCL="$ac_xml_cflags"],,$ac_xml_libs)
        AC_CHECK_LIB(xml2, xmlReadMemory,
            [AC_DEFINE(HAVE_XMLREADMEMORY,1,[Define if libxml2 has the xmlReadMemory function])],,$ac_xml_libs)
        AC_CHECK_LIB(xml2, xmlNewDocPI,
            [AC_DEFINE(HAVE_XMLNEWDOCPI,1,[Define if libxml2 has the xmlNewDocPI function])],,$ac_xml_libs)
        AC_CHECK_LIB(xml2, xmlSchemaSetParserStructuredErrors,
            [AC_DEFINE(HAVE_XMLSCHEMASSETPARSERSTRUCTUREDERRORS,1,[Define if libxml2 has the xmlSchemaSetParserStructuredErrors function])],,$ac_xml_libs)
        AC_CHECK_LIB(xml2, xmlSchemaSetValidStructuredErrors,
            [AC_DEFINE(HAVE_XMLSCHEMASSETVALIDSTRUCTUREDERRORS,1,[Define if libxml2 has the xmlSchemaSetValidStructuredErrors function])],,$ac_xml_libs)
        AC_CHECK_LIB(xml2, xmlFirstElementChild,
            [AC_DEFINE(HAVE_XMLFIRSTELEMENTCHILD,1,[Define if libxml2 has the xmlFirstElementChild function])],,$ac_xml_libs)
        AC_CHECK_TYPE([xmlDocProperties],
            [AC_DEFINE(HAVE_XMLDOC_PROPERTIES,1,[Define if libxml2 has the xmlDocProperties enum])],,[[#include <libxml/tree.h>]])
    fi
1199
    CPPFLAGS="$ac_save_CPPFLAGS"
1200
fi
1201
WINE_WARNING_WITH(xml,[test "$ac_cv_lib_xml2_xmlParseMemory" != "yes"],
1202
                 [libxml2 ${notice_platform}development files not found (or too old), XML won't be supported.])
1203 1204

if test "x$with_xslt" != "xno"
1205
then
1206 1207 1208 1209 1210 1211 1212 1213
    if test "$PKG_CONFIG" != "false"
    then
        ac_xslt_libs="`$PKG_CONFIG --libs libxslt 2>/dev/null`"
        ac_xslt_cflags="`$PKG_CONFIG --cflags libxslt 2>/dev/null`"
    else
        ac_xslt_libs="`xslt-config --libs 2>/dev/null`"
        ac_xslt_cflags="`xslt-config --cflags 2>/dev/null`"
    fi
1214
    ac_save_CPPFLAGS="$CPPFLAGS"
1215
    CPPFLAGS="$CPPFLAGS $ac_xslt_cflags"
1216
    AC_CHECK_HEADERS([libxslt/pattern.h libxslt/transform.h],,,
1217
    [#ifdef HAVE_LIBXSLT_PATTERN_H
1218 1219
# include <libxslt/pattern.h>
#endif])
1220
    CPPFLAGS="$ac_save_CPPFLAGS"
1221 1222
    if test "$ac_cv_header_libxslt_transform_h" = "yes"
    then
1223 1224
        WINE_CHECK_SONAME(xslt,xsltCompilePattern,
                         [XSLTINCL="$ac_xslt_cflags"],,[$ac_xslt_libs])
1225
    fi
1226
fi
1227
WINE_WARNING_WITH(xslt,[test "x$ac_cv_lib_soname_xslt" = "x"],
1228
                 [libxslt ${notice_platform}development files not found, xslt won't be supported.])
1229

1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248
dnl **** Check for libdbus ****
if test "x$with_dbus" != "xno"
then
    ac_save_CPPFLAGS="$CPPFLAGS"
    if test "$PKG_CONFIG" != "false"
    then
        ac_dbus_libs="`$PKG_CONFIG --libs dbus-1 2>/dev/null`"
        ac_dbus_cflags="`$PKG_CONFIG --cflags dbus-1 2>/dev/null`"
        CPPFLAGS="$CPPFLAGS $ac_dbus_cflags"
    fi
    AC_CHECK_HEADER([dbus/dbus.h],
        [WINE_CHECK_SONAME(dbus-1, dbus_connection_close,
            [AC_SUBST(DBUSINCL,"$ac_dbus_cflags")],,[$ac_dbus_libs])])
    CPPFLAGS="$ac_save_CPPFLAGS"
fi
WINE_NOTICE_WITH(dbus,[test "x$ac_cv_lib_soname_dbus_1" = "x" -a \
                            "x$ac_cv_header_DiskArbitration_DiskArbitration_h" != "xyes"],
                 [libdbus ${notice_platform}development files not found, no dynamic device support.])

1249
dnl **** Check for libhal ****
1250
if test "x$with_hal" != "xno" -a "x$ac_cv_lib_soname_dbus_1" != x
1251 1252
then
    ac_save_CPPFLAGS="$CPPFLAGS"
1253 1254 1255 1256 1257 1258
    if test "$PKG_CONFIG" != "false"
    then
        ac_hal_libs="`$PKG_CONFIG --libs hal 2>/dev/null`"
        ac_hal_cflags="`$PKG_CONFIG --cflags hal 2>/dev/null`"
        CPPFLAGS="$CPPFLAGS $ac_hal_cflags"
    fi
1259 1260 1261
    AC_CHECK_HEADER([hal/libhal.h],
        [WINE_CHECK_SONAME(hal, libhal_ctx_new,
            [AC_SUBST(HALINCL,"$ac_hal_cflags")],,[$ac_hal_libs])])
1262
    CPPFLAGS="$ac_save_CPPFLAGS"
1263 1264 1265
    WINE_NOTICE_WITH(hal,[test "x$ac_cv_lib_soname_hal" = "x" -a \
                               "x$ac_cv_header_DiskArbitration_DiskArbitration_h" != "xyes"],
                     [libhal ${notice_platform}development files not found, no legacy dynamic device support.])
1266 1267
fi

1268
dnl **** Check for libgnutls ****
1269
if test "x$with_gnutls" != "xno"
1270 1271
then
    ac_save_CPPFLAGS="$CPPFLAGS"
1272 1273 1274 1275 1276 1277
    if test "$PKG_CONFIG" != "false"
    then
        ac_gnutls_libs="`$PKG_CONFIG --libs gnutls 2>/dev/null`"
        ac_gnutls_cflags="`$PKG_CONFIG --cflags gnutls 2>/dev/null`"
        CPPFLAGS="$CPPFLAGS $ac_gnutls_cflags"
    fi
1278
    AC_CHECK_HEADER(gnutls/gnutls.h,
1279
        [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <gnutls/gnutls.h>]], [[static typeof(gnutls_mac_get_key_size) *func; if (func) return 0;]])],
1280 1281
            [WINE_CHECK_SONAME(gnutls,gnutls_global_init,
                [AC_SUBST(GNUTLSINCL,"$ac_gnutls_cflags")],,[$ac_gnutls_libs])])])
1282 1283 1284
    CPPFLAGS="$ac_save_CPPFLAGS"
fi
WINE_NOTICE_WITH(gnutls,[test "x$ac_cv_lib_soname_gnutls" = "x"],
1285
                 [libgnutls ${notice_platform}development files not found, no schannel support.])
1286

1287
dnl **** Check which curses lib to use ***
1288
CURSESLIBS=""
1289
if test "$ac_cv_header_ncurses_h" = "yes"
1290
then
1291
    WINE_CHECK_SONAME(ncurses,waddch,[CURSESLIBS="-lncurses"])
1292 1293
elif test "$ac_cv_header_curses_h" = "yes"
then
1294
    WINE_CHECK_SONAME(curses,waddch,[CURSESLIBS="-lcurses"])
1295
fi
1296 1297 1298 1299
ac_save_LIBS="$LIBS"
LIBS="$LIBS $CURSESLIBS"
AC_CHECK_FUNCS(mousemask)
LIBS="$ac_save_LIBS"
1300
WINE_NOTICE_WITH(curses,[test "x$ac_cv_lib_soname_curses$ac_cv_lib_soname_ncurses" = "x"],
1301
                 [lib(n)curses ${notice_platform}development files not found, curses won't be supported.])
1302

1303
dnl **** Check for SANE ****
1304
if test "x$with_sane" != "xno"
1305 1306
then
    ac_save_CPPFLAGS="$CPPFLAGS"
1307 1308 1309 1310 1311 1312 1313
    AC_CHECK_PROG(sane_devel,sane-config,sane-config,no)
    if test "$sane_devel" != "no"
    then
        ac_sane_incl="`$sane_devel --cflags`"
        ac_sane_libs="`$sane_devel --ldflags`"
        CPPFLAGS="$CPPFLAGS $ac_sane_incl"
    fi
1314
    AC_CHECK_HEADER(sane/sane.h,
1315
        [WINE_CHECK_SONAME(sane,sane_init,[AC_SUBST(SANEINCL,"$ac_sane_incl")],,[$ac_sane_libs])])
1316 1317
    CPPFLAGS="$ac_save_CPPFLAGS"
fi
1318
WINE_NOTICE_WITH(sane,[test "x$ac_cv_lib_soname_sane" = "x"],
1319
                 [libsane ${notice_platform}development files not found, scanners won't be supported.])
1320

1321 1322 1323 1324 1325 1326 1327 1328
dnl **** Check for libv4l1 ****
if test "x$with_v4l" != "xno"
then
    WINE_CHECK_SONAME(v4l1,v4l1_open,,,)
fi
WINE_NOTICE_WITH(v4l,[test "x$ac_cv_lib_soname_v4l1" = "x"],
                 [libv4l ${notice_platform}development files not found.])

1329
dnl **** Check for libgphoto2 ****
1330
if test "x$with_gphoto" != "xno"
1331 1332
then
    ac_save_CPPFLAGS="$CPPFLAGS"
1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347
    AC_CHECK_PROG(gphoto2_devel,gphoto2-config,gphoto2-config,no)
    AC_CHECK_PROG(gphoto2port_devel,gphoto2-port-config,gphoto2-port-config,no)
    if test "$gphoto2_devel" != "no" -a "$gphoto2port_devel" != "no"
    then
        ac_gphoto2_incl="`$gphoto2_devel --cflags` `$gphoto2port_devel --cflags`"
        ac_gphoto2_libs=""
        for i in `$gphoto2_devel --libs` `$gphoto2port_devel --libs`
        do
            case "$i" in
            -L/usr/lib|-L/usr/lib64) ;;
            -L*|-l*) ac_gphoto2_libs="$ac_gphoto2_libs $i";;
            esac
        done
        CPPFLAGS="$CPPFLAGS $ac_gphoto2_incl"
    fi
1348
    ac_gphoto2_libs=${ac_gphoto2_libs:-"-lgphoto2"}
1349 1350
    AC_CHECK_HEADER(gphoto2-camera.h,
                    [AC_CHECK_LIB(gphoto2,gp_camera_new,
1351 1352 1353
                                  [AC_DEFINE(HAVE_GPHOTO2, 1, [Define if we have libgphoto2 development environment])
                                   AC_SUBST(GPHOTO2LIBS,"$ac_gphoto2_libs")
                                   AC_SUBST(GPHOTO2INCL,"$ac_gphoto2_incl")],,
1354
                                  [$ac_gphoto2_libs])])
1355 1356
    CPPFLAGS="$ac_save_CPPFLAGS"
fi
1357
WINE_NOTICE_WITH(gphoto,[test "$ac_cv_lib_gphoto2_gp_camera_new" != "yes"],
1358
                 [libgphoto2 ${notice_platform}development files not found, digital cameras won't be supported.])
1359

1360

1361 1362 1363
dnl **** Check for resolver library ***
if test "$ac_cv_header_resolv_h" = "yes"
then
1364
    ac_save_LIBS="$LIBS"
1365 1366 1367 1368
    for lib in '' -lresolv
    do
      LIBS="$lib $ac_save_LIBS"
      AC_LINK_IFELSE([AC_LANG_PROGRAM([[#ifdef HAVE_NETINET_IN_H
1369 1370
#include <netinet/in.h>
#endif
1371
#include <resolv.h>]],[[res_query("foo",ns_c_in,0,0,0);]])],
1372
        [AC_DEFINE(HAVE_RESOLV, 1, [Define if you have the resolver library and header])
1373 1374 1375 1376 1377
         AC_SUBST(RESOLVLIBS,"$lib")])
      if test "${RESOLVLIBS+set}" = set; then
        break
      fi
    done
1378
    LIBS="$ac_save_LIBS"
1379 1380
fi

1381 1382 1383 1384 1385 1386 1387 1388
dnl **** Check for LittleCMS ***
AC_SUBST(LCMSLIBS,"")
if test "$ac_cv_header_lcms_h" = "yes" -o "$ac_cv_header_lcms_lcms_h" = "yes"
then
    AC_CHECK_LIB(lcms, cmsOpenProfileFromFile,
        [AC_DEFINE(HAVE_LCMS, 1, [Define if you have the LittleCMS development environment])
         LCMSLIBS="-llcms"])
fi
1389
WINE_NOTICE_WITH(cms,[test "$ac_cv_lib_lcms_cmsOpenProfileFromFile" != "yes"],
1390
                 [liblcms ${notice_platform}development files not found, Color Management won't be supported.])
1391

1392
dnl **** Check for FreeType 2 ****
1393
if test "x$with_freetype" != "xno"
1394
then
1395
    if test "$PKG_CONFIG" != "false"
1396
    then
1397 1398 1399 1400 1401 1402 1403 1404 1405
        ac_freetype_incl="`$PKG_CONFIG --cflags freetype2 2>/dev/null`"
        ac_freetype_libs="`$PKG_CONFIG --libs freetype2 2>/dev/null`"
    else
        AC_CHECK_PROGS(ft_devel,[freetype-config freetype2-config],no)
        if test "$ft_devel" != "no"
        then
            ac_freetype_incl=`$ft_devel --cflags`
            ac_freetype_libs=`$ft_devel --libs`
        fi
1406
    fi
1407
    ac_freetype_libs=${ac_freetype_libs:-"-lfreetype"}
1408 1409
    WINE_CHECK_SONAME(freetype,FT_Init_FreeType,[ft_lib=yes],[ft_lib=no],[$ac_freetype_libs])
    if test "$ft_lib" = "yes"
1410
    then
1411
	ac_save_CPPFLAGS="$CPPFLAGS"
1412
	CPPFLAGS="$ac_freetype_incl $CPPFLAGS"
1413 1414
	AC_CHECK_HEADERS(ft2build.h \
                         freetype/freetype.h \
1415
                         freetype/ftglyph.h \
1416
                         freetype/fttypes.h \
1417 1418
                         freetype/tttables.h \
                         freetype/ftsnames.h \
1419
                         freetype/ttnameid.h \
Huw D M Davies's avatar
Huw D M Davies committed
1420
                         freetype/ftoutln.h \
1421
                         freetype/ftwinfnt.h \
1422
                         freetype/ftmodapi.h \
1423
                         freetype/ftlcdfil.h,,,
1424 1425
                         [#ifdef HAVE_FT2BUILD_H
                          # include <ft2build.h>
1426
                          #endif])
1427 1428
	AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <ft2build.h>
                    #include <freetype/fttrigon.h>]])],[AC_DEFINE(HAVE_FREETYPE_FTTRIGON_H, 1,
1429
          [Define if you have the <freetype/fttrigon.h> header file.])
1430
                    wine_cv_fttrigon=yes],[wine_cv_fttrigon=no])
1431
        AC_CHECK_TYPES(FT_TrueTypeEngineType,,,[#include <freetype/ftmodapi.h>])
1432
	dnl Check that we have at least freetype/freetype.h
1433
	if test "$ac_cv_header_freetype_freetype_h" = "yes" -a "$wine_cv_fttrigon" = "yes"
1434 1435
	then
	    AC_DEFINE(HAVE_FREETYPE, 1, [Define if FreeType 2 is installed])
1436 1437
            AC_SUBST(FREETYPELIBS,"$ac_freetype_libs")
            AC_SUBST(FREETYPEINCL,"$ac_freetype_incl")
1438
	fi
1439 1440
    fi
fi
1441
WINE_ERROR_WITH(freetype,[test "x$FREETYPELIBS" = "x"],[FreeType ${notice_platform}development files not found. Fonts will not be built.])
1442
test "x$FREETYPELIBS" = "x" && enable_fonts=${enable_fonts:-no}
1443

1444
dnl **** Check for parport (currently Linux only) ****
1445
AC_CACHE_CHECK([for parport header/ppdev.h], ac_cv_c_ppdev,
1446 1447 1448 1449
 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#ifdef HAVE_SYS_IOCTL_H
# include <sys/ioctl.h>
#endif
#include <linux/ppdev.h>]], [[ioctl (1,PPCLAIM,0)]])],
1450
    [ac_cv_c_ppdev="yes"],[ac_cv_c_ppdev="no"]))
1451 1452
if test "$ac_cv_c_ppdev" = "yes"
then
1453
    AC_DEFINE(HAVE_PPDEV, 1, [Define if we can use ppdev.h for parallel port access])
1454 1455
fi

1456
dnl **** Check for pthread functions ****
1457
WINE_CHECK_LIB_FUNCS(\
1458
        pthread_attr_get_np \
1459 1460
        pthread_getattr_np \
        pthread_get_stackaddr_np \
1461 1462
        pthread_get_stacksize_np,
        [$LIBPTHREAD])
1463

1464 1465 1466 1467 1468 1469
dnl **** Check for zlib ****
if test "$ac_cv_header_zlib_h" = "yes"
then
    AC_CHECK_LIB(z,inflate,[AC_DEFINE(HAVE_ZLIB,1,[Define to 1 if you have the `z' library (-lz).])
                            AC_SUBST(ZLIB,"-lz")])
fi
1470
WINE_NOTICE_WITH(zlib,[test "x$ZLIB" = "x"],[libz ${notice_platform}development files not found, data compression won't be supported.])
1471

1472 1473 1474 1475 1476
dnl **** Check for gettextpo ****
if test "x$enable_tools" != xno
then
    if test "$ac_cv_header_gettext_po_h" = "yes"
    then
1477
        AC_CHECK_LIB(gettextpo,po_message_msgctxt,
1478 1479 1480
                     [AC_DEFINE(HAVE_LIBGETTEXTPO,1,[Define to 1 if you have the `gettextpo' library (-lgettextpo).])
                      AC_SUBST(LIBGETTEXTPO,"-lgettextpo")])
    fi
1481 1482
    test "x$with_gettextpo" != xyes || WINE_NOTICE_WITH(gettextpo,[test "x$LIBGETTEXTPO" = "x"],
          [GetText ${notice_platform}development files not found (or too old), po files can't be rebuilt.])
1483 1484
fi

1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498
dnl **** Check for gstreamer ****
if test "x$with_gstreamer" != "xno"
then
    ac_save_CPPFLAGS="$CPPFLAGS"
    if test "$PKG_CONFIG" != "false"; then
        ac_gst_incl=""
        for i in `$PKG_CONFIG --cflags gstreamer-app-0.10 2>/dev/null`
        do
            case "$i" in
                -I*) ac_gst_incl="$ac_gst_incl $i";;
            esac
        done
        ac_gst_libs="`$PKG_CONFIG --libs gstreamer-app-0.10 2>/dev/null`"
        CPPFLAGS="$CPPFLAGS $ac_gst_incl"
1499 1500
        AC_CHECK_HEADER([gst/gstpad.h],
          [AC_CHECK_HEADER([gst/app/gstappsink.h],
1501 1502
             [AC_MSG_CHECKING([whether gint64 defined by gst/app/gstappsink.h is indeed 64-bit])
              AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <gst/app/gstappsink.h>]],
1503
                                                 [[static int a[sizeof(gint64) > 4 ? 1 : -1]; if (a[0]) return 0;]])],
1504 1505 1506 1507 1508 1509
                [AC_MSG_RESULT([yes])
                 AC_CHECK_LIB(gstreamer-0.10,gst_pad_get_caps_reffed,
                   [AC_CHECK_LIB(gstapp-0.10,gst_app_buffer_new,
                      [AC_SUBST(GSTREAMER_LIBS,"$ac_gst_libs")
                       AC_SUBST(GSTREAMER_INCL,"$ac_gst_incl")],,[$ac_gst_libs])])],
                [AC_MSG_RESULT([no])])])])
1510 1511 1512
    fi
    CPPFLAGS="$ac_save_CPPFLAGS"
fi
1513
WINE_NOTICE_WITH(gstreamer,[test "x$ac_cv_lib_gstapp_0_10_gst_app_buffer_new" != xyes -a "x$ac_cv_header_QuickTime_ImageCompression_h" != xyes],
1514
                 [gstreamer-0.10 base plugins ${notice_platform}development files not found, gstreamer support disabled])
1515 1516
test "x$ac_cv_lib_gstapp_0_10_gst_app_buffer_new" = xyes || enable_winegstreamer=${enable_winegstreamer:-no}

1517
dnl **** Check for ALSA 1.x ****
1518
AC_SUBST(ALSALIBS,"")
1519
if test "$ac_cv_header_sys_asoundlib_h" = "yes" -o "$ac_cv_header_alsa_asoundlib_h" = "yes"
1520
then
1521
    AC_CHECK_LIB(asound,snd_pcm_hw_params_get_access_mask,
1522
        [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#ifdef HAVE_ALSA_ASOUNDLIB_H
1523 1524 1525
#include <alsa/asoundlib.h>
#elif defined(HAVE_SYS_ASOUNDLIB_H)
#include <sys/asoundlib.h>
1526
#endif]], [[snd_pcm_hw_params_get_access_mask(NULL, NULL)]])],
1527
                        [ALSALIBS="-lasound"])])
1528 1529
fi

1530
dnl **** Check for OSSv4 ****
1531
if test "x$with_oss" != xno
1532
then
1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545
    ac_save_CPPFLAGS="$CPPFLAGS"
    if test -f /etc/oss.conf
    then
        . /etc/oss.conf
    fi
    ac_oss_incl="-I${OSSLIBDIR:-/usr/lib/oss}/include"
    CPPFLAGS="$CPPFLAGS $ac_oss_incl"
    AC_CHECK_HEADER([sys/soundcard.h],
        [AC_CHECK_MEMBERS([oss_sysinfo.numaudioengines],
                          [AC_SUBST(OSS4INCL,"$ac_oss_incl")],,
                          [#include <sys/soundcard.h>])])
    CPPFLAGS="$ac_save_CPPFLAGS"
    if test "x$ac_cv_member_oss_sysinfo_numaudioengines" != xyes
1546 1547 1548 1549 1550
    then
        WINE_NOTICE([OSS sound system found but too old (OSSv4 needed), OSS won't be supported.])
    fi
fi

1551 1552
dnl **** Check for capi4linux ****

1553 1554
if test "$ac_cv_header_capi20_h" = "yes" -a "$ac_cv_header_linux_capi_h" = "yes"
then
1555
    WINE_CHECK_SONAME(capi20,capi20_register)
1556
fi
1557
WINE_NOTICE_WITH(capi,[test "x$ac_cv_lib_soname_capi20" = "x"],
1558
                 [libcapi20 ${notice_platform}development files not found, ISDN won't be supported.])
1559

1560
dnl **** Check for cups ****
1561 1562
AC_SUBST(CUPSINCL,"")
if test "x$with_cups" != "xno"
1563
then
1564 1565
    ac_save_CPPFLAGS="$CPPFLAGS"
    ac_cups_cflags=`cups-config --cflags 2>/dev/null`
1566
    ac_cups_libs=`cups-config --ldflags 2>/dev/null`
1567 1568 1569 1570 1571 1572
    CPPFLAGS="$CPPFLAGS $ac_cups_cflags"
    AC_CHECK_HEADERS(cups/cups.h,
            [WINE_CHECK_SONAME(cups,cupsGetDefault,
                       [CUPSINCL="$ac_cups_cflags"],,
                       [$ac_cups_libs])])
    CPPFLAGS="$ac_save_CPPFLAGS"
1573
fi
1574
WINE_NOTICE_WITH(cups,[test "x$ac_cv_lib_soname_cups" = "x"],
1575
                 [libcups ${notice_platform}development files not found, CUPS won't be supported.])
1576

1577 1578 1579 1580
dnl **** Check for fontconfig ****
if test "$ac_cv_header_fontconfig_fontconfig_h" = "yes"
then
    WINE_CHECK_SONAME(fontconfig,FcInit)
1581
elif test -n "$X_CFLAGS" -a "x$with_fontconfig" != "xno"
1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593
then
    dnl fontconfig is in the X directory on Mac OS X
    ac_save_CPPFLAGS="$CPPFLAGS"
    CPPFLAGS="$CPPFLAGS $X_CFLAGS"
    $as_unset ac_cv_header_fontconfig_fontconfig_h
    AC_CHECK_HEADERS([fontconfig/fontconfig.h])
    CPPFLAGS="$ac_save_CPPFLAGS"
    if test "$ac_cv_header_fontconfig_fontconfig_h" = "yes"
    then
        AC_SUBST(FONTCONFIGINCL,"$X_CFLAGS")
        WINE_CHECK_SONAME(fontconfig,FcInit,,,[$X_LIBS])
    fi
1594
fi
1595
WINE_NOTICE_WITH(fontconfig,[test "x$ac_cv_lib_soname_fontconfig" = "x"],
1596
                 [fontconfig ${notice_platform}development files not found, fontconfig won't be supported.])
1597

1598 1599 1600 1601 1602 1603
dnl **** Check for SSL ****
if test "$ac_cv_header_openssl_err_h" = "yes" -a "$ac_cv_header_openssl_ssl_h" = "yes"
then
    WINE_CHECK_SONAME(ssl,SSL_library_init)
    WINE_CHECK_SONAME(crypto,BIO_new_socket)
fi
1604
WINE_WARNING_WITH(openssl,[test "x$ac_cv_lib_soname_ssl" = "x" -o "x$ac_cv_lib_soname_crypto" = "x"],
1605
                 [OpenSSL ${notice_platform}development files not found, SSL won't be supported.])
1606

1607
dnl **** Check for gsm codec ****
1608
if test "$ac_cv_header_gsm_h" = "yes" -o "$ac_cv_header_gsm_gsm_h" = "yes"
1609 1610 1611
then
    WINE_CHECK_SONAME(gsm,gsm_create)
fi
1612
WINE_NOTICE_WITH(gsm,[test "x$ac_cv_lib_soname_gsm" = "x"],
1613 1614
                 [libgsm ${notice_platform}development files not found, gsm 06.10 codec won't be supported.])

1615 1616 1617 1618 1619
dnl **** Check for libjpeg ****
if test "$ac_cv_header_jpeglib_h" = "yes"
then
    WINE_CHECK_SONAME(jpeg,jpeg_start_decompress)
fi
1620
WINE_WARNING_WITH(jpeg,[test "x$ac_cv_lib_soname_jpeg" = "x"],
1621
                 [libjpeg ${notice_platform}development files not found, JPEG won't be supported.])
1622

1623 1624 1625
dnl **** Check for libpng ****
if test "$ac_cv_header_png_h" = "yes"
then
1626
    WINE_CHECK_SONAME(png,png_create_read_struct,,,-lm -lz,[[libpng[[0-9]]*]])
1627 1628 1629
    AC_CHECK_LIB(png,png_set_expand_gray_1_2_4_to_8,
	[AC_DEFINE(HAVE_PNG_SET_EXPAND_GRAY_1_2_4_TO_8,1,[Define to 1 if libpng has the png_set_expand_gray_1_2_4_to_8 function.])]
	,,-lm -lz)
1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641
elif test -n "$X_CFLAGS" -a "x$with_png" != "xno"
then
    dnl libpng is in the X directory on Mac OS X
    ac_save_CPPFLAGS="$CPPFLAGS"
    CPPFLAGS="$CPPFLAGS $X_CFLAGS"
    $as_unset ac_cv_header_png_h
    AC_CHECK_HEADERS([png.h])
    CPPFLAGS="$ac_save_CPPFLAGS"
    if test "$ac_cv_header_png_h" = "yes"
    then
        AC_SUBST(PNGINCL,"$X_CFLAGS")
        WINE_CHECK_SONAME(png,png_create_read_struct,,,[$X_LIBS -lm -lz],[[libpng[[0-9]]*]])
1642 1643
        AC_CHECK_LIB(png,png_set_expand_gray_1_2_4_to_8,
		[AC_DEFINE(HAVE_PNG_SET_EXPAND_GRAY_1_2_4_TO_8,1)],,[$X_LIBS -lm -lz])
1644
    fi
1645
fi
1646
WINE_WARNING_WITH(png,[test "x$ac_cv_lib_soname_png" = "x"],
1647
                 [libpng ${notice_platform}development files not found, PNG won't be supported.])
1648

1649 1650 1651 1652 1653 1654 1655 1656
dnl **** Check for libtiff ****
if test "$ac_cv_header_tiffio_h" = "yes"
then
    WINE_CHECK_SONAME(tiff,TIFFClientOpen)
fi
WINE_NOTICE_WITH(tiff,[test "x$ac_cv_lib_soname_tiff" = "x"],
                 [libtiff ${notice_platform}development files not found, TIFF won't be supported.])

1657 1658 1659
dnl **** Check for mpg123 ****
if test "$ac_cv_header_mpg123_h" = "yes"
then
1660
    AC_CHECK_LIB(mpg123,mpg123_feed,[AC_SUBST(LIBMPG123,"-lmpg123")])
1661
fi
1662
WINE_NOTICE_WITH(mpg123,[test "x$ac_cv_lib_mpg123_mpg123_feed" != xyes -a x"$ac_cv_header_CoreAudio_CoreAudio_h" != xyes],
1663
                 [libmpg123 ${notice_platform}development files not found (or too old), mp3 codec won't be supported.])
1664
test "x$ac_cv_lib_mpg123_mpg123_feed" = xyes -o "x$ac_cv_header_AudioToolbox_AudioConverter_h" = xyes || enable_winemp3_acm=${enable_winemp3_acm:-no}
1665

1666 1667 1668
dnl **** Check for OpenAL 1.1 ****
if test "$ac_cv_header_AL_al_h" = "yes"
then
1669 1670 1671
    WINE_CHECK_SONAME(openal,alGetSource3i,[AC_SUBST(LIBOPENAL,"-lopenal")
                      ac_cv_lib_openal=yes
                      AC_DEFINE_UNQUOTED(HAVE_OPENAL,1,[Define to 1 if OpenAL is available])],,)
1672
fi
1673
WINE_NOTICE_WITH(openal,[test "x$ac_cv_lib_openal" != xyes],
1674
                 [libopenal ${notice_platform}development files not found (or too old), OpenAL won't be supported.])
1675
test "x$ac_cv_lib_openal" = xyes || enable_openal32=${enable_openal32:-no}
1676

1677 1678 1679 1680 1681 1682 1683 1684
dnl **** Check for libkstat ****
if test "$ac_cv_header_kstat_h" = "yes"
then
    AC_CHECK_LIB(kstat,kstat_open,
                 [AC_DEFINE(HAVE_LIBKSTAT, 1, [Define to 1 if you have the `kstat' library (-lkstat).])
                  AC_SUBST(LIBKSTAT,"-lkstat")])
fi

1685 1686 1687
dnl **** Check for libodbc ****
WINE_CHECK_SONAME(odbc,SQLConnect,,[AC_DEFINE_UNQUOTED(SONAME_LIBODBC,["libodbc.$LIBEXT"])])

1688 1689 1690
dnl **** Disable unsupported winmm drivers ****
test -n "$ALSALIBS" || enable_winealsa_drv=${enable_winealsa_drv:-no}
test -n "$COREAUDIO" || enable_winecoreaudio_drv=${enable_winecoreaudio_drv:-no}
1691
test "x$ac_cv_member_oss_sysinfo_numaudioengines" = xyes || enable_wineoss_drv=${enable_wineoss_drv:-no}
1692 1693
test "$ac_cv_header_linux_joystick_h" = "yes" || enable_winejoystick_drv=${enable_winejoystick_drv:-no}

1694
dnl **** Check for any sound system ****
1695
if test "x$ALSALIBS$COREAUDIO" = "x" -a \
1696
        "x$ac_cv_member_oss_sysinfo_numaudioengines" != xyes -a \
1697
        "x$with_alsa$with_coreaudio$with_oss" != xnonono
1698 1699 1700
then
    WINE_WARNING([No sound system was found. Windows applications will be silent.])
fi
1701

1702
dnl **** Check for gcc specific options ****
Alexandre Julliard's avatar
Alexandre Julliard committed
1703

1704
AC_SUBST(EXTRACFLAGS,"")
Alexandre Julliard's avatar
Alexandre Julliard committed
1705 1706
if test "x${GCC}" = "xyes"
then
1707
  EXTRACFLAGS="-Wall -pipe"
1708 1709

  dnl Check for strength-reduce bug
1710
  AC_CACHE_CHECK( [for gcc strength-reduce bug], ac_cv_c_gcc_strength_bug,
1711 1712
                  AC_RUN_IFELSE([AC_LANG_PROGRAM([[int L[[4]] = {0,1,2,3};]],
[[static int Array[[3]];
Alexandre Julliard's avatar
Alexandre Julliard committed
1713 1714
  unsigned int B = 3;
  int i;
Alexandre Julliard's avatar
Alexandre Julliard committed
1715
  for(i=0; i<B; i++) Array[[i]] = i - 3;
1716 1717
  for(i=0; i<4 - 1; i++) L[[i]] = L[[i + 1]];
  L[[i]] = 4;
1718
  return (Array[[1]] != -2 || L[[2]] != 3)]])],
1719
    [ac_cv_c_gcc_strength_bug="no"],[ac_cv_c_gcc_strength_bug="yes"],[ac_cv_c_gcc_strength_bug="yes"]) )
Alexandre Julliard's avatar
Alexandre Julliard committed
1720 1721
  if test "$ac_cv_c_gcc_strength_bug" = "yes"
  then
1722
    EXTRACFLAGS="$EXTRACFLAGS -fno-strength-reduce"
Alexandre Julliard's avatar
Alexandre Julliard committed
1723
  fi
1724

1725
  dnl Check for some compiler flags
1726
  WINE_TRY_CFLAGS([-fno-builtin],[AC_SUBST(BUILTINFLAG,"-fno-builtin")])
1727 1728
  WINE_TRY_CFLAGS([-fno-strict-aliasing])
  WINE_TRY_CFLAGS([-Wdeclaration-after-statement])
1729
  WINE_TRY_CFLAGS([-Wempty-body])
1730
  WINE_TRY_CFLAGS([-Wignored-qualifiers])
1731
  WINE_TRY_CFLAGS([-Wstrict-prototypes])
1732
  WINE_TRY_CFLAGS([-Wtype-limits])
1733
  WINE_TRY_CFLAGS([-Wunused-but-set-parameter])
1734
  WINE_TRY_CFLAGS([-Wwrite-strings])
1735

1736 1737 1738 1739 1740
  dnl gcc-4.6+ omits frame pointers by default, breaking some copy protections
  case $host_cpu in
    *i[[3456789]]86*) WINE_TRY_CFLAGS([-fno-omit-frame-pointer]) ;;
  esac

1741 1742 1743 1744 1745
  dnl mingw uses Windows 64-bit types, not Unix ones
  case $host in
    x86_64-*mingw32*|x86_64-*cygwin*) WINE_TRY_CFLAGS([-Wno-format]) ;;
  esac

1746
  dnl Check for noisy string.h
1747
  saved_CFLAGS="$CFLAGS"
1748
  CFLAGS="$CFLAGS -Wpointer-arith -Werror"
1749
  AC_CACHE_CHECK([for broken string.h that generates warnings with -Wpointer-arith], ac_cv_c_string_h_warnings,
1750
      AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <string.h>]], [[]])],[ac_cv_c_string_h_warnings=no],[ac_cv_c_string_h_warnings=yes]))
1751
  CFLAGS="$saved_CFLAGS"
1752 1753
  if test "$ac_cv_c_string_h_warnings" = "no"
  then
1754
    EXTRACFLAGS="$EXTRACFLAGS -Wpointer-arith"
1755
  fi
1756

1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767
  dnl Check for noisy string.h on logical ops
  saved_CFLAGS="$CFLAGS"
  CFLAGS="$CFLAGS -Wlogical-op -Werror"
  AC_CACHE_CHECK([for broken string.h that generates warnings with -Wlogical-op], ac_cv_c_logicalop_noisy,
      AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <string.h>]], [[char*f(const char *h,char n) {return strchr(h,n);}]])],[ac_cv_c_logicalop_noisy=no],[ac_cv_c_logicalop_noisy=yes]))
  CFLAGS="$saved_CFLAGS"
  if test "$ac_cv_c_logicalop_noisy" = "no"
  then
    EXTRACFLAGS="$EXTRACFLAGS -Wlogical-op"
  fi

1768
  dnl Enable -Werror for maintainer mode
1769
  if test "x$enable_maintainer_mode" = "xyes"
1770 1771 1772
  then
      WINE_TRY_CFLAGS([-Werror])
  fi
1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787

  dnl Check for ms_hook_prologue support
  saved_CFLAGS="$CFLAGS"
  CFLAGS="$CFLAGS -Werror"
  AC_CACHE_CHECK([for ms_hook_prologue attribute], ac_cv_have_ms_hook_prologue,
                 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[int __attribute__((__ms_hook_prologue__)) test(void) { return 0; }]])],
                                   [ac_cv_have_ms_hook_prologue="yes"],[ac_cv_have_ms_hook_prologue="no"]))
  CFLAGS="$saved_CFLAGS"
  if test "$ac_cv_have_ms_hook_prologue" = "yes"
  then
      AC_DEFINE(DECLSPEC_HOTPATCH, [__attribute__((__ms_hook_prologue__))],
                [Define to a function attribute for Microsoft hotpatch assembly prefix.])
  else
      AC_DEFINE(DECLSPEC_HOTPATCH, [/* */])
  fi
Alexandre Julliard's avatar
Alexandre Julliard committed
1788 1789
fi

1790 1791 1792 1793 1794 1795 1796 1797 1798 1799
dnl **** Disable Fortify, it has too many false positives

AC_CACHE_CHECK([for the need to disable Fortify], ac_cv_c_fortify_enabled,
    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <string.h>]],
[[#if defined(__USE_FORTIFY_LEVEL) && __USE_FORTIFY_LEVEL > 0
#error Fortify enabled
#endif]])],
        [ac_cv_c_fortify_enabled=no],[ac_cv_c_fortify_enabled=yes]))
if test "$ac_cv_c_fortify_enabled" = yes
then
1800
    CFLAGS="$CFLAGS -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0"
1801 1802
fi

1803 1804 1805 1806 1807 1808 1809 1810
dnl **** Check for underscore on external symbols ****

AC_CACHE_CHECK([whether external symbols need an underscore prefix], ac_cv_c_extern_prefix,
    WINE_TRY_ASM_LINK([".globl _ac_test\n_ac_test:\t.long 0"],
                      [extern int ac_test;],
                      [if (ac_test) return 1],
                      ac_cv_c_extern_prefix="yes",ac_cv_c_extern_prefix="no"))

1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823
case $host_cpu in
  *i[[3456789]]86*)
    AC_CACHE_CHECK([whether external symbols need stdcall decoration], ac_cv_c_stdcall_suffix,
        WINE_TRY_ASM_LINK(["jmp _ac_test@4"],
[#ifndef _MSC_VER
#define __stdcall __attribute__((__stdcall__))
#endif
int __stdcall ac_test(int i) { return i; }],
                          [if (ac_test(1)) return 1],
                          ac_cv_c_stdcall_suffix="yes",ac_cv_c_stdcall_suffix="no")) ;;
  *) ac_cv_c_stdcall_suffix="no" ;;
esac

1824 1825 1826 1827 1828 1829 1830 1831 1832 1833
AH_TEMPLATE(__ASM_NAME,[Define to a macro to generate an assembly name from a C symbol])
if test "$ac_cv_c_extern_prefix" = "yes"
then
    AC_DEFINE([__ASM_NAME(name)], ["_" name])
    asm_name_prefix="_"
else
    AC_DEFINE([__ASM_NAME(name)], [name])
    asm_name_prefix=""
fi

1834 1835 1836 1837 1838 1839 1840 1841
AH_TEMPLATE(__ASM_STDCALL,[Define to a macro to generate an stdcall suffix])
if test "$ac_cv_c_stdcall_suffix" = "yes"
then
    AC_DEFINE([__ASM_STDCALL(args)],["@" #args])
else
    AC_DEFINE([__ASM_STDCALL(args)],[""])
fi

1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856
dnl **** Check how to define a function in assembly code ****

AC_CACHE_CHECK([how to define a function in assembly code], ac_cv_asm_func_def,
  WINE_TRY_ASM_LINK(
      ["\t.globl _ac_test\n\t.def _ac_test; .scl 2; .type 32; .endef\n_ac_test:\t.long 0"],,,
      ac_cv_asm_func_def=".def",
    [WINE_TRY_ASM_LINK(["\t.globl _ac_test\n\t.type _ac_test,@function\n_ac_test:\t.long 0"],,,
      ac_cv_asm_func_def=".type @function",
    [WINE_TRY_ASM_LINK(["\t.globl _ac_test\n\t.type _ac_test,2\n_ac_test:\t.long 0"],,,
      ac_cv_asm_func_def=".type 2",
      ac_cv_asm_func_def="unknown")])]))

AH_TEMPLATE(__ASM_FUNC,[Define to a macro to generate an assembly function directive])
case "$ac_cv_asm_func_def" in
  ".def")
1857
     AC_DEFINE([__ASM_FUNC(name)], [".def " __ASM_NAME(name) "; .scl 2; .type 32; .endef"])
1858
     asm_func_header=".def $asm_name_prefix\" #name suffix \"; .scl 2; .type 32; .endef" ;;
1859
  ".type @function")
1860
     AC_DEFINE([__ASM_FUNC(name)], [".type " __ASM_NAME(name) ",@function"])
1861
     asm_func_header=".type $asm_name_prefix\" #name suffix \",@function" ;;
1862
  ".type 2")
1863
     AC_DEFINE([__ASM_FUNC(name)], [".type " __ASM_NAME(name) ",2"])
1864
     asm_func_header=".type $asm_name_prefix\" #name suffix \",2" ;;
1865
  *)
1866 1867
     AC_DEFINE([__ASM_FUNC(name)], [""])
     asm_func_header="" ;;
1868
esac
1869

1870 1871 1872
AC_CACHE_CHECK([whether asm() works outside of functions], ac_cv_c_asm_outside_funcs,
    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[asm(".text\n\t.long 0");]],)],
                      ac_cv_c_asm_outside_funcs="yes",ac_cv_c_asm_outside_funcs="no"))
Alexandre Julliard's avatar
Alexandre Julliard committed
1873

1874 1875 1876
AC_CACHE_CHECK([whether .previous is supported in assembly code], ac_cv_c_dot_previous,
    WINE_TRY_ASM_LINK([".text\nac_test:\t.long 0\n\t.previous"],,,
                      ac_cv_c_dot_previous="yes",ac_cv_c_dot_previous="no"))
1877

1878 1879 1880 1881
AC_CACHE_CHECK([whether CFI directives are supported in assembly code], ac_cv_c_cfi_support,
    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[asm(".text\nac_test:\t.cfi_startproc\n\t.long 0\n\t.cfi_endproc");]])],
                      ac_cv_c_cfi_support="yes",ac_cv_c_cfi_support="no"))

1882
asm_func_header=".globl $asm_name_prefix\" #name suffix \"\\n\\t$asm_func_header\\n$asm_name_prefix\" #name suffix \":\\n\\t"
1883 1884 1885 1886 1887
asm_func_trailer=""
if test "$ac_cv_c_dot_previous" = "yes"
then
   asm_func_trailer="\\n\\t.previous"
fi
1888 1889 1890 1891
if test "$ac_cv_c_cfi_support" = "yes"
then
   asm_func_header="$asm_func_header.cfi_startproc\\n\\t"
   asm_func_trailer="\\n\\t.cfi_endproc$asm_func_trailer"
1892
   AC_DEFINE([__ASM_CFI(str)],[str],[Define to a macro to output a .cfi assembly pseudo-op])
1893
   AC_SUBST([UNWINDFLAGS],[-fasynchronous-unwind-tables])
1894 1895
else
   AC_DEFINE([__ASM_CFI(str)],[""])
1896 1897
fi

1898 1899
asm_func_code="$asm_func_header\" code \"$asm_func_trailer"

1900
AH_TEMPLATE(__ASM_DEFINE_FUNC,[Define to a macro to define an assembly function])
1901
if test "$ac_cv_c_asm_outside_funcs" = "yes"
Alexandre Julliard's avatar
Alexandre Julliard committed
1902
then
1903
    AC_DEFINE_UNQUOTED([__ASM_DEFINE_FUNC(name,suffix,code)],[asm(".text\n\t.align 4\n\t$asm_func_code");])
1904
else
1905
    AC_DEFINE_UNQUOTED([__ASM_DEFINE_FUNC(name,suffix,code)],[void __asm_dummy_##name(void) { asm(".text\n\t.align 4\n\t$asm_func_code"); }])
Alexandre Julliard's avatar
Alexandre Julliard committed
1906
fi
1907 1908 1909 1910
AC_DEFINE([__ASM_GLOBAL_FUNC(name,code)],[__ASM_DEFINE_FUNC(name,"",code)],
          [Define to a macro to generate an assembly function with C calling convention])
AC_DEFINE([__ASM_STDCALL_FUNC(name,args,code)],[__ASM_DEFINE_FUNC(name,__ASM_STDCALL(args),code)],
          [Define to a macro to generate an assembly function with stdcall calling convention])
Alexandre Julliard's avatar
Alexandre Julliard committed
1911

1912
dnl **** Platform-specific checks ****
1913

1914
AC_SUBST(LDPATH,"")
1915 1916
case $build_os in
  cygwin*|mingw32*)
1917
    AC_SUBST(TOOLSEXT,".exe")
1918 1919
    LDPATH="PATH=\"\$(TOOLSDIR)/libs/wine:\$\$PATH\""
    ;;
1920
  darwin*|macosx*)
1921
    ;;
1922
  *)
1923 1924
    LDPATH="LD_LIBRARY_PATH=\"\$(TOOLSDIR)/libs/wine:\$\$LD_LIBRARY_PATH\""
    ;;
1925 1926
esac

1927
dnl Mingw needs explicit msvcrt for linking libwine and winsock for wininet
1928 1929
case $host_os in
  mingw32*)
1930
    AC_SUBST(CRTLIBS,"-lmsvcrt")
1931
    AC_SUBST(SOCKETLIBS,"-L\$(top_builddir)/dlls/ws2_32 -lws2_32")
1932
    ;;
1933 1934
esac

1935
AC_SUBST(MAIN_BINARY,"wine")
1936
test "x$enable_win64" != "xyes" || MAIN_BINARY="wine64"
1937

1938 1939 1940 1941 1942
case $host_os in
  linux*)
    case $host_cpu in
      *i[[3456789]]86*) AC_SUBST(EXTRA_BINARIES,"wine-preloader") ;;
      x86_64*) AC_SUBST(EXTRA_BINARIES,"wine64-preloader") ;;
1943
    esac
1944
    ;;
1945
esac
Alexandre Julliard's avatar
Alexandre Julliard committed
1946

1947 1948
dnl **** Check for functions ****

1949 1950
ac_save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $BUILTINFLAG"
1951
AC_CHECK_FUNCS(\
1952 1953
	_finite \
	_isnan \
1954 1955
	_pclose \
	_popen \
1956
	_snprintf \
1957
	_spawnvp \
1958
	_strdup \
1959 1960
	_stricmp \
	_strnicmp \
1961 1962
	_strtoi64 \
	_strtoui64 \
1963
	_vsnprintf \
1964
	asctime_r \
1965
	chsize \
1966
	dlopen \
1967
	epoll_create \
1968
	ffs \
1969
	finite \
1970
	fnmatch \
1971
	fork \
1972
	fpclass \
1973 1974
	fstatfs \
	fstatvfs \
1975
	ftruncate \
1976
	futimes \
1977
	futimesat \
1978
	getattrlist \
1979
	getdirentries \
1980
	getopt_long \
1981
	getpagesize \
1982
	getpwuid \
Alexandre Julliard's avatar
Alexandre Julliard committed
1983
	gettimeofday \
1984
	getuid \
1985
	kqueue \
1986
	lstat \
1987
	memmove \
1988
	mmap \
1989
	pclose \
1990
	pipe2 \
1991
	poll \
1992
	popen \
1993
	port_create \
1994
	prctl \
1995
	pread \
1996
	pwrite \
1997
	readdir \
1998
	readlink \
1999
	sched_yield \
2000
	select \
2001
	setproctitle \
2002
	setrlimit \
2003
	settimeofday \
2004
	sigaltstack \
2005
	sigprocmask \
2006
	snprintf \
2007
	spawnvp \
2008
	statfs \
2009
	statvfs \
2010
	strcasecmp \
2011
	strdup \
2012
	strerror \
2013
	strncasecmp \
Louis Lenders's avatar
Louis Lenders committed
2014
	strtold \
2015 2016
	strtoll \
	strtoull \
2017
	symlink \
2018
	tcgetattr \
2019
	thr_kill2 \
2020 2021
	timegm \
	usleep \
2022
	vsnprintf \
2023 2024 2025
	wait4 \
	waitpid \
)
2026
CFLAGS="$ac_save_CFLAGS"
2027

2028 2029 2030 2031 2032 2033 2034
dnl Check for -ldl
if test "$ac_cv_func_dlopen" = no
then
    AC_CHECK_LIB(dl,dlopen,[AC_DEFINE(HAVE_DLOPEN,1) AC_SUBST(LIBDL,"-ldl")])
fi
WINE_CHECK_LIB_FUNCS(dladdr,[$LIBDL])

2035 2036 2037 2038 2039
dnl Check for -lpoll for Mac OS X/Darwin
if test "$ac_cv_func_poll" = no
then
    AC_CHECK_LIB(poll,poll,[AC_DEFINE(HAVE_POLL,1) AC_SUBST(LIBPOLL,"-lpoll")])
fi
2040

2041
dnl Check for -lnsl for Solaris
2042
AC_SEARCH_LIBS(gethostbyname, nsl)
2043 2044

dnl Check for -lsocket for Solaris
2045
AC_SEARCH_LIBS(connect, socket)
2046 2047

dnl Check for -lresolv for Solaris
2048
AC_SEARCH_LIBS(inet_aton, resolv)
2049

2050 2051 2052 2053 2054 2055 2056 2057 2058
dnl **** Check for functions which may rely on -lsocket on Solaris.
AC_CHECK_FUNCS(\
	getaddrinfo \
	getnameinfo \
	getnetbyname \
	getprotobyname \
	getprotobynumber \
	getservbyport \
	inet_network \
2059 2060
	inet_ntop \
	inet_pton \
2061
	sendmsg \
2062
	socketpair \
2063 2064
)

2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088
dnl **** Check for OpenLDAP ***
AC_SUBST(LDAPLIBS,"")
if test "$ac_cv_header_ldap_h" = "yes" -a "$ac_cv_header_lber_h" = "yes"
then
    AC_CHECK_TYPE(LDAPSortKey,
        [AC_CHECK_LIB(ldap_r, ldap_initialize,
            [AC_CHECK_LIB(lber, ber_init,
                [AC_DEFINE(HAVE_LDAP, 1, [Define if you have the OpenLDAP development environment])
                 LDAPLIBS="-lldap_r -llber"],,
                 [$LIBPTHREAD])],,
                 [$LIBPTHREAD])],,
        [#include <ldap.h>])
    WINE_CHECK_LIB_FUNCS(\
	ldap_count_references \
	ldap_first_reference \
	ldap_next_reference \
	ldap_parse_reference \
	ldap_parse_sort_control \
	ldap_parse_sortresponse_control \
	ldap_parse_vlv_control \
	ldap_parse_vlvresponse_control,
        [$LDAPLIBS $LIBPTHREAD])
fi
WINE_NOTICE_WITH(ldap,[test "x$LDAPLIBS" = "x"],
2089
                 [libldap (OpenLDAP) ${notice_platform}development files not found, LDAP won't be supported.])
2090

2091 2092 2093 2094 2095 2096 2097 2098 2099
AC_CACHE_CHECK([whether mkdir takes only one argument],
   	wine_cv_one_arg_mkdir,
	AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/stat.h>]],[[mkdir("foo");]])],
                          [wine_cv_one_arg_mkdir=yes],[wine_cv_one_arg_mkdir=no]))
if test "$wine_cv_one_arg_mkdir" = "yes"
then
  AC_DEFINE(HAVE_ONE_ARG_MKDIR, 1, [Define if mkdir takes only one argument])
fi

2100 2101 2102 2103 2104 2105 2106 2107 2108
AC_CACHE_CHECK([for sched_setaffinity],wine_cv_have_sched_setaffinity,
                AC_LINK_IFELSE([AC_LANG_PROGRAM(
[[#define _GNU_SOURCE
#include <sched.h>]], [[sched_setaffinity(0, 0, 0);]])],[wine_cv_have_sched_setaffinity=yes],[wine_cv_have_sched_setaffinity=no]))
if test "$wine_cv_have_sched_setaffinity" = "yes"
then
  AC_DEFINE(HAVE_SCHED_SETAFFINITY, 1, [Define to 1 if you have the `sched_setaffinity' function.])
fi

2109 2110
dnl **** Check for types ****

2111
AC_C_INLINE
2112
AC_CHECK_TYPES([mode_t, off_t, pid_t, size_t, ssize_t, long long, fsblkcnt_t, fsfilcnt_t])
2113 2114
AC_CHECK_TYPES([sigset_t],,,[#include <sys/types.h>
#include <signal.h>])
2115
AC_CHECK_TYPES([request_sense],,,[#include <linux/cdrom.h>])
Alexandre Julliard's avatar
Alexandre Julliard committed
2116

2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140
AC_CHECK_TYPES([struct xinpgen],,,
[#include <sys/types.h>
#ifdef HAVE_SYS_SOCKET_H
#include <sys/socket.h>
#endif
#ifdef HAVE_SYS_SOCKETVAR_H
#include <sys/socketvar.h>
#endif
#ifdef HAVE_NET_ROUTE_H
#include <net/route.h>
#endif
#ifdef HAVE_NETINET_IN_H
#include <netinet/in.h>
#endif
#ifdef HAVE_NETINET_IN_SYSTM_H
#include <netinet/in_systm.h>
#endif
#ifdef HAVE_NETINET_IP_H
#include <netinet/ip.h>
#endif
#ifdef HAVE_NETINET_IN_PCB_H
#include <netinet/in_pcb.h>
#endif])

2141 2142 2143 2144 2145
AC_CHECK_MEMBERS([struct ff_effect.direction],,,
[#ifdef HAVE_LINUX_INPUT_H
#include <linux/input.h>
#endif])

2146
AC_CACHE_CHECK([for sigaddset],wine_cv_have_sigaddset,
2147
               AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <signal.h>]], [[sigset_t set; sigaddset(&set,SIGTERM);]])],[wine_cv_have_sigaddset=yes],[wine_cv_have_sigaddset=no]))
2148 2149 2150 2151 2152
if test "$wine_cv_have_sigaddset" = "yes"
then
  AC_DEFINE(HAVE_SIGADDSET, 1, [Define if sigaddset is supported])
fi

2153

2154
AC_CACHE_CHECK([whether we can use re-entrant gethostbyname_r Linux style],
2155
   	wine_cv_linux_gethostbyname_r_6,
2156
	AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <netdb.h>]],[[
2157
    char *name=0;
2158 2159
    struct hostent he;
    struct hostent *result;
2160
    char *buf=0;
2161
    int bufsize=0;
2162
    int errnr;
2163
    char *addr=0;
2164 2165
    int addrlen=0;
    int addrtype=0;
2166 2167
    gethostbyname_r(name,&he,buf,bufsize,&result,&errnr);
    gethostbyaddr_r(addr, addrlen, addrtype,&he,buf,bufsize,&result,&errnr);
2168 2169
    ]])],[wine_cv_linux_gethostbyname_r_6=yes],[wine_cv_linux_gethostbyname_r_6=no
	])
2170 2171 2172
   )
   if test "$wine_cv_linux_gethostbyname_r_6" = "yes"
   then
2173 2174
      AC_DEFINE(HAVE_LINUX_GETHOSTBYNAME_R_6, 1,
                [Define if Linux-style gethostbyname_r and gethostbyaddr_r are available])
2175 2176
   fi

2177 2178
if test "$ac_cv_header_linux_joystick_h" = "yes"
then
2179
   AC_CACHE_CHECK([whether linux/joystick.h uses the Linux 2.2+ API],
2180
   	wine_cv_linux_joystick_22_api,
2181
	AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
2182
	#include <sys/ioctl.h>
2183
	#include <sys/types.h>
2184 2185 2186
	#include <linux/joystick.h>

	struct js_event blub;
2187 2188 2189
	#if !defined(JS_EVENT_AXIS) || !defined(JS_EVENT_BUTTON)
	#error "no 2.2 header"
	#endif
2190
	]], [[/*empty*/]])],[wine_cv_linux_joystick_22_api=yes],[wine_cv_linux_joystick_22_api=no])
2191
   )
2192
   if test "$wine_cv_linux_joystick_22_api" = "yes"
2193
   then
2194 2195
      AC_DEFINE(HAVE_LINUX_22_JOYSTICK_API, 1,
                [Define if <linux/joystick.h> defines the Linux 2.2 joystick API])
2196 2197 2198
   fi
fi

2199
dnl **** FIXME: what about mixed cases, where we need two of them? ***
2200

2201
dnl Check for statfs members
2202
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],,,
2203 2204 2205 2206
[#include <sys/types.h>
#ifdef HAVE_SYS_PARAM_H
# include <sys/param.h>
#endif
2207
#ifdef HAVE_SYS_MOUNT_H
2208
# include <sys/mount.h>
2209 2210 2211 2212 2213 2214
#endif
#ifdef HAVE_SYS_VFS_H
# include <sys/vfs.h>
#endif
#ifdef HAVE_SYS_STATFS_H
# include <sys/statfs.h>
2215
#endif])
2216 2217 2218 2219 2220

AC_CHECK_MEMBERS([struct statvfs.f_blocks],,,
[#ifdef HAVE_SYS_STATVFS_H
#include <sys/statvfs.h>
#endif])
2221

2222 2223
dnl Check for socket structure members
AC_CHECK_MEMBERS([struct msghdr.msg_accrights, struct sockaddr.sa_len, struct sockaddr_un.sun_len],,,
2224
[#include <sys/types.h>
2225 2226 2227 2228 2229
#ifdef HAVE_SYS_SOCKET_H
# include <sys/socket.h>
#endif
#ifdef HAVE_SYS_UN_H
# include <sys/un.h>
2230 2231
#endif])

2232 2233 2234 2235 2236 2237 2238
dnl Check for scsireq_t and sg_io_hdr_t members
AC_CHECK_MEMBERS([scsireq_t.cmd, sg_io_hdr_t.interface_id],,,
[#include <sys/types.h>
#ifdef HAVE_SCSI_SG_H
#include <scsi/sg.h>
#endif])

2239 2240
dnl Check for siginfo_t members
AC_CHECK_MEMBERS([siginfo_t.si_fd],,,[#include <signal.h>])
2241

2242
dnl Check for struct mtget members
2243
AC_CHECK_MEMBERS([struct mtget.mt_blksiz, struct mtget.mt_gstat, struct mtget.mt_blkno],,,
2244 2245
[#include <sys/types.h>
#ifdef HAVE_SYS_MTIO_H
2246 2247 2248
#include <sys/mtio.h>
#endif])

2249 2250 2251 2252 2253 2254
dnl Check for struct option
AC_CHECK_MEMBERS([struct option.name],,,
[#ifdef HAVE_GETOPT_H
#include <getopt.h>
#endif])

2255 2256
dnl Check for stat.st_blocks and ns-resolved times
AC_CHECK_MEMBERS([struct stat.st_blocks,struct stat.st_mtim,struct stat.st_ctim,struct stat.st_atim])
2257

2258 2259 2260 2261 2262 2263 2264 2265 2266
dnl Check for sin6_scope_id
AC_CHECK_MEMBERS([struct sockaddr_in6.sin6_scope_id],,,
[#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#ifdef HAVE_NETINET_IN_H
#include <netinet/in.h>
#endif])

2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278
dnl Check for ns_msg ptr member
AC_CHECK_MEMBERS([ns_msg._msg_ptr],,,
[#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#ifdef HAVE_NETINET_IN_H
# include <netinet/in.h>
#endif
#ifdef HAVE_ARPA_NAMESER_H
# include <arpa/nameser.h>
#endif])

2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314
dnl Check for struct icmpstat.icps_outhist
AC_CHECK_MEMBERS([struct icmpstat.icps_outhist],,,
[#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#ifdef HAVE_ALIAS_H
#include <alias.h>
#endif
#ifdef HAVE_SYS_SOCKET_H
#include <sys/socket.h>
#endif
#ifdef HAVE_SYS_SOCKETVAR_H
#include <sys/socketvar.h>
#endif
#ifdef HAVE_SYS_TIMEOUT_H
#include <sys/timeout.h>
#endif
#ifdef HAVE_NETINET_IN_H
#include <netinet/in.h>
#endif
#ifdef HAVE_NETINET_IN_SYSTM_H
#include <netinet/in_systm.h>
#endif
#ifdef HAVE_NETINET_IP_H
#include <netinet/ip.h>
#endif
#ifdef HAVE_NETINET_IP_VAR_H
#include <netinet/ip_var.h>
#endif
#ifdef HAVE_NETINET_IP_ICMP_H
#include <netinet/ip_icmp.h>
#endif
#ifdef HAVE_NETINET_ICMP_VAR
#include <netinet/icmp_var.h>
#endif])

2315 2316 2317 2318 2319 2320 2321 2322 2323
dnl Check for struct ifreq.ifr_hwaddr
AC_CHECK_MEMBERS([struct ifreq.ifr_hwaddr],,,
[#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#ifdef HAVE_NET_IF_H
# include <net/if.h>
#endif])

2324 2325
dnl Check for the external timezone variables timezone and daylight
AC_CACHE_CHECK([for timezone variable], ac_cv_have_timezone,
2326
               AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <time.h>]], [[timezone = 1]])],[ac_cv_have_timezone="yes"],[ac_cv_have_timezone="no"]))
2327 2328 2329 2330 2331
if test "$ac_cv_have_timezone" = "yes"
then
    AC_DEFINE(HAVE_TIMEZONE, 1, [Define if you have the timezone variable])
fi
AC_CACHE_CHECK([for daylight variable], ac_cv_have_daylight,
2332
               AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <time.h>]], [[daylight = 1]])],[ac_cv_have_daylight="yes"],[ac_cv_have_daylight="no"]))
2333 2334 2335 2336 2337
if test "$ac_cv_have_daylight" = "yes"
then
    AC_DEFINE(HAVE_DAYLIGHT, 1, [Define if you have the daylight variable])
fi

2338
dnl Check for isinf
2339 2340
ac_save_LIBS="$LIBS"
LIBS="$LIBS -lm"
2341
AC_CACHE_CHECK([for isinf], ac_cv_have_isinf,
2342
               AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <math.h>]], [[float f = 0.0; return isinf(f)]])],[ac_cv_have_isinf="yes"],[ac_cv_have_isinf="no"]))
2343 2344 2345 2346 2347
if test "$ac_cv_have_isinf" = "yes"
then
    AC_DEFINE(HAVE_ISINF, 1, [Define to 1 if you have the `isinf' function.])
fi

Jacek Caban's avatar
Jacek Caban committed
2348 2349
dnl Check for isnan
AC_CACHE_CHECK([for isnan], ac_cv_have_isnan,
2350
               AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <math.h>]], [[float f = 0.0; return isnan(f)]])],[ac_cv_have_isnan="yes"],[ac_cv_have_isnan="no"]))
Jacek Caban's avatar
Jacek Caban committed
2351 2352 2353 2354
if test "$ac_cv_have_isnan" = "yes"
then
    AC_DEFINE(HAVE_ISNAN, 1, [Define to 1 if you have the `isnan' function.])
fi
2355
LIBS="$ac_save_LIBS"
Jacek Caban's avatar
Jacek Caban committed
2356

2357
dnl *** check for the need to define platform-specific symbols
2358

2359
case $host_cpu in
2360
  *i[[3456789]]86*) WINE_CHECK_DEFINE([__i386__]) ;;
2361
  *x86_64*)         WINE_CHECK_DEFINE([__x86_64__]) ;;
2362
  *sparc64*)        WINE_CHECK_DEFINE([__sparc64__]) ;;
2363
  *sparc*)          WINE_CHECK_DEFINE([__sparc__]) ;;
2364
  *powerpc64*)      WINE_CHECK_DEFINE([__powerpc64__]) ;;
2365
  *powerpc*)        WINE_CHECK_DEFINE([__powerpc__]) ;;
2366
  *arm*)            WINE_CHECK_DEFINE([__arm__]) ;;
2367
esac
2368 2369

case $host_vendor in
2370
  *sun*) WINE_CHECK_DEFINE([__sun__]) ;;
2371 2372
esac

Alexandre Julliard's avatar
Alexandre Julliard committed
2373
dnl **** Generate output files ****
Alexandre Julliard's avatar
Alexandre Julliard committed
2374

2375 2376 2377
AH_TOP([#ifndef WINE_CROSSTEST
#define __WINE_CONFIG_H])
AH_BOTTOM([#endif /* WINE_CROSSTEST */])
2378

2379 2380
AC_CONFIG_COMMANDS([include/stamp-h], [echo timestamp > include/stamp-h])

2381
WINE_CONFIG_SYMLINK(dlls/shell32/AUTHORS,AUTHORS)
2382
WINE_CONFIG_SYMLINK(dlls/wineps.drv/generic.ppd)
2383 2384 2385 2386
WINE_CONFIG_SYMLINK(fonts/marlett.ttf,,enable_fonts)
WINE_CONFIG_SYMLINK(fonts/symbol.ttf,,enable_fonts)
WINE_CONFIG_SYMLINK(fonts/tahoma.ttf,,enable_fonts)
WINE_CONFIG_SYMLINK(fonts/tahomabd.ttf,,enable_fonts)
2387
WINE_CONFIG_SYMLINK(po/LINGUAS)
2388
WINE_CONFIG_SYMLINK(tools/l_intl.nls,,enable_tools)
2389
WINE_CONFIG_SYMLINK(wine,tools/winewrapper)
2390
WINE_CONFIG_SYMLINK(wine64,tools/winewrapper,enable_win64)
2391

2392
WINE_CONFIG_EXTRA_DIR(dlls/gdi32/dibdrv)
2393 2394
WINE_CONFIG_EXTRA_DIR(dlls/gdi32/enhmfdrv)
WINE_CONFIG_EXTRA_DIR(dlls/gdi32/mfdrv)
2395
WINE_CONFIG_EXTRA_DIR(dlls/kernel32/nls)
2396
WINE_CONFIG_EXTRA_DIR(dlls/user32/resources)
2397
WINE_CONFIG_EXTRA_DIR(dlls/wineps.drv/data)
2398 2399
WINE_CONFIG_EXTRA_DIR(include/wine)

2400
WINE_CONFIG_MAKERULES([Make.rules],[MAKE_RULES])
2401
WINE_CONFIG_MAKERULES([Maketest.rules],[MAKE_TEST_RULES],[Make.rules])
2402 2403 2404 2405
WINE_CONFIG_MAKERULES([dlls/Makedll.rules],[MAKE_DLL_RULES],[Make.rules])
WINE_CONFIG_MAKERULES([dlls/Makeimplib.rules],[MAKE_IMPLIB_RULES],[Make.rules])
WINE_CONFIG_MAKERULES([programs/Makeprog.rules],[MAKE_PROG_RULES],[Make.rules])

2406
WINE_CONFIG_DLL(acledit)
2407 2408
WINE_CONFIG_DLL(aclui,,[implib])
WINE_CONFIG_DLL(activeds,,[implib])
2409 2410
WINE_CONFIG_DLL(actxprxy)
WINE_CONFIG_LIB(adsiid)
2411
WINE_CONFIG_DLL(advapi32,,[implib])
2412
WINE_CONFIG_TEST(dlls/advapi32/tests)
2413
WINE_CONFIG_DLL(advpack,,[implib])
2414 2415 2416
WINE_CONFIG_TEST(dlls/advpack/tests)
WINE_CONFIG_DLL(amstream)
WINE_CONFIG_TEST(dlls/amstream/tests)
2417
WINE_CONFIG_DLL(apphelp)
2418
WINE_CONFIG_DLL(appwiz.cpl,,[po])
2419
WINE_CONFIG_DLL(atl,,[implib])
2420
WINE_CONFIG_TEST(dlls/atl/tests)
Stefan Leichter's avatar
Stefan Leichter committed
2421
WINE_CONFIG_DLL(atl80)
2422
WINE_CONFIG_DLL(authz)
2423
WINE_CONFIG_DLL(avicap32,,[implib])
2424
WINE_CONFIG_DLL(avifil32,,[implib,po])
2425 2426
WINE_CONFIG_TEST(dlls/avifil32/tests)
WINE_CONFIG_DLL(avifile.dll16,enable_win16)
2427
WINE_CONFIG_DLL(avrt,,[implib])
2428
WINE_CONFIG_DLL(bcrypt)
2429
WINE_CONFIG_DLL(browseui,,[po])
2430
WINE_CONFIG_TEST(dlls/browseui/tests)
2431
WINE_CONFIG_DLL(cabinet,,[implib])
2432
WINE_CONFIG_TEST(dlls/cabinet/tests)
2433 2434 2435 2436
WINE_CONFIG_DLL(capi2032,,[implib])
WINE_CONFIG_DLL(cards,,[implib])
WINE_CONFIG_DLL(cfgmgr32,,[implib])
WINE_CONFIG_DLL(clusapi,,[implib])
2437 2438
WINE_CONFIG_DLL(comcat)
WINE_CONFIG_TEST(dlls/comcat/tests)
2439
WINE_CONFIG_DLL(comctl32,,[implib,po])
2440
WINE_CONFIG_TEST(dlls/comctl32/tests)
2441
WINE_CONFIG_DLL(comdlg32,,[implib,po])
2442 2443 2444 2445
WINE_CONFIG_TEST(dlls/comdlg32/tests)
WINE_CONFIG_DLL(comm.drv16,enable_win16)
WINE_CONFIG_DLL(commdlg.dll16,enable_win16)
WINE_CONFIG_DLL(compobj.dll16,enable_win16)
2446
WINE_CONFIG_DLL(compstui,,[implib])
2447
WINE_CONFIG_DLL(credui,,[implib,po])
2448
WINE_CONFIG_TEST(dlls/credui/tests)
2449
WINE_CONFIG_DLL(crtdll,,[implib])
2450
WINE_CONFIG_DLL(crypt32,,[implib,po])
2451
WINE_CONFIG_TEST(dlls/crypt32/tests)
2452
WINE_CONFIG_DLL(cryptdlg,,[po])
2453 2454
WINE_CONFIG_DLL(cryptdll,,[implib])
WINE_CONFIG_DLL(cryptnet,,[implib])
2455
WINE_CONFIG_TEST(dlls/cryptnet/tests)
2456
WINE_CONFIG_DLL(cryptui,,[implib,po])
2457 2458 2459
WINE_CONFIG_TEST(dlls/cryptui/tests)
WINE_CONFIG_DLL(ctapi32)
WINE_CONFIG_DLL(ctl3d.dll16,enable_win16)
2460
WINE_CONFIG_DLL(ctl3d32,,[implib])
2461
WINE_CONFIG_DLL(ctl3dv2.dll16,enable_win16)
2462
WINE_CONFIG_DLL(d3d10,,[implib])
2463
WINE_CONFIG_TEST(dlls/d3d10/tests)
2464
WINE_CONFIG_DLL(d3d10core,,[implib])
2465
WINE_CONFIG_TEST(dlls/d3d10core/tests)
2466
WINE_CONFIG_DLL(d3d8,,[implib])
2467
WINE_CONFIG_TEST(dlls/d3d8/tests)
2468
WINE_CONFIG_DLL(d3d9,,[implib])
2469
WINE_CONFIG_TEST(dlls/d3d9/tests)
Matteo Bruni's avatar
Matteo Bruni committed
2470
WINE_CONFIG_DLL(d3dcompiler_33)
Matteo Bruni's avatar
Matteo Bruni committed
2471
WINE_CONFIG_DLL(d3dcompiler_34)
Matteo Bruni's avatar
Matteo Bruni committed
2472
WINE_CONFIG_DLL(d3dcompiler_35)
Matteo Bruni's avatar
Matteo Bruni committed
2473
WINE_CONFIG_DLL(d3dcompiler_36)
Matteo Bruni's avatar
Matteo Bruni committed
2474
WINE_CONFIG_DLL(d3dcompiler_37)
Matteo Bruni's avatar
Matteo Bruni committed
2475
WINE_CONFIG_DLL(d3dcompiler_38)
Matteo Bruni's avatar
Matteo Bruni committed
2476
WINE_CONFIG_DLL(d3dcompiler_39)
Matteo Bruni's avatar
Matteo Bruni committed
2477
WINE_CONFIG_DLL(d3dcompiler_40)
Matteo Bruni's avatar
Matteo Bruni committed
2478
WINE_CONFIG_DLL(d3dcompiler_41)
Matteo Bruni's avatar
Matteo Bruni committed
2479
WINE_CONFIG_DLL(d3dcompiler_42)
2480
WINE_CONFIG_DLL(d3dcompiler_43,,[implib],[d3dcompiler])
2481
WINE_CONFIG_TEST(dlls/d3dcompiler_43/tests)
2482 2483
WINE_CONFIG_DLL(d3dim,,[implib])
WINE_CONFIG_DLL(d3drm,,[implib])
2484
WINE_CONFIG_TEST(dlls/d3drm/tests)
2485
WINE_CONFIG_DLL(d3dx10_33)
2486
WINE_CONFIG_DLL(d3dx10_34)
2487
WINE_CONFIG_DLL(d3dx10_35)
2488
WINE_CONFIG_DLL(d3dx10_36)
2489
WINE_CONFIG_DLL(d3dx10_37)
2490
WINE_CONFIG_DLL(d3dx10_38)
2491
WINE_CONFIG_DLL(d3dx10_39)
2492
WINE_CONFIG_DLL(d3dx10_40)
2493
WINE_CONFIG_DLL(d3dx10_41)
2494
WINE_CONFIG_DLL(d3dx10_42)
2495
WINE_CONFIG_DLL(d3dx10_43)
2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507
WINE_CONFIG_DLL(d3dx9_24)
WINE_CONFIG_DLL(d3dx9_25)
WINE_CONFIG_DLL(d3dx9_26)
WINE_CONFIG_DLL(d3dx9_27)
WINE_CONFIG_DLL(d3dx9_28)
WINE_CONFIG_DLL(d3dx9_29)
WINE_CONFIG_DLL(d3dx9_30)
WINE_CONFIG_DLL(d3dx9_31)
WINE_CONFIG_DLL(d3dx9_32)
WINE_CONFIG_DLL(d3dx9_33)
WINE_CONFIG_DLL(d3dx9_34)
WINE_CONFIG_DLL(d3dx9_35)
2508
WINE_CONFIG_DLL(d3dx9_36,,[implib],[d3dx9])
2509 2510 2511 2512 2513 2514 2515
WINE_CONFIG_TEST(dlls/d3dx9_36/tests)
WINE_CONFIG_DLL(d3dx9_37)
WINE_CONFIG_DLL(d3dx9_38)
WINE_CONFIG_DLL(d3dx9_39)
WINE_CONFIG_DLL(d3dx9_40)
WINE_CONFIG_DLL(d3dx9_41)
WINE_CONFIG_DLL(d3dx9_42)
2516
WINE_CONFIG_DLL(d3dx9_43)
2517
WINE_CONFIG_DLL(d3dxof,,[implib])
2518
WINE_CONFIG_TEST(dlls/d3dxof/tests)
2519 2520 2521
WINE_CONFIG_DLL(dbgeng,,[implib])
WINE_CONFIG_DLL(dbghelp,,[implib])
WINE_CONFIG_DLL(dciman32,,[implib])
2522
WINE_CONFIG_DLL(ddeml.dll16,enable_win16)
2523
WINE_CONFIG_DLL(ddraw,,[implib])
2524 2525 2526
WINE_CONFIG_TEST(dlls/ddraw/tests)
WINE_CONFIG_DLL(ddrawex)
WINE_CONFIG_TEST(dlls/ddrawex/tests)
2527
WINE_CONFIG_DLL(devenum,,[po])
2528
WINE_CONFIG_TEST(dlls/devenum/tests)
2529
WINE_CONFIG_DLL(dhcpcsvc)
2530
WINE_CONFIG_DLL(dinput,,[implib,po,staticimplib])
2531
WINE_CONFIG_TEST(dlls/dinput/tests)
2532
WINE_CONFIG_DLL(dinput8,,[implib])
2533
WINE_CONFIG_TEST(dlls/dinput8/tests)
2534
WINE_CONFIG_DLL(dispdib.dll16,enable_win16)
2535
WINE_CONFIG_DLL(dispex)
2536
WINE_CONFIG_TEST(dlls/dispex/tests)
2537 2538
WINE_CONFIG_DLL(display.drv16,enable_win16)
WINE_CONFIG_DLL(dmband)
Christian Costa's avatar
Christian Costa committed
2539
WINE_CONFIG_TEST(dlls/dmband/tests)
2540 2541
WINE_CONFIG_DLL(dmcompos)
WINE_CONFIG_DLL(dmime)
2542
WINE_CONFIG_TEST(dlls/dmime/tests)
2543 2544 2545 2546 2547
WINE_CONFIG_DLL(dmloader)
WINE_CONFIG_TEST(dlls/dmloader/tests)
WINE_CONFIG_DLL(dmscript)
WINE_CONFIG_DLL(dmstyle)
WINE_CONFIG_DLL(dmsynth)
2548
WINE_CONFIG_TEST(dlls/dmsynth/tests)
2549
WINE_CONFIG_DLL(dmusic)
2550
WINE_CONFIG_TEST(dlls/dmusic/tests)
2551 2552
WINE_CONFIG_DLL(dmusic32,,[implib])
WINE_CONFIG_DLL(dnsapi,,[implib])
2553
WINE_CONFIG_TEST(dlls/dnsapi/tests)
2554 2555
WINE_CONFIG_DLL(dplay,,[implib])
WINE_CONFIG_DLL(dplayx,,[implib])
2556 2557
WINE_CONFIG_TEST(dlls/dplayx/tests)
WINE_CONFIG_DLL(dpnaddr)
2558
WINE_CONFIG_DLL(dpnet,,[implib])
2559
WINE_CONFIG_TEST(dlls/dpnet/tests)
2560 2561 2562 2563
WINE_CONFIG_DLL(dpnhpast)
WINE_CONFIG_DLL(dpnlobby)
WINE_CONFIG_DLL(dpwsockx)
WINE_CONFIG_DLL(drmclien)
2564
WINE_CONFIG_DLL(dsound,,[implib])
2565 2566 2567
WINE_CONFIG_TEST(dlls/dsound/tests)
WINE_CONFIG_DLL(dssenh)
WINE_CONFIG_DLL(dswave)
2568
WINE_CONFIG_DLL(dwmapi,,[implib])
2569
WINE_CONFIG_DLL(dxdiagn,,[po])
2570 2571 2572
WINE_CONFIG_TEST(dlls/dxdiagn/tests)
WINE_CONFIG_LIB(dxerr8)
WINE_CONFIG_LIB(dxerr9)
2573
WINE_CONFIG_DLL(dxgi,,[implib])
2574 2575
WINE_CONFIG_TEST(dlls/dxgi/tests)
WINE_CONFIG_LIB(dxguid)
2576
WINE_CONFIG_DLL(explorerframe)
2577
WINE_CONFIG_TEST(dlls/explorerframe/tests)
2578
WINE_CONFIG_DLL(faultrep,,[implib])
2579
WINE_CONFIG_TEST(dlls/faultrep/tests)
2580 2581 2582 2583
WINE_CONFIG_DLL(fltlib)
WINE_CONFIG_DLL(fusion)
WINE_CONFIG_TEST(dlls/fusion/tests)
WINE_CONFIG_DLL(fwpuclnt)
2584
WINE_CONFIG_DLL(gameux)
2585
WINE_CONFIG_TEST(dlls/gameux/tests)
2586
WINE_CONFIG_DLL(gdi.exe16,enable_win16)
2587
WINE_CONFIG_DLL(gdi32,,[implib,po])
2588
WINE_CONFIG_TEST(dlls/gdi32/tests)
2589
WINE_CONFIG_DLL(gdiplus,,[implib])
2590
WINE_CONFIG_TEST(dlls/gdiplus/tests)
2591
WINE_CONFIG_DLL(glu32,,[implib])
2592
WINE_CONFIG_DLL(gphoto2.ds,,[po])
2593 2594
WINE_CONFIG_DLL(gpkcsp)
WINE_CONFIG_DLL(hal)
2595
WINE_CONFIG_DLL(hhctrl.ocx,,[po])
2596 2597
WINE_CONFIG_DLL(hid,,[implib])
WINE_CONFIG_DLL(hlink,,[implib])
2598 2599 2600
WINE_CONFIG_TEST(dlls/hlink/tests)
WINE_CONFIG_DLL(hnetcfg)
WINE_CONFIG_DLL(httpapi)
2601
WINE_CONFIG_DLL(iccvid,,[po])
2602
WINE_CONFIG_DLL(icmp)
2603
WINE_CONFIG_DLL(ieframe,,[implib,po])
2604
WINE_CONFIG_TEST(dlls/ieframe/tests)
2605 2606
WINE_CONFIG_DLL(ifsmgr.vxd,enable_win16)
WINE_CONFIG_DLL(imaadp32.acm)
2607
WINE_CONFIG_DLL(imagehlp,,[implib])
2608 2609
WINE_CONFIG_TEST(dlls/imagehlp/tests)
WINE_CONFIG_DLL(imm.dll16,enable_win16)
2610
WINE_CONFIG_DLL(imm32,,[implib])
2611
WINE_CONFIG_TEST(dlls/imm32/tests)
2612
WINE_CONFIG_DLL(inetcomm,,[implib])
2613
WINE_CONFIG_TEST(dlls/inetcomm/tests)
2614
WINE_CONFIG_DLL(inetcpl.cpl,,[po])
2615 2616 2617 2618 2619 2620 2621
WINE_CONFIG_DLL(inetmib1)
WINE_CONFIG_TEST(dlls/inetmib1/tests)
WINE_CONFIG_DLL(infosoft)
WINE_CONFIG_TEST(dlls/infosoft/tests)
WINE_CONFIG_DLL(initpki)
WINE_CONFIG_DLL(inkobj)
WINE_CONFIG_DLL(inseng)
2622
WINE_CONFIG_DLL(iphlpapi,,[implib])
2623 2624 2625 2626
WINE_CONFIG_TEST(dlls/iphlpapi/tests)
WINE_CONFIG_DLL(itircl)
WINE_CONFIG_DLL(itss)
WINE_CONFIG_TEST(dlls/itss/tests)
2627
WINE_CONFIG_DLL(jscript,,[po])
2628
WINE_CONFIG_TEST(dlls/jscript/tests)
2629
WINE_CONFIG_DLL(kernel32,,[implib,mc])
2630 2631
WINE_CONFIG_TEST(dlls/kernel32/tests)
WINE_CONFIG_DLL(keyboard.drv16,enable_win16)
2632
WINE_CONFIG_DLL(krnl386.exe16,enable_win16,[implib],[kernel])
Vincent Povirk's avatar
Vincent Povirk committed
2633
WINE_CONFIG_DLL(ktmw32)
2634
WINE_CONFIG_DLL(loadperf,,[implib])
2635
WINE_CONFIG_DLL(localspl,,[po])
2636
WINE_CONFIG_TEST(dlls/localspl/tests)
2637
WINE_CONFIG_DLL(localui,,[po])
2638
WINE_CONFIG_TEST(dlls/localui/tests)
2639
WINE_CONFIG_DLL(lz32,,[implib])
2640 2641
WINE_CONFIG_TEST(dlls/lz32/tests)
WINE_CONFIG_DLL(lzexpand.dll16,enable_win16)
2642
WINE_CONFIG_DLL(mapi32,,[implib,po])
2643 2644 2645 2646 2647 2648 2649
WINE_CONFIG_TEST(dlls/mapi32/tests)
WINE_CONFIG_DLL(mapistub)
WINE_CONFIG_DLL(mciavi32)
WINE_CONFIG_DLL(mcicda)
WINE_CONFIG_DLL(mciqtz32)
WINE_CONFIG_DLL(mciseq)
WINE_CONFIG_DLL(mciwave)
Stefan Leichter's avatar
Stefan Leichter committed
2650
WINE_CONFIG_DLL(mgmtapi)
2651
WINE_CONFIG_DLL(midimap)
2652
WINE_CONFIG_DLL(mlang,,[implib])
2653
WINE_CONFIG_TEST(dlls/mlang/tests)
2654
WINE_CONFIG_DLL(mmcndmgr)
2655 2656 2657 2658 2659 2660 2661
WINE_CONFIG_DLL(mmdevapi)
WINE_CONFIG_TEST(dlls/mmdevapi/tests)
WINE_CONFIG_DLL(mmdevldr.vxd,enable_win16)
WINE_CONFIG_DLL(mmsystem.dll16,enable_win16)
WINE_CONFIG_DLL(monodebg.vxd,enable_win16)
WINE_CONFIG_DLL(mountmgr.sys)
WINE_CONFIG_DLL(mouse.drv16,enable_win16)
2662
WINE_CONFIG_DLL(mpr,,[implib,po])
2663
WINE_CONFIG_DLL(mprapi,,[implib])
2664 2665
WINE_CONFIG_DLL(msacm.dll16,enable_win16)
WINE_CONFIG_DLL(msacm32.drv)
2666
WINE_CONFIG_DLL(msacm32,,[implib,po])
2667 2668 2669
WINE_CONFIG_TEST(dlls/msacm32/tests)
WINE_CONFIG_DLL(msadp32.acm)
WINE_CONFIG_DLL(mscat32)
2670
WINE_CONFIG_DLL(mscms,,[implib])
2671 2672
WINE_CONFIG_TEST(dlls/mscms/tests)
WINE_CONFIG_DLL(mscoree)
2673
WINE_CONFIG_TEST(dlls/mscoree/tests)
2674 2675 2676
WINE_CONFIG_DLL(msctf)
WINE_CONFIG_TEST(dlls/msctf/tests)
WINE_CONFIG_DLL(msdaps)
2677
WINE_CONFIG_DLL(msdmo,,[implib])
2678 2679 2680 2681
WINE_CONFIG_DLL(msftedit)
WINE_CONFIG_DLL(msg711.acm)
WINE_CONFIG_DLL(msgsm32.acm)
WINE_CONFIG_DLL(mshtml.tlb)
2682
WINE_CONFIG_DLL(mshtml,,[implib,po])
2683
WINE_CONFIG_TEST(dlls/mshtml/tests)
2684
WINE_CONFIG_DLL(msi,,[implib,po])
2685
WINE_CONFIG_TEST(dlls/msi/tests)
Jacek Caban's avatar
Jacek Caban committed
2686
WINE_CONFIG_DLL(msident)
2687
WINE_CONFIG_DLL(msimg32,,[implib])
Hans Leidekker's avatar
Hans Leidekker committed
2688
WINE_CONFIG_DLL(msimsg)
2689 2690 2691 2692
WINE_CONFIG_DLL(msimtf)
WINE_CONFIG_DLL(msisip)
WINE_CONFIG_DLL(msisys.ocx)
WINE_CONFIG_DLL(msnet32)
David Hedberg's avatar
David Hedberg committed
2693
WINE_CONFIG_DLL(mspatcha)
2694
WINE_CONFIG_DLL(msrle32,,[po])
2695 2696 2697 2698 2699
WINE_CONFIG_DLL(mssign32)
WINE_CONFIG_DLL(mssip32)
WINE_CONFIG_DLL(mstask)
WINE_CONFIG_TEST(dlls/mstask/tests)
WINE_CONFIG_DLL(msvcirt)
Vincent Povirk's avatar
Vincent Povirk committed
2700
WINE_CONFIG_DLL(msvcm80)
2701
WINE_CONFIG_DLL(msvcm90)
Austin English's avatar
Austin English committed
2702
WINE_CONFIG_DLL(msvcp100)
2703
WINE_CONFIG_DLL(msvcp60)
2704
WINE_CONFIG_DLL(msvcp70)
2705
WINE_CONFIG_DLL(msvcp71)
Piotr Caban's avatar
Piotr Caban committed
2706
WINE_CONFIG_DLL(msvcp80)
Piotr Caban's avatar
Piotr Caban committed
2707
WINE_CONFIG_DLL(msvcp90)
2708
WINE_CONFIG_TEST(dlls/msvcp90/tests)
2709
WINE_CONFIG_DLL(msvcr100)
2710 2711
WINE_CONFIG_DLL(msvcr70,,[implib])
WINE_CONFIG_DLL(msvcr71,,[implib])
2712 2713
WINE_CONFIG_DLL(msvcr80)
WINE_CONFIG_DLL(msvcr90)
2714
WINE_CONFIG_TEST(dlls/msvcr90/tests)
2715
WINE_CONFIG_DLL(msvcrt,,[implib])
2716
WINE_CONFIG_TEST(dlls/msvcrt/tests)
2717 2718 2719
WINE_CONFIG_DLL(msvcrt20,,[implib])
WINE_CONFIG_DLL(msvcrt40,,[implib])
WINE_CONFIG_DLL(msvcrtd,,[implib])
2720
WINE_CONFIG_TEST(dlls/msvcrtd/tests)
2721
WINE_CONFIG_DLL(msvfw32,,[implib,po])
2722
WINE_CONFIG_TEST(dlls/msvfw32/tests)
2723
WINE_CONFIG_DLL(msvidc32,,[po])
2724
WINE_CONFIG_DLL(msvideo.dll16,enable_win16)
2725
WINE_CONFIG_DLL(mswsock,,[implib])
2726
WINE_CONFIG_DLL(msxml)
2727
WINE_CONFIG_DLL(msxml2)
2728 2729
WINE_CONFIG_DLL(msxml3)
WINE_CONFIG_TEST(dlls/msxml3/tests)
Nikolay Sivov's avatar
Nikolay Sivov committed
2730
WINE_CONFIG_DLL(msxml4)
2731
WINE_CONFIG_DLL(msxml6)
2732 2733
WINE_CONFIG_DLL(nddeapi,,[implib])
WINE_CONFIG_DLL(netapi32,,[implib])
2734
WINE_CONFIG_TEST(dlls/netapi32/tests)
2735
WINE_CONFIG_DLL(newdev,,[implib])
2736
WINE_CONFIG_DLL(normaliz,,[implib])
2737
WINE_CONFIG_DLL(npmshtml)
2738
WINE_CONFIG_DLL(ntdll,,[implib])
2739
WINE_CONFIG_TEST(dlls/ntdll/tests)
2740
WINE_CONFIG_DLL(ntdsapi,,[implib])
2741
WINE_CONFIG_TEST(dlls/ntdsapi/tests)
2742
WINE_CONFIG_DLL(ntoskrnl.exe,,[implib])
2743 2744 2745
WINE_CONFIG_DLL(ntprint)
WINE_CONFIG_TEST(dlls/ntprint/tests)
WINE_CONFIG_DLL(objsel)
2746 2747
WINE_CONFIG_DLL(odbc32,,[implib])
WINE_CONFIG_DLL(odbccp32,,[implib])
2748 2749 2750 2751 2752 2753 2754
WINE_CONFIG_TEST(dlls/odbccp32/tests)
WINE_CONFIG_DLL(ole2.dll16,enable_win16)
WINE_CONFIG_DLL(ole2conv.dll16,enable_win16)
WINE_CONFIG_DLL(ole2disp.dll16,enable_win16)
WINE_CONFIG_DLL(ole2nls.dll16,enable_win16)
WINE_CONFIG_DLL(ole2prox.dll16,enable_win16)
WINE_CONFIG_DLL(ole2thk.dll16,enable_win16)
2755
WINE_CONFIG_DLL(ole32,,[implib])
2756
WINE_CONFIG_TEST(dlls/ole32/tests)
2757
WINE_CONFIG_DLL(oleacc,,[implib,po])
2758
WINE_CONFIG_TEST(dlls/oleacc/tests)
2759
WINE_CONFIG_DLL(oleaut32,,[implib,po])
2760 2761
WINE_CONFIG_TEST(dlls/oleaut32/tests)
WINE_CONFIG_DLL(olecli.dll16,enable_win16)
2762
WINE_CONFIG_DLL(olecli32,,[implib])
2763 2764
WINE_CONFIG_DLL(oledb32)
WINE_CONFIG_TEST(dlls/oledb32/tests)
2765
WINE_CONFIG_DLL(oledlg,,[implib,po])
2766
WINE_CONFIG_DLL(olepro32,,[implib])
2767
WINE_CONFIG_DLL(olesvr.dll16,enable_win16)
2768
WINE_CONFIG_DLL(olesvr32,,[implib])
2769 2770
WINE_CONFIG_DLL(olethk32)
WINE_CONFIG_DLL(openal32)
2771
WINE_CONFIG_DLL(opencl)
2772
WINE_CONFIG_DLL(opengl32,,[implib])
2773
WINE_CONFIG_TEST(dlls/opengl32/tests)
2774
WINE_CONFIG_DLL(pdh,,[implib])
2775
WINE_CONFIG_TEST(dlls/pdh/tests)
2776
WINE_CONFIG_DLL(photometadatahandler)
2777
WINE_CONFIG_DLL(pidgen)
2778
WINE_CONFIG_DLL(powrprof,,[implib])
2779
WINE_CONFIG_DLL(printui)
2780
WINE_CONFIG_DLL(propsys,,[implib])
2781
WINE_CONFIG_TEST(dlls/propsys/tests)
2782
WINE_CONFIG_DLL(psapi,,[implib])
2783 2784 2785 2786 2787 2788 2789 2790
WINE_CONFIG_TEST(dlls/psapi/tests)
WINE_CONFIG_DLL(pstorec)
WINE_CONFIG_DLL(qcap)
WINE_CONFIG_DLL(qedit)
WINE_CONFIG_TEST(dlls/qedit/tests)
WINE_CONFIG_DLL(qmgr)
WINE_CONFIG_TEST(dlls/qmgr/tests)
WINE_CONFIG_DLL(qmgrprxy)
2791
WINE_CONFIG_DLL(quartz,,[implib])
2792 2793 2794
WINE_CONFIG_TEST(dlls/quartz/tests)
WINE_CONFIG_DLL(query)
WINE_CONFIG_DLL(rasapi16.dll16,enable_win16)
2795
WINE_CONFIG_DLL(rasapi32,,[implib])
2796
WINE_CONFIG_TEST(dlls/rasapi32/tests)
2797
WINE_CONFIG_DLL(rasdlg,,[implib])
Austin English's avatar
Austin English committed
2798
WINE_CONFIG_DLL(regapi)
2799 2800
WINE_CONFIG_DLL(resutils,,[implib])
WINE_CONFIG_DLL(riched20,,[implib])
2801 2802 2803
WINE_CONFIG_TEST(dlls/riched20/tests)
WINE_CONFIG_DLL(riched32)
WINE_CONFIG_TEST(dlls/riched32/tests)
2804
WINE_CONFIG_DLL(rpcrt4,,[implib])
2805 2806
WINE_CONFIG_TEST(dlls/rpcrt4/tests)
WINE_CONFIG_DLL(rsabase)
2807
WINE_CONFIG_DLL(rsaenh,,[implib])
2808
WINE_CONFIG_TEST(dlls/rsaenh/tests)
2809
WINE_CONFIG_DLL(rstrtmgr)
2810
WINE_CONFIG_DLL(rtutils,,[implib])
2811
WINE_CONFIG_DLL(samlib)
2812
WINE_CONFIG_DLL(sane.ds,,[po])
2813
WINE_CONFIG_DLL(scarddlg)
2814 2815 2816
WINE_CONFIG_DLL(sccbase)
WINE_CONFIG_DLL(schannel)
WINE_CONFIG_TEST(dlls/schannel/tests)
Hans Leidekker's avatar
Hans Leidekker committed
2817
WINE_CONFIG_DLL(scrrun)
2818
WINE_CONFIG_TEST(dlls/scrrun/tests)
2819
WINE_CONFIG_DLL(secur32,,[implib])
2820 2821
WINE_CONFIG_TEST(dlls/secur32/tests)
WINE_CONFIG_DLL(security)
2822
WINE_CONFIG_DLL(sensapi,,[implib])
2823
WINE_CONFIG_DLL(serialui,,[implib,po])
2824
WINE_CONFIG_TEST(dlls/serialui/tests)
2825
WINE_CONFIG_DLL(setupapi,,[implib,po])
2826 2827
WINE_CONFIG_TEST(dlls/setupapi/tests)
WINE_CONFIG_DLL(setupx.dll16,enable_win16)
2828 2829
WINE_CONFIG_DLL(sfc,,[implib])
WINE_CONFIG_DLL(sfc_os,,[implib])
2830
WINE_CONFIG_DLL(shdoclc,,[po])
2831
WINE_CONFIG_DLL(shdocvw,,[implib])
2832 2833
WINE_CONFIG_TEST(dlls/shdocvw/tests)
WINE_CONFIG_DLL(shell.dll16,enable_win16)
2834
WINE_CONFIG_DLL(shell32,,[implib,po])
2835
WINE_CONFIG_TEST(dlls/shell32/tests)
2836
WINE_CONFIG_DLL(shfolder,,[implib])
2837
WINE_CONFIG_DLL(shlwapi,,[implib,po])
2838 2839
WINE_CONFIG_TEST(dlls/shlwapi/tests)
WINE_CONFIG_DLL(slbcsp)
2840 2841
WINE_CONFIG_DLL(slc,,[implib])
WINE_CONFIG_DLL(snmpapi,,[implib])
2842 2843 2844
WINE_CONFIG_TEST(dlls/snmpapi/tests)
WINE_CONFIG_DLL(softpub)
WINE_CONFIG_DLL(sound.drv16,enable_win16)
2845
WINE_CONFIG_DLL(spoolss,,[implib])
2846 2847 2848
WINE_CONFIG_TEST(dlls/spoolss/tests)
WINE_CONFIG_DLL(stdole2.tlb)
WINE_CONFIG_DLL(stdole32.tlb)
2849
WINE_CONFIG_DLL(sti,,[implib])
2850 2851 2852
WINE_CONFIG_TEST(dlls/sti/tests)
WINE_CONFIG_DLL(storage.dll16,enable_win16)
WINE_CONFIG_DLL(stress.dll16,enable_win16)
2853
WINE_CONFIG_LIB(strmbase)
2854 2855
WINE_CONFIG_LIB(strmiids)
WINE_CONFIG_DLL(svrapi)
2856 2857
WINE_CONFIG_DLL(sxs,,[implib])
WINE_CONFIG_TEST(dlls/sxs/tests)
2858 2859
WINE_CONFIG_DLL(system.drv16,enable_win16)
WINE_CONFIG_DLL(t2embed)
2860
WINE_CONFIG_DLL(tapi32,,[implib])
2861 2862 2863 2864 2865 2866
WINE_CONFIG_DLL(toolhelp.dll16,enable_win16)
WINE_CONFIG_DLL(traffic)
WINE_CONFIG_DLL(twain.dll16,enable_win16)
WINE_CONFIG_DLL(twain_32)
WINE_CONFIG_TEST(dlls/twain_32/tests)
WINE_CONFIG_DLL(typelib.dll16,enable_win16)
2867
WINE_CONFIG_DLL(unicows,,[implib])
2868
WINE_CONFIG_DLL(updspapi)
2869 2870
WINE_CONFIG_DLL(url,,[implib])
WINE_CONFIG_DLL(urlmon,,[implib])
2871
WINE_CONFIG_TEST(dlls/urlmon/tests)
2872
WINE_CONFIG_DLL(usbd.sys,,[implib])
2873
WINE_CONFIG_DLL(user.exe16,enable_win16)
2874
WINE_CONFIG_DLL(user32,,[implib,po])
2875
WINE_CONFIG_TEST(dlls/user32/tests)
2876
WINE_CONFIG_DLL(userenv,,[implib])
2877
WINE_CONFIG_TEST(dlls/userenv/tests)
2878
WINE_CONFIG_DLL(usp10,,[implib])
2879 2880
WINE_CONFIG_TEST(dlls/usp10/tests)
WINE_CONFIG_LIB(uuid)
2881
WINE_CONFIG_DLL(uxtheme,,[implib])
2882
WINE_CONFIG_TEST(dlls/uxtheme/tests)
Jacek Caban's avatar
Jacek Caban committed
2883
WINE_CONFIG_DLL(vbscript)
2884
WINE_CONFIG_TEST(dlls/vbscript/tests)
Austin English's avatar
Austin English committed
2885
WINE_CONFIG_DLL(vcomp)
2886
WINE_CONFIG_DLL(vcomp100)
2887
WINE_CONFIG_DLL(vdhcp.vxd,enable_win16)
2888
WINE_CONFIG_DLL(vdmdbg,,[implib])
2889
WINE_CONFIG_DLL(ver.dll16,enable_win16)
2890
WINE_CONFIG_DLL(version,,[implib])
2891 2892 2893 2894 2895 2896
WINE_CONFIG_TEST(dlls/version/tests)
WINE_CONFIG_DLL(vmm.vxd,enable_win16)
WINE_CONFIG_DLL(vnbt.vxd,enable_win16)
WINE_CONFIG_DLL(vnetbios.vxd,enable_win16)
WINE_CONFIG_DLL(vtdapi.vxd,enable_win16)
WINE_CONFIG_DLL(vwin32.vxd,enable_win16)
2897
WINE_CONFIG_DLL(w32skrnl,enable_win16)
2898 2899
WINE_CONFIG_DLL(w32sys.dll16,enable_win16)
WINE_CONFIG_DLL(wbemprox)
2900
WINE_CONFIG_DLL(wer,,[implib])
2901
WINE_CONFIG_TEST(dlls/wer/tests)
Austin English's avatar
Austin English committed
2902
WINE_CONFIG_DLL(wevtapi)
2903 2904 2905 2906 2907
WINE_CONFIG_DLL(wiaservc)
WINE_CONFIG_DLL(win32s16.dll16,enable_win16)
WINE_CONFIG_DLL(win87em.dll16,enable_win16)
WINE_CONFIG_DLL(winaspi.dll16,enable_win16)
WINE_CONFIG_DLL(windebug.dll16,enable_win16)
2908
WINE_CONFIG_DLL(windowscodecs,,[implib])
2909 2910 2911 2912
WINE_CONFIG_TEST(dlls/windowscodecs/tests)
WINE_CONFIG_DLL(winealsa.drv)
WINE_CONFIG_DLL(winecoreaudio.drv)
WINE_CONFIG_LIB(winecrt0)
2913
WINE_CONFIG_DLL(wined3d,,[implib])
2914
WINE_CONFIG_DLL(winegstreamer)
2915 2916 2917 2918
WINE_CONFIG_DLL(winejoystick.drv)
WINE_CONFIG_DLL(winemapi)
WINE_CONFIG_DLL(winemp3.acm)
WINE_CONFIG_DLL(wineoss.drv)
2919
WINE_CONFIG_DLL(wineps.drv,,[install-lib,po])
2920
WINE_CONFIG_DLL(wineps16.drv16,enable_win16)
2921
WINE_CONFIG_DLL(wineqtdecoder)
2922 2923 2924 2925
WINE_CONFIG_DLL(winequartz.drv)
WINE_CONFIG_DLL(winex11.drv)
WINE_CONFIG_DLL(wing.dll16,enable_win16)
WINE_CONFIG_DLL(wing32)
2926
WINE_CONFIG_DLL(winhttp,,[implib])
2927
WINE_CONFIG_TEST(dlls/winhttp/tests)
2928
WINE_CONFIG_DLL(wininet,,[implib,po])
2929
WINE_CONFIG_TEST(dlls/wininet/tests)
2930
WINE_CONFIG_DLL(winmm,,[implib,po])
2931 2932
WINE_CONFIG_TEST(dlls/winmm/tests)
WINE_CONFIG_DLL(winnls.dll16,enable_win16)
2933 2934
WINE_CONFIG_DLL(winnls32,,[implib])
WINE_CONFIG_DLL(winscard,,[implib])
2935
WINE_CONFIG_DLL(winsock.dll16,enable_win16)
2936
WINE_CONFIG_DLL(winspool.drv,,[implib,po],[winspool])
2937
WINE_CONFIG_TEST(dlls/winspool.drv/tests)
Austin English's avatar
Austin English committed
2938
WINE_CONFIG_DLL(winsta)
2939
WINE_CONFIG_DLL(wintab.dll16,enable_win16)
2940
WINE_CONFIG_DLL(wintab32,,[implib])
2941
WINE_CONFIG_TEST(dlls/wintab32/tests)
2942
WINE_CONFIG_DLL(wintrust,,[implib])
2943
WINE_CONFIG_TEST(dlls/wintrust/tests)
2944
WINE_CONFIG_DLL(wlanapi)
2945
WINE_CONFIG_DLL(wldap32,,[implib,po])
2946 2947 2948
WINE_CONFIG_TEST(dlls/wldap32/tests)
WINE_CONFIG_DLL(wmi)
WINE_CONFIG_DLL(wmiutils)
2949
WINE_CONFIG_DLL(wmvcore)
2950 2951 2952
WINE_CONFIG_DLL(wnaspi32,,[implib])
WINE_CONFIG_DLL(wow32,enable_win16,[implib])
WINE_CONFIG_DLL(ws2_32,,[implib])
2953
WINE_CONFIG_TEST(dlls/ws2_32/tests)
Jacek Caban's avatar
Jacek Caban committed
2954
WINE_CONFIG_DLL(wshom.ocx)
2955
WINE_CONFIG_TEST(dlls/wshom.ocx/tests)
Stefan Leichter's avatar
Stefan Leichter committed
2956
WINE_CONFIG_DLL(wsnmp32)
2957 2958
WINE_CONFIG_DLL(wsock32,,[implib])
WINE_CONFIG_DLL(wtsapi32,,[implib])
2959 2960
WINE_CONFIG_DLL(wuapi)
WINE_CONFIG_DLL(wuaueng)
Louis Lenders's avatar
Louis Lenders committed
2961
WINE_CONFIG_DLL(xapofx1_1)
2962 2963
WINE_CONFIG_DLL(xinput1_1)
WINE_CONFIG_DLL(xinput1_2)
2964
WINE_CONFIG_DLL(xinput1_3,,[implib],[xinput])
2965 2966 2967 2968
WINE_CONFIG_TEST(dlls/xinput1_3/tests)
WINE_CONFIG_DLL(xinput9_1_0)
WINE_CONFIG_DLL(xmllite)
WINE_CONFIG_TEST(dlls/xmllite/tests)
Hans Leidekker's avatar
Hans Leidekker committed
2969
WINE_CONFIG_DLL(xolehlp)
Austin English's avatar
Austin English committed
2970
WINE_CONFIG_DLL(xpsprint)
2971
WINE_CONFIG_MAKEFILE([documentation])
2972 2973
WINE_CONFIG_MAKEFILE([fonts],,[install-lib])
WINE_CONFIG_MAKEFILE([include],,[install-dev])
2974
WINE_CONFIG_MAKEFILE([libs/port])
2975
WINE_CONFIG_MAKEFILE([libs/wine],,[install-dev,install-lib])
2976
WINE_CONFIG_MAKEFILE([libs/wpp])
2977
WINE_CONFIG_MAKEFILE([loader],,[install-lib,manpage])
2978
WINE_CONFIG_PROGRAM(aspnet_regiis,,[install])
2979
WINE_CONFIG_PROGRAM(attrib,,[install,po])
2980
WINE_CONFIG_PROGRAM(cabarc,,[install])
2981
WINE_CONFIG_PROGRAM(cacls,,[install])
2982 2983
WINE_CONFIG_PROGRAM(clock,,[install,po])
WINE_CONFIG_PROGRAM(cmd,,[install,po])
Jacek Caban's avatar
Jacek Caban committed
2984
WINE_CONFIG_TEST(programs/cmd/tests)
2985
WINE_CONFIG_PROGRAM(control,,[install])
2986
WINE_CONFIG_PROGRAM(cscript,,[install])
2987
WINE_CONFIG_PROGRAM(dxdiag,,[install,po])
2988 2989
WINE_CONFIG_PROGRAM(eject,,[install])
WINE_CONFIG_PROGRAM(expand,,[install])
2990
WINE_CONFIG_PROGRAM(explorer,,[install,po])
2991 2992
WINE_CONFIG_PROGRAM(extrac32,,[install])
WINE_CONFIG_PROGRAM(hh,,[install])
2993
WINE_CONFIG_PROGRAM(hostname,,[install,po])
2994 2995
WINE_CONFIG_PROGRAM(icinfo,,[install])
WINE_CONFIG_PROGRAM(iexplore,,[install])
2996
WINE_CONFIG_PROGRAM(ipconfig,,[install,po])
2997 2998 2999
WINE_CONFIG_PROGRAM(lodctr,,[install])
WINE_CONFIG_PROGRAM(mofcomp,,[install])
WINE_CONFIG_PROGRAM(mshta,,[install])
3000
WINE_CONFIG_PROGRAM(msiexec,,[install,installbin,manpage])
3001
WINE_CONFIG_PROGRAM(net,,[install,po])
3002 3003
WINE_CONFIG_PROGRAM(netsh,,[install])
WINE_CONFIG_PROGRAM(ngen,,[install])
3004
WINE_CONFIG_PROGRAM(notepad,,[install,installbin,manpage,po])
3005
WINE_CONFIG_PROGRAM(oleview,,[install,po])
3006
WINE_CONFIG_PROGRAM(ping,,[install])
3007
WINE_CONFIG_PROGRAM(plugplay,,[install])
3008
WINE_CONFIG_PROGRAM(presentationfontcache,,[install])
3009 3010
WINE_CONFIG_PROGRAM(progman,,[install,po])
WINE_CONFIG_PROGRAM(reg,,[install,po])
3011
WINE_CONFIG_PROGRAM(regasm,,[install])
3012
WINE_CONFIG_PROGRAM(regedit,,[install,installbin,manpage,po])
3013
WINE_CONFIG_TEST(programs/regedit/tests)
3014
WINE_CONFIG_PROGRAM(regsvcs,,[install])
3015
WINE_CONFIG_PROGRAM(regsvr32,,[install,installbin,manpage])
3016 3017 3018 3019 3020 3021 3022 3023
WINE_CONFIG_PROGRAM(rpcss,,[install])
WINE_CONFIG_PROGRAM(rundll.exe16,enable_win16,[install])
WINE_CONFIG_PROGRAM(rundll32,,[install])
WINE_CONFIG_PROGRAM(sc,,[install])
WINE_CONFIG_PROGRAM(secedit,,[install])
WINE_CONFIG_PROGRAM(servicemodelreg,,[install])
WINE_CONFIG_PROGRAM(services,,[install])
WINE_CONFIG_PROGRAM(spoolsv,,[install])
3024
WINE_CONFIG_PROGRAM(start,,[install,po])
3025
WINE_CONFIG_PROGRAM(svchost,,[install])
3026 3027
WINE_CONFIG_PROGRAM(taskkill,,[install,po])
WINE_CONFIG_PROGRAM(taskmgr,,[install,po])
3028
WINE_CONFIG_PROGRAM(termsv,,[install])
3029
WINE_CONFIG_PROGRAM(uninstaller,,[install,po])
3030
WINE_CONFIG_PROGRAM(unlodctr,,[install])
3031
WINE_CONFIG_PROGRAM(view,,[install,po])
3032
WINE_CONFIG_PROGRAM(wineboot,,[install,installbin,manpage,po])
3033
WINE_CONFIG_PROGRAM(winebrowser,,[install])
3034 3035 3036
WINE_CONFIG_PROGRAM(winecfg,,[install,installbin,manpage,po])
WINE_CONFIG_PROGRAM(wineconsole,,[install,installbin,manpage,po])
WINE_CONFIG_PROGRAM(winedbg,,[install,installbin,manpage,po])
3037
WINE_CONFIG_PROGRAM(winedevice,,[install])
3038
WINE_CONFIG_PROGRAM(winefile,,[install,installbin,manpage,po])
3039
WINE_CONFIG_PROGRAM(winemenubuilder,,[install])
3040
WINE_CONFIG_PROGRAM(winemine,,[install,installbin,manpage,po])
3041
WINE_CONFIG_PROGRAM(winemsibuilder,,[install])
3042
WINE_CONFIG_PROGRAM(winepath,,[install,installbin,manpage])
3043
WINE_CONFIG_PROGRAM(winetest)
3044 3045
WINE_CONFIG_PROGRAM(winevdm,enable_win16,[install])
WINE_CONFIG_PROGRAM(winhelp.exe16,enable_win16,[install])
3046
WINE_CONFIG_PROGRAM(winhlp32,,[install,po])
3047 3048 3049
WINE_CONFIG_PROGRAM(winoldap.mod16,enable_win16,[install])
WINE_CONFIG_PROGRAM(winver,,[install])
WINE_CONFIG_PROGRAM(wmic,,[install])
3050 3051
WINE_CONFIG_PROGRAM(wordpad,,[install,po])
WINE_CONFIG_PROGRAM(write,,[install,po])
3052
WINE_CONFIG_PROGRAM(wscript,,[install])
Jacek Caban's avatar
Jacek Caban committed
3053
WINE_CONFIG_TEST(programs/wscript/tests)
Austin English's avatar
Austin English committed
3054
WINE_CONFIG_PROGRAM(wusa,,[install])
3055
WINE_CONFIG_PROGRAM(xcopy,,[install,po])
3056 3057 3058 3059 3060 3061 3062 3063
WINE_CONFIG_MAKEFILE([server],,[install-lib,manpage])
WINE_CONFIG_TOOL(tools,[install-dev,install-lib,manpage])
WINE_CONFIG_TOOL(tools/widl,[install-dev,manpage])
WINE_CONFIG_TOOL(tools/winebuild,[install-dev,manpage])
WINE_CONFIG_TOOL(tools/winedump,[install-dev,manpage])
WINE_CONFIG_TOOL(tools/winegcc,[install-dev,manpage])
WINE_CONFIG_TOOL(tools/wmc,[install-dev,manpage])
WINE_CONFIG_TOOL(tools/wrc,[install-dev,manpage])
3064 3065

AC_SUBST([LINGUAS],["\
3066
ar \
3067
bg \
3068
ca \
3069 3070 3071
cs \
da \
de \
3072 3073
el \
en \
3074 3075 3076
en_US \
eo \
es \
3077
fa \
3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094
fi \
fr \
he \
hi \
hu \
it \
ja \
ko \
lt \
ml \
nb_NO \
nl \
or \
pa \
pl \
pt_BR \
pt_PT \
3095
rm \
3096 3097 3098 3099
ro \
ru \
sk \
sl \
3100 3101
sr_RS@cyrillic \
sr_RS@latin \
3102 3103 3104 3105 3106 3107 3108 3109 3110
sv \
te \
th \
tr \
uk \
wa \
zh_CN \
zh_TW"])

3111
dnl End of auto-generated output commands
3112

3113 3114 3115 3116 3117 3118 3119 3120 3121
AC_CONFIG_COMMANDS([Makefile], [wine_fn_output_makefile Makefile],
[wine_fn_output_makefile ()
{
    cat Make.tmp - <<\_WINE_EOF >\$tmp/makefile && mv -f \$tmp/makefile \$[]1 && rm -f Make.tmp && return
$ALL_MAKEFILE_DEPENDS
_WINE_EOF
    AS_ERROR([could not create Makefile])
}])

3122
AC_CONFIG_FILES([Make.tmp:Make.vars.in:Makefile.in])
3123

3124
dnl Some final makefile rules
3125

3126 3127 3128 3129 3130 3131 3132 3133
if test "x$enable_maintainer_mode" = xyes
then
    WINE_APPEND_RULE([ALL_MAKEFILE_DEPENDS],
[\$(srcdir)/configure: configure.ac aclocal.m4
	cd \$(srcdir) && autoconf --warnings=all
\$(srcdir)/include/config.h.in: include/stamp-h.in
\$(srcdir)/include/stamp-h.in: configure.ac aclocal.m4
	cd \$(srcdir) && autoheader --warnings=all
3134 3135
	@echo timestamp > \$[@]])
fi
3136

3137 3138 3139 3140 3141 3142
if test "x$with_gettextpo" = xyes
then
    test "$srcdir" = . || AC_MSG_ERROR([Rebuilding po files is not supported for out of tree builds.])
    WINE_APPEND_RULE([ALL_MAKEFILE_DEPENDS],
[ALL_POT_FILES =$ALL_POT_FILES
\$(LINGUAS:%=po/%.po): \$(srcdir)/po/wine.pot
3143
	msgmerge --previous -q \$[@] \$(srcdir)/po/wine.pot | msgattrib --no-obsolete -o \$[@].new && mv \$[@].new \$[@]
3144 3145
\$(srcdir)/po/wine.pot: \$(ALL_POT_FILES)
	msgcat -o \$[@] \$(ALL_POT_FILES)])
3146 3147
fi

3148 3149
if test "$MSGFMT" != false
then
3150
    AC_SUBST([PORCFLAGS],["--po-dir=\$(top_builddir)/po"])
3151
    WINE_APPEND_RULE([ALL_MAKEFILE_DEPENDS],[__builddeps__: \$(ALL_MO_FILES)])
3152 3153
else
    LINGUAS=
3154 3155
fi

3156 3157 3158 3159 3160 3161 3162 3163
if test "x$enable_tools" != xno
then
    WINE_APPEND_RULE([ALL_MAKEFILE_DEPENDS],
[\$(MAKEDEP): tools/Makefile
clean:: __clean__
	\$(RM) tools/makedep\$(EXEEXT)])
fi

3164 3165 3166
if test -n "$with_wine64"
then
WINE_APPEND_RULE([ALL_MAKEFILE_DEPENDS],
3167 3168
[all: fonts server tools $with_wine64/loader/wine $with_wine64/loader/wine-preloader
fonts server tools:
3169
	\$(RM) \$[@] && \$(LN_S) $with_wine64/\$[@] \$[@]
3170 3171
$with_wine64/loader/wine:
	\$(RM) \$[@] && \$(LN_S) $ac_pwd/loader/wine \$[@]
3172 3173
$with_wine64/loader/wine-preloader:
	\$(RM) \$[@] && \$(LN_S) $ac_pwd/loader/wine-preloader \$[@]
3174
clean::
3175
	\$(RM) fonts server tools $with_wine64/loader/wine $with_wine64/loader/wine-preloader])
3176 3177
fi

3178 3179
AC_OUTPUT

3180 3181 3182 3183 3184
if test "$no_create" = "yes"
then
  exit 0
fi

3185
WINE_PRINT_MESSAGES
3186

3187
echo "
3188
$as_me: Finished.  Do '${ac_make}' to compile Wine.
3189
" >&AS_MESSAGE_FD
Alexandre Julliard's avatar
Alexandre Julliard committed
3190 3191 3192 3193 3194

dnl Local Variables:
dnl comment-start: "dnl "
dnl comment-end: ""
dnl comment-start-skip: "\\bdnl\\b\\s *"
3195
dnl compile-command: "autoreconf --warnings=all"
Alexandre Julliard's avatar
Alexandre Julliard committed
3196
dnl End: