diff --git a/src/aclocal.m4 b/src/aclocal.m4
index 77f260e8fb3cf573ba5e00c056316bde96491ea4..848c8f0070dd72922dbaa82e89404699a918bbe4 100644
--- a/src/aclocal.m4
+++ b/src/aclocal.m4
@@ -703,11 +703,16 @@ define([AC_LOW_MODULE_INIT],
   if test "x$enable_binary" = "xno"; then
     RUNPIKE="USE_PIKE"
   else
-    if test "x$cross_compiling" = "xyes"; then
+   if test "x$cross_compiling" = "xyes"; then
       RUNPIKE="USE_PIKE"
     else
       RUNPIKE="DEFAULT_RUNPIKE"
     fi
+
+   case $CC in
+      *rntcl) RUNPIKE="FINAL_PIKE" ;;
+      *rntecl) RUNPIKE="FINAL_PIKE" ;;
+   esac
   fi
   AC_SUBST(RUNPIKE)
 
diff --git a/src/configure.in b/src/configure.in
index b625dd72c275ad5e687fe7df7b17cefffec44721..29d6358043f1fa0e36268048f986127cffd7ee2a 100644
--- a/src/configure.in
+++ b/src/configure.in
@@ -450,7 +450,6 @@ else
   CROSS="$ac_cv_prog_cc_cross"
 fi
 AC_SUBST(CROSS)
-
 if test "x$enable_binary" = "xno"; then
   CC="$BINDIR/nobinary_dummy cc"
   RUNPIKE="USE_PIKE"
@@ -462,8 +461,6 @@ else
   RUNPIKE="DEFAULT_RUNPIKE"
   RUNTPIKE="USE_TPIKE"
 fi
-AC_SUBST(RUNPIKE)
-AC_SUBST(RUNTPIKE)
 
 #############################################################################
 if test "x$enable_binary" != "xno"; then
@@ -2211,6 +2208,7 @@ if test "$cflags_is_set" = "no"; then
     # Windows NT
     DO_IF_OS(Windows_NT,
     [
+
       case "x$CC" in
       *rntecl*)
         # Some options used by ecl (Intel's IA64 compiler).
@@ -2251,6 +2249,9 @@ if test "$cflags_is_set" = "no"; then
       fi
     ])
 
+AC_SUBST(RUNPIKE)
+AC_SUBST(RUNTPIKE)
+
     dnl
     dnl This does not work with Digital UNIX cc/ld (cc thinks it is ok, ld does not)
     dnl  
@@ -2333,6 +2334,7 @@ else
   ])
 fi
 
+
 AC_MSG_CHECKING([crc32 intrinsics])
 AC_CACHE_VAL(pike_cv_sys_have_crc_intrinsics,[
   AC_TRY_LINK([