AC_CHECK_FUNCS(strnlen)
AC_CHECK_FUNCS(gettimeofday)
AC_CHECK_FUNCS(usleep)
+AC_CHECK_FUNCS(vasprintf)
build_bitbang=no
build_bitq=no
is_mingw=no
is_win32=no
+AC_ARG_ENABLE(gccwarnings,
+ AS_HELP_STRING([--enable-gccwarnings], [Enable compiler warnings, default no]),
+ [gcc_warnings=$enableval], [gcc_warnings=no])
+
AC_ARG_ENABLE(parport,
AS_HELP_STRING([--enable-parport], [Enable building the pc parallel port driver]),
[build_parport=$enableval], [build_parport=no])
AS_HELP_STRING([--enable-amtjtagaccel], [Enable building the Amontec JTAG-Accelerator driver]),
[build_amtjtagaccel=$enableval], [build_amtjtagaccel=no])
+AC_ARG_ENABLE(ecosboard,
+ AS_HELP_STRING([--enable-ecosboard], [Enable building support for eCosBoard based JTAG debugger]),
+ [build_ecosboard=$enableval], [build_ecosboard=no])
+
case "${host_cpu}" in
arm*)
AC_ARG_ENABLE(ep93xx,
AS_HELP_STRING([--enable-ep93xx], [Enable building support for EP93xx based SBCs]),
[build_ep93xx=$enableval], [build_ep93xx=no])
- AC_ARG_ENABLE(ecosboard,
- AS_HELP_STRING([--enable-ecosboard], [Enable building support for eCosBoard based JTAG debugger]),
- [build_ecosboard=$enableval], [build_ecosboard=no])
-
AC_ARG_ENABLE(at91rm9200,
AS_HELP_STRING([--enable-at91rm9200], [Enable building support for AT91RM9200 based SBCs]),
[build_at91rm9200=$enableval], [build_at91rm9200=no])
*)
build_ep93xx=no
build_at91rm9200=no
- build_ecosboard=no
;;
esac
AC_PROG_CC
AC_PROG_RANLIB
-AC_CHECK_PROG(OBJDUMP, objdump, objdump)
-AC_CHECK_PROG(OBJCOPY, objcopy, objcopy)
+# set default gcc warnings
+GCC_WARNINGS="-Wall -Wstrict-prototypes"
-if test x${OBJDUMP} != x -a x${OBJCOPY} != x ; then
- AC_MSG_CHECKING(objcopy command line)
- AC_TRY_COMPILE(,,[OBJCOPY_format=`${OBJDUMP} -f conftest.$ac_objext | sed -e '/file format/!d' -e 's/.*format \(.*\)/\1/'`
- OBJCOPY_arch=`${OBJDUMP} -f conftest.$ac_objext | sed -e '/architecture/!d' -e 's/.*architecture: \(.*\),.*/\1/'`])
- AC_MSG_RESULT(-I binary -O ${OBJCOPY_format} -B ${OBJCOPY_arch})
+# overide default gcc cflags
+if test $gcc_warnings = yes; then
+ CFLAGS="$CFLAGS $GCC_WARNINGS"
fi
-AC_SUBST(OBJCOPY_FORMAT, ${OBJCOPY_format})
-AC_SUBST(OBJCOPY_ARCH, ${OBJCOPY_arch})
+# Setup for compiling build tools
+AC_MSG_CHECKING([for a C compiler for build tools])
+if test $cross_compiling = yes; then
+ AC_CHECK_PROGS(CC_FOR_BUILD, gcc cc)
+ CFLAGS_FOR_BUILD="-g -O2 $GCC_WARNINGS"
+else
+ CC_FOR_BUILD=$CC
+ CFLAGS_FOR_BUILD=$CFLAGS
+fi
+
+AC_MSG_RESULT([$CC_FOR_BUILD])
+AC_SUBST(CC_FOR_BUILD)
+AC_SUBST(CFLAGS_FOR_BUILD)
+
+AC_MSG_CHECKING([for suffix of executable build tools])
+if test $cross_compiling = yes; then
+ cat >conftest.c <<\_______EOF
+int main ()
+{
+ exit (0);
+}
+_______EOF
+for i in .exe ""; do
+ compile="$CC_FOR_BUILD conftest.c -o conftest$i"
+ if AC_TRY_EVAL(compile); then
+ if (./conftest) 2>&AC_FD_CC; then
+ EXEEXT_FOR_BUILD=$i
+ break
+ fi
+ fi
+done
+ rm -f conftest*
+ if test "${EXEEXT_FOR_BUILD+set}" != set; then
+ AC_MSG_ERROR([Cannot determine suffix of executable build tools])
+ fi
+else
+ EXEEXT_FOR_BUILD=$EXEEXT
+fi
+AC_MSG_RESULT([$EXEEXT_FOR_BUILD])
+AC_SUBST(EXEEXT_FOR_BUILD)
AC_SUBST(WITH_FTD2XX, $with_ftd2xx)