loading page

Building the LLVM and GCC Translation Systems, with Amake
  • Jim Buffenbarger
Jim Buffenbarger
Boise State University

Corresponding Author:buff@cs.boisestate.edu

Author Profile


This paper describes the author’s exploratory experience of porting the build systems of two large software distributions, the LLVM and GCC programming-language translation systems, to the Amake build tool. Amake is an enhanced derivative of the very popular GNU Make. Amake adds automatic language-independent dependency analysis and site-wide heterogeneous target caching. Amake also supports GNU Make’s parallel-build capabilities. This experience included (mostly) expected changes to both of these build systems, but somewhat surprising changes to Amake’s design and implementation. A description of the former changes is hoped to encourage developers to migrate their build systems to Amake. The latter changes showcase Amake’s most recently added features.