#  (gH)   --  galgml.pl  ;  TimeStamp (unix) : 05 Octobre 01 13:07



# rappel de l'aide si pas de paramètre

if ($#ARGV==-1) {
  print "\n" ;
  print " galgml (gH), angers 2001\n" ;
  print "        -- analyse d'une liste d'algorithmes par galg\n\n" ;
  print " syntaxe :   galgml nom_de_la_liste\n" ;
  print " exemple :   galgml trismet.lda\n" ;
  print "\n une liste d'algorithmes est un fichier texte qui contient un nom de fichier par ligne\n" ;
  print " par exemple, le fichier trismet.lda peut contenir :\n\n" ;
  print "       trsimet.alg      (ligne 1)\n" ;
  print "       calculs.alg      (ligne 2)\n" ;
  print "       affcihages.alg   (ligne 3)\n" ;
  print "\n" ;
  exit(0) ;
} ; # fin de si pas de paramètres

$nomListe = $ARGV[0] ;

print "Passage en revue des fichiers de la liste : $nomListe \n\n" ;

# on lit tout le fichier pour connaitre le nb de fichiers à traiter
# au passage, on met les noms de fichiers dans le tableau tnf

$nomSor = "galgml.lst" ;
open(LA,"<$nomListe")  or die ("          Erreur ! Impossible de lire dans $nomListe\n\n") ;
open(LS,">$nomSor")  or die ("          Erreur ! Impossible d'écrire dans $nomSor ; chnagez de répertoire\n\n") ;
print LS " Analyse des fichiers de la liste $nomListe\n\n" ;
$nbf = 0 ;
while(<LA>) {
  $nbf++ ;
  chop($tnf[ $nbf ] = $_) ;
  # print sprintf("  %2d / %2d ",$ifcf,$nbf)." Analyse du fichier $nfc\n" ;
} ; # fin tant que
close(LA) ;

# boucle d'analyse des fichiers


$idf = 1 ;
while ($idf<=$nbf) {
  $nfc =  $tnf[ $idf ] ;
  print sprintf("===  %2d / %2d ",$idf,$nbf)." Analyse du fichier $nfc\n" ;
  if (-f $nfc) {
       system("perl galg.pl -a $nfc > /dev/null 2> /dev/null") ;
       $dpdp  =  rindex($nfc,".") ;
       $nomSe =  substr($nfc,0,$dpdp) ;
       print "                 recopie de $nomSe.lst\n"  ;
       system("cat $nomSe.lst >> $nomSor") ;
       print "                 recopie de $nomSe.lvm\n" ;
       system("cat $nomSe.lvm >> $nomSor") ;
  } else {
      print STDERR "\n      FICHIER $nfc NON VU DANS LE REPERTOIRE COURANT \n" ;
      system(" echo  >> $nomSor") ;
      system(" echo  FICHIER $nfc NON VU DANS LE REPERTOIRE COURANT >> $nomSor") ;
      system(" echo  >> $nomSor") ;
  } ; # fin de si le fichier existe
  $idf++ ;
} ; # fin tant que
system(" echo  >> $nomSor") ;
system(" echo  -- fin analyse de la liste $nomListe>> $nomSor") ;

print "\n vous pouvez consulter le fichier : $nomSor\n\n" ;
