-HC_SPLIT_PRE= \
- $(RM) $@ ; if [ ! -d $(basename $@) ]; then mkdir $(basename $@); else \
- $(FIND) $(basename $@) -name '*.$(way_)o' -print | xargs $(RM) __rm_food ; fi
-HC_SPLIT_POST = touch $@
+HC_SPLIT_PRE = \
+ $(RM) $@; if [ ! -d $(basename $@) ]; then mkdir $(basename $@); else \
+ $(FIND) $(basename $@) -name '*.$(way_)o' | xargs $(RM) __rm_food; fi
+ifeq "$(GhcWithInterpreter)" "YES"
+HC_SPLIT_POST = ld -r -x -o $@ $(basename $@)/*.$(way_)o
+else
+HC_SPLIT_POST = touch $@
+endif