> SuSEfirewall2-3.6_SVNr175-alt0 Requires coreutils > -SuSEfirewall2-3.6_SVNr175-alt0 Requires module-init-tools > SuSEfirewall2-3.6_SVNr175-alt0 Requires perl(Net/DNS.pm) shell.req выдает честное предупреждение, что имеется "конфликт" между функцией внутри пакета и executable за пределами пакета. Этот конфликт решается в пользу функции внутри пакета, потому что как бы считается, что связи внутри пакета сильнее, чем между пакетами. Однако это грубое эвристическое правильно делает не всегда то, что нужно. shell.req: /usr/src/tmp/SuSEfirewall2-buildroot/sbin/SuSEfirewall2: modprobe() is possibly used before its definition shell.req: /usr/src/tmp/SuSEfirewall2-buildroot/sbin/SuSEfirewall2: modprobe() has execuatable candidate: modprobe -> module-init-tools (skip) shell.req: /usr/src/tmp/SuSEfirewall2-buildroot/etc/sysconfig/scripts/SuSEfirewall2-qdisc: modprobe() is possibly defined in /usr/src/tmp/SuSEfirewall2-buildroot/sbin/SuSEfirewall2 shell.req: /usr/src/tmp/SuSEfirewall2-buildroot/etc/sysconfig/scripts/SuSEfirewall2-qdisc: modprobe() has execuatable candidate: modprobe -> module-init-tools (skip) Вот кусочек скрипта /sbin/SuSEfirewall2: 271 if [ "$MODE" = debug ]; then 272 IPTABLES="iptables" 273 iptables() 274 { 275 echo iptables "$@" 276 } 277 IP6TABLES="ip6tables" 278 ip6tables() 279 { 280 echo ip6tables "$@" 281 } 282 TC="tc" 283 tc() 284 { 285 echo tc "$@" 286 } 287 modprobe() 288 { 289 echo modprobe "$@" 290 } 291 else Функция modprobe имеет приоритет над внешней командой modprobe. Здесь меня смущает то, что функция modprobe определена условно, и диагностика "used before its definition" по-видимому, неправильная. Я ещё над этим подумаю, но в целом чуда здесь ждать не следует. То есть rpm-build сработал скорее правильно.