Skip to content
Snippets Groups Projects
configure.in 35.1 KiB
Newer Older
Alexandre Julliard's avatar
Alexandre Julliard committed
then
    AC_CACHE_CHECK( "whether sys/mount.h defines statfs",
		    wine_cv_sys_mount_has_statfs,
	AC_TRY_COMPILE([
	#include <sys/types.h>
	#ifdef HAVE_SYS_PARAM_H
	# include <sys/param.h>
	#endif
	#include <sys/mount.h>
	],[
		struct statfs stfs;
	],wine_cv_sys_mount_has_statfs=yes,wine_cv_sys_mount_has_statfs=no
	)
    )
    if test "$wine_cv_sys_mount_has_statfs" = "yes"
    then
      AC_DEFINE(STATFS_DEFINED_BY_SYS_MOUNT)
    fi
Alexandre Julliard's avatar
Alexandre Julliard committed
dnl **** FIXME: what about mixed cases, where we need two of them? ***

Alexandre Julliard's avatar
Alexandre Julliard committed
AC_CACHE_CHECK( "for statfs.f_bfree", wine_cv_statfs_bfree,
  [ if test "x$statfs_bfree" = "xno"
    then
        wine_cv_statfs_bfree=no
    else
    	AC_TRY_COMPILE([
Alexandre Julliard's avatar
Alexandre Julliard committed
	#include <sys/types.h>
Alexandre Julliard's avatar
Alexandre Julliard committed
	#ifdef HAVE_SYS_PARAM_H
	# include <sys/param.h>
	#endif
Alexandre Julliard's avatar
Alexandre Julliard committed
	#ifdef STATFS_DEFINED_BY_SYS_MOUNT
Alexandre Julliard's avatar
Alexandre Julliard committed
	# include <sys/mount.h>
Alexandre Julliard's avatar
Alexandre Julliard committed
	#else
	# ifdef STATFS_DEFINED_BY_SYS_VFS
	#  include <sys/vfs.h>
	# else
	#  ifdef STATFS_DEFINED_BY_SYS_STATFS
	#   include <sys/statfs.h>
	#  endif
	# endif
Alexandre Julliard's avatar
Alexandre Julliard committed
	#endif
	],[
		struct statfs stfs;

		stfs.f_bfree++;
	],wine_cv_statfs_bfree=yes,wine_cv_statfs_bfree=no
	)
    fi ] )
if test "$wine_cv_statfs_bfree" = "yes"
then
  AC_DEFINE(STATFS_HAS_BFREE)
fi

Alexandre Julliard's avatar
Alexandre Julliard committed
AC_CACHE_CHECK( "for statfs.f_bavail", wine_cv_statfs_bavail,
  [ if test "x$statfs_bavail" = "xno"
    then
        wine_cv_statfs_bavail=no
    else
    	AC_TRY_COMPILE([
	#include <sys/types.h>
	#ifdef HAVE_SYS_PARAM_H
	# include <sys/param.h>
	#endif
	#ifdef STATFS_DEFINED_BY_SYS_MOUNT
	# include <sys/mount.h>
	#else
	# ifdef STATFS_DEFINED_BY_SYS_VFS
	#  include <sys/vfs.h>
	# else
	#  ifdef STATFS_DEFINED_BY_SYS_STATFS
	#   include <sys/statfs.h>
	#  endif
	# endif
	#endif
	],[
		struct statfs stfs;

		stfs.f_bavail++;
	],wine_cv_statfs_bavail=yes,wine_cv_statfs_bavail=no
	)
    fi ] )
if test "$wine_cv_statfs_bavail" = "yes"
then
  AC_DEFINE(STATFS_HAS_BAVAIL)
fi
Alexandre Julliard's avatar
Alexandre Julliard committed
dnl *** check for file descriptor passing with msg_accrights

