how to define a rpm spec macro with empty body?

Dyno Fu picture Dyno Fu · Aug 13, 2010 · Viewed 8.2k times · Source

the problem is quite easy to exhibit:

rpm --eval "%define xyz"
error: Macro %xyz has empty body

i want to get the patch_level and echo_dist may return sles11 or sles11sp1, for sle1s11 i just want the patch_level to be an empty string, but that leads to the empty body error.

rpm --eval "%{expand: %%define patch_level %(echo_dist | sed -e "s/sles11//")}

i am not fully understand the rpm spec file, any suggestion to the problem?

Answer

user318904 picture user318904 · Oct 12, 2010

This might be what you are looking for:

%define xyz %{nil}