27.08.2010 13:08, Petr Pisar пишет:
On 2010-08-27, Pavel Alexeev (aka Pahan-Hubbitus) <forum@hubbitus.com.ru> wrote:
%{__perl} Makefile.PL INSTALLDIRS=vendor
OPTIMIZE="$RPM_OPT_FLAGS"

make %{?_smp_mflags}

I'm wonder why there used mix of macros %{__perl} and plain other
commands like make?
Because you cannot have macro for each shell command. (Actually you can,
but it would be silly). Personally, I don't like aliasing macros and
I prefer direct commands as it's simpler and more readable.

Actually macroses present for most used commands and I also now prefer plain comments in spec. But it is not main question.

      
Rpm say it is just perl command with path:
$ rpm --eval '%{__perl}'
/usr/bin/perl
Is there any advantage for that?

Probably perl interpreter had been in other location or under diferrent
name before. (E.g. transition between two incompatible perl versions).
This macro could be used to make easy the transition for package
maintainers. Or there had been used some addition perl arguments (like
-w). Or the macro was defined to allow spec file sharing between
distributions with different perl locations.

However this is just speculation. You need to ask the guy how invented
the macro. (It wasn't me :)
Off course. But question inspired by review https://bugzilla.redhat.com/show_bug.cgi?id=627024#c2 where main argument of its usage what it is some sort of standard because it used in template.
-- Petr