RSSAmplifier

Blog

GNU Make

A Program for Directing Recompilation

make.mad-scientist.netRSS feed ↗9 posts

Latest posts

Deferred Simple Variable Expansion

Most users of GNU make are familiar with its two types of variables: recursive variables, where the value is expanded every time the variable is referenced, and simple variables, where the value is expanded only once: when the variable is assigned. But what if you wanted a variable that was expanded only once, but not [ ]

Managing Recipe Echoing

Today s compiler invocations often utilize a large number of flags and options, which can make reading the output from a make invocation difficult. But what s the best way to provide cleaner build output while still maintaining the ability to see the entire recipe, when necessary? I ve seen this handled various ways, but the simplest and [ ]

Switching GPG keys

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1,SHA512 I have generated a new 4096-bit RSA GPG key and am switching to it from my old key. All future signatures will be created using the new key. The old key was not compromised and can continue to be used safely but future correspondence should be encrypted using the [ ]

Metaprogramming Make VI — The eval Function

Metaprogramming is the ability of a program generate other programs, or even modify itself while running. This is the sixth in a series of posts exploring how to use metaprogramming in GNU make makefiles, discussing the eval function. The eval Function In previous posts we ve discussed the concepts of evaluation and expansion, and ways to [ ]

Metaprogramming Make V — Constructed Include Files

Metaprogramming is the ability of a program generate other programs, or even modify itself while running. This is the fifth in a series of posts exploring how to use metaprogramming in GNU make makefiles, discussing constructed include files. Constructed Include Files In previous posts we ve discussed the concepts of evaluation and expansion, and ways to [ ]

Metaprogramming Make IV — Secondary Expansion

Metaprogramming is the ability of a program generate other programs, or even modify itself while running. This is the fourth in a series of posts exploring how to use metaprogramming in GNU make makefiles, discussing secondary expansion. Secondary Expansion In previous posts we ve discussed the concepts of evaluation and expansion and recursive expansion. In this [ ]

Metaprogramming Make III — Constructed Macro Names

Metaprogramming is the ability of a program generate other programs, or even modify itself while running. This is the third in a series of posts exploring how to use metaprogramming in GNU make makefiles, discussing constructed macro names. Constructed Macro Names In previous posts we ve discussed the concepts of evaluation and expansion, including recursive expansion. [ ]

Metaprogramming Make II — Recursive Expansion

Metaprogramming is the ability of a program generate other programs, or even modify itself while running. This is the second in a series of posts exploring how to use metaprogramming in GNU make makefiles, discussing recursive expansion. Recursive Expansion In the first post in this series, we introduced the concepts of evaluation and expansion. From [ ]

Metaprogramming Make I — Evaluation and Expansion

This is the first in a series of posts discussing metaprogramming techniques in GNU make. Metaprogramming is the ability of a program generate a program or to modify itself while running. It turns out that GNU make has a number of facilities that can be considered metaprogramming , and these capabilities can be incredibly powerful in [ ]