dnl dnl $Id$ dnl dnl Set target tools dnl AC_DEFUN(RTEMS_HOST_AR, [AC_CHECK_TOOL(AR,ar,no)]) AC_DEFUN(RTEMS_HOST_RANLIB, [AC_CHECK_TOOL(RANLIB,ranlib,:)]) AC_DEFUN(RTEMS_GCC_PRINT, [ $1=`$CC --print-prog-name=$2` ]) AC_DEFUN(RTEMS_PATH_TOOL, [ AC_MSG_CHECKING([target's $2]) AC_CACHE_VAL(ac_cv_path_$1,:) AC_MSG_RESULT([$ac_cv_path_$1]) if test -n "$ac_cv_path_$1"; then dnl retrieve the value from the cache $1=$ac_cv_path_$1 else dnl the cache was not set if test -z "[$]$1" ; then if test "$ac_cv_prog_gcc" = "yes"; then # We are using gcc, ask it about its tool # NOTE: Necessary if gcc was configured to use the target's # native tools or uses prefixes for gnutools (e.g. gas instead of as) RTEMS_GCC_PRINT($1,$2) fi else # The user set an environment variable. # Check whether it is an absolute path, otherwise AC_PATH_PROG # will override the environment variable, which isn't what the user # intends AC_MSG_CHECKING([whether environment variable $1 is an absolute path]) case "[$]$1" in /*) # valid AC_MSG_RESULT("yes") ;; *) # invalid for AC_PATH_PROG AC_MSG_RESULT("no") AC_MSG_ERROR([***] [Environment variable $1 should either] [be unset (preferred) or contain an absolute path]) ;; esac fi AC_PATH_PROG($1,"$program_prefix"$2,$3) fi ]) AC_DEFUN(RTEMS_CANONICALIZE_TOOLS, [AC_REQUIRE([RTEMS_PROG_CC])dnl dnl FIXME: What shall be done if these tools are not available? RTEMS_HOST_AR(AR,ar,no) RTEMS_PATH_TOOL(AS,as,no) RTEMS_PATH_TOOL(LD,ld,no) RTEMS_PATH_TOOL(NM,nm,no) dnl special treatment of ranlib RTEMS_HOST_RANLIB dnl NOTE: These may not be available if not using gnutools AC_CHECK_TOOL(OBJCOPY,objcopy,no) AC_CHECK_TOOL(SIZE,size,no) AC_CHECK_TOOL(STRIP,strip,:) ])