version control

Articles

Making an XML bill of materials in GNU Make

In this article I present a simple technique that causes GNU Make to create a XML file containing a "bill of materials" or BoM.  The BoM contains the names of all the files built by the Makefile and is nested to show the prerequisites of target.

John Graham-Cumming's picture John Graham-Cumming
The Basics: Getting environment variables into GNU Make

The most basic rule of GNU Make and the environment is that any variable set in the environment when GNU Make is started will be available as a GNU Make macro inside the Makefile.

John Graham-Cumming's picture John Graham-Cumming
Makefile Optimization: $(eval) and macro caching

The $(eval) function was introduced in GNU Make 3.80 but was a little buggy, 3.81 has fixed those bugs in $(eval) is ready for prime time.  $(eval)'s argument is expanded and then parsed as if it were part of a Makefile.   

John Graham-Cumming's picture John Graham-Cumming
Make: Sorting and Searching

Ask Mr. Make covera two important topics for Makefile builders with a round up of techniques for sorting and searching inside Makefiles and on the file system.

John Graham-Cumming's picture John Graham-Cumming
Target-specific and Pattern-specific GNU Make macros

This article introduces target- and pattern-specific variables and shows how they can be used to selectively alter options within a build based on the name of a target or targets being built.

John Graham-Cumming's picture John Graham-Cumming
Principles of Agile Version Control: From Object-oriented Design to Project-oriented Branching

In this article, the authors explore translation of object-oriented design principles to codelines, branching, and promotion. In addition, they expand on the concept of moving from task-based development (TBD) to project-oriented branching (POB).

Making directories in GNU Make

This article looks at a variety of ways to achieve directory creation in GNU Make and points out a common trap for the unwary.

John Graham-Cumming's picture John Graham-Cumming
Merging Defect Fixes into the Development Codeline

No matter what type of software you develop, from internal IT applications to web applications to commercial software packages, fixing bugs following a release is part of the software development lifecycle. Realistically, software maintenance can be a project by itself. However, the process of merging production fixes into the development codeline is an equally significant effort. Unfortunately, the effort required to merge production fixes into the development codeline can be grossly underestimated and improperly staffed even by organizations that practice otherwise good software development.

Michael Sayko
Principles of Agile Version Control: From OOD to TBD

In this article, the authors discuss the principles of version control that help enable agile development. With an understanding of the principles of object-oriented design, as well as the principles of agile development, they can derive the principles of agile version control. We focus on the principles of object-oriented design (OOD) and how we can use them to derive corresponding version control principles for task-based development (TBD).

Rebuilding When a File's Checksum Changes

In this article, Ask Mr. Make shows a simple hack to GNU Make to cause it to do the right thing when the contents of a source file change.

John Graham-Cumming's picture John Graham-Cumming

Pages

CMCrossroads is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.