# -*- mode: shell-script -*- AC_INIT(main/inferno.c) AC_VALIDATE_CACHED_SYSTEM_TUPLE( rm $cache_file echo restart configure exit 1 ) AM_CONFIG_HEADER(conf.h) AM_INIT_AUTOMAKE(d2x, 0.1.1) AM_MAINTAINER_MODE AC_PROG_INSTALL AC_CHECK_TOOL(CC, gcc, :) AC_ISC_POSIX AC_CHECK_TOOL(RANLIB, ranlib, :) AC_CHECK_TOOL(AR, ar, :) AC_STDC_HEADERS AC_CYGWIN if test x$CYGWIN = xyes; then AC_MSG_WARN([Cygwin found, setting -mno-cygwin]) CFLAGS="$CFLAGS -mno-cygwin" fi AC_MINGW32 AM_CONDITIONAL(MINGW32, test x$MINGW32 = xyes) if test x$MINGW32 = xyes; then GL_LIBS="opengl32 glu32" NASM_PROG=nasmw else GL_LIBS="GL GLU" NASM_PROG=nasm fi CFLAGS="$CFLAGS -O2 -Wall" dnl Enable cross-platform bitmap/palette loader? AC_ARG_ENABLE(xploader, [ --enable-xploader Enable xp bitmap/palette loader ],,) if test x$enable_xploader = xyes; then AC_DEFINE(PORTABLE_LOADER) fi dnl Count warnings as errors? AC_ARG_ENABLE(werror, [ --enable-werror Count compiler warning as errors ],,) if test x$enable_werror = xyes; then CFLAGS="-Werror $CFLAGS" fi dnl Build with NDEBUG? AC_ARG_ENABLE(debug, [ --disable-debug Take out debug symbols, Asserts, Int3, etc ],,) if test x$enable_debug = xno; then AC_DEFINE(NDEBUG) else CFLAGS="-g $CFLAGS" fi # Test for DJGPP AM_CONDITIONAL(ENV_DJGPP, test "$host_os" = "msdosdjgpp") if test "$host_os" = "msdosdjgpp"; then CFLAGS="-I \$(top_srcdir)/arch/dos/include $CFLAGS" AC_PATH_PROG(NASM, nasm, no) TARGETS=d2x D2X_ARCH_SUBDIRS=dos else CFLAGS="-pipe $CFLAGS" D2X_ARCH_SUBDIRS=sdl if test x$MINGW32 = xyes; then D2X_ARCH_SUBDIRS="win32 ${D2X_ARCH_SUBDIRS}" else D2X_ARCH_SUBDIRS="linux ${D2X_ARCH_SUBDIRS}" fi dnl Check for SDL AM_PATH_SDL(1.1.7, :, AC_MSG_ERROR(SDL not found. Make sure sdl-config is in your PATH, or specify with --with-sdl-prefix) ) AC_SUBST(SDL_LIBS) AC_CHECK_HEADERS(netipx/ipx.h) # Check for OpenGL AC_ARG_WITH(opengl, [ --with-opengl Build OpenGL support ], [case "${withval}" in yes) opengl=true ;; no) opengl=false ;; *) AC_MSG_ERROR(bad value ${withval} for --with-opengl) ;; esac],[opengl=false]) if test x$opengl = xtrue; then for lib in $GL_LIBS; do AC_CHECK_LIB($lib, main, OGL_LIBS="${OGL_LIBS} -l$lib", [AC_MSG_ERROR([$lib not found, --with-opengl cannot be used]) opengl=false], ${OGL_LIBS} ) done fi AC_SUBST(OGL_LIBS) AM_CONDITIONAL(USE_OPENGL, test x$opengl = xtrue) CFLAGS="$SDL_CFLAGS $CFLAGS" # Check for GGI AC_ARG_WITH(ggi, [ --with-ggi Build GGI support ], [case "${withval}" in yes) ggi=true ;; no) ggi=false ;; *) AC_MSG_ERROR(bad value ${withval} for --with-ggi) ;; esac],[ggi=false]) if test x$ggi = xtrue; then AC_CHECK_LIB(ggi, ggiInit, GGI_LIBS="-lggi", [AC_MSG_ERROR([GGI not found, GGI version cannot be built]); ggi=false]) AC_CHECK_LIB(gii, giiInit, GGI_LIBS="${GGI_LIBS} -lgii", [AC_MSG_ERROR([GII not found, GGI version cannot be built]); ggi=false]) fi AC_SUBST(GGI_LIBS) AM_CONDITIONAL(USE_GGI, test x$ggi = xtrue) # Check for SVGALib AC_ARG_WITH(svga, [ --with-svga Build SVGALib support ], [case "${withval}" in yes) svga=true ;; no) svga=false ;; *) AC_MSG_ERROR(bad value ${withval} for --with-svga) ;; esac],[svga=false]) if test x$svga = xtrue; then AC_CHECK_LIB(vga, vga_getmousetype, SVGA_LIBS="-lvga", [AC_MSG_ERROR([vga not found, SVGALib cannot be built]) svga=false], ) AC_CHECK_LIB(vgagl,gl_getcontext, SVGA_LIBS="${SVGA_LIBS} -lvgagl", [AC_MSG_ERROR([vgagl not found, SVGALib cannot be built]) svga=false], -lvga) fi AC_SUBST(SVGA_LIBS) AM_CONDITIONAL(USE_SVGALIB, test x$svga = xtrue) if test x$opengl = xtrue; then AC_DEFINE(OGL) TARGETS=d2x-ogl else if test x$svga = xtrue; then AC_DEFINE(SVGA) TARGETS=d2x-svga else if test x$ggi = xtrue; then AC_DEFINE(GGI) TARGETS=d2x-ggi else TARGETS=d2x-sdl fi fi fi AC_PATH_PROG(NASM, $NASM_PROG, no) CFLAGS="-I\$(top_srcdir)/input/linux/include -I\$(top_srcdir)/arch/linux/include $CFLAGS" fi dnl Check for network AC_ARG_ENABLE(network, [ --disable-network Do not build network/serial support ],,) if test x$enable_network != xno; then AC_DEFINE(NETWORK) fi AM_CONDITIONAL(USE_NETWORK, test x$enable_network != xno) dnl Check for assembler AC_ARG_ENABLE(assembler, [ --disable-assembler Do not use assembler optimization ],,) if test x$enable_assembler = xno; then AC_DEFINE(NO_ASM) else if test x$NASM = xno; then AC_MSG_ERROR([$NASM not found. Install it or use --disable-assembler]) else NASMFLAGS="-i\$(srcdir)/ $NASMFLAGS" case $host_os in cygwin) NASMFLAGS="-f win32 $NASMFLAGS" ;; msdosdjgpp) NASMFLAGS="-f coff $NASMFLAGS" ;; linux*) NASMFLAGS="-f elf -d__linux__ $NASMFLAGS" ;; *) AC_MSG_ERROR([Assembler not supported for this OS]) esac fi fi AM_CONDITIONAL(USE_ASM, test x$enable_assembler != xno) AC_SUBST(D2X_ARCH_SUBDIRS) AC_SUBST(NASMFLAGS) AC_SUBST(CFLAGS) AC_SUBST(TARGETS) AC_ARG_PROGRAM #libdir='$(shell pwd)/${top_srcdir}/main' AC_OUTPUT( Makefile 2d/Makefile 3d/Makefile arch/Makefile arch/dos/Makefile arch/linux/Makefile arch/sdl/Makefile arch/win32/Makefile cfile/Makefile iff/Makefile input/Makefile main/Makefile maths/Makefile mem/Makefile misc/Makefile sound/Makefile texmap/Makefile video/Makefile )