source: trunk/src/binutils/ld/configure.in@ 689

Last change on this file since 689 was 610, checked in by bird, 22 years ago

This commit was generated by cvs2svn to compensate for changes in r609,
which included commits to RCS files with non-trunk default branches.

  • Property cvs2svn:cvs-rev set to 1.1.1.2
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 6.7 KB
Line 
1dnl Process this file with autoconf to produce a configure script
2dnl
3AC_PREREQ(2.13)
4AC_INIT(ldmain.c)
5
6AC_CANONICAL_SYSTEM
7AC_ISC_POSIX
8
9changequote(,)dnl
10BFD_VERSION=`sed -n -e 's/^.._INIT_AUTOMAKE.*,[ ]*\([^ ]*\)[ ]*).*/\1/p' < ${srcdir}/../bfd/configure.in`
11changequote([,])dnl
12AM_INIT_AUTOMAKE(ld, ${BFD_VERSION})
13
14AM_PROG_LIBTOOL
15
16AC_ARG_WITH(lib-path, [ --with-lib-path=dir1:dir2... set default LIB_PATH],LIB_PATH=$withval)
17AC_ARG_ENABLE(targets,
18[ --enable-targets alternative target configurations],
19[case "${enableval}" in
20 yes | "") AC_ERROR(enable-targets option must specify target names or 'all')
21 ;;
22 no) enable_targets= ;;
23 *) enable_targets=$enableval ;;
24esac])dnl
25AC_ARG_ENABLE(64-bit-bfd,
26[ --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)],
27[case "${enableval}" in
28 yes) want64=true ;;
29 no) want64=false ;;
30 *) AC_MSG_ERROR(bad value ${enableval} for 64-bit-bfd option) ;;
31esac],[want64=false])dnl
32
33AC_ARG_WITH(sysroot,
34[ --with-sysroot[=DIR] Search for usr/lib et al within DIR.],
35[
36 case ${with_sysroot} in
37 yes) TARGET_SYSTEM_ROOT='${exec_prefix}/${target_alias}/sys-root' ;;
38 *) TARGET_SYSTEM_ROOT=$with_sysroot ;;
39 esac
40
41 TARGET_SYSTEM_ROOT_DEFINE='-DTARGET_SYSTEM_ROOT=\"$(TARGET_SYSTEM_ROOT)\"'
42 use_sysroot=yes
43
44 if test "x$exec_prefix" = xNONE; then
45 if test "x$prefix" = xNONE; then
46 test_prefix=/usr/local
47 else
48 test_prefix=$prefix
49 fi
50 else
51 test_prefix=$exec_prefix
52 fi
53 case ${TARGET_SYSTEM_ROOT} in
54 "${test_prefix}"|"${test_prefix}/"*|\
55 '${exec_prefix}'|'${exec_prefix}/'*)
56 t="$TARGET_SYSTEM_ROOT_DEFINE -DTARGET_SYSTEM_ROOT_RELOCATABLE"
57 TARGET_SYSTEM_ROOT_DEFINE="$t"
58 ;;
59 esac
60], [
61 use_sysroot=no
62 TARGET_SYSTEM_ROOT=
63 TARGET_SYSTEM_ROOT_DEFINE='-DTARGET_SYSTEM_ROOT=\"\"'
64])
65AC_SUBST(use_sysroot)
66AC_SUBST(TARGET_SYSTEM_ROOT)
67AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE)
68
69build_warnings="-W -Wall -Wstrict-prototypes -Wmissing-prototypes"
70AC_ARG_ENABLE(build-warnings,
71[ --enable-build-warnings enable build-time compiler warnings if gcc is used],
72[case "${enableval}" in
73 yes) ;;
74 no) build_warnings="-w";;
75 ,*) t=`echo "${enableval}" | sed -e "s/,/ /g"`
76 build_warnings="${build_warnings} ${t}";;
77 *,) t=`echo "${enableval}" | sed -e "s/,/ /g"`
78 build_warnings="${t} ${build_warnings}";;
79 *) build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;;
80esac
81if test x"$silent" != x"yes" && test x"$build_warnings" != x""; then
82 echo "Setting warning flags = $build_warnings" 6>&1
83fi])dnl
84WARN_CFLAGS=""
85if test "x${build_warnings}" != x -a "x$GCC" = xyes ; then
86 WARN_CFLAGS="${build_warnings}"
87fi
88AC_SUBST(WARN_CFLAGS)
89
90AM_CONFIG_HEADER(config.h:config.in)
91
92if test -z "$target" ; then
93 AC_MSG_ERROR(Unrecognized target system type; please check config.sub.)
94fi
95if test -z "$host" ; then
96 AC_MSG_ERROR(Unrecognized host system type; please check config.sub.)
97fi
98
99# host-specific stuff:
100
101AC_PROG_CC
102AC_PROG_INSTALL
103
104ALL_LINGUAS="fr sv tr es da"
105CY_GNU_GETTEXT
106
107AC_EXEEXT
108
109AC_PROG_YACC
110AM_PROG_LEX
111
112AM_MAINTAINER_MODE
113
114. ${srcdir}/configure.host
115
116AC_SUBST(HDEFINES)
117AC_SUBST(HOSTING_CRT0)
118AC_SUBST(HOSTING_LIBS)
119AC_SUBST(NATIVE_LIB_DIRS)
120
121AC_CHECK_HEADERS(string.h strings.h stdlib.h unistd.h)
122AC_CHECK_FUNCS(sbrk realpath)
123AC_HEADER_DIRENT
124
125BFD_BINARY_FOPEN
126
127BFD_NEED_DECLARATION(strstr)
128BFD_NEED_DECLARATION(free)
129BFD_NEED_DECLARATION(sbrk)
130BFD_NEED_DECLARATION(getenv)
131BFD_NEED_DECLARATION(environ)
132
133# When converting linker scripts into strings for use in emulation
134# files, use astring.sed if the compiler supports ANSI string
135# concatenation, or ostring.sed otherwise. This is to support the
136# broken Microsoft MSVC compiler, which limits the length of string
137# constants, while still supporting pre-ANSI compilers which do not
138# support string concatenation.
139AC_MSG_CHECKING([whether ANSI C string concatenation works])
140AC_CACHE_VAL(ld_cv_string_concatenation,
141[AC_TRY_COMPILE(,[char *a = "a" "a";],
142 [ld_cv_string_concatenation=yes],
143 [ld_cv_string_concatenation=no])])
144AC_MSG_RESULT($ld_cv_string_concatenation)
145if test "$ld_cv_string_concatenation" = "yes"; then
146 STRINGIFY=astring.sed
147else
148 STRINGIFY=ostring.sed
149fi
150AC_SUBST(STRINGIFY)
151
152# target-specific stuff:
153
154all_targets=
155EMUL=
156all_emuls=
157all_emul_extras=
158all_libpath=
159
160dnl We need to get an arbitrary number of tdir definitions into
161dnl Makefile. We can't do it using AC_SUBST, because autoconf does
162dnl not permit literal newlines in an AC_SUBST variables. So we use a
163dnl file.
164rm -f tdirs
165
166for targ_alias in `echo $target_alias $enable_targets | sed 's/,/ /g'`
167do
168 if test "$targ_alias" = "all"; then
169 all_targets=true
170 else
171 # Canonicalize the secondary target names.
172 result=`$ac_config_sub $targ_alias 2>/dev/null`
173 if test -n "$result"; then
174 targ=$result
175 else
176 targ=$targ_alias
177 fi
178
179 . ${srcdir}/configure.tgt
180
181 if test "$targ" = "$target"; then
182 EMUL=$targ_emul
183 fi
184
185 for i in $targ_emul $targ_extra_emuls $targ_extra_libpath; do
186 case " $all_emuls " in
187 *" e${i}.o "*) ;;
188 *)
189 all_emuls="$all_emuls e${i}.o"
190 eval result=\$tdir_$i
191 test -z "$result" && result=$targ_alias
192 echo tdir_$i=$result >> tdirs
193 ;;
194 esac
195 done
196
197 for i in $targ_emul $targ_extra_libpath; do
198 case " $all_libpath " in
199 *" ${i} "*) ;;
200 *)
201 if test -z "$all_libpath"; then
202 all_libpath=${i}
203 else
204 all_libpath="$all_libpath ${i}"
205 fi
206 ;;
207 esac
208 done
209
210 for i in $targ_extra_ofiles; do
211 case " $all_emul_extras " in
212 *" ${i} "*) ;;
213 *)
214 all_emul_extras="$all_emul_extras ${i}"
215 ;;
216 esac
217 done
218 fi
219done
220
221AC_SUBST(EMUL)
222
223TDIRS=tdirs
224AC_SUBST_FILE(TDIRS)
225
226dnl FIXME: We will build a 64 bit BFD for a 64 bit host or a 64 bit
227dnl target, and in those cases we should also build the 64 bit
228dnl emulations.
229if test x${all_targets} = xtrue; then
230 if test x${want64} = xtrue; then
231 EMULATION_OFILES='$(ALL_EMULATIONS) $(ALL_64_EMULATIONS)'
232 else
233 EMULATION_OFILES='$(ALL_EMULATIONS)'
234 fi
235 EMUL_EXTRA_OFILES='$(ALL_EMUL_EXTRA_OFILES)'
236else
237 EMULATION_OFILES=$all_emuls
238 EMUL_EXTRA_OFILES=$all_emul_extras
239fi
240AC_SUBST(EMULATION_OFILES)
241AC_SUBST(EMUL_EXTRA_OFILES)
242AC_SUBST(LIB_PATH)
243
244EMULATION_LIBPATH=$all_libpath
245AC_SUBST(EMULATION_LIBPATH)
246
247if test x${enable_static} = xno; then
248 TESTBFDLIB="--rpath ../bfd/.libs ../bfd/.libs/libbfd.so"
249else
250 TESTBFDLIB="../bfd/.libs/libbfd.a"
251fi
252AC_SUBST(TESTBFDLIB)
253
254target_vendor=${target_vendor=$host_vendor}
255case "$target_vendor" in
256 hp) EXTRA_SHLIB_EXTENSION=".sl" ;;
257 *) EXTRA_SHLIB_EXTENSION= ;;
258esac
259if test x${EXTRA_SHLIB_EXTENSION} != x ; then
260 AC_DEFINE_UNQUOTED(EXTRA_SHLIB_EXTENSION, "$EXTRA_SHLIB_EXTENSION",
261 [Additional extension a shared object might have.])
262fi
263
264AC_OUTPUT(Makefile po/Makefile.in:po/Make-in,
265[sed -e '/POTFILES =/r po/POTFILES' po/Makefile.in > po/Makefile])
Note: See TracBrowser for help on using the repository browser.