From 754bbf7a25a8dda49b5d08ef0d0443bbf5af0e36 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Sun, 7 Apr 2024 13:41:34 -0500 Subject: new repository --- devdocs/gnu_make/variables-in-recipes.html | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 devdocs/gnu_make/variables-in-recipes.html (limited to 'devdocs/gnu_make/variables-in-recipes.html') diff --git a/devdocs/gnu_make/variables-in-recipes.html b/devdocs/gnu_make/variables-in-recipes.html new file mode 100644 index 00000000..00d1d05b --- /dev/null +++ b/devdocs/gnu_make/variables-in-recipes.html @@ -0,0 +1,20 @@ +

Using Variables in Recipes

The other way in which make processes recipes is by expanding any variable references in them (see Basics of Variable References). This occurs after make has finished reading all the makefiles and the target is determined to be out of date; so, the recipes for targets which are not rebuilt are never expanded.

Variable and function references in recipes have identical syntax and semantics to references elsewhere in the makefile. They also have the same quoting rules: if you want a dollar sign to appear in your recipe, you must double it (‘$$’). For shells like the default shell, that use dollar signs to introduce variables, it’s important to keep clear in your mind whether the variable you want to reference is a make variable (use a single dollar sign) or a shell variable (use two dollar signs). For example:

LIST = one two three
+all:
+        for i in $(LIST); do \
+            echo $$i; \
+        done
+
+

results in the following command being passed to the shell:

for i in one two three; do \
+    echo $i; \
+done
+
+

which generates the expected result:

one
+two
+three
+
+
+

+ Copyright © 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Free Software Foundation, Inc.
Licensed under the GNU Free Documentation License.
+ https://www.gnu.org/software/make/manual/html_node/Variables-in-Recipes.html +

+
-- cgit v1.2.3