[Prévia] [Próxima] [Prévia por assunto] [Próxima por assunto]
[Índice cronológico] [Índice de assunto]

Re: Elaborando melhor a pergunta sobre as opções



O professor jah tinha respondido isso pra mim hah muito tempo... Alias, com
outra resposta...

----- Forwarded message from Jose Coelho de Pina <coelho@ime.usp.br> -----
    Date: Mon, 14 Apr 2003 09:25:12 -0300 
    From: Jose Coelho de Pina <coelho@ime.usp.br>
Reply-To: Jose Coelho de Pina <coelho@ime.usp.br>
 Subject: RE: reconstrução dos objetivos-ep3
      To: André Thomas Kowaltowski <kowal@linux.ime.usp.br>


Desculpem a demora.

André Thomas Kowaltowski writes:
 > Só pra confirmar... A reconstrução dos objetivos ocorre
 > sempre que o Make é executado

Perfeito.

 >(exceto qdo são usadas as
 > opções -g e -s concomitantemente que imprime erro) sem
 > exceções né? Não importa se é o MakeFile ou o MakeFile.gb
 > que estão sendo lidos, ou se a impressão é pra tela ou se
 > está criando o MakeFile.gb, né?

É isso ai.

 > No caso de haver goals é óbvio q tem q reconstruir. No
 > caso de não haver sempre tem q reconstruir o primeiro
 > target sem exceções?

Sim. (Isto é uma cópia do comportamento do make.)


té +,
coelho

----- End forwarded message -----


----- Re: Elaborando melhor... -----


Andre Luiz Breves de Oliveira wrote: 

 > Fui um pouco vago na pergunta sobre opções do Make, vou elaborar um pouco: 
 > 
 >   - Você diz no enunciado que as opções podem ser definidas em qualquer
ordem. Isso deixa a parte de 
 > tratamento de opções um pouco complicada, eu teria que primeiro ler as
opções, usar uma estrutura auxiliar 
 > para guardar os goal's... Pode considerar que primeiro vem as opções -g -s
-r, e depois vem os goal's? 

 Na verdade não faz diferença certo? 

 Um código como: 

 while (tem argumentos) { 
   if (argv[0][0] == '-'){ 
       /* Processa os parâmetros */ 
   } else { 
       /* Processa o goal */ 
   } 
 } 

 Já deve ser o suficiente. 
 Sim, vc deve precisar de uma estrutura auxiliar para guardar os goals. 
 Um vetor de strings dá conta do serviço! :-) 
 Não se esqueça de usar strcmp(), strcpy() e outros para manipular strings! Tem
gente que se 
 esquece disso, por incrível que pareça!!!!!! :-) 
 Se você quiser elaborar um pouco mais, pode tentar a biblioteca getopt (man 3
getopt) 
 que serve para fazer esse parsing para você. 


 >   - Se forem usadas as opções -r ou -s, mas não forem definidos nenhum goal,
mesmo assim eu terei que 
 > processar o primeiro target do MakeFile (ou terei que considerar algum goal)? 

 Bom, ai seria melhor o Coelho explicar, porque pelo que eu entendi se você usar
uma 
 dessas opções ele apenas vai realizar o que está escrito na descrição da opção.
Creio que nesses 
 dois casos você pode ignorar a existência de goals na linha de comando e você
vai poder 
 interromper a execução após realizar a tarefa dita na descrição do parâmetro. 

 De qualquer modo, aguardo a resposta do Coelho sobre isso! 

 Té+++ 
 []'s 

 ----- 
 Nelson Guedes Paulo Junior 
 E-mail:     UIN: 2489382 (Tender [:alpha:]*) 
 ----------------------------------------------------------------------- 
 Eu cavo, tu cavas, ele cava, nós cavamos, vós cavais, 
 eles cavam... Não é bonito, mas é profundo. 
 ----------------------------------------------------------------------- 


----- End Reply -----