- add missing quotes from CFLAGS_FOR_BUILD
[fw/openocd] / configure.in
index bc47064f8f7cfa2754eeaf60651b29077bf5daa6..8f9b56f39f8bdb255ebe63a2e89706c99520f6b4 100644 (file)
@@ -291,18 +291,45 @@ AC_LANG_C
 AC_PROG_CC
 AC_PROG_RANLIB
 
-AC_CHECK_PROG(OBJDUMP, objdump, objdump)
-AC_CHECK_PROG(OBJCOPY, objcopy, objcopy)
-
-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})
+# 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"
+else
+       CC_FOR_BUILD=$CC
+       CFLAGS_FOR_BUILD=$CFLAGS
 fi
-
-AC_SUBST(OBJCOPY_FORMAT, ${OBJCOPY_format})
-AC_SUBST(OBJCOPY_ARCH, ${OBJCOPY_arch})
+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)