- Timestamp:
- Apr 3, 2003, 10:01:37 PM (21 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/www/fr/portfileHOWTO.php
r2362 r2400 3 3 // 4 4 // File : portfileHOWTO.php 5 // Version : $Id: portfileHOWTO.php,v 1. 9 2003/03/25 14:58:24matt Exp $5 // Version : $Id: portfileHOWTO.php,v 1.10 2003/04/03 22:01:37 matt Exp $ 6 6 // Location : /projects/darwinports/portfileHOWTO.php 7 7 // … … 15 15 </h2> 16 16 <pre><tt> 17 Kevin Van Vechten | <a href="mailto:kevin@opendarwin.org">kevin@opendarwin.org</a>18 8-Oct-2002 17 Kevin Van Vechten (<a href="mailto:kevin@opendarwin.org">kevin@opendarwin.org</a>), Felix Kronlage (<a href=mailto:fkr@opendarwin.org>fkr@opendarwin.org</a>) 18 15-Mar-2003 19 19 </tt></pre> 20 20 <h3> … … 56 56 <ul> 57 57 <li><a href="#portfilelist">Aperçu d'un Portfile</a></li> 58 <li><a href="#contentslist">Liste de contents</a></li>59 58 </ul> 60 59 … … 171 170 </h3> 172 171 <p> 173 Les Portfiles doivent contenir une option <tt>contents</tt> qui spécifie quels sont les fichiers installés. DarwinPorts utilise cette information pour cataloguer quel fichier appartient à quel logiciel, car ensuite il peut être désinstaller ultérieurement. Chaque paramètre de <tt>contents</tt> est un chemin vers un fichier. Tous les chemins sont relatifs à la variable <tt>${prefix}</tt>. Comme moyen simple de déterminer exactement quels fichiers font partie d'ircII, utilisons la commande "find" pour composer un manifeste des fichiers dans la hiérarchie <tt>${prefix}</tt>. Après l'installation, nous allons réutiliser la commande "find" et utiliser les différences pour générer notre liste. 174 </p> 175 <p> 176 En utilisant le format unidiff, nous allons comparer la liste des fichiers existants avec la nouvelle liste de fichiers, en prenant en compte juste les nouvelles lignes ajoutées. Comme les chemins sont supposés être relatifs à <tt>${prefix}</tt>, nous allons passer via <tt>sed</tt> et effacer le prefix (/opt/local/), et stocker le résultat dans un fichier nommé <tt>contents</tt> placé dans notre dossier hébergeant notre port. Nous pouvons faire tout cela via les commandes suivantes : 177 </p> 178 <!-- 179 .........|.........|.........|.........|.........|.........|.........|.........| 180 --> 181 <pre><tt> 182 % find /opt/local > /tmp/existing.files 183 % sudo port install 184 % find /opt/local > /tmp/more.files 185 % diff -u /tmp/existing.files /tmp/more.files | grep ^\+\/ | \ 186 sed -e 's|^\+/opt/local/*||g' > contents 187 </tt></pre> 188 <p> 189 Maintenant que nous avons un fichier contents dans notre répertoire hébergeant notre port, nous devrons l'éditer afin de débuter avec <tt>contents {</tt> et de terminer avec un <tt>}</tt>. (C'est important de noter que tout autre processus utilisant la hiérarchie <tt>${prefix}</tt> peut interférer avec l'efficacité de la commande <tt>find</tt>. Vous devriez vérifier le fichier <tt>contents</tt> résultant afin de voir si tout les fichiers apparaissent à leur place, spécialement les fichiers temporaires de DarwinPorts comme <tt>/var/db/receipts/ircii-20020912.tmp</tt>.) 190 Il est également important de s'assurer que dans le fichier contents les répertoires soient listés <i>après</i> les fichiers qui les contiennent afin que le processus de désinstallation fonctionne correctement. 191 Ensuite nous devrons éditer le Portfile afin d'inclure notre fichier contents : 192 </p> 193 <pre><tt> 194 include contents 195 </tt></pre> 196 <p> 197 Si la liste des fichiers installés par le port ne s'étend pas au-delà d'une page de terminal de 80x24, l'option <tt>contents</tt> devrait être incluse dans le Portfile. Au lieu de <tt>include contents</tt>, nous utiliserons : 198 </p> 199 <pre><tt> 200 contents bin/irc \ 201 bin/irc-20020912 \ 202 man/man1/irc.1 \ 203 man/man1/ircbug.1 \ 204 man/man1/ircII.1 \ 205 man/man1 206 </pre></tt> 172 L'ancienne méthode qui consistait à inclure la liste dans le fichier <tt>contents</tt> est devenue obsolète en partie grâce au méchanisme <tt>destroot</tt>. Avec <tt>destroot</tt> le logiciel est installé dans une hiérarchie se situant dans le répertoire <tt>work</tt>. Alors que certains logiciels (comme ircII) ne requièrent pas de manipulations spéciales pour être installés dans le <tt>destroot</tt>, d'autres (comme <a href="http://www.opendarwin.org/cgi-bin/cvsweb.cgi/proj/darwinports/dports/net/ncftp/">ncftp</a>) ont besoin de la variable <tt>install.destroot</tt> afin qu'ils s'installent correctement dans le <tt>destroot</tt>. 173 </p> 174 <pre><tt> 175 install.destroot mandir=${destroot}${prefix}/man prefix=${destroot}${prefix} 176 </tt></pre> 177 <p> 178 Regardez quelques-uns de nos ports pour voir plus d'exemples sur comment utiliser l'option <tt>install.destroot</tt>. 179 </p> 207 180 <p> 208 181 À présent nous avons un portfile complet. Relancez l'étape d'installation pour ajouter ce port à votre propre registre : … … 295 268 Chat. It gives full access to all the normal IRC functions, plus a variety \ 296 269 of additionnal options. 270 homepage http://www.eterna.com.au/ircii/ 297 271 master_sites ftp://ircftp.au.eterna.com.au/pub/ircII/ 298 272 checksums md5 2ae68c015698f58763a113e9bc6852cc 299 273 configure.args --disable-ipv6 300 include contents301 274 302 275 post-configure { … … 310 283 </tt></pre> 311 284 312 <h3>313 <a name="contentslist"></a>Liste de contents314 </h3>315 <p>316 Ce qui suit est un listage partiel du fichier contents d'ircII :317 </p>318 <pre><tt>319 contents {320 bin/irc321 bin/irc-20020912322 ... omitted ...323 man/man1/irc.1324 man/man1/ircbug.1325 man/man1/ircII.1326 man/man1327 man328 ... omitted ...329 }330 </tt></pre>331 332 333 285 <? 334 286 od_print_footer("fr");
Note: See TracChangeset
for help on using the changeset viewer.