Topics: Software : Build Management

Software builds are a core part of the software development lifecycle. Builds are where source files are converted into executable software products.The classic tool for automating software builds is the Unix "make" program, which was invented around 1974 to reduce software build times for C programs on the new Unix operating system. Make programs decide whether source files need rebuilding based by using text Makefiles that contain dependency trees, and by comparing timestamps on source files and object files.Beginning in the 1980s, integrated development environments (IDEs) began to do software builds of IDE "project files" themselves, reducing the need for people to write traditional makefiles for software builds of IDE projects.However, makefiles are still very useful for software build operations that go beyond individual IDE projects, and so many modern IDEs generate external makefiles for IDE projects.Around the turn of the millenium (2000), a new generation of build manager tools began to emerge, as people tried to solve the still-present problem of software builds using interactive GUI interface technologies developed in the 1990s. The trend of developing software on personal computers under Windows played a big part in motivating the new generation of GUI-interface tools, since the Windows world was a GUI world, unlike previous decades of Unix systems.This new generation of GUI-oriented tools helped people to interactively script and manage build processes using a GUI interface, rather than using traditional makefiles. Instead of coding lines in a troublesome makefile syntax, people could "code" the steps of their build process using more friendly GUI dialog boxes, and could click to execute various steps in the build process. Especially for individual programmers, these tools proved quite useful.Some of the essential goals of a build manager tool are to provide a nicer GUI interface for people, to provide a more friendly way of specifying build process steps, and to provide additional functionality and interactive build management convenience through the interface.But build manager tools do not typically address the deeper problems of larger-scale builds that involve multiple languages, larger numbers of files and platforms and components, pervasive parallelism and distribution over remote machines, or other complex aspects of scalable builds. For this kind of problem, build management _systems_ are required.

Build Management Systems Build Management Systems View: News Rack - Sub-Categories - DMoz
Build management systems improve productivity for software builds by providing more functionality than build manager tools.
More »

Build Manager Tools Build Manager Tools View: News Rack - Sub-Categories - DMoz
Build manager tools improve productivity for software builds by providing more functionality than make programs provide.
More »

Makefile Generators Makefile Generators View: News Rack - Sub-Categories - DMoz
Makefile generators reduce the human costs of software builds by automating some of the tedious and error-prone work of creating makefiles.
More »

Make Tools Make Tools View: News Rack - Sub-Categories - DMoz
Make programs help to manage the complexity of buildingsoftware programs from many source file and librarycomponents.
Ant, More »

Resources Resources View: News Rack - Sub-Categories - DMoz
This category lists research papers and websites that provide useful information related to make programs and the overall software build problem.
More »

Help build the largest human-edited directory on the web.