Define your own function in a Makefile
Looking at some targets of my Makefile I saw that there were some duplication. I didn't know that I could create functions... Until now :-)
Here is a simple Makefile with a custom function:
define generate_file
sed 's/{NAME}/$(1)/' greetings.tmpl >$(2).txt
endef
all:
$(call generate_file,John Doe,101)
$(call generate_file,Peter Pan,102)
Contents of greetings.tmpl
:
Hello {NAME}
This is how you execute your custom function:
$(call <name_of_function>[, <param>][,<param>][,...])
In your function the first parameter becomes $(1)
, the second $(2)
, etc.
When you run make
it produces two files:
101.txt:
Hello John Doe
102.txt:
Hello Peter Pan
Written by Julien Gonzalez
Related protips
Have a fresh tip? Share with Coderwall community!
Post
Post a tip
Best
#Make
Authors
Sponsored by #native_company# — Learn More
#native_title#
#native_desc#