[Fedora-users-br] Criar pacote RPM, modsecurity

Eduardo Habkost ehabkost em raisama.net
Sex Ago 24 15:15:32 UTC 2007


On Thu, Aug 23, 2007 at 11:34:16PM -0300, Renato de Oliveira Diogo wrote:
[...]
> %if %(if [ -f "/etc/httpd/build/special.mk" ]; then echo 1 ; elif [ -f
> "/usr/lib/httpd/build/special.mk" ]; then echo 2 ; else echo -1; fi)
>        %define _apacheroot /etc/httpd
> %else
>         %define _apacheroot /usr/lib/httpd
> %endif
> ==
> 
> Pelo que vi aqui, ele deve retornar o valor para entrar no else (%define
> _apacheroot /usr/lib/httpd), porém isto não ocorre.

Não sei o que o autor do %if tinha em mente, mas do jeito que está
escrito, ele nunca vai entrar no %else, porque tanto "1", quanto "2"
quanto "-1" são considerados como 'true' ao avaliar o %if.

Você pode:

- Consertar o texto dentro do %(if ...) para fazer 'echo 0' no caso em que
  tenha que entrar no %else; ou
- Remover tudo e deixar apenas a linha %define _apacheroot /usr/lib/httpd
  (caso você decida que o %if não é importante e o seu pacote vá funcionar
  se você usar /usr/lib/httpd incondicionalmente)

-- 
Eduardo




Mais detalhes sobre a lista de discussão Fedora-users-br