blob: 061501b642cfbb1e474408f84483bf647a847ca0 [file] [log] [blame]
Ben Ellistonbce1b481998-09-30 02:13:15 +00001# Process this file with autoconf to produce a configure script.
2# Copyright (C) 1995, 1997, 1998 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
Kaveh R. Ghazi223a8841998-11-23 13:51:40 +000022AC_PREREQ(2.12.1)
Jeffrey A Law789eb4f1998-09-30 08:17:56 +000023AC_INIT(objc/objc.h)
Ben Ellistonbce1b481998-09-30 02:13:15 +000024#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
Kaveh R. Ghazi8a829fd1998-10-22 11:39:46 +000035dnl 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)
Ben Ellistonbce1b481998-09-30 02:13:15 +000038
Manfred Hollstein71205e01998-11-26 01:48:34 +000039# If the language specific compiler does not exist, but the "gcc" directory does,
40# we do not build anything. Note, $r is set by the top-level Makefile.
41compiler_name=cc1obj
42rm -f skip-this-dir
43AC_MSG_CHECKING(if compiler $compiler_name has been built)
44AC_CACHE_VAL(objc_cv_compiler_exists,
45 [objc_cv_compiler_exists=yes
46 if test -n "$r"; then
47 if test -d "$r"/gcc; then
48 if test -f "$r"/gcc/$compiler_name; then
49 true
50 else
51 objc_cv_compiler_exists=no
52 echo "rm -f config.cache config.log multilib.out" > skip-this-dir
53 fi
54 fi
55 fi
56 ])
57AC_MSG_RESULT($objc_cv_compiler_exists)
58if test x$objc_cv_compiler_exists = xno
59then
60 rm -f Makefile conftest* confdefs* core
61 exit 0
62fi
63
Ben Ellistonbce1b481998-09-30 02:13:15 +000064dnl Checks for programs.
65# For ObjC we'll set CC to point at the built gcc, but this will get it into
66# the makefiles
67AC_PROG_CC
68
69test "$AR" || AR=ar
70AC_SUBST(AR)
71if test "$RANLIB"; then :
72 AC_SUBST(RANLIB)
73else
74 AC_PROG_RANLIB
75fi
76AC_PROG_INSTALL
77
78dnl Checks for libraries.
79
80dnl Checks for header files.
81# Sanity check for the cross-compilation case:
82AC_CHECK_HEADER(stdio.h,:,
83 [AC_MSG_ERROR([Can't find stdio.h.
84You must have a usable C system for the target already installed, at least
85including headers and, preferably, the library, before you can configure
86the Objective C runtime system. If necessary, install gcc now with
87\`LANGUAGES=c', then the target library, then build with \`LANGUAGES=objc'.])])
88
89AC_HEADER_STDC
90
91# Determine the name of the GCC thread file.
92
93AC_CACHE_CHECK([for thread file],objc_cv_thread_file,
Jeffrey A Law79014e61999-01-05 00:40:22 +000094[if test -f "$r"/gcc/Makefile
Ben Ellistonbce1b481998-09-30 02:13:15 +000095then
Jeffrey A Law79014e61999-01-05 00:40:22 +000096 objc_cv_thread_file=`grep \^GCC_THREAD_FILE "$r"/gcc/Makefile | awk -F= '{ print $2 }'`
Ben Ellistonbce1b481998-09-30 02:13:15 +000097else
98 AC_MSG_ERROR([not found])
99fi])
100OBJC_THREAD_FILE=$objc_cv_thread_file
101AC_SUBST(OBJC_THREAD_FILE)
102
103AC_ARG_ENABLE(objc-gc,
104[ --enable-objc-gc enable the use of Boehm's garbage collector with
105 the GNU Objective-C runtime.],
106if [[[ x$enable_objc_gc = xno ]]]; then
107 OBJC_BOEHM_GC=''
108else
109 OBJC_BOEHM_GC=libobjc_gc.a
110fi,
111OBJC_BOEHM_GC='')
112AC_SUBST(OBJC_BOEHM_GC)
113
114
115# We need multilib support, but only if configuring for the target.
116AC_OUTPUT(Makefile,
117[test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h
118if test -n "$CONFIG_FILES"; then
119 if test -n "${with_target_subdir}"; then
120 # FIXME: We shouldn't need to set ac_file
121 ac_file=Makefile
122 . ${topsrcdir}/config-ml.in
123 fi
124fi],
125srcdir=${srcdir}
126host=${host}
127target=${target}
128with_target_subdir=${with_target_subdir}
129with_multisubdir=${with_multisubdir}
130ac_configure_args="--enable-multilib ${ac_configure_args}"
131CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
132topsrcdir=${topsrcdir}
133)
134
135dnl Local Variables:
136dnl comment-start: "dnl "
137dnl comment-end: ""
138dnl comment-start-skip: "\\bdnl\\b\\s *"
139dnl End: