aboutsummaryrefslogtreecommitdiff
path: root/fr_FR.ISO_8859-1/books/handbook/policies/chapter.sgml
blob: 17781d440a964589a5f44618785e9159c03d72ac (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
<!--
        The FreeBSD Documentation Project
        The FreeBSD French Documentation Project

        $FreeBSD$
        Original revision: 1.7
--> 

<chapter id="policies">
  <title>Gestion de l'arborescence des sources</title>
  
  <para><emphasis>Contribution de &a.phk;.</emphasis></para>
  &trans.a.haby;
  
  <para>Ce document d&eacute;crit diff&eacute;rents principes et recommandations
    en vigueur pour la gestion de l'arborescence des sources de FreeBSD.</para>
  
  <sect1 id="policies-maintainer">
    <title><makevar>MAINTAINER</makevar> dans les 
      <filename>Makefile</filename>s</title>
    
    <para>Juin 1996.</para>
    
    <para>Si un sous-ensemble particulier de la distribution de FreeBSD est 
      maintenu par une personne ou un groupe de personne, ils peuvent le
      faire savoir &agrave; l'ext&eacute;rieur en ajoutant une 
      ligne&nbsp;:</para>
	
    <programlisting>
MAINTAINER= email-addresses
    </programlisting>
	
    <para>aux <filename>Makefile</filename>s correspondant &agrave; cette partie
      de l'arborescence.</para>
	
    <para>Cela signifie que&nbsp;:</para>
    
    <para>La personne d&eacute;tient et assume la responsabilit&eacute de ce
      code. Ce qui veut dire qu'il est responsable de la corrections des bogues
      et des r&eacute;ponses aux rapports d'anomalie se rapportant &agrave; ce
      code, et, dans le cas de logiciels d'origine ext&eacute;rieure, du suivi
      des nouvelles versions, selon les besoins.</para>
	
    <para>Les modifications dans les r&eacute;pertoires pour lesquels il existe
      un responsable de la maintenance devront &ecirc;tre transmises &agrave; ce
      responsable pour qu'il les passe en revue. Il n'est admis 
      d'int&eacute;grer de modifications sans passer par cette &eacute;tape 
      qu'aux seuls cas o&ugrave; le responsable ne r&eacute;pond pas dans un 
      d&eacute;lai acceptable, et apr&egrave;s plusieurs courriers 
      &eacute;lectroniques. Il est cependant sugger&eacute; d'insister et de
      faire en sorte que les modifications soient revues par quelqu'un d'autre,
      si c'est possible.</para>
	
    <para>Il n'est bien s&ucirc;r pas acceptable d'ajouter une personne ou un 
      groupe de personnes comme responsable de la maintenance, s'ils ne sont pas
      d'accord pour assumer cette obligation. D'un autre c&ocirc;t&eacute;, il 
      n'est pas n&eacute;cessaire que ce soit une personne ayant les droits 
      d'&eacute;criture dans 
      l'arborescence&nbsp;-&nbsp;&ldquo;<foreignphrase>committer</foreignphrase>&rdquo;&nbsp;-&nbsp;et 
      ce peut sans probl&egrave;me &ecirc;tre un groupe de personnes.</para>
  </sect1>
  
  <sect1>
    <title>Logiciels de provenance 
      ext&eacute;rieure&nbsp;-&nbsp;&ldquo;contribu&eacute;s&rdquo;</title>
    
    <para><emphasis>Contribution de &a.phk; et &a.obrien;.</emphasis></para>
    
    <para>Juin 1996.</para>
    
    <para>Certaines parties de la distribution de FreeBSD consistent en 
      logiciels qui sont activement maintenus ext&eacute;rieurement au projet 
      FreeBSD. Pour des raisons historiques, on appelle cela des logiciels 
      <emphasis>contribu&eacute;s</emphasis>. Perl, gcc et patch en sont des 
      exemples.</para>
	
    <para>Ces deux derni&egrave;res ann&eacute;es, nous avons employ&eacute;
      diff&eacute;rentes m&eacute;thodes pour g&eacute;rer ce type de logiciels,      elles ont toutes leurs avantages et leurs inconv&eacute;nients. Aucune ne
      s'est av&eacute;r&eacute;e incontestablement meilleure.</para>
	
    <para>De ce fait, apr&egrave;s discussion, une de ces m&eacute;thode a
      &eacute;t&eacute; retenue comme m&eacute;thode &ldquo;officielle&rdquo; et
      devra &ecirc;tre utilis&eacute;e pour les prochaines adjonctions de 
      logiciels de ce type. De plus, il est fortement sugg&eacute;r&eacute; que
      les logiciels d&eacute;j&agrave; int&eacute;gr&eacute;s convergent avec le
      temps vers cette m&eacute;thode, parce qu'elle pr&eacute;sente des
      avantages significatifs sur l'ancienne m&eacute;thode, dont la
      possibilit&eacute; pour chacun d'obtenir facilement des 
      <filename>diff</filename>s avec les versions &ldquo;officielles&rdquo; du
      source (m&ecirc;me sans acc&egrave;s cvs). Cela rendra beaucoup plus
      facile la communication en retour des modifications aux 
      d&eacute;veloppeurs d'origine des logiciels.</para>
	
    <para>Au final, n&eacute;anmoins, tout d&eacute;pend des personnes qui ont
      en charge la maintenance. Si ce mod&egrave;le est particuli&egrave;rement
      mal adapt&eacute; au paquetage concern&eacute;, il peut y avoir des
      exceptions &agrave; ces r&egrave;gles, &agrave; condition expresse 
      d'approbation par l'&eacute;quipe de base et de consensus
      g&eacute;n&eacute;ral des autres d&eacute;veloppeurs, la 
      maintenabilit&eacute; ult&eacute;rieure du paquetage &eacute;tant le 
      principal crit&egrave;re de d&eacute;cision.</para>

    <note>
      <para>Du fait de limitations malheureuses de conception du format des
        fichiers RCS et de l'utilisation par CVS des branches d'origine, les
        modifications mineures, triviales et/ou cosm&eacute;tiques sont
        <emphasis>fortement d&eacute;courag&eacute;es</emphasis> sur les 
        fichiers qui sont toujours g&eacute;r&eacute;s sur la branche
        d'origine. Les fichiers de &ldquo;localisation&rdquo; sont explicitement
        inclus ici dans la cat&eacute;gorie &ldquo;cosm&eacute;tique&rdquo; et
        ne doivent pas avoir de num&eacute;ros de r&eacute;vision
	<literal>1.1.x.x</literal>. La modification d'un seul caract&egrave;re 
        peut congestionner de fa&ccedil;on relativement dramatique l'ensemble
        des archives.</para>
    </note>
    
    <para>Nous utiliserons le langage de programmation 
      <application>Tcl</application> pour illustrer la fa&ccedil;on dont ce
      mod&egrave;le s'applique&nbsp;:</para>
	
    <para><filename>src/contrib/tcl</filename> contient le source tel qu'il est
      distribu&eacute; par les gens qui maintiennent ce paquetage. Les parties 
      qui ne s'appliquent pas du tout &agrave; FreeBSD peuvent &ecirc;tre
      supprim&eacute;es. Dans le cas de Tcl, les sous-r&eacute;pertoires  
      <filename>mac</filename>, <filename>win</filename> et
      <filename>compat</filename> ont &eacute;t&eacute; &eacute;limin&eacute;s
      avant l'importation.</para>
	
    <para><filename>src/lib/libtcl</filename>  ne contient qu'un 
      <filename>Makefile</filename> de &ldquo;style bmake&rdquo; qui utilise les
      r&egrave;gles standard de <filename>bsd.lib.mk</filename> pour 
      g&eacute;n&eacute;rer la biblioth&egrave;que et installer la 
      documentation.</para>
	
    <para><filename>src/usr.bin/tclsh</filename> ne contient qu'un
      <filename>Makefile</filename> de &ldquo;style bmake&rdquo; qui 
      g&eacute;n&egrave;re et installe le programme
      <command>tclsh</command> et les pages de manuel correspondantes en
      utilisant les r&egrave;gles standard de
      <filename>bsd.prog.mk</filename>.</para>
	
    <para><filename>src/tools/tools/tcl_bmake</filename> contient une paire de
      proc&eacute;dures qui peuvent &ecirc;tre utiles quand il faut mettre
      &agrave; jour le logiciel Tcl. Elles ne font pas partie du logiciel
      compil&eacute; et install&eacute;.</para>
	
    <para>L'important ici est que le r&eacute;pertoire
      <filename>src/contrib/tcl</filename> est cr&eacute;&eacute; en respectant
      les r&egrave;gles suivantes&nbsp;: il est suppos&eacute; contenir les
      sources tels que distribu&eacute;s (sur une branche CVS d'origine ad hoc 
      et sans extensions RCS des mots-cl&eacute;s) avec aussi peu de 
      modifications sp&eacute;cifiques &agrave; FreeBSD que possible. L'outil 
      d'&ldquo;importation facile&rdquo; sur <hostid>freefall</hostid> 
      aidera &agrave; importer le logiciel, mais, au moindre doute, il est 
      imp&eacute;ratif de se renseigner auparavant et de ne pas aller &agrave;
      l'aveuglette en esp&eacute;rant que &ldquo;cela marchera&rdquo;. CVS ne
      pardonne pas les erreurs d'importation et il n'est pas trivial de
      r&eacute;cup&eacute;rer d'erreurs majeures.</para>
    
    <para>Du fait des limitations conceptuelles d&eacute;j&agrave; 
      mentionn&eacute;es des branches d'origine de CVS, les correctifs
      &ldquo;officiels&rdquo; du distributeur doivent &ecirc;tre 
      appliqu&eacute;s aux sources d'origine et le r&eacute;sultat 
      r&eacute;import&eacute; dans la branche principale. Ces correctifs
      officiels ne doivent jamais &ecirc;tre appliqu&eacute;s aux versions
      extraites pour FreeBSD et &ldquo;soumis&rdquo; ensuite, parce que cela
      d&eacute;truit la coh&eacute;rence de la branche d'origine et rend
      l'importation des versions ult&eacute;rieures assez difficile, parce qu'il
      y aura des conflits.</para>
	
    <para>Comme de nombreux paquetages contiennent des fichiers 
      d&eacute;di&eacute;s &agrave; la compatibilit&eacute; avec d'autres 
      architectures et environnements que FreeBSD, il est admissible de 
      supprimer les parties de la distribution qui ne concernent pas FreeBSD 
      pour gagner de la place. Les fichiers qui contiennent les notices de 
      <foreignphrase>copyright</foreignphrase> et des informations du type 
      &ldquo;notes de version&rdquo; qui s'appliquent aux autres fichiers ne 
      doivent <emphasis>pas</emphasis> &ecirc;tre supprim&eacute;s.</para>
    
    <para>Si cela s'av&egrave;re plus facile, les <filename>Makefile</filename>s
      <command>bmake</command> de l'arborescence de la distribution peuvent
      &ecirc;tre g&eacute;n&eacute;r&eacute;s avec un utilitaire, ce qui peut
      le cas &eacute;ch&eacute;ant faciliter les mont&eacute;es de version. Si
      tel est le cas, veillez &agrave; administrer ces utilitaires (si besoin
      est) dans le r&eacute;pertoire <filename>src/tools</filename> en
      m&ecirc;me temps que le logiciel lui-m&ecirc;me, de sorte qu'ils soient
      disponibles pour les personnes qui assureront par la suite la
      maintenance.</para>
	
    <para>Dans le r&eacute;pertoire <filename>src/contrib/tcl</filename>, il
      faut ajouter un fichier appel&eacute; <filename>FREEBSD-upgrade</filename>      qui mentionne des choses telles que&nbsp;:</para>
    
    <itemizedlist>
      <listitem>
	<para>Quels fichiers ont &eacute;t&eacute; laiss&eacute;s de 
          c&ocirc;t&eacute;,</para>
      </listitem>
      
      <listitem>
	<para>O&ugrave; a &eacute;t&eacute; obtenue la distribution originale
          et/ou quel est le site principal officiel,</para>
      </listitem>
      
      <listitem>
	<para>O&ugrave; r&eacute;adresser les correctifs &agrave; l'auteur 
          original,</para>
      </listitem>
      
      <listitem>
	<para>Eventuellement un r&eacute;sum&eacute; des modifications 
          apport&eacute;es propres &agrave; FreeBSD.</para>
      </listitem>
    </itemizedlist>
    
    <para>Cependant, n'importez pas <filename>FREEBSD-upgrade</filename> en
      m&ecirc;me temps que le source du logiciel. Vous devriez plut&ocirc;t
      effectuer un <command>cvs add FREEBSD-upgrade ; cvs ci</command> 
      apr&egrave;s le premier <command>import</command>. Voici par exemple
      ce que cela donne pour <filename>src/contrib/cpio</filename>
      <footnote><para>Traduction&nbsp;:</para>
         <programlisting>

Ce r&eacute;pertoire contient les sources d'origine non modifi&eacute;s sur la
branche &ldquo;d'origine&rdquo;. N'essayez en aucun cas de mettre &agrave; jour
les fichiers de ce r&eacute;pertoire via des correctifs et un &ldquo;commit&rdquo;
cvs. Les nouvelles versions ou les versions officiellement 
rectifi&eacute;es doivent &ecirc;tre import&eacute;es. N'oubliez pas d'importer
avec l'option &ldquo;-ko&rdquo; pour ne pas &eacute;craser les IDentifiants 
RCS d'origine.

A l'importation de GNU cpio 2.4.2, les fichiers suivants ont &eacute;t&eacute; 
&eacute;limin&eacute;s&nbsp;:

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;INSTALL         cpio.info       mkdir.c             
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Makefile.in     cpio.texi       mkinstalldirs

Pour passer &agrave; une nouvelle version de cpio, quand elle sera disponible&nbsp;:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1. D&eacute;compactez la nouvelle version dans un sous-r&eacute;pertoire vide
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Ne modifiez en AUCUN cas les fichiers.]

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2. Supprimez les fichiers list&eacute;s ci-dessus et tous autres fichiers 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;qui ne s'appliquent pas &agrave; FreeBSD.

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3. Utilisez la commande&nbsp;:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cvs import -ko -m 'Virgin import of GNU cpio v&lt;version&gt;' \
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;src/contrib/cpio GNU cpio_&lt;version&gt;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Voici par example comment j'ai import&eacute; la version 2.4.2 de cpio&nbsp;:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cvs import -ko -m 'Virgin import of GNU v2.4.2' \
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;src/contrib/cpio GNU cpio_2_4_2

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4. Suivez les instructions affich&eacute;es &agrave; l'&eacute;tape 3 pour r&eacute;soudre les
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;conflits entre les modifications locales pour FreeBSD et la
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nouvelle version.

