Next: , Previous: , Up: ASDF: Another System Definition Facility   [Contents][Index]


1 Introduction

ASDF, or Another System Definition Facility, is a build system: a tool for specifying how systems of Common Lisp software are made up of components (sub-systems and files), and how to operate on these components in the right order so that they can be compiled, loaded, tested, etc. If you are new to ASDF, see the quick start guide.

ASDF presents three faces: one for users of Common Lisp software who want to reuse other people’s code, one for writers of Common Lisp software who want to specify how to build their systems, and one for implementers of Common Lisp extensions who want to extend the build system. For more specifics, see Using ASDF, to learn how to use ASDF to load a system. See Defining systems with defsystem, to learn how to define a system of your own. See The Object model of ASDF, for a description of the ASDF internals and how to extend ASDF.

Note that ASDF is not a tool for library and system installation; it plays a role like make or ant, not like a package manager. In particular, ASDF should not to be confused with Quicklisp or ASDF-Install, that attempt to find and download ASDF systems for you. Despite what the name might suggest, ASDF-Install was never a part of ASDF; it was always a separate piece of software. ASDF-Install has also been unmaintained and obsolete for a very long time. We recommend you use Quicklisp (http://www.quicklisp.org/) instead, a Common Lisp package manager which works well and is being actively maintained. If you want to download software from version control instead of tarballs, so you may more easily modify it, we recommend clbuild (http://common-lisp.net/project/clbuild/). As for where on your filesystem to install Common Lisp software, we recommend subdirectories of ~/common-lisp/: starting with ASDF 3.1.2 (2014), this hierarchy is included in the default source-registry configuration.

Finally, note that this manual is incomplete. All the bases are covered, but many advanced topics are only barely alluded to, and there is not much in terms of examples. The source code remains the ultimate source of information, free software systems in Quicklisp remain the best source of examples, and the mailing-list the best place to ask for help.


Next: Quick start summary, Previous: ASDF: Another System Definition Facility, Up: ASDF: Another System Definition Facility   [Contents][Index]