dnl Process this file with autoconf to produce a configure script. AC_REVISION([$Id: configure.in,v 1.36 2005/04/07 20:48:40 ams Exp $]) AC_PREREQ(2.54) dnl Minimum Autoconf version required. AC_INIT AC_CONFIG_SRCDIR([hurd/hurd_types.h]) dnl File to look for in srcdir. AC_PREFIX_DEFAULT() dnl Default to empty prefix, not /usr/local. AC_CANONICAL_HOST case "$host_os" in gnu*) ;; none) AC_MSG_ERROR([ *** You must specify a host of $host_cpu-gnu or $host_cpu-$host_vendor-gnu *** to configure; you will need to use the same host specification *** to configure other packages for the GNU/Hurd system.]) ;; *) AC_MSG_ERROR([this is the gnu os, host cannot be $host_os *** Host configuration must be \`MACHINE-gnu' or \`MACHINE-VENDOR-gnu'. *** To cross-compile, you must specify both --host and --build; *** for example \`--build=$host --host=$host_cpu-gnu'. *** Run $0 --help for more information.]) ;; esac case "$host_cpu" in alpha*) asm_syntax=alpha ;; arm*) asm_syntax=arm ;; m68k | m680?0) asm_syntax=m68k ;; mips*) asm_syntax=mips ;; i?86) asm_syntax=i386 ;; powerpc*) asm_syntax=ppc ;; sparc64* | ultrasparc*) asm_syntax=sparc64 ;; sparc*) asm_syntax=sparc ;; *) asm_syntax="$host_cpu" ;; esac AC_SUBST(asm_syntax) test -r "$srcdir/libthreads/$asm_syntax/cthreads.h" || { AC_MSG_WARN([unsupported CPU type $host_cpu]) } AC_ARG_ENABLE(profile, [ --disable-profile do not build profiled libraries and programs]) AC_SUBST(enable_profile) define([default_static],['ext2fs,ufs'])dnl AC_ARG_ENABLE(static-progs, [ --enable-static-progs=PROGRAMS... build statically-linked PROGRAM.static versions of (only) the listed programs ]dnl changequote(',')[default_static]changequote([,])) case "$enable_static_progs" in 'no') enable_static_progs= ;; # we got --disable-static '') enable_static_progs=default_static ;; esac # Convert comma/space-separated list into space-separated list. enable_static_progs=`echo "$enable_static_progs" | sed 's/[[, ]][[, ]]*/ /g'` AC_SUBST(enable_static_progs) AC_PROG_INSTALL AC_PROG_AWK AC_PROG_CC # Require GCC. if test x$GCC != xyes; then AC_MSG_ERROR([this code uses GNU C extensions, you must compile with GCC]) fi AC_CHECK_TOOL(LD, ld) AC_CHECK_TOOL(OBJCOPY, objcopy) AC_CHECK_TOOL(AR, ar) AC_CHECK_TOOL(RANLIB, ranlib) AC_CHECK_TOOL(MIG, mig) # Require MiG. if test x${MIG} = x; then AC_MSG_ERROR([ *** You need GNU MiG to compile the GNU Hurd, please see *** http://www.gnu.org/software/hurd/mig.html for further details, or *** download it directly from the main GNU server (ftp.gnu.org) or any *** GNU mirror.]) fi dnl Let these propagate from the environment. AC_SUBST(CFLAGS) AC_SUBST(CPPFLAGS) AC_SUBST(LDFLAGS) # See if there's a separate libcrypt (many systems put crypt there). AC_CHECK_LIB(crypt, crypt, LIBCRYPT=-lcrypt) AC_SUBST(LIBCRYPT) hurd_MIG_RETCODE # See if --version-script is available. AC_CACHE_CHECK(for ld --version-script, hurd_cv_ld_version_script_option, [dnl cat > conftest.c <<\EOF void foobar() {} EOF cat > conftest.map <<\EOF VERS_1 { global: sym; }; VERS_2 { global: sym; } VERS_1; EOF if AC_TRY_COMMAND([eval $ac_compile 1>&AS_MESSAGE_LOG_FD()]) && AC_TRY_COMMAND([${CC-cc} $CFLAGS -shared -o conftest.so conftest.o -nostartfiles -nostdlib -Wl,--version-script,conftest.map 1>&AS_MESSAGE_LOG_FD()]); then hurd_cv_ld_version_script_option=yes else hurd_cv_ld_version_script_option=no fi rm -f conftest*]) # See if libc was built with --enable-libio. AC_CACHE_CHECK([for libio], hurd_cv_libio, AC_TRY_COMPILE([#include #ifndef _STDIO_USES_IOSTREAM # error No libio found. #endif],, hurd_cv_libio=yes, hurd_cv_libio=no)) # The versions of the symbols in libthreads have to match those in # libc.so. Since the symbols in a libc that includes libio will be # versioned differently from the ones in a libc that uses stdio, this # isn't easy to accomplish. Instead we leave things unversioned if # libio isn't found. if test $hurd_cv_libio = yes; then VERSIONING=$hurd_cv_ld_version_script_option else VERSIONING=no fi AC_SUBST(VERSIONING) # Check if libc contains getgrouplist and/or uselocale. AC_CHECK_FUNCS(getgrouplist uselocale) AC_ARG_WITH(parted, dnl [ --without-parted don't try to use GNU Parted libraries], , with_parted=yes) AC_ARG_ENABLE(boot-store-types, [ --enable-boot-store-types=TYPES... list of store types included in statically linked filesystems used for booting])dnl if test -z "$enable_boot_store_types"; then boot_store_types='device remap gunzip bunzip2' # Check for Parted's static store module. if test "x$with_parted" != xno; then save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -static" AC_CHECK_LIB(store_part, store_part_open, [dnl boot_store_types="$boot_store_types part"], , -luuid -lstore) LDFLAGS="$save_LDFLAGS" fi elif test "x$enable_boot_store_types" = xno; then AC_MSG_WARN([you probably wanted --disable-static-progs]) else boot_store_types="$enable_boot_store_types" fi AC_SUBST(boot_store_types)dnl AC_MSG_CHECKING(boot store types) AC_MSG_RESULT($boot_store_types) # Check for ncursesw, which is needed for the console-curses client. hurd_LIB_NCURSESW if test -f ./$ac_unique_file; then # Configuring in source directory; don't create any Makefiles. makefiles= else # We are configuring in a separate build tree. # Create a Makefile in the top-level build directory and # one for each subdirectory Makefile in the source. makefiles="Makeconf:build.mkcf.in \ `cd $srcdir; for file in Makefile */Makefile; do \ echo ${file}:build.mk.in; done`" fi AC_CONFIG_FILES([config.make ${makefiles}]) AC_OUTPUT dnl Local Variables: dnl comment-start: "dnl " dnl comment-end: "" dnl comment-start-skip: "\\bdnl\\b\\s *" dnl compile-command: "autoconf" dnl End: