rpmbuild -bb --define '_foobar Foo' somespecfile.spec
and refer it within the spec as %{_foobar}
(the _ is a convention, not a must)
Question
is it possible to pass parameters to rpmbuild to fill user defined variables that are called inside the spec file?
Example: The user defined variable %{foobar} which is called in the .spec file (but empty) should be filled with the variable which is passed when executing the rpmbuild command
rpmbuild -bb --foobar="Foo" somespecfile.spec
Solution
rpmbuild -bb --define '_foobar Foo' somespecfile.spec
and refer it within the spec as %{_foobar}
(the _ is a convention, not a must)
OTHER TIPS
The closest you can get AFAIK are conditional builds, which allow you to do things like
rpmbuild -ba newpackage.spec --with feature
could add this into the SPEC file:
%define _topdir %(echo $PWD)/