Commit b15fe269 authored by sof's avatar sof
Browse files

[project @ 1998-08-19 11:23:59 by sof]

Tidied up a bit + added --with-ghc-hc option
parent 8a0b2f9d
dnl == autoconf source for the Glasgow FP tools == dnl == autoconf source for the Glasgow FP tools ==
dnl (grep for '^dnl' to see the outline of this file) dnl (run "grep '^dnl \*' configure.in | sed -e 's/dnl / /g; s/\*\*/ +/g;'"
dnl (or some such) to see the outline of this file)
dnl dnl
dnl * INITIAL SETUP, CHOICE OF PLATFORM(S)
#!/bin/sh
# #
# (c) The AQUA Project, Glasgow University, 1994-1997 # (c) The AQUA Project, Glasgow University, 1994-1998
# #
# Configure script for the Glasgow functional programming tools # Configure script template for the Glasgow functional programming tools
# (created automagically by autoconf...do not edit by hand)
# #
# Do "./configure --help" to see what flags are available. # Process with 'autoconf' to get a working configure script.
# (Better yet, read the documentation!)
# #
# For the generated configure script, do "./configure --help" to
# see what flags are available. (Better yet, read the documentation!)
#
# First off, a distrib sanity check.. # First off, a distrib sanity check..
AC_INIT(mk/config.mk.in) AC_INIT(mk/config.mk.in)
...@@ -21,7 +22,7 @@ AC_INIT(mk/config.mk.in) ...@@ -21,7 +22,7 @@ AC_INIT(mk/config.mk.in)
# #
AC_CONFIG_HEADER(mk/config.h) AC_CONFIG_HEADER(mk/config.h)
# No, we don't do `--srcdir'... # No, semi-sadly, we don't do `--srcdir'...
if test x"$srcdir" != 'x.' ; then if test x"$srcdir" != 'x.' ; then
echo "This configuration does not support the \`--srcdir' option.." echo "This configuration does not support the \`--srcdir' option.."
exit 1 exit 1
...@@ -29,7 +30,7 @@ fi ...@@ -29,7 +30,7 @@ fi
# #
# Remove common automounter nonsense + convert from UNC to DOS style paths # Remove common automounter nonsense + convert from UNC to DOS style paths
# (cygwin32-beta18 for UNC isn't quite there yet.) # (UNC awareness isn't quite there yet for cygwin32-beta18 and consituent tools.)
# #
hardtop=`pwd` hardtop=`pwd`
hardtop=`echo $hardtop | sed 's|^/tmp_mnt.*\(/local/.*\)$|\1|' | sed 's|^/tmp_mnt/|/|' | sed 's|^/grasp_tmp|/local/grasp_tmp|' | sed 's|^//\(.\)/|\1:/|' ` hardtop=`echo $hardtop | sed 's|^/tmp_mnt.*\(/local/.*\)$|\1|' | sed 's|^/tmp_mnt/|/|' | sed 's|^/grasp_tmp|/local/grasp_tmp|' | sed 's|^//\(.\)/|\1:/|' `
...@@ -38,27 +39,19 @@ echo '' ...@@ -38,27 +39,19 @@ echo ''
echo "*** The top of your build tree is: $hardtop" echo "*** The top of your build tree is: $hardtop"
AC_SUBST(hardtop) AC_SUBST(hardtop)
####-------------------------------------------------------------------- dnl--------------------------------------------------------------------
dnl ** choose host(/target/build) platform dnl * Choose host(/target/build) platform
# dnl--------------------------------------------------------------------
# Guess host/target/build platform(s) if necessary.
# dnl Guess host/target/build platform(s) if necessary.
AC_CANONICAL_SYSTEM AC_CANONICAL_SYSTEM
# "$host" defaults to "$target" # "$host" defaults to "$target"
if test "x$host" = xNONE ; then if test "x$host" = xNONE ; then
host=$target host=$target
fi fi
# "$build" defaults to "$host"
#if test "x$build" = xNONE ; then
# build=$host
#else
# echo "This configuration does not support the \`--build' option."
# exit 1
#fi
dnl ** canonicalize platform names dnl ** canonicalize platform names
# Canonicali[sz]e those babies
BuildPlatform=`/bin/sh $srcdir/config.sub $build` || exit 1 BuildPlatform=`/bin/sh $srcdir/config.sub $build` || exit 1
HostPlatform=`/bin/sh $srcdir/config.sub $host` || exit 1 HostPlatform=`/bin/sh $srcdir/config.sub $host` || exit 1
TargetPlatform=`/bin/sh $srcdir/config.sub $target` || exit 1 TargetPlatform=`/bin/sh $srcdir/config.sub $target` || exit 1
...@@ -281,18 +274,29 @@ dnl AC_SUBST(TargetVendor_CPP) ...@@ -281,18 +274,29 @@ dnl AC_SUBST(TargetVendor_CPP)
AC_SUBST(exeext) AC_SUBST(exeext)
dnl * Booting from .hc files? dnl --------------------------------------------------------------
#-------------------------------------------------------------- dnl * Project specific configuration options
AC_ARG_ENABLE(hc-boot, dnl --------------------------------------------------------------
[ --enable-hc-boot dnl What follows is a bunch of options that can either be configured
Boot the Glasgow Haskell Compiler from intermediate .hc files. dnl through command line options to the configure script or by
(This option is mostly of interest to porters.) dnl supplying defns in the build tree's mk/build.mk. Having the option to
dnl use either is considered a Feature.
dnl ** What command to use to compile compiler sources ?
dnl --------------------------------------------------------------
AC_ARG_WITH(ghc-hc,
[ --with-ghc-hc=<haskell compiler>
Use a command different from 'ghc-2.10' to compile up the GHC compiler sources.
(no claims currently made that this will work with a compiler other than a
recent version of GHC, but you could always try...)
], ],
[BootingFromHc=YES], [WithGhcHc="$withval"],
[BootingFromHc=NO] [WithGhcHc="ghc-2.10"]
) )
AC_SUBST(BootingFromHc) AC_SUBST(WithGhcHc)
dnl ** Which gcc to use?
dnl --------------------------------------------------------------
AC_ARG_WITH(gcc, AC_ARG_WITH(gcc,
[ --with-gcc=<gcc command> [ --with-gcc=<gcc command>
Use a different command instead of 'gcc' for the GNU C compiler. Use a different command instead of 'gcc' for the GNU C compiler.
...@@ -302,18 +306,32 @@ AC_ARG_WITH(gcc, ...@@ -302,18 +306,32 @@ AC_ARG_WITH(gcc,
) )
AC_SUBST(WhatGccIsCalled) AC_SUBST(WhatGccIsCalled)
# ------------------------------------------------------------------------- dnl ** Booting from .hc files?
dnl dnl --------------------------------------------------------------
dnl * _GENERAL_ CONFIGURATION CHECKS 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.)
],
[BootingFromHc=YES],
[BootingFromHc=NO]
)
AC_SUBST(BootingFromHc)
dnl --------------------------------------------------------------
dnl End of configure script option section
dnl --------------------------------------------------------------
dnl --------------------------------------------------------------
dnl * General configuration checks
dnl --------------------------------------------------------------
#
dnl ** does #! work? dnl ** does #! work?
#
AC_SYS_INTERPRETER() AC_SYS_INTERPRETER()
#
dnl ** look for `perl', but watch out for version 4.035 dnl ** look for `perl', but watch out for version 4.035
#
AC_PATH_PROG(PerlCmd,perl) AC_PATH_PROG(PerlCmd,perl)
if test -z "$PerlCmd"; then if test -z "$PerlCmd"; then
echo "You must install perl before you can continue" echo "You must install perl before you can continue"
...@@ -323,75 +341,59 @@ else ...@@ -323,75 +341,59 @@ else
FPTOOLS_CHECK_PERL_VERSION FPTOOLS_CHECK_PERL_VERSION
fi fi
# dnl ** does #! path/to/perl work? (sometimes it's too long...)
dnl ** does #!.../perl work? (sometimes it's too long...)
#
FPTOOLS_SHEBANG_PERL FPTOOLS_SHEBANG_PERL
#
dnl ** look for GCC and find out which version dnl ** look for GCC and find out which version
# Figure out which C compiler to use. Gcc is preferred. dnl Figure out which C compiler to use. Gcc is preferred.
# If gcc, make sure it's at least 2.1 dnl If gcc, make sure it's at least 2.1
# dnl
AC_PROG_CC AC_PROG_CC
FPTOOLS_HAVE_GCC FPTOOLS_HAVE_GCC
#
dnl ** figure out how to invoke cpp directly (gcc -E is no good) dnl ** figure out how to invoke cpp directly (gcc -E is no good)
#
AC_PROG_CPP AC_PROG_CPP
FPTOOLS_PROG_GNUCPP FPTOOLS_PROG_GNUCPP
#
dnl ** figure out how to do context diffs dnl ** figure out how to do context diffs
#
FPTOOLS_PROG_DIFF FPTOOLS_PROG_DIFF
#
dnl ** look for a decent parser generator (bison preferred) dnl ** look for a decent parser generator (bison preferred)
# dnl (FPTOOLS_PROG_YACCY is AC_PROG_YACC, but with some extra testing
# (FPTOOLS_PROG_YACCY is AC_PROG_YACC, but with some extra testing dnl on the suitability of the 'yacc' returned.)
# on the suitability of the 'yacc' returned.)
FPTOOLS_PROG_YACCY FPTOOLS_PROG_YACCY
#
dnl ** Find lex command (lex or flex) and library (-ll or -lfl) dnl ** Find lex command (lex or flex) and library (-ll or -lfl)
# dnl ( not that we care about the latter, see mk/config.mk.in )
AC_PROG_LEX AC_PROG_LEX
#
dnl ** figure out how to do a BSD-ish install dnl ** figure out how to do a BSD-ish install
#
AC_PROG_INSTALL AC_PROG_INSTALL
#
dnl ** how to invoke `ar' and `ranlib' dnl ** how to invoke `ar' and `ranlib'
#
FPTOOLS_PROG_AR_AND_RANLIB FPTOOLS_PROG_AR_AND_RANLIB
#
#
dnl ** Check to see whether ln -s works dnl ** Check to see whether ln -s works
#
AC_PROG_LN_S AC_PROG_LN_S
#
dnl ** Find the path to sed ** dnl ** Find the path to sed
#
AC_PATH_PROG(SedCmd,sed) AC_PATH_PROG(SedCmd,sed)
#
dnl ** check for time command ** dnl ** check for time command
AC_PATH_PROG(TimeCmd,time) AC_PATH_PROG(TimeCmd,time)
#
dnl ** check for tar ** dnl ** check for tar
# dnl if GNU tar is named gtar, look for it first.
# if GNU tar is named gtar, look for it first.
#
AC_PATH_PROGS(TarCmd,gtar tar,tar) AC_PATH_PROGS(TarCmd,gtar tar,tar)
# dnl ** check for gzip/compress
dnl ** check for gzip/compress **
AC_PATH_PROGS(CompressCmd,gzip compress,gzip) AC_PATH_PROGS(CompressCmd,gzip compress,gzip)
compress_nm=`basename $CompressCmd` compress_nm=`basename $CompressCmd`
...@@ -404,47 +406,39 @@ fi ...@@ -404,47 +406,39 @@ fi
AC_SUBST(CompressCmd) AC_SUBST(CompressCmd)
AC_SUBST(CompressSuffix) AC_SUBST(CompressSuffix)
dnl
dnl ** check for installed happy binary + version dnl ** check for installed happy binary + version
dnl (don't do it if we're booting from .hc files though.) dnl (don't do it if we're booting from .hc files though.)
if (test "$BootingFromHc" = "NO"); then if (test "$BootingFromHc" = "NO"); then
FPTOOLS_HAPPY FPTOOLS_HAPPY
fi; fi;
#### program checking section ends here #### dnl --------------------------------------------------
dnl ### program checking section ends here ###
dnl --------------------------------------------------
####-------------------------------------------------- dnl --------------------------------------------------
#### checking the state of the local header files and syscalls #### dnl * Platform header file and syscall feature tests
dnl ### checking the state of the local header files and syscalls ###
#
dnl ** check for full ANSI header (.h) files dnl ** check for full ANSI header (.h) files
#
AC_HEADER_STDC AC_HEADER_STDC
#
dnl ** check for specific header (.h) files that we are interested in dnl ** check for specific header (.h) files that we are interested in
#
AC_CHECK_HEADERS(dirent.h fcntl.h grp.h malloc.h memory.h nlist.h pwd.h siginfo.h signal.h stdlib.h string.h sys/fault.h sys/file.h sys/mman.h sys/param.h sys/procfs.h sys/resource.h sys/signal.h sys/socket.h netinet/tcp.h sys/stat.h sys/syscall.h sys/time.h sys/timeb.h sys/timers.h sys/times.h sys/types.h sys/utsname.h sys/vadvise.h sys/wait.h termios.h time.h types.h unistd.h utime.h vfork.h readline/readline.h bfd.h) AC_CHECK_HEADERS(dirent.h fcntl.h grp.h malloc.h memory.h nlist.h pwd.h siginfo.h signal.h stdlib.h string.h sys/fault.h sys/file.h sys/mman.h sys/param.h sys/procfs.h sys/resource.h sys/signal.h sys/socket.h netinet/tcp.h sys/stat.h sys/syscall.h sys/time.h sys/timeb.h sys/timers.h sys/times.h sys/types.h sys/utsname.h sys/vadvise.h sys/wait.h termios.h time.h types.h unistd.h utime.h vfork.h readline/readline.h bfd.h)
#
dnl ** check if it is safe to include both <time.h> and <sys/time.h> dnl ** check if it is safe to include both <time.h> and <sys/time.h>
#
AC_HEADER_TIME AC_HEADER_TIME
#
dnl ** how do we get a timezone name, and UTC offset ? dnl ** how do we get a timezone name, and UTC offset ?
#
AC_STRUCT_TIMEZONE AC_STRUCT_TIMEZONE
#
dnl ** what's the type of timezone? dnl ** what's the type of timezone?
FPTOOLS_TYPE_TIMEZONE FPTOOLS_TYPE_TIMEZONE
#
dnl ** do we have altzone? dnl ** do we have altzone?
FPTOOLS_ALTZONE FPTOOLS_ALTZONE
dnl ** does struct stat contain st_blksize? dnl ** does struct stat contain st_blksize?
#
AC_STRUCT_ST_BLKSIZE AC_STRUCT_ST_BLKSIZE
dnl ** what are the sizes of various types dnl ** what are the sizes of various types
...@@ -467,42 +461,39 @@ FPTOOLS_C_LONG_LONG ...@@ -467,42 +461,39 @@ FPTOOLS_C_LONG_LONG
dnl ** can we open files in binary mode? dnl ** can we open files in binary mode?
FPTOOLS_O_BINARY FPTOOLS_O_BINARY
#
dnl ** check for specific library functions that we are interested in dnl ** check for specific library functions that we are interested in
#
AC_CHECK_FUNCS(access ftime getclock getpagesize getrusage gettimeofday mktime mprotect setitimer stat sysconf timelocal times vadvise vfork) AC_CHECK_FUNCS(access ftime getclock getpagesize getrusage gettimeofday mktime mprotect setitimer stat sysconf timelocal times vadvise vfork)
# dnl ** check whether this machine has gmp2 installed
dnl ** check whether this machine has GMP 2.0 installed
#
AC_CHECK_LIB(gmp, mpz_fdiv_qr, HaveLibGmp=YES; LibGmp=gmp, AC_CHECK_LIB(gmp, mpz_fdiv_qr, HaveLibGmp=YES; LibGmp=gmp,
AC_CHECK_LIB(gmp2, mpz_fdiv_qr, HaveLibGmp=YES; LibGmp=gmp2, AC_CHECK_LIB(gmp2, mpz_fdiv_qr, HaveLibGmp=YES; LibGmp=gmp2,
HaveLibGmp=No; LibGmp=not-installed)) HaveLibGmp=No; LibGmp=not-installed))
AC_SUBST(HaveLibGmp) AC_SUBST(HaveLibGmp)
AC_SUBST(LibGmp) AC_SUBST(LibGmp)
#
dnl ** check whether this machine has BFD and liberty installed (used for debugging) dnl ** check whether this machine has BFD and liberty installed (used for debugging)
dnl ** the order of these tests matters: bfd needs liberty dnl the order of these tests matters: bfd needs liberty
#
AC_CHECK_LIB(iberty, xmalloc) AC_CHECK_LIB(iberty, xmalloc)
AC_CHECK_LIB(bfd, bfd_init) AC_CHECK_LIB(bfd, bfd_init)
#
# Misc dnl --------------------------------------------------
# dnl * Miscellaneous feature tests
dnl --------------------------------------------------
dnl ** can we get alloca? dnl ** can we get alloca?
AC_FUNC_ALLOCA AC_FUNC_ALLOCA
dnl ** determine whether or not const works dnl ** determine whether or not const works
AC_C_CONST AC_C_CONST
dnl ** are we big endian? dnl ** are we big endian?
AC_C_BIGENDIAN AC_C_BIGENDIAN
dnl ** determine the type of signal()
dnl ** determine the return type of signal()
AC_TYPE_SIGNAL AC_TYPE_SIGNAL
#
dnl ** check for leading underscores in symbol names dnl ** check for leading underscores in symbol names
#
FPTOOLS_UNDERSCORE FPTOOLS_UNDERSCORE
AC_OUTPUT(mk/config.mk, echo timestamp > mk/stamp-h ) AC_OUTPUT(mk/config.mk, echo timestamp > mk/stamp-h )
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment