Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Common Lisp X11 interface
Common Lisp Makefile
branch: master

bug22677: add defpatch for clx rebuild

Change-Id: I3d2468495e2fa30870a3b1704181e1c452e7981b
latest commit fb8d31b0bb
@dklayer dklayer authored
Failed to load latest commit information.
debug see ACL #15 entry for Tue Sep 29 10:55:59 1998
demo Initial revision
test Initial revision
.gitignore add ignored files
CHANGES Initial revision
NEWCHANGES updated for 4.1 Mips
README see ChangeLog for Wed Oct 01 17:56:10 1997 Tom McClure <tomj@falcon> prepare ofor smp [bug18657] prepare ofor smp [bug18657] Initial revision revise and cleanup earlier smp mods [made as bug18657] 2009-05-04 Duane Rettig <> MIT R5.0, ACL #4 revise and cleanup earlier smp mods [made as bug18657] Initial revision Initial revision Fix warning counts
excldep.c see ACL #8 changelog entry for Tue Dec 23 14:43:20 1997 revise and cleanup earlier smp mods [made as bug18657] fix incorrect uses of sharable-lock macros [bug20514] Initial revision Initial revision prepare ofor smp [bug18657] Initial revision prepare ofor smp [bug18657] see ChangeLog for Wed Oct 01 17:56:10 1997 Tom McClure <tomj@falcon> Initial revision
ms-patch.uu Initial revision Initial revision Initial revision
socket.c see 4.3.devel.12 changelog entry for Mon Jan 22 22:06:56 1996 Duane R… fix incorrect uses of sharable-lock macros [bug20514]


     This file contains instructions on how to make CLX work with Franz
Allegro Common Lisp.  CLX should work on any machine that supports
ACL version 3.1.10 or greater.  For running on Windows NT with X display
software such as Hummingbird's Exceed or StarNet's XWin32, skip to the

 NOTE:  Normally you will not need to follow the instructions in this file.
	We supply a pre-built copy of CLX with your Allegro CL tape.  You
	should only need to rebuild CLX if you make changes to the source,
	or load patches that change the behaviour of the Allegro compiler.
	(If we send you any such patches, we will let you know so that you
	can recompile your application).

 NOTE:  We now include the TI CLX documentation -- see the doc/ directory.

 NOTE:  This distribution is not exactly the same as the one provided by MIT.
	Specifically, this distribution will *ONLY* work with Allegro versions
	greater than 3.1.10 (includes most released versions of 3.1, 4.0, and
	4.1).  If you need CLX for an older version of Allegro, please use
	the one available from the X Consortium at MIT.

     There are two steps to compile and install CLX.  The first is compiling
the source files into fasl files.  The fasl files will be combined into one
big fasl file, CLX.fasl.  This file is then installed in your Common Lisp
library directory in the next step.  You may need to edit the Makefile to
select the proper CFLAGS for your machine -- look in Makefile for examples.
Then just:

% make

     Now you must move the CLX.fasl file into the standard CL library.
This is normally "/usr/local/lib/cl/code", but you can find out for sure
by typing:

<cl> (directory-namestring excl::*library-code-pathname*)

to a running Lisp.  If it prints something other than "/usr/local/lib/cl/code"
substitute what it prints in the below instructions.

% mv CLX.fasl /usr/local/lib/cl/code/clx.fasl
% mv *.o /usr/local/lib/cl/code

Now you can just start up Lisp and type:

<cl> (load "clx")

to load in CLX.  You may want to dump a lisp at this point since CLX is a large
package and can take some time to load into Lisp.  You probably also want to
set the :generation-spread to 1 while loading CLX.  Please see your Allegro CL
User Guide for more information on :generation-spread.

     Sophisticated users may wish to peruse the Makefile and
and note how things are set up.  For example we hardwire the compiler
interrupt check switch on, so that CL can still be interrupted while it
is reading from the X11 socket.  Please see chapter 7 of the CL User's
guide for more information on compiler switches and their effects.

Please report Franz specific CLX bugs to:


Building and running on Windows NT

(1) With ACL 4.3.2 or later, :cd to the directory containing the clx

(2) :ld - this should create winclx.fasl in that
directory.  Feel free to move winclx.fasl to a convenient location.

(3) In a fresh lisp, :ld winclx.fasl.  You should now be able to
open your display, assuming your X display software is running and
tcp/ip is installed, with: (xlib:open-display "localhost")
Something went wrong with that request. Please try again.