mirror of
https://github.com/retro100/dosbox-wii.git
synced 2024-11-05 18:05:11 +01:00
214 lines
6.4 KiB
Plaintext
214 lines
6.4 KiB
Plaintext
dnl Init.
|
|
AC_INIT(dosbox,0.61)
|
|
AC_PREREQ(2.50)
|
|
AC_CONFIG_SRCDIR(README)
|
|
|
|
dnl Detect the canonical host and target build environment
|
|
AC_CANONICAL_HOST
|
|
AC_CANONICAL_TARGET
|
|
|
|
dnl Setup for automake
|
|
AM_INIT_AUTOMAKE
|
|
AM_CONFIG_HEADER(config.h)
|
|
|
|
dnl Checks for programs.
|
|
AC_PROG_MAKE_SET
|
|
AC_PROG_CC
|
|
AC_PROG_CPP
|
|
AC_PROG_CXX
|
|
AC_PROG_INSTALL
|
|
AC_PROG_RANLIB
|
|
|
|
dnl Check for SDL
|
|
SDL_VERSION=1.2.0
|
|
AM_PATH_SDL($SDL_VERSION,
|
|
:,
|
|
AC_MSG_ERROR([*** SDL version $SDL_VERSION not found!])
|
|
)
|
|
LIBS="$LIBS $SDL_LIBS"
|
|
CXXFLAGS="$CXXFLAGS $SDL_CFLAGS"
|
|
|
|
dnl Checks for header files.
|
|
|
|
dnl Checks for typedefs, structures, and compiler characteristics.
|
|
AC_C_CONST
|
|
AC_C_INLINE
|
|
AC_TYPE_SIZE_T
|
|
AC_STRUCT_TM
|
|
|
|
|
|
AC_MSG_CHECKING(if environ can be included)
|
|
AC_TRY_LINK([#include <unistd.h>
|
|
#include <stdlib.h>],[*environ;],
|
|
[AC_MSG_RESULT(yes);AC_DEFINE(ENVIRON_INCLUDED,1,[environ can be included])],AC_MSG_RESULT(no))
|
|
AC_MSG_CHECKING(if environ can be linked)
|
|
AC_TRY_LINK([extern char ** environ;],[*environ;],
|
|
[AC_MSG_RESULT(yes);AC_DEFINE(ENVIRON_LINKED,1,[environ can be linked])],AC_MSG_RESULT(no))
|
|
|
|
dnl Checks for libraries.
|
|
|
|
#Check if the compiler support attributes
|
|
AH_TEMPLATE([C_HAS_ATTRIBUTE],[Determines if the compilers supports attributes for structures.])
|
|
AC_MSG_CHECKING(if compiler allows __attribute__)
|
|
AC_TRY_COMPILE([], [typedef struct { } __attribute__ ((packed)) junk;],
|
|
[ AC_MSG_RESULT(yes);AC_DEFINE(C_HAS_ATTRIBUTE)],AC_MSG_RESULT(no))
|
|
|
|
AM_PATH_ALSA(0.9.0, AC_DEFINE(HAVE_ALSA,1,[Define to 1 to use ALSA for MIDI]) , : )
|
|
|
|
#Check for big endian machine, should #define WORD_BIGENDIAN if so
|
|
AC_C_BIGENDIAN
|
|
|
|
#Features to enable/disable
|
|
AH_TEMPLATE(C_DEBUG,[Define to 1 to enable internal debugger, requires libcurses])
|
|
AH_TEMPLATE(C_HEAVY_DEBUG,[Define to 1 to enable heavy debugging, also have to enable C_DEBUG])
|
|
AC_ARG_ENABLE(debug,AC_HELP_STRING([--enable-debug],[Enable debug mode]),[
|
|
AC_CHECK_HEADER(curses.h,have_curses_h=yes,)
|
|
AC_CHECK_LIB(curses, initscr, have_curses_lib=yes, , )
|
|
AC_CHECK_LIB(pdcurses, initscr, have_pdcurses_lib=yes, , )
|
|
|
|
if test x$have_curses_lib = xyes -a x$have_curses_h = xyes ; then
|
|
LIBS="$LIBS -lcurses"
|
|
AC_DEFINE(C_DEBUG,1)
|
|
if test x$enable_debug = xheavy ; then
|
|
AC_DEFINE(C_HEAVY_DEBUG,1)
|
|
fi
|
|
elif test x$have_pdcurses_lib = xyes -a x$have_curses_h = xyes ; then
|
|
LIBS="$LIBS -lpdcurses"
|
|
AC_DEFINE(C_DEBUG,1)
|
|
if test x$enable_debug = xheavy ; then
|
|
AC_DEFINE(C_HEAVY_DEBUG,1)
|
|
fi
|
|
else
|
|
AC_MSG_WARN([Can't find curses, debug mode disabled])
|
|
fi
|
|
],)
|
|
|
|
AH_TEMPLATE(C_CORE_INLINE,[Define to 1 to use inlined memory functions in cpu core])
|
|
AC_ARG_ENABLE(core-inline,AC_HELP_STRING([--enable-core-inline],[Enable inlined memory handling in CPU Core]),[
|
|
if test x$enable_core_inline = xyes ; then
|
|
AC_MSG_RESULT([enabling inlined memory handling in CPU Core])
|
|
AC_DEFINE(C_CORE_INLINE,1)
|
|
fi
|
|
],)
|
|
|
|
|
|
dnl The target cpu checks for dynamic cores
|
|
AH_TEMPLATE(C_HOSTCPU,[The type of cpu this host has])
|
|
AC_MSG_CHECKING(for target cpu type)
|
|
case "$target_cpu" in
|
|
i386|i486|i586|i686)
|
|
AC_DEFINE(C_HOSTCPU,X86)
|
|
AC_MSG_RESULT(x86 compatible)
|
|
c_hostcpu="x86"
|
|
;;
|
|
*)
|
|
AC_DEFINE(C_HOSTCPU,UNKOWN)
|
|
AC_MSG_RESULT(unknown)
|
|
;;
|
|
esac
|
|
AH_TEMPLATE(C_DYNAMIC_X86,[Define to 1 to use x86 dynamic cpu core])
|
|
AC_ARG_ENABLE(dynamic-x86,AC_HELP_STRING([--disable-dynamic-x86],[Disable x86 dynamic cpu core]),,enable_dynamic_x86=yes)
|
|
AC_MSG_CHECKING(whether x86 dynamic cpu core will be enabled)
|
|
if test x$enable_dynamic_x86 = xno ; then
|
|
AC_MSG_RESULT(no)
|
|
else
|
|
if test x$c_hostcpu = xx86 ; then
|
|
AC_DEFINE(C_DYNAMIC_X86,1)
|
|
AC_MSG_RESULT(yes)
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
fi
|
|
fi
|
|
|
|
|
|
|
|
AH_TEMPLATE(C_FPU,[Define to 1 to enable floating point emulation])
|
|
AC_ARG_ENABLE(fpu,AC_HELP_STRING([--disable-fpu],[Disable fpu support]),,enable_fpu=yes)
|
|
AC_MSG_CHECKING(whether fpu emulation will be enabled)
|
|
if test x$enable_fpu = xyes ; then
|
|
AC_MSG_RESULT(yes)
|
|
AC_DEFINE(C_FPU,1)
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
fi
|
|
|
|
AH_TEMPLATE(C_SSHOT,[Define to 1 to enable screenshots, requires libpng])
|
|
AC_CHECK_HEADER(png.h,have_png_h=yes,)
|
|
AC_CHECK_LIB(png, png_check_sig, have_png_lib=yes, ,-lz)
|
|
if test x$have_png_lib = xyes -a x$have_png_h = xyes ; then
|
|
LIBS="$LIBS -lpng -lz"
|
|
AC_DEFINE(C_SSHOT,1)
|
|
else
|
|
AC_MSG_WARN([Can't find libpng, screenshot support disabled])
|
|
fi
|
|
|
|
AH_TEMPLATE(C_MODEM,[Define to 1 to enable internal modem support, requires SDL_net])
|
|
AC_CHECK_HEADER(SDL/SDL_net.h,have_sdl_net_h=yes,)
|
|
AC_CHECK_LIB(SDL_net, SDLNet_Init, have_sdl_net_lib=yes, , )
|
|
if test x$have_sdl_net_lib = xyes -a x$have_sdl_net_h = xyes ; then
|
|
LIBS="$LIBS -lSDL_net"
|
|
AC_DEFINE(C_MODEM,1)
|
|
else
|
|
AC_MSG_WARN([Can't find SDL_net, internal modem disabled])
|
|
fi
|
|
|
|
AH_TEMPLATE(C_OPENGL,[Define to 1 to use opengl display output support])
|
|
AC_ARG_ENABLE(opengl,AC_HELP_STRING([--disable-opengl],[Disable opengl support]),,enable_opengl=yes)
|
|
AC_CHECK_LIB(GL, main, have_gl_lib=yes, have_gl_lib=no , )
|
|
AC_CHECK_LIB(opengl32, main, have_opengl32_lib=yes,have_opengl32_lib=no , )
|
|
AC_CHECK_HEADER(GL/gl.h, have_gl_h=yes , have_gl_h=no , )
|
|
AC_MSG_CHECKING(whether opengl display output will be enabled)
|
|
if test x$enable_opengl = xyes -a x$have_gl_h = xyes -a x$have_gl_lib = xyes ; then
|
|
AC_MSG_RESULT(yes)
|
|
LIBS="$LIBS -lGL"
|
|
AC_DEFINE(C_OPENGL,1)
|
|
elif test x$enable_opengl = xyes -a x$have_gl_h = xyes -a x$have_opengl32_lib = xyes ; then
|
|
AC_MSG_RESULT(yes)
|
|
LIBS="$LIBS -lopengl32"
|
|
AC_DEFINE(C_OPENGL,1)
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
fi
|
|
|
|
dnl Some host detection and actions for them
|
|
case "$target" in
|
|
*-*-cygwin* | *-*-mingw32*)
|
|
LIBS="$LIBS -lwinmm"
|
|
;;
|
|
*-*-darwin*)
|
|
dnl We have a problem here: both MacOS X and Darwin report
|
|
dnl the same signature "powerpc-apple-darwin*" - so we have
|
|
dnl to do more to distinguish them.
|
|
dnl For now I am lazy and do not add proper detection code.
|
|
AC_DEFINE(MACOSX, 1, [Compiling on Mac OS X])
|
|
LIBS="$LIBS -framework AudioUnit"
|
|
;;
|
|
*-*-linux-gnu*)
|
|
AC_DEFINE(LINUX, 1, [Compiling on GNU/Linux])
|
|
;;
|
|
esac
|
|
|
|
|
|
AC_OUTPUT([
|
|
Makefile
|
|
src/Makefile
|
|
src/cpu/Makefile
|
|
src/cpu/core_full/Makefile
|
|
src/cpu/core_normal/Makefile
|
|
src/cpu/core_dyn_x86/Makefile
|
|
src/debug/Makefile
|
|
src/dos/Makefile
|
|
src/fpu/Makefile
|
|
src/gui/Makefile
|
|
src/hardware/Makefile
|
|
src/ints/Makefile
|
|
src/misc/Makefile
|
|
src/shell/Makefile
|
|
src/platform/Makefile
|
|
src/platform/visualc/Makefile
|
|
visualc/Makefile
|
|
visualc_net/Makefile
|
|
include/Makefile
|
|
docs/Makefile
|
|
])
|