Ne d&eacute;viez en aucun cas de cette proc&eacute;dure.

Pour appliquer les modifications locales &agrave; cpio, &ldquo;patchez&rdquo;
simplement et soumettez sur la branche principale (aka HEAD). 
N'appliquez jamais les modifications locales &agrave; la branche GNU.

Toutes les modifications locales doivent &ecirc;tre soumises &agrave; 
&ldquo;cpio@gnu.ai.mit.edu&rdquo; pour inclusion dans la prochaine 
version originale.

obrien@freebsd.org - 30 Mars 1997
        </programlisting></footnote>&nbsp;:</para>
	
    <programlisting>
This directory contains virgin sources of the original distribution files
on a "vendor" branch.  Do not, under any circumstances, attempt to upgrade
the files in this directory via patches and a cvs commit.  New versions or
official-patch versions must be imported.  Please remember to import with
"-ko" to prevent CVS from corrupting any vendor RCS Ids.

For the import of GNU cpio 2.4.2, the following files were removed:

INSTALL         cpio.info       mkdir.c             
Makefile.in     cpio.texi       mkinstalldirs

To upgrade to a newer version of cpio, when it is available:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1. Unpack the new version into an empty directory.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Do not make ANY changes to the files.]

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2. Remove the files listed above and any others that don't apply to
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FreeBSD.

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3. Use the command:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cvs import -ko -m 'Virgin import of GNU cpio v&lt;version&gt;' \
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;src/contrib/cpio GNU cpio_&lt;version&gt;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;For example, to do the import of version 2.4.2, I typed:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cvs import -ko -m 'Virgin import of GNU v2.4.2' \
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;src/contrib/cpio GNU cpio_2_4_2

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4. Follow the instructions printed out in step 3 to resolve any
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;conflicts between local FreeBSD changes and the newer version.

