dnl Process this file with autoconf to produce a configure script
dnl
-AC_PREREG(2.5)
+AC_PREREG(2.13)
AC_INIT(ldmain.c)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(ld, 2.9.4)
+AM_INIT_AUTOMAKE(ld, 2.9.5)
AM_PROG_LIBTOOL
# host-specific stuff:
AC_PROG_CC
-AM_PROG_INSTALL
+AC_PROG_INSTALL
ALL_LINGUAS=
CY_GNU_GETTEXT
-AM_EXEEXT
+AC_EXEEXT
AC_PROG_YACC
AM_PROG_LEX
BFD_NEED_DECLARATION(free)
BFD_NEED_DECLARATION(sbrk)
BFD_NEED_DECLARATION(getenv)
+BFD_NEED_DECLARATION(environ)
+
+# When converting linker scripts into strings for use in emulation
+# files, use astring.sed if the compiler supports ANSI string
+# concatenation, or ostring.sed otherwise. This is to support the
+# broken Microsoft MSVC compiler, which limits the length of string
+# constants, while still supporting pre-ANSI compilers which do not
+# support string concatenation.
+AC_CACHE_VAL(ld_cv_string_concatenation,
+[AC_TRY_COMPILE(,[char *a = "a" "a";],
+ [ld_cv_string_concatenation=true],
+ [ld_cv_string_concatenation=false])])
+if test "$ld_cv_string_concatenation" = "true"; then
+ STRINGIFY=astring.sed
+else
+ STRINGIFY=ostring.sed
+fi
+AC_SUBST(STRINGIFY)
# target-specific stuff:
EMUL=
all_emuls=
all_emul_extras=
+all_libpath=
dnl We need to get an arbitrary number of tdir definitions into
dnl Makefile. We can't do it using AC_SUBST, because autoconf does
EMUL=$targ_emul
fi
- for i in $targ_emul $targ_extra_emuls; do
+ for i in $targ_emul $targ_extra_emuls $targ_extra_libpath; do
case " $all_emuls " in
*" e${i}.o "*) ;;
*)
esac
done
+ for i in $targ_emul $targ_extra_libpath; do
+ case " $all_libpath " in
+ *" ${i} "*) ;;
+ *)
+ if test -z "$all_libpath"; then
+ all_libpath=${i}
+ else
+ all_libpath="$all_libpath ${i}"
+ fi
+ ;;
+ esac
+ done
+
for i in $targ_extra_ofiles; do
case " $all_emul_extras " in
*" ${i} "*) ;;
AC_SUBST(EMULATION_OFILES)
AC_SUBST(EMUL_EXTRA_OFILES)
+EMULATION_LIBPATH=$all_libpath
+AC_SUBST(EMULATION_LIBPATH)
+
if test x${enable_static} = xno; then
TESTBFDLIB="--rpath ../bfd/.libs ../bfd/.libs/libbfd.so"
else