DocumentCode
732084
Title
Make It Simple - An Empirical Analysis of GNU Make Feature Use in Open Source Projects
Author
Martin, Douglas H. ; Cordy, James R. ; Adams, Bram ; Antoniol, Giulio
fYear
2015
fDate
18-19 May 2015
Firstpage
207
Lastpage
217
Abstract
Make is one of the oldest build technologies and is still widely used today, whether by manually writing Make files, or by generating them using tools like Auto tools and CMake. Despite its conceptual simplicity, modern Make implementations such as GNU Make have become very complex languages, featuring functions, macros, lazy variable assignments and (in GNU Make 4.0) the Guile embedded scripting language. Since we are interested in understanding how widespread such complex language features are, this paper studies the use of Make features in almost 20,000 Make files, comprised of over 8.4 million lines, from more than 350 different open source projects. We look at the popularity of features and the difference between hand-written Make files and those generated using various tools. We find that generated Make files use only a core set of features and that more advanced features (such as function calls) are used very little, and almost exclusively in hand-written Make files.
Keywords
Electronic mail; Generators; Grammar; Libraries; Linux; Pattern matching; Software; Make; build systems; feature analysis;
fLanguage
English
Publisher
ieee
Conference_Titel
Program Comprehension (ICPC), 2015 IEEE 23rd International Conference on
Conference_Location
Florence, Italy
Type
conf
DOI
10.1109/ICPC.2015.31
Filename
7181449
Link To Document