diff --git a/clx/build-clx.lisp b/clx/build-clx.lisp
new file mode 100644
index 0000000000000000000000000000000000000000..4e7b7258a60daf57b826ec148a46e8a8f1211f96
--- /dev/null
+++ b/clx/build-clx.lisp
@@ -0,0 +1,25 @@
+;;; -*- Mode: Lisp; Package: Xlib; Log: clx.log -*-
+
+;;; Load this file if you want to compile CLX in its entirety.
+
+(proclaim '(optimize (speed 3) (safety 0) (space 1)
+		     (compilation-speed 0)))
+
+
+;;; Hide CLOS from CLX, so objects stay implemented as structures.
+;;;
+(when (find-package "CLOS")
+  (rename-package (find-package "CLOS") "NO-CLOS-HERE"))
+(when (find-package "PCL")
+  (rename-package (find-package "PCL") "NO-PCL-HERE"))
+
+
+(when (find-package "XLIB")
+  (rename-package (find-package "XLIB") "OLD-XLIB"))
+
+;(make-package "XLIB" :use '("LISP"))
+
+
+(compile-file "clx:defsystem.lisp" :error-file nil)
+(load "clx:defsystem.fasl")
+(xlib:compile-clx (pathname "clx:"))