diff --git a/src/Makefile.in b/src/Makefile.in
index 14f9a7b7f1ec4903b92b6619d6405003ecf3ead6..f0fa9652025865af78941139d2e85a967ca84f1f 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -421,18 +421,18 @@ gcov:
 
 # purify
 pure: $(OBJ) master-stamp module_objects
-	-@mv pike pike.old 2>/dev/null || true
-	$(SMARTLINK) purify -max-threads=128 -thread_stack_change=8192 -free-queue-length=500 -inuse-at-exit=yes -chain-length=12 $(REALCC) $(LDFLAGS) $(OBJ) `cat modules/linker_options @STATIC_POST_MODULES_LINKOPTS@` $(LIBS) -o pike
+	-@mv pike@EXEEXT@ pike.old@EXEEXT@ 2>/dev/null || true
+	$(SMARTLINK) purify -max-threads=128 -thread_stack_change=8192 -free-queue-length=500 -inuse-at-exit=yes -chain-length=12 $(REALCC) $(LDFLAGS) $(OBJ) `cat modules/linker_options @STATIC_POST_MODULES_LINKOPTS@` $(LIBS) -o pike@EXEEXT@
 
 # purecov
 cover: $(OBJ) master-stamp module_objects
-	-@mv pike pike.old 2>/dev/null || true
-	$(SMARTLINK) purecov purify -max-threads=128 -thread_stack_change=8192 -free-queue-length=500 -inuse-at-exit=yes -chain-length=12 $(REALCC) $(LDFLAGS) $(OBJ) `cat modules/linker_options @STATIC_POST_MODULES_LINKOPTS@` $(LIBS) -o pike
+	-@mv pike@EXEEXT@ pike.old@EXEEXT@ 2>/dev/null || true
+	$(SMARTLINK) purecov purify -max-threads=128 -thread_stack_change=8192 -free-queue-length=500 -inuse-at-exit=yes -chain-length=12 $(REALCC) $(LDFLAGS) $(OBJ) `cat modules/linker_options @STATIC_POST_MODULES_LINKOPTS@` $(LIBS) -o pike@EXEEXT@
 
 # quantify
 quant: $(OBJ) master-stamp module_objects
-	-@mv pike pike.old 2>/dev/null || true
-	$(SMARTLINK) quantify $(REALCC) $(LDFLAGS) $(OBJ) `cat modules/linker_options @STATIC_POST_MODULES_LINKOPTS@` $(LIBS) -o pike
+	-@mv pike@EXEEXT@ pike.old@EXEEXT@ 2>/dev/null || true
+	$(SMARTLINK) quantify $(REALCC) $(LDFLAGS) $(OBJ) `cat modules/linker_options @STATIC_POST_MODULES_LINKOPTS@` $(LIBS) -o pike@EXEEXT@
 
 splint:
 	splint $(PREFLAGS) -warnposix +charintliteral -realcompare -boolops -predboolint $(FILE)
@@ -1166,7 +1166,7 @@ depend: $(SRC_TARGETS)
 
 post_modules_depend:
 	@if [ "x$(RUNPIKE)" != "x$(DEFAULT_RUNPIKE)" -o -x $(TMP_BUILDDIR)/pike ]; then :; \
-	else $(MAKE) $(MAKE_FLAGS) $(MAKE_PARALLEL) pike; fi
+	else $(MAKE) $(MAKE_FLAGS) $(MAKE_PARALLEL) pike@EXEEXT@; fi
 	@( cd post_modules && { \
 	  rm -f remake; \
 	  $(MAKE) $(MAKE_FLAGS) depend || \
diff --git a/src/configure.in b/src/configure.in
index 647b4a076fbcd6b98c507498a52d0c784ccaec99..b37b3061ec4b37c5a0fb197e52c4087a9c1caeef 100644
--- a/src/configure.in
+++ b/src/configure.in
@@ -8534,14 +8534,14 @@ if test x$with_dynamic_modules = xyes ; then
   CCSHARED="${CCSHARED} ${DYNAMIC_MODULE_FLAGS}"
   PIKE_LIB="libpike.so"
   MODULE_O=tmodule.o
-  BUILD_PIKE=pike
+  BUILD_PIKE=pike$EXEEXT
   POST_MODULE_BUILD_TYPE=dynamic
   STATIC_POST_MODULES_LINKOPTS=
 else
   dmmsrc="modules/static_module_makefile.in"
   PIKE_LIB="libpike.a"
   MODULE_O=module.o
-  BUILD_PIKE=tpike
+  BUILD_PIKE=tpike$EXEEXT
   POST_MODULE_BUILD_TYPE=static
   STATIC_POST_MODULES_LINKOPTS=post_modules/linker_options
   DYNAMIC_MODULE_FLAGS=""