Four Languages and Lots of Macros: Analyzing Autotools Build Systems
Build systems are crucial for software system development, however there is a lack of tool support to help with their high maintenance overhead. GNU Autotools are widely used in the open source community, but users face various challenges from its hard to comprehend nature and staging of multiple code generation steps, often leading to low quality and error-prone build code. In this paper, we present a platform, AutoHaven, to provide a foundation for developers to create analysis tools to help them understand, maintain, and migrate their GNU Autotools build systems. Internally it uses approximate parsing and symbolic analysis of the build logic. We illustrate the use of the platform with two tools: ACSense helps developers to better understand their build systems and ACSniff detects build smells to improve build code quality. Our evaluation shows that AutoHaven can support most GNU Autotools build systems and can detect build smells in the wild.
this URL might only work when visiting from a http://www.sigplan.org/ URL.
Tue 24 Oct Times are displayed in time zone: (GMT-07:00) Tijuana, Baja California change
|13:30 - 13:55|
Jafar M. Al-KofahiIowa State University, USA, Suresh KothariIowa State University, USA, Christian KästnerCarnegie Mellon University, USADOI Authorizer link
|13:55 - 14:20|
Leonardo FernandesFederal University of Pernambuco, Brazil, Márcio RibeiroFederal University of Alagoas, Brazil, Luiz CarvalhoFederal University of Alagoas, Brazil, Rohit GheyiFederal University of Campina Grande, Brazil, Melina MongioviFederal University of Campina Grande, Brazil, Andre Santos, Ana CavalcantiUniversity of York, UK, Fabiano FerrariFederal University of São Carlos, Brazil, José Carlos MaldonadoUniversity of São Paulo, BrazilDOI Authorizer link
|14:20 - 14:45|
Tomoki NakamaruUniversity of Tokyo, Japan, Kazuhiro IchikawaUniversity of Tokyo, Japan, Tetsuro YamazakiUniversity of Tokyo, Japan, Shigeru ChibaUniversity of Tokyo, JapanDOI Authorizer link
|14:45 - 15:00|
Vadim ZaytsevRaincode Labs, BelgiumDOI Authorizer link