diff --git a/src/xpdev/GNUmakefile b/src/xpdev/GNUmakefile
index 79f9bf645f0a4331677d731b0a2b878c9d51e320..f305647cc458db6445b3654ec13e826b1d57eafd 100644
--- a/src/xpdev/GNUmakefile
+++ b/src/xpdev/GNUmakefile
@@ -15,10 +15,7 @@ MT_CFLAGS	+=	$(XPDEV-MT_CFLAGS)
 ifdef WITH_SDL
  MTOBJS	+=	$(MTOBJODIR)$(DIRSEP)sdlfuncs$(OFILE)
  OBJS	+=	$(OBJODIR)$(DIRSEP)sdlfuncs$(OFILE)
-endif
-
-ifeq ($(os),darwin)
- ifdef WITH_SDL
+ ifeq ($(os),darwin)
   MTOBJS	+=	$(MTOBJODIR)$(DIRSEP)SDLMain$(OFILE)
   OBJS	+=	$(OBJODIR)$(DIRSEP)SDLMain$(OFILE)
  endif
@@ -26,6 +23,10 @@ endif
 
 ifeq ($(os),darwin)
 $(MTOBJODIR)$(DIRSEP)SDLMain$(OFILE): SDLMain.m
+	@echo $(COMPILE_MSG) $<
+	$(QUIET)$(CC) $(MT_CFLAGS) $(CCFLAGS) -o $@ -c $<
+
+$(OBJODIR)$(DIRSEP)SDLMain$(OFILE): SDLMain.m
 	@echo $(COMPILE_MSG) $<
 	$(QUIET)$(CC) $(CFLAGS) $(CCFLAGS) -o $@ -c $<
 endif