dnl --------------------------------------------------------------
AC_ARG_WITH(ghc,
-[ --with-ghc=<haskell compiler>
- Use a command different from 'ghc' to compile GHC-specific Haskell code
- (including GHC itself).
-],
+[AC_HELP_STRING([--with-ghc=ARG],
+ [Use ARG as the path to GHC [default=autodetect]])],
[ WithGhc="$withval" ],
[
if test "$GHC" = ""; then
AC_PATH_PROG(GHC,ghc)
fi
WithGhc=$GHC
-]
-)
+])
AC_SUBST(WithGhc)
AC_ARG_WITH(hc,
-[ --with-hc=<haskell compiler>
- Use a command different from 'ghc' to compile generic Haskell code.
-],
+[AC_HELP_STRING([--with-hc=ARG],
+ [Use ARG as the path to the compiler for compiling ordinary
+ Haskell code (default= value of --with-ghc)])],
[WithHc="$withval"],
[WithHc=$WithGhc]
)
dnl ** Which gcc to use?
dnl --------------------------------------------------------------
AC_ARG_WITH(gcc,
-[ --with-gcc=<gcc command>
- Use a different command instead of 'gcc' for the GNU C compiler.
-],
+[AC_HELP_STRING([--with-gcc=ARG],
+ [Use ARG as the path to GCC [default=autodetect]])],
[WhatGccIsCalled="$withval"
if test "x$HostPlatform" = "xi386-unknown-mingw32"; then
# Canonicalise to <drive>:/path/to/gcc
dnl ** Booting from .hc files?
dnl --------------------------------------------------------------
AC_ARG_ENABLE(hc-boot,
-[ --enable-hc-boot
- Boot the Glasgow Haskell Compiler from intermediate .hc files.
- (This option is mostly of interest to porters.)
+[AC_HELP_STRING([--enable-hc-boot],
+[Boot the Glasgow Haskell Compiler from intermediate .hc files.
+ (This option is mostly of interest to porters.) [default=no]])],
+[ if test x"$enableval" = x"yes"; then
+ BootingFromHc=YES
+ else
+ BootingFromHc=NO
+ fi
],
-[BootingFromHc=YES],
[BootingFromHc=NO]
)
AC_SUBST(BootingFromHc)
dnl ** Booting from unregisterised .hc files?
dnl --------------------------------------------------------------
AC_ARG_ENABLE(hc-boot-unregisterised,
-[ --enable-hc-boot-unregisterised
- With --enable-hc-boot, treat the intermediate .hc files as
- unregisterised rather than registerised code.
- (This option is mostly of interest to porters.)
+[AC_HELP_STRING([--enable-hc-boot-unregisterised],
+[ With --enable-hc-boot, treat the intermediate .hc files as
+ unregisterised rather than registerised code.
+ (This option is mostly of interest to porters.) [default=no]])],
+[ if test x"$enableval" = x"yes"; then
+ BootingFromUnregisterisedHc=YES
+ else
+ BootingFromUnregisterisedHc=NO
+ fi
],
-[BootingFromUnregisterisedHc=YES],
[BootingFromUnregisterisedHc=NO]
)
AC_SUBST(BootingFromUnregisterisedHc)
dnl ** Enable multi-thread friendly RTS?
dnl --------------------------------------------------------------
AC_ARG_ENABLE(threaded-rts,
-[ --enable-threaded-rts
- Support better interop with OS threads.
+[AC_HELP_STRING([--enable-threaded-rts],
+[Support better interop with OS threads. [default=no]])],
+[ if test x"$enableval" = x"yes"; then
+ ThreadedRts=YES
+ else
+ ThreadedRts=NO
+ fi
],
-[ThreadedRts=YES],
[ThreadedRts=NO]
)
AC_SUBST(ThreadedRts)
dnl ** Enable the building of the ObjectIO?
dnl --------------------------------------------------------------
AC_ARG_ENABLE(objectio,
-[ --enable-objectio
- Build ObjectIO, a portable GUI library for Haskell.
+[AC_HELP_STRING([--enable-objectio],
+[Build ObjectIO, a portable GUI library for Haskell. [default=no]])],
+[ if test x"$enableval" = x"yes"; then
+ GhcLibsWithObjectIO=YES
+ else
+ GhcLibsWithObjectIO=NO
+ fi
],
-[GhcLibsWithObjectIO=YES],
[GhcLibsWithObjectIO=NO]
)
AC_SUBST(GhcLibsWithObjectIO)
-dnl ** Enable the building of the OpenGL/GLUT binding in hslibs?
+dnl ** Enable the building of the OpenAL binding?
dnl --------------------------------------------------------------
-AC_ARG_ENABLE(hopengl,
-[ --enable-hopengl
- Build HOpenGL, a Haskell binding for OpenGL/GLUT.
- On Mac OS X, use --enable-hopengl=x11 to use X11 instead
- of the "native" libraries.
-],
-[GhcLibsWithOpenGL=YES; GhcLibsWithGLUT=YES],
-[GhcLibsWithOpenGL=NO; GhcLibsWithGLUT=NO]
-)
-UseQuartzOpenGL=NO
-if test x"$TargetOS_CPP" = x"darwin"; then
- if test x"$enable_hopengl" != x"x11"; then
- AC_DEFINE([USE_QUARTZ_OPENGL], [1],
- [Define to 1 if native OpenGL should be used on Mac OS X])
- UseQuartzOpenGL=YES
- fi
-fi
-
-AC_SUBST([GhcLibsWithOpenGL])
-AC_SUBST([GhcLibsWithGLUT])
+AC_ARG_ENABLE([openal],
+ AC_HELP_STRING([--enable-openal],
+ [Build OpenAL binding [[default=autodetect]]]),
+ [ if test x"$enableval" = x"yes"; then
+ GhcLibsWithOpenAL=YES
+ else
+ GhcLibsWithOpenAL=NO
+ fi
+ ],
+ [GhcLibsWithOpenAL=yes])
+
+AC_SUBST([GhcLibsWithOpenAL])
dnl ** .NET interop support?
dnl --------------------------------------------------------------
AC_ARG_ENABLE(dotnet,
-[ --enable-dotnet
- Build .NET interop layer.
-],
-[DotnetSupport=YES; AC_DEFINE([WANT_DOTNET_SUPPORT], [1], [Define to 1 if you want to include .NET interop support.])],
+[AC_HELP_STRING([--enable-dotnet],
+[Build .NET interop layer. [default=no]])],
+[ if test x"$enableval" = x"yes"; then
+ DotnetSupport=YES; AC_DEFINE([WANT_DOTNET_SUPPORT], [1], [Define to 1 if you want to include .NET interop support.])
+ else
+ DotnetSupport=NO
+ fi],
[DotnetSupport=NO]
)
AC_SUBST(DotnetSupport)
fi
AC_ARG_WITH(greencard,
-[ --with-greencard=<greencard compiler>
- Use a command different from 'greencard' to compile GreenCard files
-],
+[AC_HELP_STRING([--with-greencard=ARG],
+ [Use ARG as the path to greencard [default=autodetct]])],
[
GreenCardCmd=$withval;
FPTOOLS_GREENCARD(3.00)
)
AC_ARG_ENABLE(src-tree-happy,
-[ --enable-src-tree-happy
- Build and use source tree (fptools/happy) version of Happy.
+[AC_HELP_STRING([--enable-src-tree-happy],
+ [Build and use source tree (fptools/happy) version of Happy.
+ [default=autodetect]])],
+[ if test x"$enableval" = x"yes"; then
+ UseSrcTreeHappy=YES
+ else
+ UseSrcTreeHappy=NO
+ fi
],
-[UseSrcTreeHappy=YES],
[UseSrcTreeHappy=NO]
)
dnl ** check for installed happy binary + version
fi;
AC_ARG_ENABLE(src-tree-haddock,
-[ --enable-src-tree-haddock
- Build and use source tree (fptools/haddock) version of Haddock.
+[AC_HELP_STRING([--enable-src-tree-haddock],
+ [Build and use source tree (fptools/haddock) version of Haddock.
+ [default=autodetect]])],
+[ if test x"$enableval" = x"yes"; then
+ UseSrcTreeHaddock=YES
+ else
+ UseSrcTreeHaddock=NO
+ fi
],
-[UseSrcTreeHaddock=YES],
[UseSrcTreeHaddock=NO]
)
dnl ** check for installed haddock
FPTOOLS_HADDOCK
AC_ARG_ENABLE(src-tree-alex,
-[ --enable-src-tree-alex
- Build and use source tree (fptools/alex) version of Alex.
+[AC_HELP_STRING([--enable-src-tree-alex],
+ [Build and use source tree (fptools/alex) version of Alex.
+ [default=autodetect]])],
+[ if test x"$enableval" = x"yes"; then
+ UseSrcTreeAlex=YES
+ else
+ UseSrcTreeAlex=NO
+ fi
],
-[UseSrcTreeAlex=YES],
[UseSrcTreeAlex=NO]
)
dnl ** check for installed alex binary + version
dnl ** check for Windows include files
AC_CHECK_HEADERS(windows.h)
+dnl ** check for OpenGL/GLUT include paths and libraries
+FP_CHECK_GLUT
+
+if test x"$no_GLU" = xyes; then
+ GhcLibsWithOpenGL=NO
+else
+ GhcLibsWithOpenGL=YES
+fi
+AC_SUBST([GhcLibsWithOpenGL])
+
+if test x"$no_GLUT" = xyes; then
+ GhcLibsWithGLUT=NO
+else
+ GhcLibsWithGLUT=YES
+fi
+AC_SUBST([GhcLibsWithGLUT])
+
dnl ** check for OpenGL include files
fp_save_cppflags="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $X_CFLAGS"
-if test $UseQuartzOpenGL = YES ; then
- AC_CHECK_HEADERS(OpenGL/gl.h)
+if test x"$use_quartz_opengl" = xyes; then
+ AC_CHECK_HEADERS([OpenGL/gl.h])
else
- AC_CHECK_HEADERS(GL/gl.h)
+ AC_CHECK_HEADERS([GL/gl.h])
fi
CPPFLAGS="$fp_save_cppflags"
fi
dnl ** check for math library
-FPTOOLS_CHECK_LIBM()
-AC_SUBST(LIBM)
+AC_CHECK_LIB([m], [main], [LIBM="-lm"], [LIBM=])
+AC_SUBST([LIBM])
dnl ** check for X Window System
AC_PATH_XTRA()
-dnl ** check for OpenGL/GLUT/GLX include paths and libraries
-if test $GhcLibsWithOpenGL = YES ; then
- if test $UseQuartzOpenGL = YES ; then
- dnl Take a shortcut for Mac OS X native OpenGL:
- dnl It's in a non-standard location, but it's always there
- GL_CFLAGS=
- GL_LIBS=
- GLUT_LIBS=
- AC_SUBST(GL_CFLAGS)
- AC_SUBST(GL_LIBS)
- AC_SUBST(GLUT_LIBS)
- else
- FPTOOLS_HAVE_OPENGL
- fi
-fi
-
dnl ################################################################
dnl Check for libraries
dnl ################################################################
dnl * test for GTK+
dnl --------------------------------------------------
-AC_PATH_PROGS(GTK_CONFIG, gtk-config gtk12-config)
-if test "$GTK_CONFIG" != ""; then
- AC_CACHE_CHECK([for version of GTK+], fptools_cv_gtk_version, [
- fptools_cv_gtk_version=`$GTK_CONFIG --version`
- ])
- GTK_VERSION=$fptools_cv_gtk_version
-else
- GTK_VERSION=
+AC_PATH_PROGS([GTK_CONFIG], [gtk-config gtk12-config])
+if test -n "$GTK_CONFIG"; then
+ AC_CACHE_CHECK([for version of GTK+], [fp_cv_gtk_version],
+ [fp_cv_gtk_version=`$GTK_CONFIG --version`])
+ FP_COMPARE_VERSIONS([$fp_cv_gtk_version], [-lt], [1.2],
+ [AC_MSG_WARN([GTK+ not usable, need at least version 1.2])
+ GTK_CONFIG=])
fi
-
-case $fptools_cv_gtk_version in
- 1.[[23]].*) ;;
- *) AC_MSG_WARN([GTK+ not usable; need at least version 1.2])
- GTK_CONFIG=
- ;;
-esac
-
-AC_SUBST(GTK_CONFIG)
-AC_SUBST(GTK_VERSION)
+AC_SUBST([GTK_CONFIG])
dnl --------------------------------------------------
dnl * Miscellaneous feature tests