Next: , Previous: , Up: Controlling where ASDF saves compiled files   [Contents][Index]

9.2 Backward Compatibility

We purposely do not provide backward compatibility with earlier versions of ASDF-Binary-Locations (8 Sept 2009), common-lisp-controller (7.0) or cl-launch (2.35), each of which had similar general capabilities. The APIs of these programs were not designed for easy user configuration through configuration files. Recent versions of common-lisp-controller (7.2) and cl-launch (3.000) use the new asdf-output-translations API as defined below. ASDF-Binary-Locations is fully superseded and not to be used anymore.

This incompatibility shouldn’t inconvenience many people. Indeed, few people use and customize these packages; these few people are experts who can trivially adapt to the new configuration. Most people are not experts, could not properly configure these features (except inasmuch as the default configuration of common-lisp-controller and/or cl-launch might have been doing the right thing for some users), and yet will experience software that “just works”, as configured by the system distributor, or by default.

Nevertheless, if you are a fan of ASDF-Binary-Locations, we provide a limited emulation mode:

Function: enable-asdf-binary-locations-compatibility &key centralize-lisp-binaries default-toplevel-directory include-per-user-information map-all-source-files source-to-target-mappings

This function will initialize the new asdf-output-translations facility in a way that emulates the behaviour of the old ASDF-Binary-Locations facility. Where you would previously set global variables *centralize-lisp-binaries*, *default-toplevel-directory*, *include-per-user-information*, *map-all-source-files* or *source-to-target-mappings* you will now have to pass the same values as keyword arguments to this function. Note however that as an extension the :source-to-target-mappings keyword argument will accept any valid pathname designator for asdf-output-translations instead of just strings and pathnames.

If you insist, you can also keep using the old ASDF-Binary-Locations (the one available as an extension to load of top of ASDF, not the one built into a few old versions of ASDF), but first you must disable asdf-output-translations with (asdf:disable-output-translations), or you might experience “interesting” issues.

Also, note that output translation is enabled by default. To disable it, use (asdf:disable-output-translations).

Next: , Previous: , Up: Controlling where ASDF saves compiled files   [Contents][Index]