Update of /project/elephant/cvsroot/elephant In directory common-lisp.net:/tmp/cvs-serv6453
Modified Files: NEWS INSTALL CREDITS Log Message: win32 fixes (thanks to Bill Clementson)
Date: Fri Oct 8 02:53:04 2004 Author: blee
Index: elephant/NEWS diff -u elephant/NEWS:1.5 elephant/NEWS:1.6 --- elephant/NEWS:1.5 Sun Sep 19 19:38:25 2004 +++ elephant/NEWS Fri Oct 8 02:53:04 2004 @@ -1,3 +1,8 @@ +October 7, 2004 - + +Elephant 0.2.1 released. Thanks to Bill Clementson, +Elephant should compile on Win32 now. Also, a few minor +fixups.
September 19, 2004 -
Index: elephant/INSTALL diff -u elephant/INSTALL:1.9 elephant/INSTALL:1.10 --- elephant/INSTALL:1.9 Sun Sep 19 19:37:03 2004 +++ elephant/INSTALL Fri Oct 8 02:53:04 2004 @@ -4,25 +4,29 @@ ------------
CMUCL 19a, SBCL 0.8.14, OpemMCL 0.14.2, or Allegro CL 6.2. -I've tested under x86 FreeBSD, Linux and PPC Darwin. A -Lispworks version will come if requested. +I've tested under x86 FreeBSD, Linux and PPC Darwin. I +can't personally test Win32 but I've compiled under Visual +Studio .NET and a user has gotten it to work with Visual +Studio 6. A Lispworks version will come if requested.
ASDF - http://www.cliki.net/asdf
-UFFI 1.4.24/5 - http://uffi.b9.com +UFFI 1.4.24+ - http://uffi.b9.com
I've patched src/functions.lisp to support some kinds of :out arguments. it is backwards-compatible so shouldn't interfere with your existing work. It is included in -1.4.25, but just in case you have 1.4.24 I have included it. +1.4.25+, but just in case you have 1.4.24 I have included +it.
Sleepycat Berkeley DB 4.2 - http://www.sleepycat.com
The version number is important -- the headers have changed -siginificantly. +siginificantly. When 4.3 comes out, I'll have to reroll my +constants.....
-A C compiler. Presumably you have this if you installed -Sleepycat. +A C compiler, probably gcc or Visual Studio. Presumably you +have this if you installed Sleepycat.
------------ Instructions @@ -34,22 +38,27 @@
/usr/local/share/common-lisp/elephant-0.1/
-1) Install UFFI 1.4.24. Replace +1) Install UFFI. If you're using 1.4.24 replace
path-to-uffi/src/functions.lisp
with the provided file.
-2) Install Berkeley DB 4.2. You may actually already have -this installed. FreeBSD has a port for this, as I'm sure -do other BSDs (including Darwin/Fink.) Take note of where -libdb.so and db.h are installed (usually +2) Install Berkeley DB 4.2. Under Un*x, you may actually +already have this installed, though it may be compiled with +funny options, so if things don't work you may want to try +to start from scratch. FreeBSD has a port for this, as I'm +sure do other BSDs (including Darwin/Fink.) Take note of +where libdb.so and db.h are installed (usually /usr/local/BerekleyDB.4.2/lib/libdb.so and /usr/local/BerekleyDB.4.2/include/db.h, or /usr/local/lib/db42/libdb.so and /usr/local/include/db42/db.h.)
-3) Edit Makefile and run (using GNU make, gmake on BSD) +3) Compile and install the libsleepycat shared library. + +Under Un*x, edit Makefile and run (using GNU make, gmake on +BSD)
make install
@@ -60,10 +69,28 @@ or where you specified. On Darwin / OS X you need to have the developer tools installed.
+For Win32 (directions courtesy of Bill Clementson): + +Create an MSVC dll project and add src/libsleepycat.c, +src/libsleepycat.def and the Berkeley DB libdb42.lib files +to the project (should be in the build_win32/release folder) + +Add the Berkeley DB dbinc include files directory and the +build_win32/release directory (where the Berkeley DB install +instructions builds the Berkeley DB objects by default) to +the build directories for the project + +Build the Elephant DLL file + +Since you've statically included libdb42.lib inside +libsleepycat.c, it may or may not be necessary to load +libdb42.dll into Lisp (see below.) + 4) Compile and load Elephant:
First, edit src/sleepycat.lisp so that it points to the -correct libraries. +correct libraries. If you're using Un*x and ASDF, this is +probably automagic.
Symlink elephant.asd to your asdf systems directory (mine is /usr/local/share/common-lisp/systems). Fire up lisp and
Index: elephant/CREDITS diff -u elephant/CREDITS:1.3 elephant/CREDITS:1.4 --- elephant/CREDITS:1.3 Sun Sep 19 19:36:22 2004 +++ elephant/CREDITS Fri Oct 8 02:53:04 2004 @@ -18,6 +18,8 @@
Rafal Strzalinski for the Makefile and package patch
+Bill Clementson for Win32 help and publicity + The common-lisp.net people for hosting
The CMUCL and SBCL people for great compilers