2010-08-13 15 views
9

le problème est assez facile à exposer:comment définir une macro de spécification RPM avec corps vide?

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

je veux obtenir le patch_level et echo_dist peut retourner SLES11 ou sles11sp1, pour sle1s11 je veux juste le patch_level d'être une chaîne vide, mais qui mène à la vide erreur corporelle. Je ne comprends pas entièrement le fichier de spécifications rpm, aucune suggestion au problème?

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

Répondre

17

Cela pourrait être ce que vous cherchez:

%define xyz %{nil} 
+1

Je pense que cela devrait être la réponse. bien que je ne teste pas encore par moi-même. –

1

Essayez

%define xyz %100 

censé étendre au paramètre de 100 à la macro qui sera vide.