LUA Make (Bachelor Thesis)

Make as a tool to control the software build process was introduced in 1979 and since then is the predominant tool for this task. Unlike then, software projects today are usually spread over multiple directories — a situation for which Make was not designed. As a consequence, the current practice of using Make recursively leads to problems: incomplete dependency specifications cause builds to fail or to contain subtle errors. This thesis analyzes the problem and derives from it a prototype for a new build tool called LUA Make. The result is an extensible build tool that uses a single, complete dependency graph and offers new abstractions: functions, close interaction between makefile and shell scripts, and scopes. Building open-source projects with LUA Make showed that the concepts and ideas behind LUA Make are capable to handle large software build processes, independent from the structure of the pro ject. We are thus confident that ideas explored in this thesis point into the right direction.

  • K. Herzig, “Lua make – bachelor’s thesis, department of computer science, saarland university, saarbrücken, germany,” , 2005.
    author = {Kim Herzig},
    title = {LUA Make - Bachelor's thesis, Department of Computer Science, Saarland University, Saarbrücken, Germany},
    year = {2005},