All Manuals > LispWorks Release Notes and Installation Guide > 15 Release Notes


15.17 Application delivery changes

See the LispWorks Delivery User Guide for more details of the changes mentioned in this section.

15.17.1 New default for the :keep-modules deliver keyword argument

The :keep-modules keyword argument to lw:deliver now defaults to nil, rather than (< *delivery-level* 1). We recommend using require to load all modules before delivery.

15.17.2 Saving a split dynamic library on non-Windows platforms

The :split keyword argument to hcl:save-image and lw:deliver now works for a Lisp dynamic library on all platforms (previously it only worked on Microsoft Windows). Using :split :resources for a dynamic library on Mac OS X create a Resources directory adjacent to the dynamic library, as in a framework bundle.

15.17.3 Passing extra linker arguments when making a dynamic library

The functions hcl:save-image and lw:deliver now take a keyword argument :dll-extra-link-options, which allows extra arguments to be passed to the linker when making a dynamic library. This option has existed since LispWorks 6.0 but has not been documented until now.

15.17.4 LispWorks dlls on Linux now require specific versions of the C library symbols

During delivery of a dynamic library on Linux, LispWorks now links to specific versions of symbols in the C library. This makes it more likely that the library will work on older versions of Linux. Libraries created with previous versions of LispWorks would depend on the version of Linux used to deliver them.

15.17.5 Simplified use of LispWorks as a dynamic library in Java

Delivering LispWorks as a dynamic library to be loaded by Java is made simpler by the new function lw-ji:setup-deliver-dynamic-library-for-java. Normally all you need to do is add a call lw-ji:setup-deliver-dynamic-library-for-java without arguments before calling deliver.

There is an example of this in:

(example-edit-file "java/lisp-as-dll/deliv-script")

The new function lw-ji:get-host-java-virtual-machine returns the host Java virtual machine when it is called in a dynamic library that was delivered with a call setup-deliver-dynamic-library-for-java, and the dynamic library was loaded by Java.

15.17.6 Macintosh computers with non-ASCII names

Applications using temporary files will now run on Macintosh computers with non-ASCII names.

LispWorks Release Notes and Installation Guide - 19 Oct 2017