diff --git a/lisp/elf.c b/lisp/elf.c
index 550c058d2a9d415d6f15a8eb6d2979422ccbdc06..9a208028b2dab0b984f29631f05b849e219e6a46 100644
--- a/lisp/elf.c
+++ b/lisp/elf.c
@@ -8,7 +8,7 @@
 
  Above changes put into main CVS branch. 05-Jul-2007.
 
- $Id: elf.c,v 1.27 2010/08/02 06:03:49 rtoy Exp $
+ $Id: elf.c,v 1.28 2010/08/02 21:45:36 rtoy Exp $
 */
 
 #include <stdio.h>
@@ -313,20 +313,6 @@ write_space_object(const char *dir, int id, os_vm_address_t start, os_vm_address
     return ret;
 }
 
-void
-obj_cleanup(const char *dirname)
-{
-    char filename[FILENAME_MAX + 1];
-    int i;
-
-    /* Get rid of lisp space files. */
-    for(i = 0; i < 3; i++) {
-	/* Delete core space .o files. */
-	sprintf(filename, "%s/%s.o", dirname, section_names[i]);
-	unlink(filename);
-    }
-}
-
 int
 obj_run_linker(long init_func_address, char *file)
 {
diff --git a/lisp/mach-o.c b/lisp/mach-o.c
index 759320af997701c495e48b44996ffe20798aca3b..3932069d12f52c38a6a2fc781fcfed89523e5259 100644
--- a/lisp/mach-o.c
+++ b/lisp/mach-o.c
@@ -1,5 +1,5 @@
 /*
- * $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/mach-o.c,v 1.5 2010/08/01 15:23:28 rtoy Exp $
+ * $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/mach-o.c,v 1.6 2010/08/02 21:45:36 rtoy Exp $
  *
  * This code was written by Raymond Toy as part of CMU Common Lisp and
  * has been placed in the public domain.
@@ -280,23 +280,6 @@ write_space_object(const char *dir, int id, os_vm_address_t start, os_vm_address
     return ret;
 }
 
-/*
- * Remove the 3 space files that we created.
- */
-void
-obj_cleanup(const char *dirname)
-{
-    char filename[FILENAME_MAX + 1];
-    int i;
-
-    /* Get rid of lisp space files. */
-    for(i = 0; i < 3; i++) {
-	/* Delete core space .o files. */
-	sprintf(filename, "%s/%s.o", dirname, section_names[i]);
-	unlink(filename);
-    }
-}
-
 /*
  * Link everything together to create the executable.
  */
diff --git a/lisp/save.c b/lisp/save.c
index 51618e74929eb43e1ad9356cd1df6638072294b2..93245961a51fc9682351afc32f3e4a4a58bf587b 100644
--- a/lisp/save.c
+++ b/lisp/save.c
@@ -1,6 +1,6 @@
 /*
 
- $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/save.c,v 1.27 2010/07/31 00:03:23 rtoy Exp $
+ $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/save.c,v 1.28 2010/08/02 21:45:36 rtoy Exp $
 
  This code was written as part of the CMU Common Lisp project at
  Carnegie Mellon University, and has been placed in the public domain.
@@ -358,9 +358,6 @@ save_executable(char *filename, lispobj init_function)
     printf("Linking executable...\n");
     fflush(stdout);
     obj_run_linker(init_function, filename);
-#if 0
-    obj_cleanup(dir_name);
-#endif
     printf("done.\n");
     exit(0);
 }
diff --git a/tools/linker-x86.sh b/tools/linker-x86.sh
index 37abb3409250813853f5f9085d1504eb28962d05..21543728b18072395249aca0b6b15563d0a90354 100644
--- a/tools/linker-x86.sh
+++ b/tools/linker-x86.sh
@@ -1,6 +1,6 @@
 #!/bin/sh
 
-# $Id: linker-x86.sh,v 1.8 2010/08/02 14:21:59 rtoy Exp $
+# $Id: linker-x86.sh,v 1.9 2010/08/02 21:45:36 rtoy Exp $
 
 # This file written by Raymond Toy as part of CMU Common Lisp and is
 # placed in the public domain.
@@ -114,7 +114,7 @@ case `uname` in
 esac
 
 # Remove the C file when we're done.
-trap 'rm -f $OUTDIR/$OPT_IFADDR' 0
+trap 'rm -f $OUTDIR/$OPT_IFADDR $OUTDIR/CORRO.o $OUTDIR/CORSTA.o $OUTDIR/CORDYN.o' 0
 
 (cd $OUTDIR
 echo "long initial_function_addr = $IFADDR;" > $OPT_IFADDR