Do not, under any circumstances, deviate from this procedure.

To make local changes to cpio, simply patch and commit to the main
branch (aka HEAD).  Never make local changes on the GNU branch.

All local changes should be submitted to "cpio@gnu.ai.mit.edu" for
inclusion in the next vendor release.

obrien@freebsd.org - 30 March 1997
    </programlisting>
  </sect1>
  
  <sect1 id="policies-shlib">
    <title>Biblioth&egrave;ques partag&eacute;es</title>
    
    <para><emphasis>Contribution de &a.asami;, &a.peter;, and &a.obrien;  9 
        D&eacute;cembre 1996.</emphasis></para>
	
    <para>Si vous ajoutez &agrave; des logiciels port&eacute;s ou d'autres
      logiciels, le support des biblioth&egrave;ques partag&eacute;es qu'ils
      n'ont pas encore, les num&eacute;ros de version des biblioth&egrave;ques
      doivent suivre les r&egrave;gles ci-dessous. De fa&ccedil;on 
      g&eacute;n&eacute;rale, ces num&eacute;ros n'ont pas de rapport avec les 
      num&eacute;ros de version du logiciel.</para>

    <para>Les trois principes de g&eacute;n&eacute;ration des 
      biblioth&egrave;ques partag&eacute;es sont&nbsp;:</para>
    
    <itemizedlist>
      <listitem>
	<para>Commencez &agrave; <literal>1.0</literal>,</para>
      </listitem>
      
      <listitem>
	<para>Si la modification est r&eacute;tro-compatible, augmentez le 
          num&eacute;ro de version mineure,</para>
      </listitem>
      
      <listitem>
	<para>Si la modification est incompatible avec les versions
          ant&eacute;rieures, augmentez le num&eacute;ro de version 
          majeure.</para>
      </listitem>
    </itemizedlist>
    
    <para>Par exemple, l'ajout de fonctions et les corrections de bogues
      r&eacute;sultent en une incr&eacute;mentation du num&eacute;ro de version
      mineure, alors que la suppression de fonctions ou la modification de
      syntaxes d'appel de fonctions imposent un changement de num&eacute;ro de
      version majeure.</para>
    
    <para>Tenez-vous en &agrave; des num&eacute;ros de version de la forme
      majeure.mineure 
      (<replaceable>x</replaceable>.<replaceable>y</replaceable>). Notre
      &eacute;diteur de liens dynamiques ne g&egrave;re pas tr&egrave;s bien
      les num&eacute;ros de version de la forme
      <replaceable>x</replaceable>.<replaceable>y</replaceable>.<replaceable>z</replaceable>.
      Tout num&eacute;ro de version apr&egrave;s le 
      <replaceable>y</replaceable> (i.e., le troisi&egrave;me chiffre) est
      totalement ignor&eacute; lors de la comparaison des num&eacute;ros de
      version des biblioth&egrave;ques partag&eacute;es pour d&eacute;cider
      avec quelle biblioth&egrave;que effectuer le lien. Si deux 
      biblioth&egrave;ques partag&eacute;es diff&egrave;rent d'une
      &ldquo;micro&rdquo; r&eacute;vision, <command>ld.so</command> fera le lien
      avec la plus &eacute;lev&eacute;e. I.e.&nbsp;: si vous &eacute;ditez les liens
      avec <filename>libfoo.so.3.3.3</filename>, l'&eacute;diteur de liens
      n'enregistre que <literal>3.3</literal> dans les en-t&ecirc;tes, et fera
      le lien avec n'importe quoi qui commence par 
      <replaceable>libfoo.so.3</replaceable>.<replaceable>(quelque chose &gt;=
      3)</replaceable>.<replaceable>(le num&eacute;ro le plus 
      &eacute;lev&eacute; disponible)</replaceable>.</para>
    
    <note>
      <para><command>ld.so</command> utilisera toujours la r&eacute;vision
	&ldquo;mineure&rdquo; la plus &eacute;lev&eacute;e. I.e.&nbsp;: il
        choisira <filename>libc.so.2.2</filename> plut&ocirc;t que
	<filename>libc.so.2.0</filename>, m&ecirc;me si le programme a
        &eacute;t&eacute; initialement li&eacute; avec
        <filename>libc.so.2.0</filename>.</para>
    </note>
    
    <para>Pour les biblioth&egrave;ques autres que celles des logiciels
      port&eacute;s, c'est aussi notre politique de ne changer de num&eacute;ro
      de version de biblioth&egrave;que partag&eacute;e qu'une seule fois par
      version de FreeBSD. Si vous modifiez une biblioth&egrave;que
      syst&egrave;me de telle sorte que cela r&eacute;clame une 
      incr&eacute;mentation du num&eacute;ro de version, consultez l'historique
      des soumissions du <filename>Makefile</filename>. C'est la personne qui
      soumet qui doit s'assurer que le num&eacute;ro de version de la
      biblioth&egrave;que partag&eacute;e est bien incr&eacute;ment&eacute; 
      &agrave; la premi&egrave;re modification et que les modifications
      suivantes n'y touchent plus.</para>
  </sect1>
</chapter>

<!-- 
     Local Variables:
     mode: sgml
     sgml-declaration: "../chapter.decl"
     sgml-indent-data: t
     sgml-omittag: nil
     sgml-always-quote-attributes: t
     sgml-parent-document: ("../handbook.sgml" "part" "chapter")
     End:
-->