1# Process this file with autoconf to produce a configure script. 2# Copyright (C) 1995, 1997, 1998, 1999 Free Software Foundation, Inc. 3# Contributed by Dave Love (d.love@dl.ac.uk). 4# 5#This file is part of GNU Objective C. 6# 7#GNU Objective C is free software; you can redistribute it and/or modify 8#it under the terms of the GNU General Public License as published by 9#the Free Software Foundation; either version 2, or (at your option) 10#any later version. 11# 12#GNU Objective C is distributed in the hope that it will be useful, 13#but WITHOUT ANY WARRANTY; without even the implied warranty of 14#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15#GNU General Public License for more details. 16# 17#You should have received a copy of the GNU General Public License 18#along with GNU Objective C; see the file COPYING. If not, write to 19#the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 20#02111-1307, USA. 21 22AC_PREREQ(2.13) 23AC_INIT(objc/objc.h) 24#AC_CONFIG_HEADER(config.h) 25 26if test "${srcdir}" = "." ; then 27 if test "${with_target_subdir}" != "." ; then 28 topsrcdir=${with_multisrctop}../.. 29 else 30 topsrcdir=${with_multisrctop}.. 31 fi 32else 33 topsrcdir=${srcdir}/.. 34fi 35dnl This is needed for a multilibbed build in the source tree so 36dnl that install-sh and config.sub get found. 37AC_CONFIG_AUX_DIR($topsrcdir) 38 39# If the language specific compiler does not exist, but the "gcc" directory 40# does, we do not build anything. Note, $r is set by the top-level Makefile. 41# Note that when we look for the compiler, we search both with and without 42# extension to handle cross and canadian cross builds. 43compiler_name=cc1obj 44rm -f skip-this-dir 45AC_MSG_CHECKING(if compiler $compiler_name has been built) 46AC_CACHE_VAL(objc_cv_compiler_exists, 47[objc_cv_compiler_exists=yes 48if test -n "$r"; then 49 if test -d "$r"/gcc; then 50 if test -f "$r"/gcc/$compiler_name \ 51 || test -f "$r"/gcc/$compiler_name.exe; then 52 true 53 else 54 objc_cv_compiler_exists=no 55 echo "rm -f config.cache config.log multilib.out" > skip-this-dir 56 fi 57 fi 58fi 59]) 60AC_MSG_RESULT($objc_cv_compiler_exists) 61if test x$objc_cv_compiler_exists = xno 62then 63 rm -f Makefile conftest* confdefs* core 64 exit 0 65fi 66 67dnl Checks for programs. 68# For ObjC we'll set CC to point at the built gcc, but this will get it into 69# the makefiles 70AC_PROG_CC 71 72test "$AR" || AR=ar 73AC_SUBST(AR) 74if test "$RANLIB"; then : 75 AC_SUBST(RANLIB) 76else 77 AC_PROG_RANLIB 78fi 79AC_PROG_INSTALL 80 81dnl Checks for libraries. 82 83dnl Checks for header files. 84# Sanity check for the cross-compilation case: 85AC_CHECK_HEADER(stdio.h,:, 86 [AC_MSG_ERROR([Can't find stdio.h. 87You must have a usable C system for the target already installed, at least 88including headers and, preferably, the library, before you can configure 89the Objective C runtime system. If necessary, install gcc now with 90\`LANGUAGES=c', then the target library, then build with \`LANGUAGES=objc'.])]) 91 92AC_HEADER_STDC 93 94# Determine the name of the GCC thread file. 95 96AC_CACHE_CHECK([for thread file],objc_cv_thread_file, 97[if test -f "$r"/gcc/Makefile 98then 99 objc_cv_thread_file=`grep \^GCC_THREAD_FILE "$r"/gcc/Makefile | awk -F= '{ print $2 }'` 100else 101 AC_MSG_ERROR([not found]) 102fi]) 103OBJC_THREAD_FILE=$objc_cv_thread_file 104AC_SUBST(OBJC_THREAD_FILE) 105 106AC_ARG_ENABLE(objc-gc, 107[ --enable-objc-gc enable the use of Boehm's garbage collector with 108 the GNU Objective-C runtime.], 109if [[[ x$enable_objc_gc = xno ]]]; then 110 OBJC_BOEHM_GC='' 111else 112 OBJC_BOEHM_GC=libobjc_gc.a 113fi, 114OBJC_BOEHM_GC='') 115AC_SUBST(OBJC_BOEHM_GC) 116 117 118# We need multilib support, but only if configuring for the target. 119AC_OUTPUT(Makefile, 120[test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h 121if test -n "$CONFIG_FILES"; then 122 if test -n "${with_target_subdir}"; then 123 # FIXME: We shouldn't need to set ac_file 124 ac_file=Makefile 125 . ${topsrcdir}/config-ml.in 126 fi 127fi], 128srcdir=${srcdir} 129host=${host} 130target=${target} 131with_target_subdir=${with_target_subdir} 132with_multisubdir=${with_multisubdir} 133ac_configure_args="--enable-multilib ${ac_configure_args}" 134CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} 135topsrcdir=${topsrcdir} 136) 137 138dnl Local Variables: 139dnl comment-start: "dnl " 140dnl comment-end: "" 141dnl comment-start-skip: "\\bdnl\\b\\s *" 142dnl End: 143