Suiv.: Partie IV: Annexes
Sup.: 10 Gestion sous UNIX
Préc.: 10.3 Description des commandes
Table des matières
Pour effectuer la remise à jour de Modulef sous Unix, nous envoyons en cours d'année, par e-mail, le fichier maj.fo contenant les remises à jour.
Ce fichier doit être rangé dans le répertoire $MR/ascii/sta/etc.
La remise à jour s'effectue à l'aide de la commande UNIX patch,
cette commande s'appuie sur les
différences ( produites par la commande diff)
entre deux fichiers, et applique ces différences
sur le fichier d'origine pour créer la nouvelle version.
Nous avons écrit un programme C ( prepatch) qui lit le fichier maj.fo (contenant les différences) et appelle la commande patch.
La commande patch est utilisée avec les options -c et -N ; celles-ci permettent de forcer la commande à interpréter les modifications comme des sorties de la commande diff et ignore ces modifications lorsqu'elle pense qu'elles ont déjà été appliquées.
Tous les messages exprimés lors de l'appel de la procédure patch sont stockés dans le fichier patch.log.
Maintenant que vous avez copié
le fichier maj.fo dans le répertoire
$MR/ascii/sta/etc, allez dans le
répertoire contenant le Makefile de remise à jour :
cd $MR/ascii/com.util/patch
Le Makefile suppose que la variable MR est correctement initialisée
dans l'environnement courant ; si ce n'est pas le cas lors de chaque appel de
la commande make ajouter l'option :
-e MR= nom du répertoire où a été installé Modulef
Lors de la réalisation du Makefile permettant la remise a jour des sources de Modulef,
nous avons supposé que la commande patch pouvait ne pas être disponible
sur votre machine.
Le Makefile de remise a jour s'adapte donc à deux situations :
which patch
et/ou man patch
.
En fonction de ces deux possibilités, nous indiquons maintenant la façon d'appeler le Makefile :
su root make patch -e Install=install ^DLa commande patch est alors rangée dans le répertoire /usr/local/bin (en général), et le man est installé.
make patch
make
make patch
et make
.
cd $MR/make/Install$MM make librairies make executables
Les sources de cette commande et des informations complémentaires sont donnés dans le répertoire $MR/ascii/com.util/patch/patch-2.0.12u7 (fichier README)
Si, sur HP/apollo ou sur sun4, le Makefile de création du patch s'interrompt
lors de l'exécution du fichier de commande Configure vous pouvez essayer
de relancer le Makefile ( make patch
) en exécutant au préalable la commande :
make init_apollo
si vous travaillez sous HP/Apollo
make init_sun4
si vous travaillez sous sun4
L'exécution de la cible init_xx permet d'éviter d'exécuter le fichier
de commande Configure (cf documentation sur la commande patch), on
utilise alors une configuration établie préalablement.