X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=configure.ac;h=af3a1fa7788bfb6e70cbe0435fcd381c10fc545a;hb=71284101f862a5fd9d9fea85497e3eb8cd7d9720;hp=99ea047d8bad2eb1d6a816bbf1e2e88653895c67;hpb=e4ef00a89d5df7540c0920ff3f49a713eca59847;p=ghc-hetmet.git diff --git a/configure.ac b/configure.ac index 99ea047..af3a1fa 100644 --- a/configure.ac +++ b/configure.ac @@ -105,6 +105,24 @@ alpha*-unknown-freebsd*) HostVendor_CPP='unknown' HostOS_CPP='freebsd' ;; +arm*-linux*) + HostPlatform=arm-unknown-linux # hack again + TargetPlatform=arm-unknown-linux + BuildPlatform=arm-unknown-linux + HostPlatform_CPP='arm_unknown_linux' + HostArch_CPP='arm' + HostVendor_CPP='unknown' + HostOS_CPP='linux' + ;; +hppa*-*-linux*) + HostPlatform=hppa-unknown-linux # hack again + TargetPlatform=hppa-unknown-linux + BuildPlatform=hppa-unknown-linux + HostPlatform_CPP='hppa_unknown_linux' + HostArch_CPP='hppa' + HostVendor_CPP='unknown' + HostOS_CPP='linux' + ;; hppa1.1-hp-hpux*) HostPlatform=hppa1.1-hp-hpux # canonicalise for our purposes (hack) TargetPlatform=hppa1.1-hp-hpux @@ -215,6 +233,15 @@ x86_64-*-linux*) HostVendor_CPP='unknown' HostOS_CPP='linux' ;; +m68k-*-linux*) + HostPlatform=m68k-unknown-linux # hack again + TargetPlatform=m68k-unknown-linux + BuildPlatform=m68k-unknown-linux + HostPlatform_CPP='m68k_unknown_linux' + HostArch_CPP='m68k' + HostVendor_CPP='unknown' + HostOS_CPP='linux' + ;; m68k-next-nextstep2) HostPlatform_CPP='m68k_next_nextstep2' HostArch_CPP='m68k' @@ -263,6 +290,15 @@ m68k-sun-sunos4*) HostVendor_CPP='sun' HostOS_CPP='sunos4' ;; +mips-*-linux*) + HostPlatform=mips-unknown-linux # hack again + TargetPlatform=mips-unknown-linux + BuildPlatform=mips-unknown-linux + HostPlatform_CPP='mips_unknown_linux' + HostArch_CPP='mips' + HostVendor_CPP='unknown' + HostOS_CPP='linux' + ;; mips-dec-ultrix*) HostPlatform_CPP='mips_dec_ultrix' HostArch_CPP='mipsel' # NB a little different @@ -314,6 +350,15 @@ powerpc-unknown-linux*) HostVendor_CPP='unknown' HostOS_CPP='linux' ;; +s390-ibm-linux*) + HostPlatform=s390-ibm-linux + TargetPlatform=s390-ibm-linux #hack + BuildPlatform=s390-ibm-linux #hack + HostPlatform_CPP='s390_ibm_linux' + HostArch_CPP='s390' + HostVendor_CPP='ibm' + HostOS_CPP='linux' + ;; sparc-sun-sunos4*) HostPlatform=sparc-sun-sunos4 TargetPlatform=sparc-sun-sunos4 #hack @@ -574,27 +619,18 @@ AC_ARG_ENABLE(objectio, ) 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. -], -[GhcLibsWithHOpenGL=YES], -[GhcLibsWithHOpenGL=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_ARG_ENABLE([openal], + AC_HELP_STRING([--enable-openal], + [Build OpenAL binding [[default=autodetect]]]), + [GhcLibsWithOpenAL=$enableval], + [GhcLibsWithOpenAL=yes]) -AC_SUBST(GhcLibsWithHOpenGL) +# This is silly! Alas, "YES" and "NO" are currently our standard... +GhcLibsWithOpenAL=`echo $GhcLibsWithOpenAL | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` + +AC_SUBST([GhcLibsWithOpenAL]) dnl ** .NET interop support? dnl -------------------------------------------------------------- @@ -616,6 +652,16 @@ dnl -------------------------------------------------------------- dnl * General configuration checks dnl -------------------------------------------------------------- +dnl ** Can the unix package be built? +dnl -------------------------------------------------------------- + +if test x"$TargetPlatform" = x"i386-unknown-mingw32"; then + GhcLibsWithUnix=NO +else + GhcLibsWithUnix=YES +fi +AC_SUBST([GhcLibsWithUnix]) + dnl ** does #! work? AC_SYS_INTERPRETER() @@ -671,7 +717,7 @@ dnl ** figure out how to do context diffs FP_PROG_CONTEXT_DIFF dnl ** Find find command (for Win32's benefit) -FPTOOLS_FIND_FIND +FP_PROG_FIND dnl ** figure out how to do a BSD-ish install AC_PROG_INSTALL @@ -801,13 +847,13 @@ AC_CHECK_HEADER(readline/readline.h, [HaveReadlineReadlineH=YES], [HaveReadlineR AC_CHECK_HEADER(readline/history.h, [HaveReadlineHistoryH=YES], [HaveReadlineHistoryH=NO]) if test $HaveReadlineReadlineH = YES && test $HaveReadlineHistoryH = YES ; then - HaveReadlineHeaders=YES + GhcLibsWithReadline=YES AC_DEFINE([HAVE_READLINE_HEADERS], [1], [Define to 1 if readline/readline.h and readline/history.h exist.]) else - HaveReadlineHeaders=NO + GhcLibsWithReadline=NO AC_DEFINE([HAVE_READLINE_HEADERS], [0], [Define to 1 if readline/readline.h and readline/history.h exist.]) fi -AC_SUBST(HaveReadlineHeaders) +AC_SUBST(GhcLibsWithReadline) dnl ** check for DOS include files AC_CHECK_HEADERS(dos.h conio.h io.h std.h) @@ -815,12 +861,32 @@ AC_CHECK_HEADERS(dos.h conio.h io.h std.h) 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 -if test $UseQuartzOpenGL = YES ; then - AC_CHECK_HEADERS(OpenGL/gl.h) +fp_save_cppflags="$CPPFLAGS" +CPPFLAGS="$CPPFLAGS $X_CFLAGS" +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" dnl ** check if it is safe to include both and AC_HEADER_TIME @@ -836,7 +902,7 @@ AC_CHECK_HEADER(malloc.h,[AC_CHECK_FUNCS(valloc)]) dnl ** check for POSIX regex HavePosixRegex=NO -AC_CHECK_HEADER(regex.h,[AC_CHECK_FUNC(regcomp, [HavePosixRegex=YES])]) +AC_CHECK_HEADERS(regex.h,[AC_CHECK_FUNC(regcomp, [HavePosixRegex=YES])]) AC_SUBST(HavePosixRegex) dnl ** how do we get a timezone name, and UTC offset ? @@ -938,9 +1004,10 @@ FPTOOLS_CHECK_HTYPE(blkcnt_t) FPTOOLS_CHECK_HTYPE(nlink_t) FPTOOLS_CHECK_HTYPE(ssize_t) FPTOOLS_CHECK_HTYPE(rlim_t) +FPTOOLS_CHECK_HTYPE(wint_t) dnl ** Map OpenGL data types to Haskell types -if test $GhcLibsWithHOpenGL = YES ; then +if test $GhcLibsWithOpenGL = YES ; then FPTOOLS_CHECK_HTYPE(GLboolean) FPTOOLS_CHECK_HTYPE(GLbyte) FPTOOLS_CHECK_HTYPE(GLubyte) @@ -1037,7 +1104,7 @@ AC_CHECK_FUNCS(setenv unsetenv) dnl ** check for specific library functions that we are interested in -AC_CHECK_FUNCS(access ftime getclock getpagesize getrusage gettimeofday mktime mprotect readlink setitimer stat lstat symlink sysconf timelocal times vadvise localtime_r gmtime_r readdir_r getgrgid_r getgrnam_r getpwuid_r getpwnam_r) +AC_CHECK_FUNCS(access ftime getclock getpagesize getrusage gettimeofday mktime mprotect readlink setitimer stat lstat siginterrupt symlink sysconf timelocal times vadvise localtime_r gmtime_r readdir_r getgrgid_r getgrnam_r getpwuid_r getpwnam_r) dnl ** Solaris2 needs additionl flag for getpw*_r() case "$TargetPlatform" in @@ -1078,8 +1145,8 @@ if test $HaveLibMingwEx = YES ; then fi if test "$HaveLibGmp" = "NO"; then -if test "$HostArch_CPP" = "ia64"; then -AC_MSG_ERROR([You need to install libgmp (the in-tree version does not work on IA64).]) +if test "$HostArch_CPP" = "ia64" -o "$HostArch_CPP" = "mipseb" ; then +AC_MSG_ERROR([You need to install libgmp (the in-tree version does not work on IA64 or mips64).]) fi; fi; @@ -1089,7 +1156,11 @@ AC_CHECK_LIB(iberty, xmalloc) AC_CHECK_LIB(bfd, bfd_init) dnl ** check for wide-char classifications -AC_CHECK_HEADERS(wctype.h) +dnl FreeBSD has an emtpy wctype.h, so test one of the affected +dnl functions if it's really there. +AC_CHECK_HEADERS(wctype.h, + [AC_CHECK_FUNCS(iswspace)] +) dnl ** check for readline, for Hugs and hslibs' Readline dnl ncurses supersedes termcap and curses, but for compatibility, @@ -1126,28 +1197,12 @@ else 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 $GhcLibsWithHOpenGL = 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 ################################################################ @@ -1300,25 +1355,15 @@ 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 @@ -1350,6 +1395,8 @@ esac AC_SUBST(LdCmd) FPTOOLS_LD_X +FP_EMPTY_STRUCTS + AC_MSG_CHECKING([for SIGPOLL]) AC_EGREP_CPP(we_have_sigpoll, [#include