OSDN Git Service

2002-06-16 Aldy Hernandez <aldyh@redhat.com>
[pf3gnuchains/gcc-fork.git] / libobjc / configure.in
1 # Process this file with autoconf to produce a configure script.
2 #   Copyright (C) 1995, 1997, 1998, 1999, 2002 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
22 AC_PREREQ(2.13)
23 AC_INIT(objc/objc.h)
24 AC_CONFIG_HEADER(config.h)
25
26 # This works around the fact that libtool configuration may change LD
27 # for this particular configuration, but some shells, instead of
28 # keeping the changes in LD private, export them just because LD is
29 # exported.
30 ORIGINAL_LD_FOR_MULTILIBS=$LD
31
32 AC_CANONICAL_SYSTEM
33 target_alias=${target_alias-$target}
34 AC_SUBST(target_alias)
35
36 GLIBCPP_CONFIGURE(.)
37 GLIBCPP_EXPORT_INSTALL_INFO
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. 
43 compiler_name=cc1obj
44 rm -f skip-this-dir
45 AC_MSG_CHECKING(if compiler $compiler_name has been built)
46 AC_CACHE_VAL(objc_cv_compiler_exists,
47 [objc_cv_compiler_exists=yes
48 if 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
58 fi
59 ])
60 AC_MSG_RESULT($objc_cv_compiler_exists)
61 if test x$objc_cv_compiler_exists = xno
62 then
63   rm -f Makefile conftest* confdefs* core
64   exit 0
65 fi
66
67 dnl Checks for programs.
68
69 # Disable shared libs by default
70 AC_DISABLE_SHARED
71 # Enable Win32 DLL on MS Windows - FIXME 
72 AC_LIBTOOL_WIN32_DLL 
73
74 AC_PROG_LIBTOOL
75
76 dnl These should be inherited in the recursive make, but ensure they are
77 dnl defined:
78 test "$AR" || AR=ar
79 AC_SUBST(AR)
80 if test "$RANLIB"; then :
81   AC_SUBST(RANLIB)
82 else
83   AC_PROG_RANLIB
84 fi
85 AC_PROG_INSTALL
86 AC_PROG_MAKE_SET
87
88 dnl Checks for header files.
89 # Sanity check for the cross-compilation case:
90 AC_CHECK_HEADER(stdio.h,:,
91   [AC_MSG_ERROR([Can't find stdio.h.
92 You must have a usable C system for the target already installed, at least
93 including headers and, preferably, the library, before you can configure
94 the Objective C runtime system.  If necessary, install gcc now with 
95 \`LANGUAGES=c', then the target library, then build with \`LANGUAGES=objc'.])])
96
97 AC_HEADER_STDC
98
99 AC_CHECK_HEADERS(sched.h)
100
101 # Determine CFLAGS for gthread.
102
103 AC_CACHE_CHECK([for gthread cflags],objc_cv_gthread_flags,
104 [if test -f "$r"/gcc/Makefile
105 then
106   objc_cv_gthread_flags=`grep \^GTHREAD_FLAGS "$r"/gcc/Makefile | awk -F= '{ print $2 }'`
107 else
108   AC_MSG_ERROR([not found])
109 fi])
110 GTHREAD_FLAGS=$objc_cv_gthread_flags
111 AC_SUBST(GTHREAD_FLAGS)
112
113 AC_ARG_ENABLE(objc-gc,
114 [  --enable-objc-gc       enable the use of Boehm's garbage collector with
115                           the GNU Objective-C runtime.],
116 if [[[ x$enable_objc_gc = xno ]]]; then
117         OBJC_BOEHM_GC=''
118 else
119         OBJC_BOEHM_GC=libobjc_gc.la
120 fi,
121 OBJC_BOEHM_GC='')
122 AC_SUBST(OBJC_BOEHM_GC)
123
124
125 # We need multilib support, but only if configuring for the target.
126 AC_OUTPUT(Makefile,
127  [test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h
128 if test -n "$CONFIG_FILES"; then
129   if test -n "${with_target_subdir}"; then
130     # FIXME: We shouldn't need to set ac_file
131     ac_file=Makefile
132     LD="${ORIGINAL_LD_FOR_MULTILIBS}"
133     . ${toplevel_srcdir}/config-ml.in
134   fi
135 fi],
136 srcdir=${srcdir}
137 host=${host}
138 target=${target}
139 with_target_subdir=${with_target_subdir}
140 with_multisubdir=${with_multisubdir}
141 ac_configure_args="--enable-multilib ${ac_configure_args}"
142 toplevel_srcdir=${toplevel_srcdir}
143 CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
144 )
145
146
147 dnl Local Variables:
148 dnl comment-start: "dnl "
149 dnl comment-end: ""
150 dnl comment-start-skip: "\\bdnl\\b\\s *"
151 dnl End: