Index: src/default-implementations.lisp
===================================================================
--- src/default-implementations.lisp	(revision 315654)
+++ src/default-implementations.lisp	(working copy)
@@ -1,3 +1,28 @@
+#+xcvb
+(module
+ (:depends-on ("src/bordeaux-threads"
+	       (:cond ((:featurep ;; test whether thread-support is unsupported.
+			(:not 
+			 (:or (:and :sbcl :sb-thread)
+			      (:and :allegro :multiprocessing)
+			      :armedbear
+			      (:and :cmu :mp)
+			      :corman
+			      (:and :digitool :ccl-5.1)
+			      (:and :ecl :threads)
+			      :lispworks
+			      (:and :openmcl :openmcl-native-threads))))
+		       "src/unsupported")
+		      ((:featurep :allegro)   "src/allegro")
+		      ((:featurep :armedbear) "src/armedbear")
+		      ((:featurep :cmu)       "src/cmu")
+		      ((:featurep :corman)    "src/corman")
+		      ((:featurep :digitool)  "src/mcl")
+		      ((:featurep :ecl)       "src/ecl")
+		      ((:featurep :lispworks) "src/lispworks")
+		      ((:featurep :openmcl)   "src/openmcl")
+		      ((:featurep :sbcl)      "src/sbcl")))))
+
 (in-package #:bordeaux-threads)
 
 ;;; Helper macros
@@ -243,6 +268,7 @@
   "Execute `BODY' and signal a condition of type TIMEOUT if the execution of
 BODY does not complete within `TIMEOUT' seconds. On implementations which do not
 support WITH-TIMEOUT natively and don't support threads either it has no effect."
+  (declare (ignorable timeout))
   #+thread-support
   (let ((ok-tag (gensym "OK"))
         (timeout-tag (gensym "TIMEOUT"))
Index: src/mcl.lisp
===================================================================
--- src/mcl.lisp	(revision 315654)
+++ src/mcl.lisp	(working copy)
@@ -4,6 +4,8 @@
 Distributed under the MIT license (see LICENSE file)
 |#
 
+#+xcvb (module (:depends-on ("src/bordeaux-threads")))
+
 (in-package #:bordeaux-threads)
 
 ;;; Thread Creation
Index: src/condition-variables.lisp
===================================================================
--- src/condition-variables.lisp	(revision 315654)
+++ src/condition-variables.lisp	(working copy)
@@ -4,6 +4,8 @@
 Distributed under the MIT license (see LICENSE file)
 |#
 
+#+xcvb (module (:depends-on ("src/default-implementations")))
+
 (in-package #:bordeaux-threads)
 
 ;;; This file provides a portable implementation of condition
Index: src/lispworks.lisp
===================================================================
--- src/lispworks.lisp	(revision 315654)
+++ src/lispworks.lisp	(working copy)
@@ -4,6 +4,8 @@
 Distributed under the MIT license (see LICENSE file)
 |#
 
+#+xcvb (module (:depends-on ("src/bordeaux-threads")))
+
 (in-package #:bordeaux-threads)
 
 ;;; documentation on the LispWorks Multiprocessing interface can be found at
Index: src/openmcl.lisp
===================================================================
--- src/openmcl.lisp	(revision 315654)
+++ src/openmcl.lisp	(working copy)
@@ -4,6 +4,8 @@
 Distributed under the MIT license (see LICENSE file)
 |#
 
+#+xcvb (module (:depends-on ("src/bordeaux-threads")))
+
 (in-package #:bordeaux-threads)
 
 ;;; documentation on the OpenMCL Threads interface can be found at
Index: src/corman.lisp
===================================================================
--- src/corman.lisp	(revision 315654)
+++ src/corman.lisp	(working copy)
@@ -4,6 +4,8 @@
 Distributed under the MIT license (see LICENSE file)
 |#
 
+#+xcvb (module (:depends-on ("src/bordeaux-threads")))
+
 (in-package #:bordeaux-threads)
 
 ;;; Thread Creation
Index: src/bordeaux-threads.lisp
===================================================================
--- src/bordeaux-threads.lisp	(revision 315654)
+++ src/bordeaux-threads.lisp	(working copy)
@@ -1,3 +1,5 @@
+#+xcvb (module ())
+
 #|
 Copyright 2006, 2007 Greg Pfeil
 
Index: src/armedbear.lisp
===================================================================
--- src/armedbear.lisp	(revision 315654)
+++ src/armedbear.lisp	(working copy)
@@ -4,6 +4,8 @@
 Distributed under the MIT license (see LICENSE file)
 |#
 
+#+xcvb (module (:depends-on ("src/bordeaux-threads")))
+
 (in-package #:bordeaux-threads)
 
 ;;; the implementation of the Armed Bear thread interface can be found in
Index: src/ecl.lisp
===================================================================
--- src/ecl.lisp	(revision 315654)
+++ src/ecl.lisp	(working copy)
@@ -4,6 +4,8 @@
 Distributed under the MIT license (see LICENSE file)
 |#
 
+#+xcvb (module (:depends-on ("src/bordeaux-threads")))
+
 (in-package #:bordeaux-threads)
 
 ;;; documentation on the ECL Multiprocessing interface can be found at
Index: src/sbcl.lisp
===================================================================
--- src/sbcl.lisp	(revision 315654)
+++ src/sbcl.lisp	(working copy)
@@ -1,3 +1,5 @@
+#+xcvb (module (:depends-on ("src/bordeaux-threads")))
+
 #|
 Copyright 2006, 2007 Greg Pfeil
 
Index: src/cmu.lisp
===================================================================
--- src/cmu.lisp	(revision 315654)
+++ src/cmu.lisp	(working copy)
@@ -4,6 +4,8 @@
 Distributed under the MIT license (see LICENSE file)
 |#
 
+#+xcvb (module (:depends-on ("src/bordeaux-threads")))
+
 (in-package #:bordeaux-threads)
 
 ;;; Thread Creation
Index: src/allegro.lisp
===================================================================
--- src/allegro.lisp	(revision 315654)
+++ src/allegro.lisp	(working copy)
@@ -4,6 +4,8 @@
 Distributed under the MIT license (see LICENSE file)
 |#
 
+#+xcvb (module (:depends-on ("src/bordeaux-threads")))
+
 (in-package #:bordeaux-threads)
 
 ;;; documentation on the Allegro Multiprocessing interface can be found at
Index: src/unsupported.lisp
===================================================================
--- src/unsupported.lisp	(revision 315654)
+++ src/unsupported.lisp	(working copy)
@@ -4,6 +4,8 @@
 Distributed under the MIT license (see LICENSE file)
 |#
 
+#+xcvb (module (:depends-on ("src/bordeaux-threads")))
+
 (in-package :bordeaux-threads)
 
 (warn "Either there is no Bordeaux-threads support for your
