X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=configure.ac;h=586d33c098ffdcd88d549bbd5505aebf0bfa37f8;hb=50afb3c579d9eba76f4433881f3a8c67c11fa8bc;hp=f25589c792134e1697a257b164e69b1a3d8d2014;hpb=37fe79750c2a2f72567e0655b697eaab3ad720e8;p=ghc-hetmet.git diff --git a/configure.ac b/configure.ac index f25589c..586d33c 100644 --- a/configure.ac +++ b/configure.ac @@ -105,6 +105,24 @@ alpha*-unknown-freebsd*) HostVendor_CPP='unknown' HostOS_CPP='freebsd' ;; +alpha*-unknown-openbsd*) + HostPlatform=alpha-unknown-openbsd + TargetPlatform=alpha-unknown-openbsd + BuildPlatform=alpha-unknown-openbsd + HostPlatform_CPP='alpha_unknown_openbsd' + HostArch_CPP='alpha' + HostVendor_CPP='unknown' + HostOS_CPP='openbsd' + ;; +amd64-*-openbsd*|x86_64-*-openbsd*) + HostPlatform=x86_64-unknown-openbsd + TargetPlatform=x86_64-unknown-openbsd + BuildPlatform=x86_64-unknown-openbsd + HostPlatform_CPP='x86_64_unknown_openbsd' + HostArch_CPP='x86_64' + HostVendor_CPP='unknown' + HostOS_CPP='openbsd' + ;; arm*-linux*) HostPlatform=arm-unknown-linux # hack again TargetPlatform=arm-unknown-linux @@ -114,6 +132,15 @@ arm*-linux*) HostVendor_CPP='unknown' HostOS_CPP='linux' ;; +arm*-openbsd*) + HostPlatform=arm-unknown-openbsd + TargetPlatform=arm-unknown-openbsd + BuildPlatform=arm-unknown-openbsd + HostPlatform_CPP='arm_unknown_openbsd' + HostArch_CPP='arm' + HostVendor_CPP='unknown' + HostOS_CPP='openbsd' + ;; hppa*-*-linux*) HostPlatform=hppa-unknown-linux # hack again TargetPlatform=hppa-unknown-linux @@ -123,6 +150,15 @@ hppa*-*-linux*) HostVendor_CPP='unknown' HostOS_CPP='linux' ;; +hppa*-*-openbsd*) + HostPlatform=hppa-unknown-openbsd # hack again + TargetPlatform=hppa-unknown-openbsd + BuildPlatform=hppa-unknown-openbsd + HostPlatform_CPP='hppa_unknown_openbsd' + HostArch_CPP='hppa' + HostVendor_CPP='unknown' + HostOS_CPP='openbsd' + ;; hppa1.1-hp-hpux*) HostPlatform=hppa1.1-hp-hpux # canonicalise for our purposes (hack) TargetPlatform=hppa1.1-hp-hpux @@ -290,6 +326,15 @@ m68k-sun-sunos4*) HostVendor_CPP='sun' HostOS_CPP='sunos4' ;; +m88k-*-openbsd*) + HostPlatform=m88k-unknown-openbsd + TargetPlatform=m88k-unknown-openbsd + BuildPlatform=m88k-unknown-openbsd + HostPlatform_CPP='m88k_unknown_openbsd' + HostArch_CPP='m88k' + HostVendor_CPP='unknown' + HostOS_CPP='openbsd' + ;; mips-*-linux*) HostPlatform=mips-unknown-linux # hack again TargetPlatform=mips-unknown-linux @@ -350,6 +395,15 @@ powerpc-unknown-linux*) HostVendor_CPP='unknown' HostOS_CPP='linux' ;; +powerpc-unknown-openbsd*) + HostPlatform=powerpc-unknown-openbsd + TargetPlatform=powerpc-unknown-openbsd + BuildPlatform=powerpc-unknown-openbsd + HostPlatform_CPP='powerpc_unknown_openbsd' + HostArch_CPP='powerpc' + HostVendor_CPP='unknown' + HostOS_CPP='openbsd' + ;; s390-ibm-linux*) HostPlatform=s390-ibm-linux TargetPlatform=s390-ibm-linux #hack @@ -395,6 +449,24 @@ sparc-*-openbsd*) HostVendor_CPP='unknown' HostOS_CPP='openbsd' ;; +sparc64-*-openbsd*) + HostPlatform=sparc64-unknown-openbsd + TargetPlatform=sparc64-unknown-openbsd + BuildPlatform=sparc64-unknown-openbsd + HostPlatform_CPP='sparc64_unknown_openbsd' + HostArch_CPP='sparc64' + HostVendor_CPP='unknown' + HostOS_CPP='openbsd' + ;; +vax-*-openbsd*) + HostPlatform=vax-unknown-openbsd + TargetPlatform=vax-unknown-openbsd + BuildPlatform=vax-unknown-openbsd + HostPlatform_CPP='vax_unknown_openbsd' + HostArch_CPP='vax' + HostVendor_CPP='unknown' + HostOS_CPP='openbsd' + ;; *) echo "Unrecognised platform: $HostPlatform" exit 1 @@ -448,15 +520,32 @@ dnl Remove common automounter nonsense dnl hardtop=`echo $hardtop | sed 's|^/tmp_mnt.*\(/local/.*\)$|\1|' | sed 's|^/tmp_mnt/|/|' | sed 's|^//\(.\)/|\1:/|' ` -dnl Find 'hardtop_plat', the native format for 'hardtop' (i.e., right kind of \dnl slashes on a Win32 box, but with b-slashes being escaped). +dnl Find 'hardtop_plat', the native format for 'hardtop' +dnl (i.e., right kind of \dnl slashes on a Win32 box, but with b-slashes being escaped). +dnl +dnl Note OSTYPE: On Cygwin we need to use 'cygpath' to convert /cygdrive/c/foo to c:/foo +dnl but we must not do that if we aren't building using Cygwin (notably msys), +dnl because cygpath doesn't exist. It seems that 'bash' sets OSTYPE to 'cygwin' +dnl or 'msys' respectively, but cygwin's 'sh' does not. So we hackily assume +dnl that if the shell hasn't set it to 'msys' then we must be in Cygwin. Sigh. +dnl +dnl The Right Thing is probably to test $BuildPlatform instead, but we are sloppy +dnl about setting that correctly at the moment, so we just work around for now. dnl +dnl The quotes round "$(OSTYPE)" are essential, for the Cygwin-sh case where OSTYPE +dnl is not set. case $HostPlatform in i386-unknown-mingw32 | i386-unknown-cygwin32) - # convert $hardtop to a path that mingw will understand too - cyghardtop=${hardtop} - hardtop=`cygpath -w ${cyghardtop} | sed -e 's@\\\\@/@g'` - hardtop_plat=`cygpath -w ${cyghardtop} | sed -e 's@\\\\@\\\\\\\\@g'` - ;; + if test "${OSTYPE}" != "msys" + then + # convert $hardtop to a path that mingw will understand too + cyghardtop=${hardtop} + hardtop=`cygpath -w ${cyghardtop} | sed -e 's@\\\\@/@g'` + hardtop_plat=`cygpath -w ${cyghardtop} | sed -e 's@\\\\@\\\\\\\\@g'` + else + hardtop_plat=${hardtop} + fi + ;; *) hardtop_plat=${hardtop} ;; @@ -515,9 +604,13 @@ AC_ARG_WITH(gcc, [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 :/path/to/gcc - withval=`cygpath -w ${withval} | sed -e 's@\\\\@/@g' ` + if test "x$HostPlatform" = "xi386-unknown-mingw32" + then + if test "${OSTYPE}" != "msys" + then + # Canonicalise to :/path/to/gcc + withval=`cygpath -w ${withval} | sed -e 's@\\\\@/@g' ` + fi fi; CC="$withval"], [WhatGccIsCalled="gcc"] @@ -568,11 +661,11 @@ if test "$BootingFromHc" = "NO" -a "$WithGhc" = "" -a -d "$srcdir/ghc"; then AC_MSG_ERROR([GHC is required unless bootstrapping from .hc files.]) fi; -dnl ** Enable multi-thread friendly RTS? +dnl ** --enable-threaded-rts (not used any more) dnl -------------------------------------------------------------- AC_ARG_ENABLE(threaded-rts, [AC_HELP_STRING([--enable-threaded-rts], -[Support better interop with OS threads. [default=no]])], +[DEPRECATED (backwards compatibility only). [default=no]])], [ if test x"$enableval" = x"yes"; then ThreadedRts=YES else @@ -743,7 +836,8 @@ dnl If you can run configure, you certainly have /bin/sh AC_DEFINE([HAVE_BIN_SH], [1], [Define to 1 if you have /bin/sh.]) dnl ** how to invoke `ar' and `ranlib' -FPTOOLS_PROG_AR_AND_RANLIB +FP_PROG_AR_NEEDS_RANLIB +FP_PROG_AR_SUPPORTS_INPUT dnl ** Check to see whether ln -s works AC_PROG_LN_S @@ -760,29 +854,10 @@ dnl ** check for tar dnl if GNU tar is named gtar, look for it first. AC_PATH_PROGS(TarCmd,gtar tar,tar) -dnl ** check for jade/openjade & determine a working catalog -AC_PATH_PROGS(JadeCmd,openjade jade,jade) -FPTOOLS_DOCBOOK_CATALOG(Catalog, $JadeCmd, docs/fptools-both.dsl, - /etc/sgml/catalog /etc/sgml.catalog /usr/share/sgml/CATALOG.docbkdsl /usr/local/share/sgml/catalog glafp-utils/docbook/CATALOG*) -if test -z "$Catalog"; then - AC_MSG_RESULT([Warning: You will not be able to build the documentation.]) -fi -case $Catalog in - yes) # assume it is provided by other means (e.g., SGML_CATALOG_FILES env var). - Catalog= - ;; - glafp*) - case $HostOS_CPP in - mingw32) - Catalog=`cygpath -w $hardtop/$Catalog` - ;; - *) Catalog=$hardtop/$Catalog - ;; - esac - ;; -esac -AC_SUBST(Catalog) - +dnl ** check for DocBook toolchain +FP_CHECK_DOCBOOK_DTD +FP_DIR_DOCBOOK_XSL([/usr/share/xml/docbook/stylesheet/nwalsh/current /usr/share/sgml/docbook/docbook-xsl-stylesheets* /usr/share/sgml/docbook/xsl-stylesheets* /opt/kde?/share/apps/ksgmltools2/docbook/xsl /usr/share/docbook-xsl /usr/share/sgml/docbkxsl]) +FP_PROG_FO_PROCESSOR dnl ** check for ghc-pkg command changequote(, )dnl @@ -933,7 +1008,7 @@ AC_CHECK_HEADER(malloc.h,[AC_CHECK_FUNCS(valloc)]) dnl ** check for POSIX regex HavePosixRegex=NO -AC_CHECK_HEADERS(regex.h,[AC_CHECK_FUNC(regcomp, [HavePosixRegex=YES])]) +AC_CHECK_HEADERS(regex.h,[AC_CHECK_FUNCS(regcomp, [HavePosixRegex=YES])]) AC_SUBST(HavePosixRegex) dnl ** how do we get a timezone name, and UTC offset ? @@ -1198,12 +1273,19 @@ else fi dnl ** check for math library -AC_CHECK_LIB([m], [main], [LIBM="-lm"], [LIBM=]) +AC_CHECK_LIB([m], [atan], [LIBS="-lm $LIBS"; LIBM="-lm"], [LIBM=]) AC_SUBST([LIBM]) dnl ** check for X Window System AC_PATH_XTRA() +if test "$no_x" = yes; then + GhcLibsWithX11=NO +else + GhcLibsWithX11=YES +fi +AC_SUBST([GhcLibsWithX11]) + dnl ################################################################ dnl Check for libraries dnl ################################################################ @@ -1309,8 +1391,6 @@ else AC_SUBST(HaveRtldNow) fi -FPTOOLS_CHECK_LIB_NOWARN(m, atan) - dnl ---------- usleep ---------- dnl --- stolen from guile configure --- dnl --- FIXME: /usr/include/unistd.h can't be right? @@ -1388,7 +1468,13 @@ FPTOOLS_UNDERSCORE dnl ** check for ld, and whether ld has -x option AC_PATH_PROG(LdCmdRaw, ld) case $HostOS_CPP in - mingw32) LdCmd=`cygpath -w ${LdCmdRaw} | sed -e 's@\\\\@/@g' ` + mingw32) + if test "${OSTYPE}" == "msys" + then + LdCmd=${LdCmdRaw} + else + LdCmd=`cygpath -w ${LdCmdRaw} | sed -e 's@\\\\@/@g' ` + fi ;; *) LdCmd=${LdCmdRaw} ;; @@ -1398,6 +1484,10 @@ FPTOOLS_LD_X FP_EMPTY_STRUCTS +dnl ** Check for idiosyncracies in some mingw impls of directory handling. +FP_READDIR_EOF_ERRNO +FP_DIRENT_FLAT_LAYOUT + AC_MSG_CHECKING([for SIGPOLL]) AC_EGREP_CPP(we_have_sigpoll, [#include