Reference articles on history, science, culture and more
Encyclopedia

Configuration Menu Language

Language and system for compiling the Linux kernel

Configuration Menu Language (CML) was used, in Linux kernel versions prior to 2.5.45, to configure the values that determine the composition and exact functionality of the kernel.

01CML

Many possible variations in kernel functionality can exist; and customization is possible, for instance for the specifications of the exact hardware it will run on. It can also be tuned for administrator preferences.

CML was written by Raymond Chen in 1993. Its question-and-answer interface allowed systematic selection of particular behaviors without editing multiple system files.

02CML2

Eric S. Raymond wrote a menu-driven module named CML2 to replace it, but it was officially rejected. Linus Torvalds attributed the rejection in a 2007 lkml.org post to a preference for small incremental changes, and concern that the maintainer had not been involved in the rewrite. "You can't just...go do your own thing and expect it to be merged," he said, noting that Raymond "left with a splash" over the rejection.

LinuxKernelConf replaced CML in kernel version 2.5.45, and remains in use for the 4.0 kernel.

Watch videos about Configuration Menu LanguageExplainers and documentaries on YouTube (opens in a new tab)

Sources and credits

This article is adapted from the Wikipedia article Configuration Menu Language, written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.

Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.