Function Entry: CLAL-COMPILE-SYSTEM

← Prev | ↑ Chapter | Next → | Index | Symbols

Function Entry: CLAL-COMPILE-SYSTEM

Name

clal-compile-system

Class

clautolisp Extension Function

Syntax

(clal-compile-system output-file source-files)

Arguments and Values

  • output-file — a string naming the artefact. Required: there is no sensible default name for one built from several sources.
  • source-files — a proper list of strings naming AutoLISP source files, each resolved the way load resolves its argument.

Description

Compile several source files into ONE .lap application.

What this adds over calling clal-compile-file on each source is that all of them go through a single host compilation: literals can be coalesced across the whole system, and a function defined in a later file and called from an earlier one resolves without a warning at every forward reference. A system that did not share one compilation would be a loop the caller could write, so this one always shares it.

Return Values

T when the artefact was written; nil when a source could not be located (with errno 73) or the host compiler failed.

Side Effects

Writes the artefact. Does not define anything in the calling image.

Exceptional Situations

Signals :bad-argument when output-file is nil or source-files is empty, :compiler-not-available in a build without the compiler, and from require-proper-list when source-files is not a proper list.

Examples

(clal-compile-system "myapp.lap" '("geometry.lsp" "commands.lsp"))
=> T
(load "myapp.lap")

Availability

  • clautolisp: since 2.0.9; writes a .lap since 2.0.10.
  • AutoCAD: NOT present (the analogue is the Make Application wizard, producing .vlx).
  • BricsCAD: NOT present (the analogue is DEScoder, producing .des).

Source Notes

  • clautolisp-only extension; specified by pjb 2026-08-27.