1096 |
|
dnl A dummy program that returns always true |
1097 |
|
AC_PATH_PROG([BLESS], "true") |
1098 |
|
|
1099 |
+ |
dnl Check for linker script support |
1100 |
+ |
case $target_os:$target_cpu in |
1101 |
+ |
linux*:i?86) LINKER_SCRIPT_FLAGS="-Wl,-T,ldscripts/linux-i386.ld";; |
1102 |
+ |
linux*:x86_64) LINKER_SCRIPT_FLAGS="-Wl,-T,ldscripts/linux-x86_64.ld";; |
1103 |
+ |
darwin*:powerpc)LINKER_SCRIPT_FLAGS="-Wl,-seg1addr,0x78048000";; |
1104 |
+ |
esac |
1105 |
+ |
if [[ -n "$LINKER_SCRIPT_FLAGS" ]]; then |
1106 |
+ |
AC_CACHE_CHECK([whether linker script is usable], |
1107 |
+ |
ac_cv_linker_script_works, [ |
1108 |
+ |
AC_LANG_SAVE |
1109 |
+ |
AC_LANG_CPLUSPLUS |
1110 |
+ |
saved_LDFLAGS="$LDFLAGS" |
1111 |
+ |
LDFLAGS="$LDFLAGS $LINKER_SCRIPT_FLAGS" |
1112 |
+ |
AC_TRY_RUN( |
1113 |
+ |
[int main() {if ((char *)&main < (char *)0x70000000) return 1;}], |
1114 |
+ |
[ac_cv_linker_script_works=yes], |
1115 |
+ |
[ac_cv_linker_script_works=no], |
1116 |
+ |
dnl When cross-compiling, assume it works |
1117 |
+ |
[ac_cv_linker_script_works="guessing yes"] |
1118 |
+ |
) |
1119 |
+ |
AC_LANG_RESTORE |
1120 |
+ |
if [[ "$ac_cv_linker_script_works" = "no" ]]; then |
1121 |
+ |
LDFLAGS="$saved_LDFLAGS" |
1122 |
+ |
LINKER_SCRIPT_FLAGS="" |
1123 |
+ |
fi |
1124 |
+ |
]) |
1125 |
+ |
fi |
1126 |
+ |
AC_TRANSLATE_DEFINE(HAVE_LINKER_SCRIPT, "$ac_cv_linker_script_works", |
1127 |
+ |
[Define if there is a linker script to relocate the executable above 0x70000000.]) |
1128 |
+ |
|
1129 |
|
dnl Determine the addressing mode to use |
1130 |
|
if [[ "x$WANT_NATIVE_M68K" = "xyes" ]]; then |
1131 |
|
ADDRESSING_MODE="real" |