core/pkg-utils: add macro to escape-and-printf
authorYann E. MORIN <yann.morin.1998@free.fr>
Mon, 6 Jun 2016 20:43:38 +0000 (22:43 +0200)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tue, 7 Jun 2016 20:20:53 +0000 (22:20 +0200)
commitcc05f407bcf77bc5a5c74c5e237d5a5aa5194bba
tree5d19c48bff7ce512dbcc0009702ad48fb23e70fb
parent77f4c205b9c2b6346b479c6ed29ead74fe9637cf
core/pkg-utils: add macro to escape-and-printf

In some cases we need to escape make variables and pass them to
printf(1).

This is the case in our fs infra, where we want to shoe-horn the
commands to generate the filesystems in the fakeroot script, or the
devices, permissions and users tables to their respective files.

We currently do so by replacing $(sep) with the literal '\n' but that's
not enough. This does not protect against strings with an embedded '%'
or a backslash.

Add a new macro that properly escapes a string and calls printf(1), so
that we get the expected output.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/pkg-utils.mk