AC_CACHE_CHECK("for msg_accrights in struct msghdr", ac_cv_c_msg_accrights,
 AC_TRY_COMPILE([#include <sys/types.h>
#include <sys/socket.h>],[struct msghdr hdr; hdr.msg_accrights=0],
                ac_cv_c_msg_accrights="yes", ac_cv_c_msg_accrights="no"))
if test "$ac_cv_c_msg_accrights" = "yes"
then
    AC_DEFINE(HAVE_MSGHDR_ACCRIGHTS)
fi

dnl *** Check for the sun_len member in struct sockaddr_un

AC_CACHE_CHECK("for sun_len in struct sockaddr_un", ac_cv_c_sun_len,
 AC_TRY_COMPILE([#include <sys/types.h>
#include <sys/socket.h>
#include <sys/un.h>], [static struct sockaddr_un addr; addr.sun_len = 1],
                ac_cv_c_sun_len="yes", ac_cv_c_sun_len="no"))
if test "$ac_cv_c_sun_len" = "yes"
then
    AC_DEFINE(HAVE_SOCKADDR_SUN_LEN)
fi

dnl *** check for the need to define __i386__

AC_CACHE_CHECK("whether we need to define __i386__",ac_cv_cpp_def_i386,
 AC_EGREP_CPP(yes,[#if (defined(i386) || defined(__i386)) && !defined(__i386__)
yes
#endif],
 ac_cv_cpp_def_i386="yes", ac_cv_cpp_def_i386="no"))
if test "$ac_cv_cpp_def_i386" = "yes"
then
    CFLAGS="$CFLAGS -D__i386__"
    LINTFLAGS="$LINTFLAGS -D__i386__"
dnl $GCC is set by autoconf
GCC_NO_BUILTIN=""
if test "$GCC" = "yes"
then
    GCC_NO_BUILTIN="-fno-builtin"
fi
AC_SUBST(GCC_NO_BUILTIN)

Alexandre Julliard's avatar
Alexandre Julliard committed
dnl **** Generate output files ****
AC_OUTPUT_COMMANDS([
extra_subdirs="\
dlls/ddraw/d3ddevice \
dlls/ddraw/dclipper \
dlls/ddraw/ddraw \
dlls/ddraw/direct3d \
dlls/ddraw/dpalette \
dlls/ddraw/dsurface \
Lionel Ulmer's avatar
Lionel Ulmer committed
dlls/dinput/joystick \
dlls/dinput/keyboard \
dlls/dinput/mouse \
dlls/kernel/messages \
"
for i in $extra_subdirs; do [ -d $i ] || (echo "creating $i" && mkdir $i); done ])

Alexandre Julliard's avatar
Alexandre Julliard committed
MAKE_RULES=Make.rules
Alexandre Julliard's avatar
Alexandre Julliard committed
AC_SUBST_FILE(MAKE_RULES)
MAKE_DLL_RULES=dlls/Makedll.rules
AC_SUBST_FILE(MAKE_DLL_RULES)

MAKE_PROG_RULES=programs/Makeprog.rules
AC_SUBST_FILE(MAKE_PROG_RULES)

Alexandre Julliard's avatar
Alexandre Julliard committed
AC_OUTPUT([
Make.rules
dlls/Makedll.rules
programs/Makeprog.rules
Alexandre Julliard's avatar
Alexandre Julliard committed
Makefile
Joseph Pranevich's avatar
Joseph Pranevich committed
console/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
controls/Makefile
debugger/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
dlls/Makefile
dlls/advapi32/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
dlls/comctl32/Makefile
dlls/crtdll/Makefile
dlls/dciman32/Makefile
dlls/ddraw/Makefile
dlls/dinput/Makefile
dlls/icmp/Makefile
dlls/imm32/Makefile
dlls/kernel/Makefile
dlls/lzexpand/Makefile
dlls/msnet32/Makefile
dlls/msvideo/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
dlls/odbc32/Makefile
dlls/ole32/Makefile
dlls/oleaut32/Makefile
dlls/olecli/Makefile
dlls/oledlg/Makefile
Sean Langley's avatar
Sean Langley committed
dlls/olepro32/Makefile
Lionel Ulmer's avatar
Lionel Ulmer committed
dlls/opengl32/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
dlls/psapi/Makefile
dlls/rasapi32/Makefile
dlls/richedit/Makefile
Huw D. M. Davies's avatar
Huw D. M. Davies committed
dlls/rpcrt4/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
dlls/shell32/Makefile
dlls/shfolder/Makefile
dlls/shlwapi/Makefile
dlls/tapi32/Makefile
dlls/version/Makefile
dlls/win32s/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
dlls/winaspi/Makefile
dlls/wineps/Makefile
dlls/winmm/joystick/Makefile
dlls/winmm/mcianim/Makefile
dlls/winmm/mciavi/Makefile
dlls/winmm/mcicda/Makefile
dlls/winmm/mciseq/Makefile
dlls/winmm/mciwave/Makefile
dlls/winmm/midimap/Makefile
dlls/winmm/wavemap/Makefile
dlls/winmm/wineoss/Makefile
dlls/winnls/Makefile
dlls/winsock/Makefile
dlls/wow32/Makefile
dlls/wsock32/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
documentation/Makefile
documentation/wine.man
Alexandre Julliard's avatar
Alexandre Julliard committed
files/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
graphics/Makefile
graphics/enhmetafiledrv/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
graphics/metafiledrv/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
graphics/win16drv/Makefile
graphics/x11drv/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
if1632/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
library/Makefile
libtest/Makefile
loader/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
loader/dos/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
memory/Makefile
misc/Makefile
miscemu/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
msdos/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
objects/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
ole/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
programs/Makefile
programs/avitools/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
programs/clock/Makefile
programs/cmdlgtst/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
programs/control/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
programs/notepad/Makefile
programs/osversioncheck/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
programs/progman/Makefile
programs/regapi/Makefile
programs/regtest/Makefile
programs/uninstaller/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
programs/view/Makefile
programs/wcmd/Makefile
Joshua Thielen's avatar
Joshua Thielen committed
programs/winemine/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
programs/winhelp/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
programs/winver/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
relay32/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
scheduler/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
server/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
tools/Makefile
tools/winebuild/Makefile
tools/wmc/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
tsx11/Makefile
Alexandre Julliard's avatar
Alexandre Julliard committed
win32/Makefile
windows/Makefile
windows/x11drv/Makefile ])
if test "$have_x" = "no"
then
  echo
  echo "*** Warning: X development files not found. Wine will be built without"
  echo "*** X support, which currently does not work, and would probably not be"
  echo "*** what you want anyway. You will need to install devel packages of"
  echo "*** Xlib/Xfree86 and Xpm at the very least."
elif test "$ac_cv_lib_Xpm_XpmCreatePixmapFromData" = "no"
then
  echo
  echo "*** Warning: Xpm development files not found. Wine will be built without"
  echo "*** Xpm support, which currently does not work. You will need to install"
  echo "*** devel packages of Xpm."
if test "$ac_cv_lib_ncurses_resizeterm" = "no" -a "$ac_cv_lib_ncurses_waddch" = "yes"
then
  echo
  echo "*** Warning: resizeterm not found in ncurses. Wine will be built without"
  echo "*** terminal resize support. Consider upgrading ncurses."
fi

Alexandre Julliard's avatar
Alexandre Julliard committed
if test "$wine_cv_libc_reentrant" = "no" 
then
  echo
  echo "*** Warning: non-reentrant libc detected. Wine will be build without"
  echo "*** thread support. Consider upgrading libc to a more recent"
  echo "*** reentrant version of libc."
fi

Lionel Ulmer's avatar
Lionel Ulmer committed
if test "$wine_cv_opengl_version_OK" = "no"
then
  echo
  echo "*** Warning: old Mesa headers detected. Wine will be built without Direct3D"
  echo "*** support. Consider upgrading your Mesa libraries (http://www.mesa3d.org/)."
fi

Lionel Ulmer's avatar
Lionel Ulmer committed
if test "$wine_cv_opengl_version_threadsafe" = "yes" -a $OPENGL = "normal"
then
  echo
  echo "*** Warning: the OpenGL version you have installed relies on libpthread for"
  echo "*** thread-safety. To prevent crashes, OpenGL support has been removed."
  echo "*** A fix for glibc 2.1.3 that seem to work is included in this version of Wine,"
  echo "*** start configure with '--enable-opengl' to force OpenGL support."
Lionel Ulmer's avatar
Lionel Ulmer committed
if test "$wine_cv_opengl_version_threadsafe" = "yes" -a $OPENGL = "yes"
then
  echo
  echo "*** Warning: you explicitely linked in a thread-safe OpenGL version. If you"
  echo "*** experience unusual crashes on DirectDraw games, try first to disable OpenGL"
  echo "*** support before reporting bugs."
fi


Alexandre Julliard's avatar
Alexandre Julliard committed
echo
echo "Configure finished.  Do 'make depend && make' to compile Wine."
Alexandre Julliard's avatar
Alexandre Julliard committed
echo

dnl Local Variables:
dnl comment-start: "dnl "
dnl comment-end: ""
dnl comment-start-skip: "\\bdnl\\b\\s *"
Alexandre Julliard's avatar
Alexandre Julliard committed
dnl compile-command: "autoconf"
Alexandre Julliard's avatar
Alexandre Julliard committed
dnl End: