-<?xml version='1.0' ?> <!-- -*- DocBook -*- -->
+<?xml version='1.0' ?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
<!ENTITY % myents SYSTEM "entities.xml">
<title>Prerequisites</title>
<sect2>
- <title>&defsystem;</title>
+ <title>&asdf;</title>
<para> &clsql; uses &asdf; to compile and load its
components. &asdf; is included in the <ulink
url="http://cclan.sourceforge.net"><citetitle>&cclan;</citetitle></ulink> collection.
<title>Installation</title>
<sect2>
- <title>Ensure &defsystem; is loaded</title>
+ <title>Ensure &asdf; is loaded</title>
<para>
- Simply load the file <filename>defsystem.lisp</filename>.
- <programlisting>
-(load "defsystem.lisp")
- </programlisting>
+ Simply load the file <filename>asdf.lisp</filename>.
+ <screen>
+(load "asdf.lisp")
+ </screen>
</para>
</sect2>
parameters and return values. The &ffi; in most &clsql;
implementations do not support 64-bit integers. Thus, C helper
libraries are required to break these 64-bit integers into two compatible
- 32-bit integers.
+ 32-bit integers. The helper libraries reside in the directories
+ <filename>uffi/</filename> and <filename>db-mysql</filename>.
</para>
- <para>Makefiles for Microsoft Windows and GNU/Solaris systems
- are supplied to build the libraries. Since many Microsoft Windows
- users don't have access to a compiler, the <type>DLL</type> and <type>LIB</type>
- files for Microsoft Windows are supplied with the distribution.
- </para>
+ <sect3>
+ <title>&mswindows;</title>
+ <para>
+ Files named <filename>Makefile.msvc</filename> are supplied
+ for building the libraries under Microsoft Windows. Since
+ &mswindows; does not come with that compiler, compiled
+ <type>DLL</type> and <type>LIB</type> library files are
+ supplied with &clsql;.
+ </para>
+ </sect3>
+
+ <sect3>
+ <title>&unix;</title>
+ <para>
+ Files named <filename>Makefile</filename> are supplied for building the libraries
+ under &unix;. However, the <filename>.asd</filename> automatically invoke
+ the makefiles when necessary. So, manual building of the helper libraries
+ is not necessary on &unix;.
+ </para>
+ </sect3>
- <para>To build the libraries on a GNU or Solaris, use the shell and
- change to the root directory of &clsql;. You may need to edit the file
- <filename>interfaces/mysql/Makefile</filename>
- to specify the location of your
- MySQL installation. The default Makefiles are setup for shared library
- linking on Linux. If you are using FreeBSD or Solaris, you will need
- to change the linker setting as instructed in the Makefile.
- Then, you can give the command
- <programlisting>
-make libs
- </programlisting>
- in the root directory of &clsql; to build the libraries
- <filename>interfaces/mysql/clsql-mysql.so</filename>
- and <filename>interfaces/clsql-uffi/clsql-uffi.so</filename>.
- </para>
</sect2>
<sect2>
<title>Load &uffi;</title>
<para>
Unzip or untar the &uffi; distribution which creates a directory
- for the &uffi; files. Add that directory to Defsystem's <varname>asdf:*central-registry*</varname>.
+ for the &uffi; files. Add that directory to &asdf;'s <varname>asdf:*central-registry*</varname>.
You can do that by pushing the pathname of the directory onto this variable.
The following example code assumes the &uffi; files reside in the
<filename>/usr/share/lisp/uffi/</filename>
directory.
- <programlisting>
+ <screen>
(push #P"/usr/share/lisp/uffi/" asdf:*central-registry*)
-(asdf:oos 'asdf:load-op :uffi)
- </programlisting>
+(asdf:operate 'asdf:load-op :uffi)
+ </screen>
</para>
</sect2>
<sect2>
<para>
If you plan to use the clsql-postgresql-socket interface, you must load the md5 module.
Unzip or untar the cl-md5 distribution, which creates a directory for the cl-md5 files.
- Add that directory to Defsystem's <varname>asdf:*central-registry*</varname>.
+ Add that directory to &asdf;'s <varname>asdf:*central-registry*</varname>.
You can do that by pushing the pathname of the directory onto this variable.
The following example code assumes the cl-md5 files reside in the
<filename>/usr/share/lisp/cl-md5/</filename>
directory.
- <programlisting>
+ <screen>
(push #P"/usr/share/lisp/cl-md5/" asdf:*central-registry*)
-(asdf:oos 'asdf:load-op :md5)
- </programlisting>
+(asdf:operate 'asdf:load-op :md5)
+ </screen>
</para>
</sect2>
<title>Load &clsql; modules</title>
<para>
Unzip or untar the &clsql; distribution which creates a directory
- for the &clsql; files. Add that directory to Defsystem's <varname>asdf:*central-registry*</varname>.
+ for the &clsql; files. Add that directory to &asdf;'s <varname>asdf:*central-registry*</varname>.
You can do that by pushing the pathname of the directory onto this variable.
The following example code assumes the &clsql; files reside in the
<filename>/usr/share/lisp/clsql/</filename>
directory. You need to load, at a minimum,
the main <symbol>:clsql</symbol> system and at least one interface system.
- <programlisting>
+ <screen>
(push #P"/usr/share/lisp/clsql/" asdf:*central-repository*)
-(asdf:oos 'asdf:load-op :clsql-base) ; base clsql package
-(asdf:oos 'asdf:load-op :clsql-mysql) ; MySQL interface
-(asdf:oos 'asdf:load-op :clsql-postgresql) ; PostgreSQL interface
-(asdf:oos 'asdf:load-op :clsql-postgresql-socket) ; Socket PGSQL interface
-(asdf:oos 'asdf:load-op :clsql-aodbc) ; Allegro ODBC interface
-(asdf:oos 'asdf:load-op :clsql) ; main clsql package
- </programlisting>
+(asdf:operate 'asdf:load-op 'clsql-base) ; base clsql package
+(asdf:operate 'asdf:load-op 'clsql-mysql) ; MySQL interface
+(asdf:operate 'asdf:load-op 'clsql-postgresql) ; PostgreSQL interface
+(asdf:operate 'asdf:load-op 'clsql-postgresql-socket) ; Socket PGSQL interface
+(asdf:operate 'asdf:load-op 'clsql-aodbc) ; Allegro ODBC interface
+(asdf:operate 'asdf:load-op 'clsql) ; main clsql package
+ </screen>
</para>
</sect2>
<sect2>
<title>Run test suite</title>
<para>
- After loading &clsql;, you can execute the test program in
- the directory <filename>./test-suite</filename>. The test file,
- <filename>tester-clsql</filename>
- has instructions for creating a <filename>test.config</filename>.
- After creating that file, simple load the test file with Lisp
- and the tests should automatically execute.
+ After loading &clsql;, you can execute the test suite. A configuration
+ file named <filename>.clsql-test.config</filename> must be created
+ in your home directory. There are instructures on the format of that file
+ in the <filename>tests/tests.lisp</filename> file in the &clsql;
+ source directory. After creating that file, you can run the test suite
+ with &asdf;:
+ <screen>
+ (asdf:operate 'asdf:test-op 'clsql)
+ </screen>
</para>
</sect2>
</sect1>
-
+
</chapter>
+