Merge commit '709c4d66e0b107ca606941b988bad717c0b45d9b' into opendreambox
[openembedded.git] / recipes / psmisc / psmisc-20.2 / gettext.patch
1 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/ABOUT-NLS psmisc-20.2.works.clean/ABOUT-NLS
2 --- tmp/work/psmisc-20.2-r0/psmisc-20.2/ABOUT-NLS       2001-04-13 23:00:47.000000000 -0500
3 +++ psmisc-20.2.works.clean/ABOUT-NLS   2004-10-13 15:18:41.000000000 -0500
4 @@ -1,8 +1,8 @@
5  Notes on the Free Translation Project
6  *************************************
7  
8 -   Free software is going international!  The Free Translation Project
9 -is a way to get maintainers of free software, translators, and users all
10 +Free software is going international!  The Free Translation Project is
11 +a way to get maintainers of free software, translators, and users all
12  together, so that will gradually become able to speak many languages.
13  A few packages already provide translations for their messages.
14  
15 @@ -25,7 +25,7 @@
16  Quick configuration advice
17  ==========================
18  
19 -   If you want to exploit the full power of internationalization, you
20 +If you want to exploit the full power of internationalization, you
21  should configure it using
22  
23       ./configure --with-included-gettext
24 @@ -48,10 +48,10 @@
25  INSTALL Matters
26  ===============
27  
28 -   Some packages are "localizable" when properly installed; the
29 -programs they contain can be made to speak your own native language.
30 -Most such packages use GNU `gettext'.  Other packages have their own
31 -ways to internationalization, predating GNU `gettext'.
32 +Some packages are "localizable" when properly installed; the programs
33 +they contain can be made to speak your own native language.  Most such
34 +packages use GNU `gettext'.  Other packages have their own ways to
35 +internationalization, predating GNU `gettext'.
36  
37     By default, this package will be installed to allow translation of
38  messages.  It will automatically detect whether the system already
39 @@ -98,18 +98,27 @@
40  Using This Package
41  ==================
42  
43 -   As a user, if your language has been installed for this package, you
44 +As a user, if your language has been installed for this package, you
45  only have to set the `LANG' environment variable to the appropriate
46 -ISO 639 `LL' two-letter code prior to using the programs in the
47 -package.  For example, let's suppose that you speak German.  At the
48 -shell prompt, merely execute `setenv LANG de' (in `csh'),
49 -`export LANG; LANG=de' (in `sh') or `export LANG=de' (in `bash').  This
50 -can be done from your `.login' or `.profile' file, once and for all.
51 +`LL_CC' combination.  Here `LL' is an ISO 639 two-letter language code,
52 +and `CC' is an ISO 3166 two-letter country code.  For example, let's
53 +suppose that you speak German and live in Germany.  At the shell
54 +prompt, merely execute `setenv LANG de_DE' (in `csh'),
55 +`export LANG; LANG=de_DE' (in `sh') or `export LANG=de_DE' (in `bash').
56 +This can be done from your `.login' or `.profile' file, once and for
57 +all.
58  
59 -   Some languages have dialects in different countries.  To specify
60 -such a dialect, the notation `LL_CC' can be used, which combines an
61 -ISO 639 language code `LL' and an ISO 3166 two-letter country code
62 -`CC'.  For example, `de_AT' is used for Austria, and `pt_BR' for Brazil.
63 +   You might think that the country code specification is redundant.
64 +But in fact, some languages have dialects in different countries.  For
65 +example, `de_AT' is used for Austria, and `pt_BR' for Brazil.  The
66 +country code serves to distinguish the dialects.
67 +
68 +   The locale naming convention of `LL_CC', with `LL' denoting the
69 +language and `CC' denoting the country, is the one use on systems based
70 +on GNU libc.  On other systems, some variations of this scheme are
71 +used, such as `LL' or `LL_CC.ENCODING'.  You can get the list of
72 +locales supported by your system for your country by running the command
73 +`locale -a | grep '^LL''.
74  
75     Not all programs have translations for all languages.  By default, an
76  English message is shown in place of a nonexistent translation.  If you
77 @@ -120,12 +129,25 @@
78  set to the primary language; this is required by other parts of the
79  system libraries.  For example, some Swedish users who would rather
80  read translations in German than English for when Swedish is not
81 -available, set `LANGUAGE' to `sv:de' while leaving `LANG' to `sv'.
82 +available, set `LANGUAGE' to `sv:de' while leaving `LANG' to `sv_SE'.
83 +
84 +   Special advice for Norwegian users: The language code for Norwegian
85 +bokma*l changed from `no' to `nb' recently (in 2003).  During the
86 +transition period, while some message catalogs for this language are
87 +installed under `nb' and some older ones under `no', it's recommended
88 +for Norwegian users to set `LANGUAGE' to `nb:no' so that both newer and
89 +older translations are used.
90 +
91 +   In the `LANGUAGE' environment variable, but not in the `LANG'
92 +environment variable, `LL_CC' combinations can be abbreviated as `LL'
93 +to denote the language's main dialect.  For example, `de' is equivalent
94 +to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT'
95 +(Portuguese as spoken in Portugal) in this context.
96  
97  Translating Teams
98  =================
99  
100 -   For the Free Translation Project to be a success, we need interested
101 +For the Free Translation Project to be a success, we need interested
102  people who like their own language and write it well, and who are also
103  able to synergize with other translators speaking the same language.
104  Each translation team has its own mailing list.  The up-to-date list of
105 @@ -155,99 +177,559 @@
106  Available Packages
107  ==================
108  
109 -   Languages are not equally supported in all packages.  The following
110 -matrix shows the current state of internationalization, as of July
111 -2000.  The matrix shows, in regard of each package, for which languages
112 +Languages are not equally supported in all packages.  The following
113 +matrix shows the current state of internationalization, as of January
114 +2004.  The matrix shows, in regard of each package, for which languages
115  PO files have been submitted to translation coordination, with a
116  translation percentage of at least 50%.
117  
118 -     Ready PO files    bg cs da de el en eo es et fi fr gl hr id it
119 -                     .----------------------------------------------.
120 -     a2ps            |          []             []                   |
121 -     bash            |          []       []          []             |
122 -     bison           |          []          [] []    []             |
123 -     clisp           |          []    []    []       []             |
124 -     cpio            |          []          []       []             |
125 -     diffutils       |       [] []          []       [] []          |
126 -     enscript        |          []                   []             |
127 -     error           |                               []             |
128 -     fileutils       |    [] [] [] []       []       [] []       [] |
129 -     findutils       |          []          [] []    [] []       [] |
130 -     flex            |                      []       []             |
131 -     gcal            |                                              |
132 -     gcc             |                                              |
133 -     gettext         |    [] [] [] []       []       [] []    [] [] |
134 -     gnupg           |          []       []          []          [] |
135 -     grep            | [] [] [] [] []    [] [] []    []          [] |
136 -     hello           |          []          [] [] [] []       [] [] |
137 -     id-utils        |                               []             |
138 -     indent          |       [] []             []    [] []          |
139 -     libc            |    [] [] [] []       []       [] []       [] |
140 -     lilypond        |                                              |
141 -     lynx            |    [] [] []                                  |
142 -     m4              |    [] [] [] []                [] []          |
143 -     make            |          []          []       [] []          |
144 -     music           |                               []             |
145 -     parted          |          []                      []          |
146 -     ptx             |       [] []          [] []    [] []    []    |
147 -     python          |                                              |
148 -     recode          |       [] [] []       []       [] []       [] |
149 -     sed             |    []    [] []          []    [] []       [] |
150 -     sh-utils        |    [] [] [] []       [] []    [] []       [] |
151 -     sharutils       |    []    [] []       []       [] []          |
152 -     tar             |    [] [] []          [] []    []          [] |
153 -     texinfo         |    []    []       []          []             |
154 -     textutils       |    [] [] [] []       []       [] []          |
155 -     util-linux      |                                              |
156 -     wdiff           |    [] []             [] []    []             |
157 -     wget            |    [] [] [] []          []    [] []       [] |
158 -                     `----------------------------------------------'
159 -                       bg cs da de el en eo es et fi fr gl hr id it
160 -                        1 14 15 28 11  1  4 19 12  1 30 16  0  3 12
161 +     Ready PO files       af am ar az be bg bs ca cs da de el en en_GB eo es
162 +                        +----------------------------------------------------+
163 +     a2ps               |             []             [] [] []                |
164 +     aegis              |                               ()                   |
165 +     ant-phone          |                               ()                   |
166 +     anubis             |                                                    |
167 +     ap-utils           |                                                    |
168 +     aspell             |             []                                     |
169 +     bash               |                      []       []             [] [] |
170 +     batchelor          |                                                    |
171 +     bfd                |                            []                   [] |
172 +     binutils           |                            []                   [] |
173 +     bison              |                            [] []                [] |
174 +     bluez-pin          | []                      []                   []    |
175 +     clisp              |                                                    |
176 +     clisp              |                               []    []          [] |
177 +     console-tools      |                         []    []                   |
178 +     coreutils          |                      []    [] []                [] |
179 +     cpio               |                            [] []                [] |
180 +     darkstat           |                []          ()                   [] |
181 +     diffutils          |                      [] [] [] [] []          [] [] |
182 +     e2fsprogs          |                         []    []                [] |
183 +     enscript           |                      []    [] []        []         |
184 +     error              |                      []    [] []        []      [] |
185 +     fetchmail          |                      [] () [] [] []             [] |
186 +     fileutils          |                            [] []                [] |
187 +     findutils          |             []       []    [] [] []          [] [] |
188 +     flex               |                      []    [] []                [] |
189 +     fslint             |                                                    |
190 +     gas                |                                                 [] |
191 +     gawk               |                      []    [] []                [] |
192 +     gbiff              |                               []                   |
193 +     gcal               |                      []                            |
194 +     gcc                |                            []                   [] |
195 +     gettext            |             []       []    [] []                [] |
196 +     gettext-examples   | []                   []       []                [] |
197 +     gettext-runtime    |             []       []    [] []                [] |
198 +     gettext-tools      |                      []       []                [] |
199 +     gimp-print         |                         [] [] []        []      [] |
200 +     gliv               |                                                    |
201 +     glunarclock        |                            [] []                   |
202 +     gnubiff            |                               []                   |
203 +     gnucash            |                         []    ()        []      [] |
204 +     gnucash-glossary   |                            [] ()                [] |
205 +     gnupg              |                      [] ()    [] []          [] [] |
206 +     gpe-aerial         |                         []                         |
207 +     gpe-beam           |                         []    []                   |
208 +     gpe-calendar       |                         []    []                   |
209 +     gpe-clock          |                         []    []                   |
210 +     gpe-conf           |                         []    []                   |
211 +     gpe-contacts       |                         []    []                   |
212 +     gpe-edit           |                         []                         |
213 +     gpe-go             |                         []                         |
214 +     gpe-login          |                         []    []                   |
215 +     gpe-ownerinfo      |                         []    []                   |
216 +     gpe-sketchbook     |                         []    []                   |
217 +     gpe-su             |                         []    []                   |
218 +     gpe-taskmanager    |                         []    []                   |
219 +     gpe-timesheet      |                         []                         |
220 +     gpe-today          |                         []    []                   |
221 +     gpe-todo           |                         []    []                   |
222 +     gphoto2            |                         [] [] []                [] |
223 +     gprof              |                            [] []                [] |
224 +     gpsdrive           |                               ()    ()          () |
225 +     gramadoir          |                               []                   |
226 +     grep               |             [] []    []       [] []             [] |
227 +     gretl              |                                                 [] |
228 +     gtick              | []                            ()                   |
229 +     hello              |                      []    [] [] []          [] [] |
230 +     id-utils           |                            [] []                   |
231 +     indent             |                      []       []             [] [] |
232 +     iso_3166           |          []    [] [] [] [] [] [] []          [] [] |
233 +     iso_3166_1         |                      [] [] [] [] []             [] |
234 +     iso_3166_2         |                                                    |
235 +     iso_3166_3         |                               []                   |
236 +     iso_4217           |                      []    [] []                [] |
237 +     iso_639            |                                                    |
238 +     jpilot             |                         [] []                   [] |
239 +     jtag               |                                                    |
240 +     jwhois             |                                                 [] |
241 +     kbd                |                         [] [] [] []             [] |
242 +     latrine            |                               ()                   |
243 +     ld                 |                            []                   [] |
244 +     libc               |                      [] [] [] [] []             [] |
245 +     libgpewidget       |                         []    []                   |
246 +     libiconv           |                      []    [] []             [] [] |
247 +     lifelines          |                            [] ()                   |
248 +     lilypond           |                               []                   |
249 +     lingoteach         |                                                    |
250 +     lingoteach_lessons |                               ()                () |
251 +     lynx               |                      [] [] [] []                   |
252 +     m4                 |                         [] [] [] []                |
253 +     mailutils          |                      []                         [] |
254 +     make               |                            [] []                [] |
255 +     man-db             |                      [] () [] []                () |
256 +     minicom            |                         []    []                [] |
257 +     mysecretdiary      |                            [] []                [] |
258 +     nano               |                      [] () [] []                [] |
259 +     nano_1_0           |                      [] () [] []                [] |
260 +     opcodes            |                                                 [] |
261 +     parted             |                      [] [] [] []                [] |
262 +     ptx                |                      []    [] []             [] [] |
263 +     python             |                                                    |
264 +     radius             |                                                 [] |
265 +     recode             |             []       []    [] [] []          [] [] |
266 +     rpm                |                         [] []                      |
267 +     screem             |                                                    |
268 +     scrollkeeper       |             []       [] [] [] []                [] |
269 +     sed                | []                   []    [] []             [] [] |
270 +     sh-utils           |                            [] []                [] |
271 +     shared-mime-info   |                                                    |
272 +     sharutils          |                      [] [] [] [] []             [] |
273 +     silky              |                               ()                   |
274 +     skencil            |                            [] ()                [] |
275 +     sketch             |                            [] ()                [] |
276 +     soundtracker       |                            [] []                [] |
277 +     sp                 |                               []                   |
278 +     tar                |                         [] [] []                [] |
279 +     texinfo            |                            [] []             []    |
280 +     textutils          |                      []    [] []                [] |
281 +     tin                |                               ()        ()         |
282 +     tp-robot           |                                                    |
283 +     tuxpaint           |                      [] [] [] [] []     []      [] |
284 +     unicode-han-tra... |                                                    |
285 +     unicode-transla... |                                                    |
286 +     util-linux         |                      [] [] [] []                [] |
287 +     vorbis-tools       |             []          [] []                   [] |
288 +     wastesedge         |                               ()                   |
289 +     wdiff              |                      []    [] []                [] |
290 +     wget               |                []    []    [] [] []             [] |
291 +     xchat              |                      []       [] []             [] |
292 +     xfree86_xkb_xml    |                         [] []                      |
293 +     xpad               |                                                 [] |
294 +                        +----------------------------------------------------+
295 +                          af am ar az be bg bs ca cs da de el en en_GB eo es
296 +                           4  0  0  1  9  4  1 40 41 60 78 17  1   5   13 68
297       
298 -                       ja ko lv nl no pl pt pt_BR ru sk sl sv zh
299 -                     .-------------------------------------------.
300 -     a2ps            |          []                []    []       |  5
301 -     bash            |                                           |  3
302 -     bison           | []       []                []             |  7
303 -     clisp           |          []                               |  5
304 -     cpio            |    []    []    []     []   []             |  8
305 -     diffutils       |                []          []       []    |  8
306 -     enscript        |          []                []             |  4
307 -     error           |                                           |  1
308 -     fileutils       | [] []    []    []     []   [] [] [] []    | 17
309 -     findutils       |    []    []    []     []   []       []    | 12
310 -     flex            |    []                      []       []    |  5
311 -     gcal            |                                           |  0
312 -     gcc             | []                                        |  1
313 -     gettext         | [] []    []    []     []   []    [] [] [] | 18
314 -     gnupg           | []             []                   []    |  7
315 -     grep            | []       []    []     []   []    [] []    | 17
316 -     hello           | [] []    []    []     []   [] []    []    | 15
317 -     id-utils        |          []                []       []    |  4
318 -     indent          |    []          []          [] []    []    | 10
319 -     libc            | [] []    [] [] []     []      []    []    | 16
320 -     lilypond        | []       []                               |  2
321 -     lynx            | []       []           []   []             |  7
322 -     m4              | []       []    []          []       []    | 11
323 -     make            | []       []    []     []   []             |  9
324 -     music           |                []                         |  2
325 -     parted          | []       []           []   []             |  6
326 -     ptx             |          [] [] [] []       []       []    | 13
327 -     python          |                                           |  0
328 -     recode          |                            []    [] []    | 10
329 -     sed             | []       []           []   [] [] [] []    | 14
330 -     sh-utils        | []       [] [] []     []   [] [] [] [] [] | 19
331 -     sharutils       | []       []                []       []    | 10
332 -     tar             | []       [] [] []     []   []    [] []    | 15
333 -     texinfo         | []                         []             |  6
334 -     textutils       | []       [] [] []     []   [] [] []       | 15
335 -     util-linux      |                       []                  |  1
336 -     wdiff           |          []    []          [] []    []    | 10
337 -     wget            | []       [] []        []   [] [] [] [] [] | 17
338 -                     `-------------------------------------------'
339 -       28 teams        ja ko lv nl no pl pt pt_BR ru sk sl sv zh
340 -       38 domains      20  8  0 25  6 18  1  16   27  9 10 20  3  330
341 +                          et eu fa fi fr ga gl he hr hu id is it ja ko lg
342 +                        +-------------------------------------------------+
343 +     a2ps               | []       [] []                      ()    ()    |
344 +     aegis              |                                                 |
345 +     ant-phone          |             []                                  |
346 +     anubis             |             []                                  |
347 +     ap-utils           |             []                                  |
348 +     aspell             |             [] []                               |
349 +     bash               |             []             []                   |
350 +     batchelor          |             [] []                               |
351 +     bfd                |             []                                  |
352 +     binutils           |             []                         []       |
353 +     bison              | []          []                []    []          |
354 +     bluez-pin          |          [] [] []          [] []                |
355 +     clisp              |                                                 |
356 +     clisp              |             []                                  |
357 +     console-tools      |                                                 |
358 +     coreutils          | []       [] [] []                   [] []       |
359 +     cpio               |             []    []       []             []    |
360 +     darkstat           |             () []          [] []                |
361 +     diffutils          |          [] []    [] []    [] []       []       |
362 +     e2fsprogs          |                                                 |
363 +     enscript           |             []          []                      |
364 +     error              |          [] [] []          []                   |
365 +     fetchmail          |                                        []       |
366 +     fileutils          | []          [] []          []       [] []       |
367 +     findutils          | []       [] [] [] []    [] [] []    [] [] []    |
368 +     flex               |             [] []                         []    |
369 +     fslint             |             []                                  |
370 +     gas                |             []                                  |
371 +     gawk               |             []       []                []       |
372 +     gbiff              |             []                                  |
373 +     gcal               |             []                                  |
374 +     gcc                |             []                                  |
375 +     gettext            |             []                         [] []    |
376 +     gettext-examples   |             []                         []       |
377 +     gettext-runtime    |          [] []                []       [] []    |
378 +     gettext-tools      |             []                         [] []    |
379 +     gimp-print         |             []                         []       |
380 +     gliv               |             ()                                  |
381 +     glunarclock        |          []    [] []       []                   |
382 +     gnubiff            |             []                                  |
383 +     gnucash            |             ()                      []          |
384 +     gnucash-glossary   |                                     []          |
385 +     gnupg              | []       [] []    []          []    [] []       |
386 +     gpe-aerial         |             []                                  |
387 +     gpe-beam           |             []                                  |
388 +     gpe-calendar       |             []             [] []                |
389 +     gpe-clock          |             []                                  |
390 +     gpe-conf           |             []                                  |
391 +     gpe-contacts       |             []             []                   |
392 +     gpe-edit           |             []                []                |
393 +     gpe-go             |             []                                  |
394 +     gpe-login          |             []             []                   |
395 +     gpe-ownerinfo      |             []             [] []                |
396 +     gpe-sketchbook     |             []                                  |
397 +     gpe-su             |             []                                  |
398 +     gpe-taskmanager    |             []                                  |
399 +     gpe-timesheet      |             [] []             []                |
400 +     gpe-today          |             [] []                               |
401 +     gpe-todo           |             []                []                |
402 +     gphoto2            |             []             []          []       |
403 +     gprof              |             []                []                |
404 +     gpsdrive           |             ()                      () ()       |
405 +     gramadoir          |             [] []                               |
406 +     grep               | []       [] [] [] [] [] [] [] []    [] []       |
407 +     gretl              |             []                      []          |
408 +     gtick              |          [] [] []                               |
409 +     hello              | []    [] [] [] [] [] [] [] [] []    [] [] []    |
410 +     id-utils           |             []             [] []    []          |
411 +     indent             | []       [] [] [] []       [] []    [] []       |
412 +     iso_3166           |    []       [] []       [] [] []    []          |
413 +     iso_3166_1         |    []       [] []          [] []                |
414 +     iso_3166_2         |                                                 |
415 +     iso_3166_3         |                                                 |
416 +     iso_4217           | []          []    []       []       [] []       |
417 +     iso_639            |                                                 |
418 +     jpilot             |             []                         ()       |
419 +     jtag               |             []                                  |
420 +     jwhois             |             []             [] []    []          |
421 +     kbd                |             []                                  |
422 +     latrine            |             []                                  |
423 +     ld                 |             []                                  |
424 +     libc               |          [] []    []       []          [] []    |
425 +     libgpewidget       |             [] []          [] []                |
426 +     libiconv           | []       [] [] [] []    [] [] []    []          |
427 +     lifelines          |             ()                                  |
428 +     lilypond           |             []                                  |
429 +     lingoteach         |             []                []                |
430 +     lingoteach_lessons |                                                 |
431 +     lynx               | []                         []       [] []       |
432 +     m4                 |             []    []          []       []       |
433 +     mailutils          |                                                 |
434 +     make               |             []    [] [] []             [] []    |
435 +     man-db             |                                     () ()       |
436 +     minicom            |          [] []             []          []       |
437 +     mysecretdiary      |             []                []                |
438 +     nano               |             []    []          []    []          |
439 +     nano_1_0           |             []    []          []    []          |
440 +     opcodes            |             []                                  |
441 +     parted             |             []    []                   []       |
442 +     ptx                | []       [] [] [] []       [] []                |
443 +     python             |                                                 |
444 +     radius             |             []                                  |
445 +     recode             |             []    [] []    [] []    []          |
446 +     rpm                |             []                            []    |
447 +     screem             |                                                 |
448 +     scrollkeeper       |                            []                   |
449 +     sed                | []       [] [] [] []       [] []    [] []       |
450 +     sh-utils           | []       [] [] []          []       [] []       |
451 +     shared-mime-info   |          [] []             []                   |
452 +     sharutils          | []          []    []       []          []       |
453 +     silky              |          () []             ()       ()          |
454 +     skencil            |             []                                  |
455 +     sketch             |             []                                  |
456 +     soundtracker       |             []                      []          |
457 +     sp                 |             []                         ()       |
458 +     tar                | []       [] []    []    [] [] []    [] []       |
459 +     texinfo            |             []       [] []             []       |
460 +     textutils          |             [] [] []       []          [] []    |
461 +     tin                | []          ()                                  |
462 +     tp-robot           |             []                                  |
463 +     tuxpaint           |          [] []       []    [] [] [] [] [] []    |
464 +     unicode-han-tra... |                                                 |
465 +     unicode-transla... |             [] []                               |
466 +     util-linux         | []       [] []             []       () []       |
467 +     vorbis-tools       |             []                                  |
468 +     wastesedge         |             ()                                  |
469 +     wdiff              | []          [] [] []       [] []                |
470 +     wget               | []       [] []    []    [] []          []       |
471 +     xchat              | []       [] []                                  |
472 +     xfree86_xkb_xml    |             []             []                   |
473 +     xpad               |             [] []                               |
474 +                        +-------------------------------------------------+
475 +                          et eu fa fi fr ga gl he hr hu id is it ja ko lg
476 +                          22  2  1 26 106 28 24  8 10 41 33  1 26 33 12  0
477 +     
478 +                          lt lv mk mn ms mt nb nl nn no nso pl pt pt_BR ro ru
479 +                        +-----------------------------------------------------+
480 +     a2ps               |             []       []    ()     ()     []   [] [] |
481 +     aegis              |                      ()                       () () |
482 +     ant-phone          |                      []                       []    |
483 +     anubis             |             []    [] []           []          [] [] |
484 +     ap-utils           |                      []           ()          []    |
485 +     aspell             |                      []                             |
486 +     bash               |                                          []   [] [] |
487 +     batchelor          |                                               []    |
488 +     bfd                |                                               []    |
489 +     binutils           |                                                  [] |
490 +     bison              |             []       []                  []   [] [] |
491 +     bluez-pin          |                      []           []          []    |
492 +     clisp              |                                                     |
493 +     clisp              |                      []                             |
494 +     console-tools      |                                                  [] |
495 +     coreutils          |                                   []             [] |
496 +     cpio               |                      []           []     []   [] [] |
497 +     darkstat           |             []       []                  []   []    |
498 +     diffutils          |             []       []           []     []   [] [] |
499 +     e2fsprogs          |                                   []                |
500 +     enscript           |                      []                  []   [] [] |
501 +     error              |                      []                  []   []    |
502 +     fetchmail          |                      []           []     ()      [] |
503 +     fileutils          |                                   []          [] [] |
504 +     findutils          |                      []           []     []   [] [] |
505 +     flex               |                                   []     []   [] [] |
506 +     fslint             |                      []                       []    |
507 +     gas                |                                                     |
508 +     gawk               |                                   []     []   []    |
509 +     gbiff              |                      []                       []    |
510 +     gcal               |                                                     |
511 +     gcc                |                                                     |
512 +     gettext            |                                   []          [] [] |
513 +     gettext-examples   |                      []           []          []    |
514 +     gettext-runtime    |                      []           []          [] [] |
515 +     gettext-tools      |                                   []          []    |
516 +     gimp-print         |                      []                             |
517 +     gliv               |                      []                  []   []    |
518 +     glunarclock        |             []       []                       [] [] |
519 +     gnubiff            |                      []                             |
520 +     gnucash            |                      []              []  ()      [] |
521 +     gnucash-glossary   |                      []              []             |
522 +     gnupg              |                                               []    |
523 +     gpe-aerial         |                      []              []       [] [] |
524 +     gpe-beam           |                      []              []       [] [] |
525 +     gpe-calendar       |                      []              []       [] [] |
526 +     gpe-clock          |                      []              []       [] [] |
527 +     gpe-conf           |                      []              []       [] [] |
528 +     gpe-contacts       |                      []              []       [] [] |
529 +     gpe-edit           |                      []              []       [] [] |
530 +     gpe-go             |                      []                       [] [] |
531 +     gpe-login          |                      []              []       [] [] |
532 +     gpe-ownerinfo      |                      []              []       [] [] |
533 +     gpe-sketchbook     |                      []              []       [] [] |
534 +     gpe-su             |                      []              []       [] [] |
535 +     gpe-taskmanager    |                      []              []       [] [] |
536 +     gpe-timesheet      |                      []              []       [] [] |
537 +     gpe-today          |                      []              []       [] [] |
538 +     gpe-todo           |                      []              []       [] [] |
539 +     gphoto2            |                                               []    |
540 +     gprof              |                                          []   []    |
541 +     gpsdrive           |                      ()    ()                 []    |
542 +     gramadoir          |                      ()                       []    |
543 +     grep               |                                   [] []  []   [] [] |
544 +     gretl              |                                                     |
545 +     gtick              |                      []                       [] [] |
546 +     hello              |    []       []    [] [] [] []     []     []   [] [] |
547 +     id-utils           |                      []                  []   [] [] |
548 +     indent             |                      []                  []   [] [] |
549 +     iso_3166           |          []                [] []                    |
550 +     iso_3166_1         |                      []    []                       |
551 +     iso_3166_2         |                                                     |
552 +     iso_3166_3         |                      []                             |
553 +     iso_4217           |          []          [] [] []     [] []  []      [] |
554 +     iso_639            |          []                                         |
555 +     jpilot             |                      ()    ()                       |
556 +     jtag               |                                                     |
557 +     jwhois             |                      []           []     []   [] () |
558 +     kbd                |                      []           []          []    |
559 +     latrine            |                                               []    |
560 +     ld                 |                                                     |
561 +     libc               |                   []       []     []     []         |
562 +     libgpewidget       |                      []              []       []    |
563 +     libiconv           |                      []           []     []   [] [] |
564 +     lifelines          |                                                     |
565 +     lilypond           |                                                     |
566 +     lingoteach         |                                                     |
567 +     lingoteach_lessons |                                                     |
568 +     lynx               |                      []                  []      [] |
569 +     m4                 |                      []           []     []   [] [] |
570 +     mailutils          |                                   []          [] [] |
571 +     make               |                      []           []     []      [] |
572 +     man-db             |                                               []    |
573 +     minicom            |                                   []     []   [] [] |
574 +     mysecretdiary      |                      []                  []   []    |
575 +     nano               |             []       []           []          [] [] |
576 +     nano_1_0           |             []    []    []        []          [] [] |
577 +     opcodes            |                      []                       []    |
578 +     parted             |                         []        [] []  []         |
579 +     ptx                |                   [] []    []     [] []  []   [] [] |
580 +     python             |                                                     |
581 +     radius             |                                   []             [] |
582 +     recode             |                                   []     []   [] [] |
583 +     rpm                |                                   [] []          [] |
584 +     screem             |                                                     |
585 +     scrollkeeper       |                   [] []           []          [] [] |
586 +     sed                |                                   []     []   []    |
587 +     sh-utils           |                   []                             [] |
588 +     shared-mime-info   |                      [] []                          |
589 +     sharutils          |                      []                          [] |
590 +     silky              |                                                  () |
591 +     skencil            |                                      []  []         |
592 +     sketch             |                                      []  []         |
593 +     soundtracker       |                                                     |
594 +     sp                 |                                                     |
595 +     tar                |             []    []       []     []     []   []    |
596 +     texinfo            |                   []              []          [] [] |
597 +     textutils          |                   []                             [] |
598 +     tin                |                                                     |
599 +     tp-robot           |                      []                             |
600 +     tuxpaint           | []          []       [] []        [] []  []   []    |
601 +     unicode-han-tra... |                                                     |
602 +     unicode-transla... |                                                     |
603 +     util-linux         |                      []                  []      [] |
604 +     vorbis-tools       |                      []                       [] [] |
605 +     wastesedge         |                                                     |
606 +     wdiff              |             []                    []     []   [] [] |
607 +     wget               |                                   []          [] [] |
608 +     xchat              |    []                []                          [] |
609 +     xfree86_xkb_xml    |                      []                          [] |
610 +     xpad               |                      []                       []    |
611 +                        +-----------------------------------------------------+
612 +                          lt lv mk mn ms mt nb nl nn no nso pl pt pt_BR ro ru
613 +                           1  2  0  3 12  0 10 69  6  7  1  40 26  36   76 63
614 +     
615 +                          sk sl sr sv ta th tr uk ven vi wa xh zh_CN zh_TW zu
616 +                        +-----------------------------------------------------+
617 +     a2ps               |    []    []       [] []                             | 16
618 +     aegis              |                                                     |  0
619 +     ant-phone          |                                                     |  3
620 +     anubis             |                   [] []                             |  9
621 +     ap-utils           |                      ()                             |  3
622 +     aspell             |                                                     |  4
623 +     bash               |                                                     |  9
624 +     batchelor          |                                                     |  3
625 +     bfd                |          []       []                                |  6
626 +     binutils           |          []       []                  []            |  8
627 +     bison              |          []       []                                | 14
628 +     bluez-pin          | []       []                    []                   | 14
629 +     clisp              |                                                     |  0
630 +     clisp              |                                                     |  5
631 +     console-tools      |                                                     |  3
632 +     coreutils          |    []    []       []                        []      | 16
633 +     cpio               |          []                           []            | 14
634 +     darkstat           | []    [] []                           ()    ()      | 12
635 +     diffutils          |          []       []                        []      | 23
636 +     e2fsprogs          |          []       []                                |  6
637 +     enscript           |          []       []                                | 12
638 +     error              | []                []                        []      | 15
639 +     fetchmail          | []                []                                | 11
640 +     fileutils          |    []    []       []                  []    []      | 17
641 +     findutils          | [] [] [] []       []                  []            | 29
642 +     flex               |          []       []                                | 13
643 +     fslint             |                                                     |  3
644 +     gas                |                   []                                |  3
645 +     gawk               |          []       []                                | 12
646 +     gbiff              |                                                     |  4
647 +     gcal               |          []       []                                |  4
648 +     gcc                |                   []                                |  4
649 +     gettext            | [] []    []       []                        []      | 16
650 +     gettext-examples   | []    [] []       []                  []            | 14
651 +     gettext-runtime    | [] [] [] []       [] []               []    []      | 22
652 +     gettext-tools      | [] [] [] []       []                  []            | 14
653 +     gimp-print         | []       []                                         | 10
654 +     gliv               |                                                     |  3
655 +     glunarclock        |       [] []                    []                   | 13
656 +     gnubiff            |                                                     |  3
657 +     gnucash            | []                                          []      |  9
658 +     gnucash-glossary   | []       []                                 []      |  8
659 +     gnupg              | []       []       []                        []      | 17
660 +     gpe-aerial         |          []                                         |  7
661 +     gpe-beam           |          []                                         |  8
662 +     gpe-calendar       | []       []                    []           []      | 13
663 +     gpe-clock          | []    [] []                                         | 10
664 +     gpe-conf           | []       []                                         |  9
665 +     gpe-contacts       | []       []                                 []      | 11
666 +     gpe-edit           | []    [] []                    []           []      | 12
667 +     gpe-go             |                                                     |  5
668 +     gpe-login          | []    [] []                    []           []      | 13
669 +     gpe-ownerinfo      | []    [] []                                 []      | 13
670 +     gpe-sketchbook     | []       []                                         |  9
671 +     gpe-su             | []    [] []                                         | 10
672 +     gpe-taskmanager    | []    [] []                                         | 10
673 +     gpe-timesheet      | []    [] []                                 []      | 12
674 +     gpe-today          | []    [] []                    []           []      | 13
675 +     gpe-todo           | []       []                    []           []      | 12
676 +     gphoto2            | []       []                           []            | 11
677 +     gprof              |          []       []                                |  9
678 +     gpsdrive           | []       []                                         |  3
679 +     gramadoir          | []                                                  |  5
680 +     grep               |    [] []          [] []                             | 26
681 +     gretl              |                                                     |  3
682 +     gtick              |                                                     |  7
683 +     hello              | []    [] []       [] []                             | 34
684 +     id-utils           |          []       []                                | 12
685 +     indent             | []    [] []       []                                | 21
686 +     iso_3166           | [] [] [] []       []    []     []                   | 27
687 +     iso_3166_1         | [] []             []                                | 16
688 +     iso_3166_2         |                                                     |  0
689 +     iso_3166_3         |                                                     |  2
690 +     iso_4217           | [] []    []       [] []               []            | 24
691 +     iso_639            |                                                     |  1
692 +     jpilot             |          []       []        []        []    []      |  9
693 +     jtag               | []                                                  |  2
694 +     jwhois             |          ()       []                        []      | 11
695 +     kbd                |          []       []                                | 11
696 +     latrine            |                                                     |  2
697 +     ld                 |          []       []                                |  5
698 +     libc               | []       []       []                  []            | 20
699 +     libgpewidget       | []    [] []                    []                   | 13
700 +     libiconv           | [] [] [] []       [] []        []     []            | 27
701 +     lifelines          |          []                                         |  2
702 +     lilypond           |          []                                         |  3
703 +     lingoteach         |                                                     |  2
704 +     lingoteach_lessons |                                       ()            |  0
705 +     lynx               |          []       [] []                             | 14
706 +     m4                 |          []                           []            | 15
707 +     mailutils          |                                                     |  5
708 +     make               |          []       []                  []            | 16
709 +     man-db             |          []                                         |  5
710 +     minicom            |                                                     | 11
711 +     mysecretdiary      |          []       []                                | 10
712 +     nano               |       [] []       [] []                             | 17
713 +     nano_1_0           |          []       [] []                             | 17
714 +     opcodes            |          []       []                                |  6
715 +     parted             |          []       []                  []            | 15
716 +     ptx                |          []       []                                | 22
717 +     python             |                                                     |  0
718 +     radius             |                                                     |  4
719 +     recode             |    []    []       []                                | 20
720 +     rpm                |          []       []                                |  9
721 +     screem             |          []                           []            |  2
722 +     scrollkeeper       | []    [] []                                         | 15
723 +     sed                | [] [] [] []       [] []                             | 24
724 +     sh-utils           |    []             []                                | 14
725 +     shared-mime-info   |       [] []                                         |  7
726 +     sharutils          |       [] []       []                        []      | 17
727 +     silky              | ()                                                  |  3
728 +     skencil            |          []                                         |  6
729 +     sketch             |          []                                         |  6
730 +     soundtracker       | []       []                                         |  7
731 +     sp                 |                   []                                |  3
732 +     tar                | [] []    []       []                  []            | 24
733 +     texinfo            |          []       []                  []            | 14
734 +     textutils          |    []    []       []                        []      | 16
735 +     tin                |                                                     |  1
736 +     tp-robot           |                                                     |  2
737 +     tuxpaint           | []       []       []           []     []            | 29
738 +     unicode-han-tra... |                                                     |  0
739 +     unicode-transla... |                                                     |  2
740 +     util-linux         |          []       []                                | 15
741 +     vorbis-tools       |                                                     |  8
742 +     wastesedge         |                                                     |  0
743 +     wdiff              | []       []       []                                | 18
744 +     wget               | [] [] [] []       [] []               []    []      | 24
745 +     xchat              | [] [] [] []                           []            | 15
746 +     xfree86_xkb_xml    | []    []          [] []               []            | 11
747 +     xpad               |                                                     |  5
748 +                        +-----------------------------------------------------+
749 +       63 teams           sk sl sr sv ta th tr uk ven vi wa xh zh_CN zh_TW zu
750 +      131 domains         47 19 28 83  0  0 59 13  1   1 11  0  22    22    0  1373
751  
752     Some counters in the preceding matrix are higher than the number of
753  visible blocks let us expect.  This is because a few extra PO files are
754 @@ -260,7 +742,7 @@
755  lag between the mere existence a PO file and its wide availability in a
756  distribution.
757  
758 -   If July 2000 seems to be old, you may fetch a more recent copy of
759 +   If January 2004 seems to be old, you may fetch a more recent copy of
760  this `ABOUT-NLS' file on most GNU archive sites.  The most up-to-date
761  matrix with full percentage details can be found at
762  `http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'.
763 @@ -268,15 +750,17 @@
764  Using `gettext' in new packages
765  ===============================
766  
767 -   If you are writing a freely available program and want to
768 +If you are writing a freely available program and want to
769  internationalize it you are welcome to use GNU `gettext' in your
770 -package.  Of course the GNU Public License applies to your sources from
771 -then if you include `gettext' directly in your distribution on but
772 -since you are writing free software anyway this is no restriction.
773 +package.  Of course you have to respect the GNU Library General Public
774 +License which covers the use of the GNU `gettext' library.  This means
775 +in particular that even non-free programs can use `libintl' as a shared
776 +library, whereas only free software can use `libintl' as a static
777 +library or use modified versions of `libintl'.
778  
779 -   Once the sources are change appropriately and the setup can handle to
780 -use of `gettext' the only thing missing are the translations.  The Free
781 -Translation Project is also available for packages which are not
782 +   Once the sources are changed appropriately and the setup can handle
783 +the use of `gettext' the only thing missing are the translations.  The
784 +Free Translation Project is also available for packages which are not
785  developed inside the GNU project.  Therefore the information given above
786  applies also for every other Free Software Project.  Contact
787  `translation@iro.umontreal.ca' to make the `.pot' files available to
788 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/ChangeLog psmisc-20.2.works.clean/ChangeLog
789 --- tmp/work/psmisc-20.2-r0/psmisc-20.2/ChangeLog       2001-10-17 17:43:07.000000000 -0500
790 +++ psmisc-20.2.works.clean/ChangeLog   2004-10-13 15:18:42.000000000 -0500
791 @@ -1,3 +1,35 @@
792 +2004-10-13  gettextize  <bug-gnu-gettext@gnu.org>
793 +
794 +       * Makefile.am (SUBDIRS): Add intl.
795 +       (EXTRA_DIST): Add config.rpath.
796 +       * configure.in (AC_CONFIG_FILES): Add intl/Makefile.
797 +
798 +2004-10-13  gettextize  <bug-gnu-gettext@gnu.org>
799 +
800 +       * Makefile.am (SUBDIRS): Add intl.
801 +       * configure.in (AC_CONFIG_FILES): Add intl/Makefile.
802 +
803 +2004-10-13  gettextize  <bug-gnu-gettext@gnu.org>
804 +
805 +       * Makefile.am (SUBDIRS): Add intl.
806 +       * configure.in (AC_CONFIG_FILES): Add intl/Makefile.
807 +
808 +2004-10-13  gettextize  <bug-gnu-gettext@gnu.org>
809 +
810 +       * configure.in (AC_CONFIG_FILES): Add po/Makefile.in.
811 +
812 +2004-10-13  gettextize  <bug-gnu-gettext@gnu.org>
813 +
814 +       * configure.in (AC_CONFIG_FILES): Add intl/Makefile.
815 +
816 +2004-10-13  gettextize  <bug-gnu-gettext@gnu.org>
817 +
818 +       * Makefile.am (SUBDIRS): Remove intl.
819 +       (ACLOCAL_AMFLAGS): New variable.
820 +       (EXTRA_DIST): Add config.rpath.
821 +       * configure.in (AC_CONFIG_FILES): Add m4/Makefile.
822 +       (AC_CONFIG_FILES): Remove intl/Makefile.
823 +
824  Changes in 20.2 (18-OCT-2001)
825  =============================
826   - Added NLS/gettext
827 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/ChangeLog~ psmisc-20.2.works.clean/ChangeLog~
828 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/Makefile.am psmisc-20.2.works.clean/Makefile.am
829 --- tmp/work/psmisc-20.2-r0/psmisc-20.2/Makefile.am     2001-06-12 19:49:47.000000000 -0500
830 +++ psmisc-20.2.works.clean/Makefile.am 2004-10-13 15:19:08.000000000 -0500
831 @@ -1,4 +1,5 @@
832 +SUBDIRS = intl po doc src
833  
834 -SUBDIRS = doc intl src po
835 +EXTRA_DIST= config.rpath  config.rpath ABOUT-NLS 
836  
837 -EXTRA_DIST=ABOUT-NLS 
838 +ACLOCAL_AMFLAGS = -I m4
839 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/Makefile.am~ psmisc-20.2.works.clean/Makefile.am~
840 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/Makefile.in psmisc-20.2.works.clean/Makefile.in
841 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/aclocal.m4 psmisc-20.2.works.clean/aclocal.m4
842 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/autom4te.cache/output.0 psmisc-20.2.works.clean/autom4te.cache/output.0
843 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/autom4te.cache/output.1 psmisc-20.2.works.clean/autom4te.cache/output.1
844 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/autom4te.cache/output.2 psmisc-20.2.works.clean/autom4te.cache/output.2
845 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/autom4te.cache/requests psmisc-20.2.works.clean/autom4te.cache/requests
846 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/autom4te.cache/traces.0 psmisc-20.2.works.clean/autom4te.cache/traces.0
847 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/autom4te.cache/traces.1 psmisc-20.2.works.clean/autom4te.cache/traces.1
848 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/autom4te.cache/traces.2 psmisc-20.2.works.clean/autom4te.cache/traces.2
849 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/config.guess psmisc-20.2.works.clean/config.guess
850 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/config.h.in psmisc-20.2.works.clean/config.h.in
851 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/config.rpath psmisc-20.2.works.clean/config.rpath
852 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/config.sub psmisc-20.2.works.clean/config.sub
853 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/configure psmisc-20.2.works.clean/configure
854 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/configure.in psmisc-20.2.works.clean/configure.in
855 --- tmp/work/psmisc-20.2-r0/psmisc-20.2/configure.in    2001-06-15 07:21:07.000000000 -0500
856 +++ psmisc-20.2.works.clean/configure.in        2004-10-13 15:19:18.000000000 -0500
857 @@ -1,5 +1,6 @@
858  dnl Process this file with autoconf to produce a configure script.
859 -AC_INIT(src/comm.h)
860 +AC_INIT
861 +AC_CONFIG_SRCDIR([src/comm.h])
862  AM_CONFIG_HEADER(config.h)
863  AM_INIT_AUTOMAKE(psmisc,20.2)
864  
865 @@ -23,7 +24,15 @@
866  AC_C_CONST
867  AC_TYPE_PID_T
868  AC_TYPE_SIZE_T
869 -AC_STRUCT_ST_RDEV
870 +AC_DIAGNOSE([obsolete],[AC_STRUCT_ST_RDEV:
871 +        your code should no longer depend upon `HAVE_ST_RDEV', but
872 +        `HAVE_STRUCT_STAT_ST_RDEV'.  Remove this warning and
873 +        the `AC_DEFINE' when you adjust the code.])
874 +AC_CHECK_MEMBERS([struct stat.st_rdev],[AC_DEFINE(HAVE_ST_RDEV, 1,
875 +                            [Define to 1 if your `struct stat' has `st_rdev'.
876 +                             Deprecated, use `HAVE_STRUCT_STAT_ST_RDEV'
877 +                             instead.])])
878 +
879  AC_TYPE_UID_T
880  
881  dnl Check for language stuff
882 @@ -33,4 +42,5 @@
883  dnl Checks for library functions.
884  AC_CHECK_FUNCS(strdup strerror strtoul)
885  
886 -AC_OUTPUT(Makefile doc/Makefile src/Makefile intl/Makefile po/Makefile.in)
887 +AC_CONFIG_FILES([Makefile doc/Makefile src/Makefile po/Makefile.in m4/Makefile intl/Makefile intl/libgnuintl.h  ])
888 +AC_OUTPUT
889 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/configure.in~ psmisc-20.2.works.clean/configure.in~
890 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/depcomp psmisc-20.2.works.clean/depcomp
891 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/doc/Makefile.in psmisc-20.2.works.clean/doc/Makefile.in
892 --- tmp/work/psmisc-20.2-r0/psmisc-20.2/doc/Makefile.in 2001-10-17 17:49:50.000000000 -0500
893 +++ psmisc-20.2.works.clean/doc/Makefile.in     2004-10-13 15:20:17.000000000 -0500
894 @@ -1,6 +1,8 @@
895 -# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am
896 +# Makefile.in generated by automake 1.8.4 from Makefile.am.
897 +# @configure_input@
898  
899 -# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
900 +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
901 +# 2003, 2004  Free Software Foundation, Inc.
902  # This Makefile.in is free software; the Free Software Foundation
903  # gives unlimited permission to copy and/or distribute it,
904  # with or without modifications, as long as this notice is preserved.
905 @@ -10,111 +12,192 @@
906  # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
907  # PARTICULAR PURPOSE.
908  
909 -
910 -SHELL = @SHELL@
911 -
912 +@SET_MAKE@
913  srcdir = @srcdir@
914  top_srcdir = @top_srcdir@
915  VPATH = @srcdir@
916 -prefix = @prefix@
917 -exec_prefix = @exec_prefix@
918 -
919 -bindir = @bindir@
920 -sbindir = @sbindir@
921 -libexecdir = @libexecdir@
922 -datadir = @datadir@
923 -sysconfdir = @sysconfdir@
924 -sharedstatedir = @sharedstatedir@
925 -localstatedir = @localstatedir@
926 -libdir = @libdir@
927 -infodir = @infodir@
928 -mandir = @mandir@
929 -includedir = @includedir@
930 -oldincludedir = /usr/include
931 -
932 -DESTDIR =
933 -
934  pkgdatadir = $(datadir)/@PACKAGE@
935  pkglibdir = $(libdir)/@PACKAGE@
936  pkgincludedir = $(includedir)/@PACKAGE@
937 -
938  top_builddir = ..
939 -
940 -ACLOCAL = @ACLOCAL@
941 -AUTOCONF = @AUTOCONF@
942 -AUTOMAKE = @AUTOMAKE@
943 -AUTOHEADER = @AUTOHEADER@
944 -
945 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
946  INSTALL = @INSTALL@
947 -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
948 -INSTALL_DATA = @INSTALL_DATA@
949 -INSTALL_SCRIPT = @INSTALL_SCRIPT@
950 -transform = @program_transform_name@
951 -
952 +install_sh_DATA = $(install_sh) -c -m 644
953 +install_sh_PROGRAM = $(install_sh) -c
954 +install_sh_SCRIPT = $(install_sh) -c
955 +INSTALL_HEADER = $(INSTALL_DATA)
956 +transform = $(program_transform_name)
957  NORMAL_INSTALL = :
958  PRE_INSTALL = :
959  POST_INSTALL = :
960  NORMAL_UNINSTALL = :
961  PRE_UNINSTALL = :
962  POST_UNINSTALL = :
963 -host_alias = @host_alias@
964  host_triplet = @host@
965 +subdir = doc
966 +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
967 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
968 +am__aclocal_m4_deps = $(top_srcdir)/configure.in
969 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
970 +       $(ACLOCAL_M4)
971 +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
972 +CONFIG_HEADER = $(top_builddir)/config.h
973 +CONFIG_CLEAN_FILES =
974 +SOURCES =
975 +DIST_SOURCES =
976 +man1dir = $(mandir)/man1
977 +am__installdirs = "$(DESTDIR)$(man1dir)"
978 +NROFF = nroff
979 +MANS = $(man_MANS)
980 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
981 +ACLOCAL = @ACLOCAL@
982 +ALLOCA = @ALLOCA@
983 +AMDEP_FALSE = @AMDEP_FALSE@
984 +AMDEP_TRUE = @AMDEP_TRUE@
985 +AMTAR = @AMTAR@
986 +AUTOCONF = @AUTOCONF@
987 +AUTOHEADER = @AUTOHEADER@
988 +AUTOMAKE = @AUTOMAKE@
989 +AWK = @AWK@
990  BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
991 -CATALOGS = @CATALOGS@
992  CATOBJEXT = @CATOBJEXT@
993  CC = @CC@
994 +CCDEPMODE = @CCDEPMODE@
995 +CFLAGS = @CFLAGS@
996  CPP = @CPP@
997 +CPPFLAGS = @CPPFLAGS@
998 +CYGPATH_W = @CYGPATH_W@
999  DATADIRNAME = @DATADIRNAME@
1000 -GMOFILES = @GMOFILES@
1001 +DEFS = @DEFS@
1002 +DEPDIR = @DEPDIR@
1003 +ECHO_C = @ECHO_C@
1004 +ECHO_N = @ECHO_N@
1005 +ECHO_T = @ECHO_T@
1006 +EGREP = @EGREP@
1007 +EXEEXT = @EXEEXT@
1008 +GENCAT = @GENCAT@
1009 +GLIBC21 = @GLIBC21@
1010  GMSGFMT = @GMSGFMT@
1011 +HAVE_ASPRINTF = @HAVE_ASPRINTF@
1012 +HAVE_POSIX_PRINTF = @HAVE_POSIX_PRINTF@
1013 +HAVE_SNPRINTF = @HAVE_SNPRINTF@
1014 +HAVE_WPRINTF = @HAVE_WPRINTF@
1015 +INSTALL_DATA = @INSTALL_DATA@
1016 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
1017 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
1018 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
1019 +INSTOBJEXT = @INSTOBJEXT@
1020  INTLBISON = @INTLBISON@
1021  INTLLIBS = @INTLLIBS@
1022  INTLOBJS = @INTLOBJS@
1023  INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
1024 +LDFLAGS = @LDFLAGS@
1025  LIBICONV = @LIBICONV@
1026 +LIBINTL = @LIBINTL@
1027 +LIBOBJS = @LIBOBJS@
1028 +LIBS = @LIBS@
1029 +LTLIBICONV = @LTLIBICONV@
1030 +LTLIBINTL = @LTLIBINTL@
1031 +LTLIBOBJS = @LTLIBOBJS@
1032  MAKEINFO = @MAKEINFO@
1033  MKINSTALLDIRS = @MKINSTALLDIRS@
1034  MSGFMT = @MSGFMT@
1035 +MSGMERGE = @MSGMERGE@
1036 +OBJEXT = @OBJEXT@
1037  PACKAGE = @PACKAGE@
1038 -POFILES = @POFILES@
1039 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
1040 +PACKAGE_NAME = @PACKAGE_NAME@
1041 +PACKAGE_STRING = @PACKAGE_STRING@
1042 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
1043 +PACKAGE_VERSION = @PACKAGE_VERSION@
1044 +PATH_SEPARATOR = @PATH_SEPARATOR@
1045  POSUB = @POSUB@
1046  RANLIB = @RANLIB@
1047 +SET_MAKE = @SET_MAKE@
1048 +SHELL = @SHELL@
1049 +STRIP = @STRIP@
1050  TERMCAP_LIB = @TERMCAP_LIB@
1051  USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
1052  USE_NLS = @USE_NLS@
1053  VERSION = @VERSION@
1054 -
1055 +XGETTEXT = @XGETTEXT@
1056 +ac_ct_CC = @ac_ct_CC@
1057 +ac_ct_RANLIB = @ac_ct_RANLIB@
1058 +ac_ct_STRIP = @ac_ct_STRIP@
1059 +am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
1060 +am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
1061 +am__include = @am__include@
1062 +am__leading_dot = @am__leading_dot@
1063 +am__quote = @am__quote@
1064 +bindir = @bindir@
1065 +build = @build@
1066 +build_alias = @build_alias@
1067 +build_cpu = @build_cpu@
1068 +build_os = @build_os@
1069 +build_vendor = @build_vendor@
1070 +datadir = @datadir@
1071 +exec_prefix = @exec_prefix@
1072 +host = @host@
1073 +host_alias = @host_alias@
1074 +host_cpu = @host_cpu@
1075 +host_os = @host_os@
1076 +host_vendor = @host_vendor@
1077 +includedir = @includedir@
1078 +infodir = @infodir@
1079 +install_sh = @install_sh@
1080 +libdir = @libdir@
1081 +libexecdir = @libexecdir@
1082 +localstatedir = @localstatedir@
1083 +mandir = @mandir@
1084 +mkdir_p = @mkdir_p@
1085 +oldincludedir = @oldincludedir@
1086 +prefix = @prefix@
1087 +program_transform_name = @program_transform_name@
1088 +sbindir = @sbindir@
1089 +sharedstatedir = @sharedstatedir@
1090 +sysconfdir = @sysconfdir@
1091 +target_alias = @target_alias@
1092  man_MANS = fuser.1 killall.1 pidof.1 pstree.1
1093 -
1094  EXTRA_DIST = $(man_MANS)
1095 -mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
1096 -CONFIG_HEADER = ../config.h
1097 -CONFIG_CLEAN_FILES = 
1098 -man1dir = $(mandir)/man1
1099 -MANS = $(man_MANS)
1100 -
1101 -NROFF = nroff
1102 -DIST_COMMON =  Makefile.am Makefile.in
1103 -
1104 -
1105 -DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
1106 +all: all-am
1107  
1108 -TAR = tar
1109 -GZIP_ENV = --best
1110 -all: all-redirect
1111  .SUFFIXES:
1112 -$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) 
1113 -       cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps doc/Makefile
1114 -
1115 -Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
1116 -       cd $(top_builddir) \
1117 -         && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
1118 +$(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
1119 +       @for dep in $?; do \
1120 +         case '$(am__configure_deps)' in \
1121 +           *$$dep*) \
1122 +             cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
1123 +               && exit 0; \
1124 +             exit 1;; \
1125 +         esac; \
1126 +       done; \
1127 +       echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  doc/Makefile'; \
1128 +       cd $(top_srcdir) && \
1129 +         $(AUTOMAKE) --foreign  doc/Makefile
1130 +.PRECIOUS: Makefile
1131 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
1132 +       @case '$?' in \
1133 +         *config.status*) \
1134 +           cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
1135 +         *) \
1136 +           echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
1137 +           cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
1138 +       esac;
1139  
1140 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
1141 +       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
1142  
1143 -install-man1:
1144 -       $(mkinstalldirs) $(DESTDIR)$(man1dir)
1145 -       @list='$(man1_MANS)'; \
1146 -       l2='$(man_MANS)'; for i in $$l2; do \
1147 +$(top_srcdir)/configure:  $(am__configure_deps)
1148 +       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
1149 +$(ACLOCAL_M4):  $(am__aclocal_m4_deps)
1150 +       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
1151 +uninstall-info-am:
1152 +install-man1: $(man1_MANS) $(man_MANS)
1153 +       @$(NORMAL_INSTALL)
1154 +       test -z "$(man1dir)" || $(mkdir_p) "$(DESTDIR)$(man1dir)"
1155 +       @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
1156 +       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
1157 +       for i in $$l2; do \
1158           case "$$i" in \
1159             *.1*) list="$$list $$i" ;; \
1160           esac; \
1161 @@ -123,112 +206,158 @@
1162           if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
1163           else file=$$i; fi; \
1164           ext=`echo $$i | sed -e 's/^.*\\.//'`; \
1165 +         case "$$ext" in \
1166 +           1*) ;; \
1167 +           *) ext='1' ;; \
1168 +         esac; \
1169           inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
1170 +         inst=`echo $$inst | sed -e 's/^.*\///'`; \
1171           inst=`echo $$inst | sed '$(transform)'`.$$ext; \
1172 -         echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst"; \
1173 -         $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst; \
1174 +         echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
1175 +         $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \
1176         done
1177 -
1178  uninstall-man1:
1179 -       @list='$(man1_MANS)'; \
1180 -       l2='$(man_MANS)'; for i in $$l2; do \
1181 +       @$(NORMAL_UNINSTALL)
1182 +       @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
1183 +       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
1184 +       for i in $$l2; do \
1185           case "$$i" in \
1186             *.1*) list="$$list $$i" ;; \
1187           esac; \
1188         done; \
1189         for i in $$list; do \
1190           ext=`echo $$i | sed -e 's/^.*\\.//'`; \
1191 +         case "$$ext" in \
1192 +           1*) ;; \
1193 +           *) ext='1' ;; \
1194 +         esac; \
1195           inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
1196 +         inst=`echo $$inst | sed -e 's/^.*\///'`; \
1197           inst=`echo $$inst | sed '$(transform)'`.$$ext; \
1198 -         echo " rm -f $(DESTDIR)$(man1dir)/$$inst"; \
1199 -         rm -f $(DESTDIR)$(man1dir)/$$inst; \
1200 +         echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \
1201 +         rm -f "$(DESTDIR)$(man1dir)/$$inst"; \
1202         done
1203 -install-man: $(MANS)
1204 -       @$(NORMAL_INSTALL)
1205 -       $(MAKE) $(AM_MAKEFLAGS) install-man1
1206 -uninstall-man:
1207 -       @$(NORMAL_UNINSTALL)
1208 -       $(MAKE) $(AM_MAKEFLAGS) uninstall-man1
1209  tags: TAGS
1210  TAGS:
1211  
1212 +ctags: CTAGS
1213 +CTAGS:
1214  
1215 -distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
1216 -
1217 -subdir = doc
1218  
1219  distdir: $(DISTFILES)
1220 -       @for file in $(DISTFILES); do \
1221 -         d=$(srcdir); \
1222 +       @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
1223 +       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
1224 +       list='$(DISTFILES)'; for file in $$list; do \
1225 +         case $$file in \
1226 +           $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
1227 +           $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
1228 +         esac; \
1229 +         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
1230 +         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
1231 +         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
1232 +           dir="/$$dir"; \
1233 +           $(mkdir_p) "$(distdir)$$dir"; \
1234 +         else \
1235 +           dir=''; \
1236 +         fi; \
1237           if test -d $$d/$$file; then \
1238 -           cp -pr $$d/$$file $(distdir)/$$file; \
1239 +           if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
1240 +             cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
1241 +           fi; \
1242 +           cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
1243           else \
1244             test -f $(distdir)/$$file \
1245 -           || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
1246 -           || cp -p $$d/$$file $(distdir)/$$file || :; \
1247 +           || cp -p $$d/$$file $(distdir)/$$file \
1248 +           || exit 1; \
1249           fi; \
1250         done
1251 -info-am:
1252 -info: info-am
1253 -dvi-am:
1254 -dvi: dvi-am
1255  check-am: all-am
1256  check: check-am
1257 -installcheck-am:
1258 -installcheck: installcheck-am
1259 -install-exec-am:
1260 +all-am: Makefile $(MANS)
1261 +installdirs:
1262 +       for dir in "$(DESTDIR)$(man1dir)"; do \
1263 +         test -z "$$dir" || $(mkdir_p) "$$dir"; \
1264 +       done
1265 +install: install-am
1266  install-exec: install-exec-am
1267 -
1268 -install-data-am: install-man
1269  install-data: install-data-am
1270 +uninstall: uninstall-am
1271  
1272  install-am: all-am
1273         @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
1274 -install: install-am
1275 -uninstall-am: uninstall-man
1276 -uninstall: uninstall-am
1277 -all-am: Makefile $(MANS)
1278 -all-redirect: all-am
1279 -install-strip:
1280 -       $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
1281 -installdirs:
1282 -       $(mkinstalldirs)  $(DESTDIR)$(mandir)/man1
1283 -
1284  
1285 +installcheck: installcheck-am
1286 +install-strip:
1287 +       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
1288 +         install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
1289 +         `test -z '$(STRIP)' || \
1290 +           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
1291  mostlyclean-generic:
1292  
1293  clean-generic:
1294  
1295  distclean-generic:
1296 -       -rm -f Makefile $(CONFIG_CLEAN_FILES)
1297 -       -rm -f config.cache config.log stamp-h stamp-h[0-9]*
1298 +       -rm -f $(CONFIG_CLEAN_FILES)
1299  
1300  maintainer-clean-generic:
1301 -mostlyclean-am:  mostlyclean-generic
1302 +       @echo "This command is intended for maintainers to use"
1303 +       @echo "it deletes files that may require special tools to rebuild."
1304 +clean: clean-am
1305  
1306 -mostlyclean: mostlyclean-am
1307 +clean-am: clean-generic mostlyclean-am
1308  
1309 -clean-am:  clean-generic mostlyclean-am
1310 +distclean: distclean-am
1311 +       -rm -f Makefile
1312 +distclean-am: clean-am distclean-generic
1313  
1314 -clean: clean-am
1315 +dvi: dvi-am
1316  
1317 -distclean-am:  distclean-generic clean-am
1318 +dvi-am:
1319  
1320 -distclean: distclean-am
1321 +html: html-am
1322  
1323 -maintainer-clean-am:  maintainer-clean-generic distclean-am
1324 -       @echo "This command is intended for maintainers to use;"
1325 -       @echo "it deletes files that may require special tools to rebuild."
1326 +info: info-am
1327 +
1328 +info-am:
1329 +
1330 +install-data-am: install-man
1331 +
1332 +install-exec-am:
1333 +
1334 +install-info: install-info-am
1335 +
1336 +install-man: install-man1
1337 +
1338 +installcheck-am:
1339  
1340  maintainer-clean: maintainer-clean-am
1341 +       -rm -f Makefile
1342 +maintainer-clean-am: distclean-am maintainer-clean-generic
1343  
1344 -.PHONY: install-man1 uninstall-man1 install-man uninstall-man tags \
1345 -distdir info-am info dvi-am dvi check check-am installcheck-am \
1346 -installcheck install-exec-am install-exec install-data-am install-data \
1347 -install-am install uninstall-am uninstall all-redirect all-am all \
1348 -installdirs mostlyclean-generic distclean-generic clean-generic \
1349 -maintainer-clean-generic clean mostlyclean distclean maintainer-clean
1350 +mostlyclean: mostlyclean-am
1351 +
1352 +mostlyclean-am: mostlyclean-generic
1353 +
1354 +pdf: pdf-am
1355 +
1356 +pdf-am:
1357 +
1358 +ps: ps-am
1359  
1360 +ps-am:
1361 +
1362 +uninstall-am: uninstall-info-am uninstall-man
1363 +
1364 +uninstall-man: uninstall-man1
1365 +
1366 +.PHONY: all all-am check check-am clean clean-generic distclean \
1367 +       distclean-generic distdir dvi dvi-am html html-am info info-am \
1368 +       install install-am install-data install-data-am install-exec \
1369 +       install-exec-am install-info install-info-am install-man \
1370 +       install-man1 install-strip installcheck installcheck-am \
1371 +       installdirs maintainer-clean maintainer-clean-generic \
1372 +       mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
1373 +       uninstall-am uninstall-info-am uninstall-man uninstall-man1
1374  
1375  # Tell versions [3.59,3.63) of GNU make to not export all variables.
1376  # Otherwise a system limit (for SysV at least) may be exceeded.
1377 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/install-sh psmisc-20.2.works.clean/install-sh
1378 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/ChangeLog psmisc-20.2.works.clean/intl/ChangeLog
1379 --- tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/ChangeLog  2001-04-13 23:00:42.000000000 -0500
1380 +++ psmisc-20.2.works.clean/intl/ChangeLog      2004-10-13 15:18:41.000000000 -0500
1381 @@ -1,4 +1,4 @@
1382 -2001-03-09  GNU  <bug-gnu-utils@gnu.org>
1383 +2004-01-29  GNU  <bug-gnu-gettext@gnu.org>
1384  
1385 -       * Version 0.10.36 released.
1386 +       * Version 0.14.1 released.
1387  
1388 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/Makefile.in psmisc-20.2.works.clean/intl/Makefile.in
1389 --- tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/Makefile.in        2001-04-13 23:00:42.000000000 -0500
1390 +++ psmisc-20.2.works.clean/intl/Makefile.in    2004-10-13 15:18:41.000000000 -0500
1391 @@ -1,19 +1,20 @@
1392 -# Makefile for directory with message catalog handling in GNU NLS Utilities.
1393 -# Copyright (C) 1995-1998, 2000, 2001 Free Software Foundation, Inc.
1394 +# Makefile for directory with message catalog handling library of GNU gettext
1395 +# Copyright (C) 1995-1998, 2000-2003 Free Software Foundation, Inc.
1396  #
1397 -# This program is free software; you can redistribute it and/or modify
1398 -# it under the terms of the GNU General Public License as published by
1399 -# the Free Software Foundation; either version 2, or (at your option)
1400 +# This program is free software; you can redistribute it and/or modify it
1401 +# under the terms of the GNU Library General Public License as published
1402 +# by the Free Software Foundation; either version 2, or (at your option)
1403  # any later version.
1404  #
1405  # This program is distributed in the hope that it will be useful,
1406  # but WITHOUT ANY WARRANTY; without even the implied warranty of
1407 -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1408 -# GNU General Public License for more details.
1409 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
1410 +# Library General Public License for more details.
1411  #
1412 -# You should have received a copy of the GNU General Public License
1413 -# along with this program; if not, write to the Free Software
1414 -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1415 +# You should have received a copy of the GNU Library General Public
1416 +# License along with this program; if not, write to the Free Software
1417 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
1418 +# USA.
1419  
1420  PACKAGE = @PACKAGE@
1421  VERSION = @VERSION@
1422 @@ -23,23 +24,23 @@
1423  srcdir = @srcdir@
1424  top_srcdir = @top_srcdir@
1425  top_builddir = ..
1426 -VPATH = @srcdir@
1427 +#VPATH = $(srcdir)
1428  
1429  prefix = @prefix@
1430  exec_prefix = @exec_prefix@
1431  transform = @program_transform_name@
1432 -libdir = $(exec_prefix)/lib
1433 -includedir = $(prefix)/include
1434 -datadir = $(prefix)/share
1435 +libdir = @libdir@
1436 +includedir = @includedir@
1437 +datadir = @datadir@
1438  localedir = $(datadir)/locale
1439 -gettextsrcdir = @datadir@/gettext/intl
1440 +gettextsrcdir = $(datadir)/gettext/intl
1441  aliaspath = $(localedir)
1442  subdir = intl
1443  
1444  INSTALL = @INSTALL@
1445  INSTALL_DATA = @INSTALL_DATA@
1446  MKINSTALLDIRS = @MKINSTALLDIRS@
1447 -mkinstalldirs = $(SHELL) `case "$(MKINSTALLDIRS)" in /*) echo "$(MKINSTALLDIRS)" ;; *) echo "$(top_builddir)/$(MKINSTALLDIRS)" ;; esac`
1448 +mkinstalldirs = $(SHELL) $(MKINSTALLDIRS)
1449  
1450  l = @INTL_LIBTOOL_SUFFIX_PREFIX@
1451  
1452 @@ -51,89 +52,202 @@
1453  YFLAGS = --name-prefix=__gettext
1454  
1455  DEFS = -DLOCALEDIR=\"$(localedir)\" -DLOCALE_ALIAS_PATH=\"$(aliaspath)\" \
1456 --DLIBDIR=\"$(libdir)\" @DEFS@
1457 +-DLIBDIR=\"$(libdir)\" -DIN_LIBINTL \
1458 +-DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"$(libdir)\" -DNO_XMALLOC \
1459 +-Dset_relocation_prefix=libintl_set_relocation_prefix \
1460 +-Drelocate=libintl_relocate \
1461 +-DDEPENDS_ON_LIBICONV=1 @DEFS@
1462  CPPFLAGS = @CPPFLAGS@
1463  CFLAGS = @CFLAGS@
1464  LDFLAGS = @LDFLAGS@
1465 +LIBS = @LIBS@
1466  
1467  COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
1468  
1469 -HEADERS = $(COMHDRS) libgnuintl.h libgettext.h loadinfo.h
1470 -COMHDRS = gettext.h gettextP.h hash-string.h
1471 -SOURCES = $(COMSRCS) intl-compat.c
1472 -COMSRCS = bindtextdom.c dcgettext.c dgettext.c gettext.c \
1473 -finddomain.c loadmsgcat.c localealias.c textdomain.c l10nflist.c \
1474 -explodename.c dcigettext.c dcngettext.c dngettext.c ngettext.c plural.y \
1475 -localcharset.c
1476 -OBJECTS = @INTLOBJS@ bindtextdom.$lo dcgettext.$lo dgettext.$lo gettext.$lo \
1477 -finddomain.$lo loadmsgcat.$lo localealias.$lo textdomain.$lo l10nflist.$lo \
1478 -explodename.$lo dcigettext.$lo dcngettext.$lo dngettext.$lo ngettext.$lo \
1479 -plural.$lo localcharset.$lo
1480 -GETTOBJS = intl-compat.$lo
1481 +HEADERS = \
1482 +  gmo.h \
1483 +  gettextP.h \
1484 +  hash-string.h \
1485 +  loadinfo.h \
1486 +  plural-exp.h \
1487 +  eval-plural.h \
1488 +  localcharset.h \
1489 +  relocatable.h \
1490 +  xsize.h \
1491 +  printf-args.h printf-args.c \
1492 +  printf-parse.h wprintf-parse.h printf-parse.c \
1493 +  vasnprintf.h vasnwprintf.h vasnprintf.c \
1494 +  os2compat.h \
1495 +  libgnuintl.h.in
1496 +SOURCES = \
1497 +  bindtextdom.c \
1498 +  dcgettext.c \
1499 +  dgettext.c \
1500 +  gettext.c \
1501 +  finddomain.c \
1502 +  loadmsgcat.c \
1503 +  localealias.c \
1504 +  textdomain.c \
1505 +  l10nflist.c \
1506 +  explodename.c \
1507 +  dcigettext.c \
1508 +  dcngettext.c \
1509 +  dngettext.c \
1510 +  ngettext.c \
1511 +  plural.y \
1512 +  plural-exp.c \
1513 +  localcharset.c \
1514 +  relocatable.c \
1515 +  localename.c \
1516 +  log.c \
1517 +  printf.c \
1518 +  osdep.c \
1519 +  os2compat.c \
1520 +  intl-compat.c
1521 +OBJECTS = \
1522 +  bindtextdom.$lo \
1523 +  dcgettext.$lo \
1524 +  dgettext.$lo \
1525 +  gettext.$lo \
1526 +  finddomain.$lo \
1527 +  loadmsgcat.$lo \
1528 +  localealias.$lo \
1529 +  textdomain.$lo \
1530 +  l10nflist.$lo \
1531 +  explodename.$lo \
1532 +  dcigettext.$lo \
1533 +  dcngettext.$lo \
1534 +  dngettext.$lo \
1535 +  ngettext.$lo \
1536 +  plural.$lo \
1537 +  plural-exp.$lo \
1538 +  localcharset.$lo \
1539 +  relocatable.$lo \
1540 +  localename.$lo \
1541 +  log.$lo \
1542 +  printf.$lo \
1543 +  osdep.$lo \
1544 +  intl-compat.$lo
1545  DISTFILES.common = Makefile.in \
1546  config.charset locale.alias ref-add.sin ref-del.sin $(HEADERS) $(SOURCES)
1547  DISTFILES.generated = plural.c
1548  DISTFILES.normal = VERSION
1549 -DISTFILES.gettext = libintl.glibc
1550 -DISTFILES.obsolete = xopen-msg.sed linux-msg.sed po2tbl.sed.in cat-compat.c
1551 +DISTFILES.gettext = COPYING.LIB-2.0 COPYING.LIB-2.1 libintl.glibc \
1552 +libgnuintl.h_vms Makefile.vms \
1553 +libgnuintl.h.msvc-static libgnuintl.h.msvc-shared README.woe32 Makefile.msvc
1554 +DISTFILES.obsolete = xopen-msg.sed linux-msg.sed po2tbl.sed.in cat-compat.c \
1555 +COPYING.LIB-2 gettext.h libgettext.h plural-eval.c libgnuintl.h
1556 +
1557 +all: all-@USE_INCLUDED_LIBINTL@
1558 +all-yes: libintl.$la libintl.h charset.alias ref-add.sed ref-del.sed
1559 +all-no: all-no-@BUILD_INCLUDED_LIBINTL@
1560 +all-no-yes: libgnuintl.$la
1561 +all-no-no:
1562 +
1563 +libintl.a libgnuintl.a: $(OBJECTS)
1564 +       rm -f $@
1565 +       $(AR) cru $@ $(OBJECTS)
1566 +       $(RANLIB) $@
1567 +
1568 +libintl.la libgnuintl.la: $(OBJECTS)
1569 +       $(LIBTOOL) --mode=link \
1570 +         $(CC) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) $(LDFLAGS) -o $@ \
1571 +         $(OBJECTS) @LTLIBICONV@ $(LIBS) -lc \
1572 +         -version-info $(LTV_CURRENT):$(LTV_REVISION):$(LTV_AGE) \
1573 +         -rpath $(libdir) \
1574 +         -no-undefined
1575  
1576  # Libtool's library version information for libintl.
1577  # Before making a gettext release, the gettext maintainer must change this
1578  # according to the libtool documentation, section "Library interface versions".
1579  # Maintainers of other packages that include the intl directory must *not*
1580  # change these values.
1581 -LTV_CURRENT=1
1582 +LTV_CURRENT=7
1583  LTV_REVISION=0
1584 -LTV_AGE=0
1585 +LTV_AGE=4
1586  
1587  .SUFFIXES:
1588  .SUFFIXES: .c .y .o .lo .sin .sed
1589 +
1590  .c.o:
1591         $(COMPILE) $<
1592 -.c.lo:
1593 -       $(LIBTOOL) --mode=compile $(COMPILE) $<
1594  
1595  .y.c:
1596         $(YACC) $(YFLAGS) --output $@ $<
1597         rm -f $*.h
1598  
1599 -.sin.sed:
1600 -       sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $< > t-$@
1601 -       mv t-$@ $@
1602 -
1603 -INCLUDES = -I.. -I. -I$(top_srcdir)/intl
1604 +bindtextdom.lo: $(srcdir)/bindtextdom.c
1605 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/bindtextdom.c
1606 +dcgettext.lo: $(srcdir)/dcgettext.c
1607 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dcgettext.c
1608 +dgettext.lo: $(srcdir)/dgettext.c
1609 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dgettext.c
1610 +gettext.lo: $(srcdir)/gettext.c
1611 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/gettext.c
1612 +finddomain.lo: $(srcdir)/finddomain.c
1613 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/finddomain.c
1614 +loadmsgcat.lo: $(srcdir)/loadmsgcat.c
1615 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/loadmsgcat.c
1616 +localealias.lo: $(srcdir)/localealias.c
1617 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/localealias.c
1618 +textdomain.lo: $(srcdir)/textdomain.c
1619 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/textdomain.c
1620 +l10nflist.lo: $(srcdir)/l10nflist.c
1621 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/l10nflist.c
1622 +explodename.lo: $(srcdir)/explodename.c
1623 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/explodename.c
1624 +dcigettext.lo: $(srcdir)/dcigettext.c
1625 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dcigettext.c
1626 +dcngettext.lo: $(srcdir)/dcngettext.c
1627 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dcngettext.c
1628 +dngettext.lo: $(srcdir)/dngettext.c
1629 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dngettext.c
1630 +ngettext.lo: $(srcdir)/ngettext.c
1631 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/ngettext.c
1632 +plural.lo: $(srcdir)/plural.c
1633 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/plural.c
1634 +plural-exp.lo: $(srcdir)/plural-exp.c
1635 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/plural-exp.c
1636 +localcharset.lo: $(srcdir)/localcharset.c
1637 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/localcharset.c
1638 +relocatable.lo: $(srcdir)/relocatable.c
1639 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/relocatable.c
1640 +localename.lo: $(srcdir)/localename.c
1641 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/localename.c
1642 +log.lo: $(srcdir)/log.c
1643 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/log.c
1644 +printf.lo: $(srcdir)/printf.c
1645 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/printf.c
1646 +osdep.lo: $(srcdir)/osdep.c
1647 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/osdep.c
1648 +intl-compat.lo: $(srcdir)/intl-compat.c
1649 +       $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/intl-compat.c
1650  
1651 -all: all-@USE_INCLUDED_LIBINTL@
1652 -all-yes: libintl.$la libintl.h charset.alias ref-add.sed ref-del.sed
1653 -all-no: all-no-@BUILD_INCLUDED_LIBINTL@
1654 -all-no-yes: libgnuintl.$la
1655 -all-no-no:
1656 +ref-add.sed: $(srcdir)/ref-add.sin
1657 +       sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $(srcdir)/ref-add.sin > t-ref-add.sed
1658 +       mv t-ref-add.sed ref-add.sed
1659 +ref-del.sed: $(srcdir)/ref-del.sin
1660 +       sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $(srcdir)/ref-del.sin > t-ref-del.sed
1661 +       mv t-ref-del.sed ref-del.sed
1662  
1663 -libintl.a libgnuintl.a: $(OBJECTS)
1664 -       rm -f $@
1665 -       $(AR) cru $@ $(OBJECTS)
1666 -       $(RANLIB) $@
1667 +INCLUDES = -I. -I$(srcdir) -I..
1668  
1669 -libintl.la libgnuintl.la: $(OBJECTS)
1670 -       $(LIBTOOL) --mode=link \
1671 -         $(CC) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) $(LDFLAGS) -o $@ \
1672 -         $(OBJECTS) @LIBICONV@ \
1673 -         -version-info $(LTV_CURRENT):$(LTV_REVISION):$(LTV_AGE) \
1674 -         -rpath $(libdir) \
1675 -         -no-undefined
1676 +libgnuintl.h: $(srcdir)/libgnuintl.h.in
1677 +       sed -e 's,@''HAVE_POSIX_PRINTF''@,@HAVE_POSIX_PRINTF@,g' \
1678 +           -e 's,@''HAVE_ASPRINTF''@,@HAVE_ASPRINTF@,g' \
1679 +           -e 's,@''HAVE_SNPRINTF''@,@HAVE_SNPRINTF@,g' \
1680 +           -e 's,@''HAVE_WPRINTF''@,@HAVE_WPRINTF@,g' \
1681 +         < $(srcdir)/libgnuintl.h.in > libgnuintl.h
1682  
1683  libintl.h: libgnuintl.h
1684 -       cp $(srcdir)/libgnuintl.h libintl.h
1685 +       cp libgnuintl.h libintl.h
1686  
1687 -charset.alias: config.charset
1688 +charset.alias: $(srcdir)/config.charset
1689         $(SHELL) $(srcdir)/config.charset '@host@' > t-$@
1690         mv t-$@ $@
1691  
1692  check: all
1693  
1694 -# This installation goal is only used in GNU gettext.  Packages which
1695 -# only use the library should use install instead.
1696 -
1697  # We must not install the libintl.h/libintl.a files if we are on a
1698  # system which has the GNU gettext() function in its C library or in a
1699  # separate library.
1700 @@ -141,25 +255,50 @@
1701  # package, you have to use `configure --with-included-gettext'.
1702  install: install-exec install-data
1703  install-exec: all
1704 -       if test "$(PACKAGE)" = "gettext" \
1705 -          && test '@INTLOBJS@' = '$(GETTOBJS)'; then \
1706 +       if { test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; } \
1707 +          && test '@USE_INCLUDED_LIBINTL@' = yes; then \
1708           $(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \
1709           $(INSTALL_DATA) libintl.h $(DESTDIR)$(includedir)/libintl.h; \
1710           $(LIBTOOL) --mode=install \
1711             $(INSTALL_DATA) libintl.$la $(DESTDIR)$(libdir)/libintl.$la; \
1712 +         if test "@RELOCATABLE@" = yes; then \
1713 +           dependencies=`sed -n -e 's,^dependency_libs=\(.*\),\1,p' < $(DESTDIR)$(libdir)/libintl.la | sed -e "s,^',," -e "s,'\$$,,"`; \
1714 +           if test -n "$$dependencies"; then \
1715 +             rm -f $(DESTDIR)$(libdir)/libintl.la; \
1716 +           fi; \
1717 +         fi; \
1718         else \
1719           : ; \
1720         fi
1721 -       if test '@USE_INCLUDED_LIBINTL@' = yes; then \
1722 +       if test "$(PACKAGE)" = "gettext-tools" \
1723 +          && test '@USE_INCLUDED_LIBINTL@' = no; then \
1724           $(mkinstalldirs) $(DESTDIR)$(libdir); \
1725 -         test -f $(DESTDIR)$(libdir)/charset.alias \
1726 -           && orig=$(DESTDIR)$(libdir)/charset.alias \
1727 -           || orig=charset.alias; \
1728 +         $(LIBTOOL) --mode=install \
1729 +           $(INSTALL_DATA) libgnuintl.$la $(DESTDIR)$(libdir)/libgnuintl.$la; \
1730 +         rm -f $(DESTDIR)$(libdir)/preloadable_libintl.so; \
1731 +         $(INSTALL_DATA) $(DESTDIR)$(libdir)/libgnuintl.so $(DESTDIR)$(libdir)/preloadable_libintl.so; \
1732 +         $(LIBTOOL) --mode=uninstall \
1733 +           rm -f $(DESTDIR)$(libdir)/libgnuintl.$la; \
1734 +       else \
1735 +         : ; \
1736 +       fi
1737 +       if test '@USE_INCLUDED_LIBINTL@' = yes; then \
1738 +         test @GLIBC21@ != no || $(mkinstalldirs) $(DESTDIR)$(libdir); \
1739           temp=$(DESTDIR)$(libdir)/t-charset.alias; \
1740           dest=$(DESTDIR)$(libdir)/charset.alias; \
1741 -         sed -f ref-add.sed $$orig > $$temp; \
1742 -         $(INSTALL_DATA) $$temp $$dest; \
1743 -         rm -f $$temp; \
1744 +         if test -f $(DESTDIR)$(libdir)/charset.alias; then \
1745 +           orig=$(DESTDIR)$(libdir)/charset.alias; \
1746 +           sed -f ref-add.sed $$orig > $$temp; \
1747 +           $(INSTALL_DATA) $$temp $$dest; \
1748 +           rm -f $$temp; \
1749 +         else \
1750 +           if test @GLIBC21@ = no; then \
1751 +             orig=charset.alias; \
1752 +             sed -f ref-add.sed $$orig > $$temp; \
1753 +             $(INSTALL_DATA) $$temp $$dest; \
1754 +             rm -f $$temp; \
1755 +           fi; \
1756 +         fi; \
1757           $(mkinstalldirs) $(DESTDIR)$(localedir); \
1758           test -f $(DESTDIR)$(localedir)/locale.alias \
1759             && orig=$(DESTDIR)$(localedir)/locale.alias \
1760 @@ -173,16 +312,22 @@
1761           : ; \
1762         fi
1763  install-data: all
1764 -       if test "$(PACKAGE)" = "gettext"; then \
1765 +       if test "$(PACKAGE)" = "gettext-tools"; then \
1766           $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
1767           $(INSTALL_DATA) VERSION $(DESTDIR)$(gettextsrcdir)/VERSION; \
1768           $(INSTALL_DATA) ChangeLog.inst $(DESTDIR)$(gettextsrcdir)/ChangeLog; \
1769 -         dists="$(DISTFILES.common)"; \
1770 +         dists="COPYING.LIB-2.0 COPYING.LIB-2.1 $(DISTFILES.common)"; \
1771           for file in $$dists; do \
1772             $(INSTALL_DATA) $(srcdir)/$$file \
1773                             $(DESTDIR)$(gettextsrcdir)/$$file; \
1774           done; \
1775           chmod a+x $(DESTDIR)$(gettextsrcdir)/config.charset; \
1776 +         dists="$(DISTFILES.generated)"; \
1777 +         for file in $$dists; do \
1778 +           if test -f $$file; then dir=.; else dir=$(srcdir); fi; \
1779 +           $(INSTALL_DATA) $$dir/$$file \
1780 +                           $(DESTDIR)$(gettextsrcdir)/$$file; \
1781 +         done; \
1782           dists="$(DISTFILES.obsolete)"; \
1783           for file in $$dists; do \
1784             rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
1785 @@ -191,18 +336,51 @@
1786           : ; \
1787         fi
1788  
1789 +install-strip: install
1790 +
1791 +installdirs:
1792 +       if { test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; } \
1793 +          && test '@USE_INCLUDED_LIBINTL@' = yes; then \
1794 +         $(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \
1795 +       else \
1796 +         : ; \
1797 +       fi
1798 +       if test "$(PACKAGE)" = "gettext-tools" \
1799 +          && test '@USE_INCLUDED_LIBINTL@' = no; then \
1800 +         $(mkinstalldirs) $(DESTDIR)$(libdir); \
1801 +       else \
1802 +         : ; \
1803 +       fi
1804 +       if test '@USE_INCLUDED_LIBINTL@' = yes; then \
1805 +         test @GLIBC21@ != no || $(mkinstalldirs) $(DESTDIR)$(libdir); \
1806 +         $(mkinstalldirs) $(DESTDIR)$(localedir); \
1807 +       else \
1808 +         : ; \
1809 +       fi
1810 +       if test "$(PACKAGE)" = "gettext-tools"; then \
1811 +         $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
1812 +       else \
1813 +         : ; \
1814 +       fi
1815 +
1816  # Define this as empty until I found a useful application.
1817  installcheck:
1818  
1819  uninstall:
1820 -       if test "$(PACKAGE)" = "gettext" \
1821 -          && test '@INTLOBJS@' = '$(GETTOBJS)'; then \
1822 +       if { test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; } \
1823 +          && test '@USE_INCLUDED_LIBINTL@' = yes; then \
1824           rm -f $(DESTDIR)$(includedir)/libintl.h; \
1825           $(LIBTOOL) --mode=uninstall \
1826             rm -f $(DESTDIR)$(libdir)/libintl.$la; \
1827         else \
1828           : ; \
1829         fi
1830 +       if test "$(PACKAGE)" = "gettext-tools" \
1831 +          && test '@USE_INCLUDED_LIBINTL@' = no; then \
1832 +         rm -f $(DESTDIR)$(libdir)/preloadable_libintl.so; \
1833 +       else \
1834 +         : ; \
1835 +       fi
1836         if test '@USE_INCLUDED_LIBINTL@' = yes; then \
1837           if test -f $(DESTDIR)$(libdir)/charset.alias; then \
1838             temp=$(DESTDIR)$(libdir)/t-charset.alias; \
1839 @@ -229,25 +407,36 @@
1840         else \
1841           : ; \
1842         fi
1843 -       if test "$(PACKAGE)" = "gettext"; then \
1844 -         for file in VERSION ChangeLog $(DISTFILES.common); do \
1845 +       if test "$(PACKAGE)" = "gettext-tools"; then \
1846 +         for file in VERSION ChangeLog COPYING.LIB-2.0 COPYING.LIB-2.1 $(DISTFILES.common) $(DISTFILES.generated); do \
1847             rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
1848           done; \
1849         else \
1850           : ; \
1851         fi
1852  
1853 -info dvi:
1854 +info dvi ps pdf html:
1855  
1856  $(OBJECTS): ../config.h libgnuintl.h
1857 -bindtextdom.$lo finddomain.$lo loadmsgcat.$lo: gettextP.h gettext.h loadinfo.h
1858 -dcgettext.$lo: gettextP.h gettext.h hash-string.h loadinfo.h
1859 +bindtextdom.$lo dcgettext.$lo dcigettext.$lo dcngettext.$lo dgettext.$lo dngettext.$lo finddomain.$lo gettext.$lo intl-compat.$lo loadmsgcat.$lo localealias.$lo ngettext.$lo textdomain.$lo: $(srcdir)/gettextP.h $(srcdir)/gmo.h $(srcdir)/loadinfo.h
1860 +dcigettext.$lo loadmsgcat.$lo: $(srcdir)/hash-string.h
1861 +explodename.$lo l10nflist.$lo: $(srcdir)/loadinfo.h
1862 +dcigettext.$lo loadmsgcat.$lo plural.$lo plural-exp.$lo: $(srcdir)/plural-exp.h
1863 +dcigettext.$lo: $(srcdir)/eval-plural.h
1864 +localcharset.$lo: $(srcdir)/localcharset.h
1865 +localealias.$lo localcharset.$lo relocatable.$lo: $(srcdir)/relocatable.h
1866 +printf.$lo: $(srcdir)/printf-args.h $(srcdir)/printf-args.c $(srcdir)/printf-parse.h $(srcdir)/wprintf-parse.h $(srcdir)/xsize.h $(srcdir)/printf-parse.c $(srcdir)/vasnprintf.h $(srcdir)/vasnwprintf.h $(srcdir)/vasnprintf.c
1867  
1868  tags: TAGS
1869  
1870  TAGS: $(HEADERS) $(SOURCES)
1871         here=`pwd`; cd $(srcdir) && etags -o $$here/TAGS $(HEADERS) $(SOURCES)
1872  
1873 +ctags: CTAGS
1874 +
1875 +CTAGS: $(HEADERS) $(SOURCES)
1876 +       here=`pwd`; cd $(srcdir) && ctags -o $$here/CTAGS $(HEADERS) $(SOURCES)
1877 +
1878  id: ID
1879  
1880  ID: $(HEADERS) $(SOURCES)
1881 @@ -255,15 +444,15 @@
1882  
1883  
1884  mostlyclean:
1885 -       rm -f *.a *.la *.o *.lo core core.*
1886 -       rm -f libintl.h charset.alias ref-add.sed ref-del.sed
1887 +       rm -f *.a *.la *.o *.obj *.lo core core.*
1888 +       rm -f libgnuintl.h libintl.h charset.alias ref-add.sed ref-del.sed
1889         rm -f -r .libs _libs
1890  
1891  clean: mostlyclean
1892  
1893  distclean: clean
1894         rm -f Makefile ID TAGS
1895 -       if test "$(PACKAGE)" = gettext; then \
1896 +       if test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; then \
1897           rm -f ChangeLog.inst $(DISTFILES.normal); \
1898         else \
1899           : ; \
1900 @@ -278,20 +467,26 @@
1901  # other files which should not be distributed in other packages.
1902  distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
1903  dist distdir: Makefile
1904 -       if test "$(PACKAGE)" = gettext; then \
1905 -         additional="$(DISTFILES.gettext)"; \
1906 +       if test "$(PACKAGE)" = "gettext-tools"; then \
1907 +         : ; \
1908         else \
1909 -         additional="$(DISTFILES.normal)"; \
1910 -       fi; \
1911 -       $(MAKE) $(DISTFILES.common) $(DISTFILES.generated) $$additional; \
1912 -       for file in ChangeLog $(DISTFILES.common) $(DISTFILES.generated) $$additional; do \
1913 -         ln $(srcdir)/$$file $(distdir) 2> /dev/null \
1914 -           || cp -p $(srcdir)/$$file $(distdir); \
1915 -       done
1916 +         if test "$(PACKAGE)" = "gettext-runtime"; then \
1917 +           additional="$(DISTFILES.gettext)"; \
1918 +         else \
1919 +           additional="$(DISTFILES.normal)"; \
1920 +         fi; \
1921 +         $(MAKE) $(DISTFILES.common) $(DISTFILES.generated) $$additional; \
1922 +         for file in ChangeLog $(DISTFILES.common) $(DISTFILES.generated) $$additional; do \
1923 +           if test -f $$file; then dir=.; else dir=$(srcdir); fi; \
1924 +           cp -p $$dir/$$file $(distdir); \
1925 +         done; \
1926 +       fi
1927  
1928 -Makefile: Makefile.in ../config.status
1929 -       cd .. \
1930 -         && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
1931 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
1932 +       cd $(top_builddir) && $(SHELL) ./config.status
1933 +# This would be more efficient, but doesn't work any more with autoconf-2.57,
1934 +# when AC_CONFIG_FILES([intl/Makefile:somedir/Makefile.in]) is used.
1935 +#      cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
1936  
1937  # Tell versions [3.59,3.63) of GNU make not to export all variables.
1938  # Otherwise a system limit (for SysV at least) may be exceeded.
1939 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/VERSION psmisc-20.2.works.clean/intl/VERSION
1940 --- tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/VERSION    2001-04-13 23:00:42.000000000 -0500
1941 +++ psmisc-20.2.works.clean/intl/VERSION        2004-10-13 15:18:41.000000000 -0500
1942 @@ -1 +1 @@
1943 -GNU gettext library from gettext-0.10.36
1944 +GNU gettext library from gettext-0.14.1
1945 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/bindtextdom.c psmisc-20.2.works.clean/intl/bindtextdom.c
1946 --- tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/bindtextdom.c      2001-04-13 23:00:42.000000000 -0500
1947 +++ psmisc-20.2.works.clean/intl/bindtextdom.c  2004-10-13 15:18:41.000000000 -0500
1948 @@ -1,19 +1,20 @@
1949  /* Implementation of the bindtextdomain(3) function
1950 -   Copyright (C) 1995-1998, 2000, 2001 Free Software Foundation, Inc.
1951 +   Copyright (C) 1995-1998, 2000-2003 Free Software Foundation, Inc.
1952  
1953 -   This program is free software; you can redistribute it and/or modify
1954 -   it under the terms of the GNU General Public License as published by
1955 -   the Free Software Foundation; either version 2, or (at your option)
1956 +   This program is free software; you can redistribute it and/or modify it
1957 +   under the terms of the GNU Library General Public License as published
1958 +   by the Free Software Foundation; either version 2, or (at your option)
1959     any later version.
1960  
1961     This program is distributed in the hope that it will be useful,
1962     but WITHOUT ANY WARRANTY; without even the implied warranty of
1963 -   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1964 -   GNU General Public License for more details.
1965 +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
1966 +   Library General Public License for more details.
1967  
1968 -   You should have received a copy of the GNU General Public License
1969 -   along with this program; if not, write to the Free Software Foundation,
1970 -   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
1971 +   You should have received a copy of the GNU Library General Public
1972 +   License along with this program; if not, write to the Free Software
1973 +   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
1974 +   USA.  */
1975  
1976  #ifdef HAVE_CONFIG_H
1977  # include <config.h>
1978 @@ -44,8 +45,8 @@
1979     names than the internal variables in GNU libc, otherwise programs
1980     using libintl.a cannot be linked statically.  */
1981  #if !defined _LIBC
1982 -# define _nl_default_dirname _nl_default_dirname__
1983 -# define _nl_domain_bindings _nl_domain_bindings__
1984 +# define _nl_default_dirname libintl_nl_default_dirname
1985 +# define _nl_domain_bindings libintl_nl_domain_bindings
1986  #endif
1987  
1988  /* Some compilers, like SunOS4 cc, don't have offsetof in <stddef.h>.  */
1989 @@ -57,12 +58,17 @@
1990  
1991  /* Contains the default location of the message catalogs.  */
1992  extern const char _nl_default_dirname[];
1993 +#ifdef _LIBC
1994 +extern const char _nl_default_dirname_internal[] attribute_hidden;
1995 +#else
1996 +# define INTUSE(name) name
1997 +#endif
1998  
1999  /* List with bindings of specific domains.  */
2000  extern struct binding *_nl_domain_bindings;
2001  
2002  /* Lock variable to protect the global data in the gettext implementation.  */
2003 -__libc_rwlock_define (extern, _nl_state_lock)
2004 +__libc_rwlock_define (extern, _nl_state_lock attribute_hidden)
2005  
2006  
2007  /* Names for the libintl functions are a problem.  They must not clash
2008 @@ -76,15 +82,10 @@
2009  #  define strdup(str) __strdup (str)
2010  # endif
2011  #else
2012 -# define BINDTEXTDOMAIN bindtextdomain__
2013 -# define BIND_TEXTDOMAIN_CODESET bind_textdomain_codeset__
2014 +# define BINDTEXTDOMAIN libintl_bindtextdomain
2015 +# define BIND_TEXTDOMAIN_CODESET libintl_bind_textdomain_codeset
2016  #endif
2017  
2018 -/* Prototypes for local functions.  */
2019 -static void set_binding_values PARAMS ((const char *domainname,
2020 -                                       const char **dirnamep,
2021 -                                       const char **codesetp));
2022 -     
2023  /* Specifies the directory name *DIRNAMEP and the output codeset *CODESETP
2024     to be used for the DOMAINNAME message catalog.
2025     If *DIRNAMEP or *CODESETP is NULL, the corresponding attribute is not
2026 @@ -92,10 +93,8 @@
2027     If DIRNAMEP or CODESETP is NULL, the corresponding attribute is neither
2028     modified nor returned.  */
2029  static void
2030 -set_binding_values (domainname, dirnamep, codesetp)
2031 -     const char *domainname;
2032 -     const char **dirnamep;
2033 -     const char **codesetp;
2034 +set_binding_values (const char *domainname,
2035 +                   const char **dirnamep, const char **codesetp)
2036  {
2037    struct binding *binding;
2038    int modified;
2039 @@ -145,8 +144,8 @@
2040               char *result = binding->dirname;
2041               if (strcmp (dirname, result) != 0)
2042                 {
2043 -                 if (strcmp (dirname, _nl_default_dirname) == 0)
2044 -                   result = (char *) _nl_default_dirname;
2045 +                 if (strcmp (dirname, INTUSE(_nl_default_dirname)) == 0)
2046 +                   result = (char *) INTUSE(_nl_default_dirname);
2047                   else
2048                     {
2049  #if defined _LIBC || defined HAVE_STRDUP
2050 @@ -161,7 +160,7 @@
2051  
2052                   if (__builtin_expect (result != NULL, 1))
2053                     {
2054 -                     if (binding->dirname != _nl_default_dirname)
2055 +                     if (binding->dirname != INTUSE(_nl_default_dirname))
2056                         free (binding->dirname);
2057  
2058                       binding->dirname = result;
2059 @@ -202,6 +201,7 @@
2060                         free (binding->codeset);
2061  
2062                       binding->codeset = result;
2063 +                     binding->codeset_cntr++;
2064                       modified = 1;
2065                     }
2066                 }
2067 @@ -214,7 +214,7 @@
2068      {
2069        /* Simply return the default values.  */
2070        if (dirnamep)
2071 -       *dirnamep = _nl_default_dirname;
2072 +       *dirnamep = INTUSE(_nl_default_dirname);
2073        if (codesetp)
2074         *codesetp = NULL;
2075      }
2076 @@ -236,11 +236,11 @@
2077  
2078           if (dirname == NULL)
2079             /* The default value.  */
2080 -           dirname = _nl_default_dirname;
2081 +           dirname = INTUSE(_nl_default_dirname);
2082           else
2083             {
2084 -             if (strcmp (dirname, _nl_default_dirname) == 0)
2085 -               dirname = _nl_default_dirname;
2086 +             if (strcmp (dirname, INTUSE(_nl_default_dirname)) == 0)
2087 +               dirname = INTUSE(_nl_default_dirname);
2088               else
2089                 {
2090                   char *result;
2091 @@ -263,7 +263,9 @@
2092         }
2093        else
2094         /* The default value.  */
2095 -       new_binding->dirname = (char *) _nl_default_dirname;
2096 +       new_binding->dirname = (char *) INTUSE(_nl_default_dirname);
2097 +
2098 +      new_binding->codeset_cntr = 0;
2099  
2100        if (codesetp)
2101         {
2102 @@ -285,6 +287,7 @@
2103               memcpy (result, codeset, len);
2104  #endif
2105               codeset = result;
2106 +             new_binding->codeset_cntr++;
2107             }
2108           *codesetp = codeset;
2109           new_binding->codeset = (char *) codeset;
2110 @@ -316,7 +319,7 @@
2111        if (0)
2112         {
2113         failed_codeset:
2114 -         if (new_binding->dirname != _nl_default_dirname)
2115 +         if (new_binding->dirname != INTUSE(_nl_default_dirname))
2116             free (new_binding->dirname);
2117         failed_dirname:
2118           free (new_binding);
2119 @@ -338,9 +341,7 @@
2120  /* Specify that the DOMAINNAME message catalog will be found
2121     in DIRNAME rather than in the system locale data base.  */
2122  char *
2123 -BINDTEXTDOMAIN (domainname, dirname)
2124 -     const char *domainname;
2125 -     const char *dirname;
2126 +BINDTEXTDOMAIN (const char *domainname, const char *dirname)
2127  {
2128    set_binding_values (domainname, &dirname, NULL);
2129    return (char *) dirname;
2130 @@ -349,9 +350,7 @@
2131  /* Specify the character encoding in which the messages from the
2132     DOMAINNAME message catalog will be returned.  */
2133  char *
2134 -BIND_TEXTDOMAIN_CODESET (domainname, codeset)
2135 -     const char *domainname;
2136 -     const char *codeset;
2137 +BIND_TEXTDOMAIN_CODESET (const char *domainname, const char *codeset)
2138  {
2139    set_binding_values (domainname, NULL, &codeset);
2140    return (char *) codeset;
2141 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/config.charset psmisc-20.2.works.clean/intl/config.charset
2142 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/dcgettext.c psmisc-20.2.works.clean/intl/dcgettext.c
2143 --- tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/dcgettext.c        2001-04-13 23:00:42.000000000 -0500
2144 +++ psmisc-20.2.works.clean/intl/dcgettext.c    2004-10-13 15:18:41.000000000 -0500
2145 @@ -1,19 +1,20 @@
2146  /* Implementation of the dcgettext(3) function.
2147 -   Copyright (C) 1995-1999, 2000, 2001 Free Software Foundation, Inc.
2148 +   Copyright (C) 1995-1999, 2000-2003 Free Software Foundation, Inc.
2149  
2150 -   This program is free software; you can redistribute it and/or modify
2151 -   it under the terms of the GNU General Public License as published by
2152 -   the Free Software Foundation; either version 2, or (at your option)
2153 +   This program is free software; you can redistribute it and/or modify it
2154 +   under the terms of the GNU Library General Public License as published
2155 +   by the Free Software Foundation; either version 2, or (at your option)
2156     any later version.
2157  
2158     This program is distributed in the hope that it will be useful,
2159     but WITHOUT ANY WARRANTY; without even the implied warranty of
2160 -   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2161 -   GNU General Public License for more details.
2162 +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
2163 +   Library General Public License for more details.
2164  
2165 -   You should have received a copy of the GNU General Public License
2166 -   along with this program; if not, write to the Free Software Foundation,
2167 -   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
2168 +   You should have received a copy of the GNU Library General Public
2169 +   License along with this program; if not, write to the Free Software
2170 +   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
2171 +   USA.  */
2172  
2173  #ifdef HAVE_CONFIG_H
2174  # include <config.h>
2175 @@ -36,22 +37,20 @@
2176  # define DCGETTEXT __dcgettext
2177  # define DCIGETTEXT __dcigettext
2178  #else
2179 -# define DCGETTEXT dcgettext__
2180 -# define DCIGETTEXT dcigettext__
2181 +# define DCGETTEXT libintl_dcgettext
2182 +# define DCIGETTEXT libintl_dcigettext
2183  #endif
2184  
2185  /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
2186     locale.  */
2187  char *
2188 -DCGETTEXT (domainname, msgid, category)
2189 -     const char *domainname;
2190 -     const char *msgid;
2191 -     int category;
2192 +DCGETTEXT (const char *domainname, const char *msgid, int category)
2193  {
2194    return DCIGETTEXT (domainname, msgid, NULL, 0, 0, category);
2195  }
2196  
2197  #ifdef _LIBC
2198  /* Alias for function name in GNU C Library.  */
2199 +INTDEF(__dcgettext)
2200  weak_alias (__dcgettext, dcgettext);
2201  #endif
2202 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/dcigettext.c psmisc-20.2.works.clean/intl/dcigettext.c
2203 --- tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/dcigettext.c       2001-04-13 23:00:43.000000000 -0500
2204 +++ psmisc-20.2.works.clean/intl/dcigettext.c   2004-10-13 15:18:41.000000000 -0500
2205 @@ -1,19 +1,20 @@
2206  /* Implementation of the internal dcigettext function.
2207 -   Copyright (C) 1995-1999, 2000, 2001 Free Software Foundation, Inc.
2208 +   Copyright (C) 1995-1999, 2000-2003 Free Software Foundation, Inc.
2209  
2210 -   This program is free software; you can redistribute it and/or modify
2211 -   it under the terms of the GNU General Public License as published by
2212 -   the Free Software Foundation; either version 2, or (at your option)
2213 +   This program is free software; you can redistribute it and/or modify it
2214 +   under the terms of the GNU Library General Public License as published
2215 +   by the Free Software Foundation; either version 2, or (at your option)
2216     any later version.
2217  
2218     This program is distributed in the hope that it will be useful,
2219     but WITHOUT ANY WARRANTY; without even the implied warranty of
2220 -   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2221 -   GNU General Public License for more details.
2222 +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
2223 +   Library General Public License for more details.
2224  
2225 -   You should have received a copy of the GNU General Public License
2226 -   along with this program; if not, write to the Free Software Foundation,
2227 -   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
2228 +   You should have received a copy of the GNU Library General Public
2229 +   License along with this program; if not, write to the Free Software
2230 +   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
2231 +   USA.  */
2232  
2233  /* Tell glibc's <string.h> to provide a prototype for mempcpy().
2234     This must come before <config.h> because <config.h> may include
2235 @@ -32,14 +33,19 @@
2236  # define alloca __builtin_alloca
2237  # define HAVE_ALLOCA 1
2238  #else
2239 -# if defined HAVE_ALLOCA_H || defined _LIBC
2240 -#  include <alloca.h>
2241 +# ifdef _MSC_VER
2242 +#  include <malloc.h>
2243 +#  define alloca _alloca
2244  # else
2245 -#  ifdef _AIX
2246 - #pragma alloca
2247 +#  if defined HAVE_ALLOCA_H || defined _LIBC
2248 +#   include <alloca.h>
2249  #  else
2250 -#   ifndef alloca
2251 +#   ifdef _AIX
2252 + #pragma alloca
2253 +#   else
2254 +#    ifndef alloca
2255  char *alloca ();
2256 +#    endif
2257  #   endif
2258  #  endif
2259  # endif
2260 @@ -55,13 +61,7 @@
2261  
2262  #include <stddef.h>
2263  #include <stdlib.h>
2264 -
2265  #include <string.h>
2266 -#if !HAVE_STRCHR && !defined _LIBC
2267 -# ifndef strchr
2268 -#  define strchr index
2269 -# endif
2270 -#endif
2271  
2272  #if defined HAVE_UNISTD_H || defined _LIBC
2273  # include <unistd.h>
2274 @@ -69,11 +69,26 @@
2275  
2276  #include <locale.h>
2277  
2278 +#ifdef _LIBC
2279 +  /* Guess whether integer division by zero raises signal SIGFPE.
2280 +     Set to 1 only if you know for sure.  In case of doubt, set to 0.  */
2281 +# if defined __alpha__ || defined __arm__ || defined __i386__ \
2282 +     || defined __m68k__ || defined __s390__
2283 +#  define INTDIV0_RAISES_SIGFPE 1
2284 +# else
2285 +#  define INTDIV0_RAISES_SIGFPE 0
2286 +# endif
2287 +#endif
2288 +#if !INTDIV0_RAISES_SIGFPE
2289 +# include <signal.h>
2290 +#endif
2291 +
2292  #if defined HAVE_SYS_PARAM_H || defined _LIBC
2293  # include <sys/param.h>
2294  #endif
2295  
2296  #include "gettextP.h"
2297 +#include "plural-exp.h"
2298  #ifdef _LIBC
2299  # include <libintl.h>
2300  #else
2301 @@ -106,10 +121,10 @@
2302     names than the internal variables in GNU libc, otherwise programs
2303     using libintl.a cannot be linked statically.  */
2304  #if !defined _LIBC
2305 -# define _nl_default_default_domain _nl_default_default_domain__
2306 -# define _nl_current_default_domain _nl_current_default_domain__
2307 -# define _nl_default_dirname _nl_default_dirname__
2308 -# define _nl_domain_bindings _nl_domain_bindings__
2309 +# define _nl_default_default_domain libintl_nl_default_default_domain
2310 +# define _nl_current_default_domain libintl_nl_current_default_domain
2311 +# define _nl_default_dirname libintl_nl_default_dirname
2312 +# define _nl_domain_bindings libintl_nl_domain_bindings
2313  #endif
2314  
2315  /* Some compilers, like SunOS4 cc, don't have offsetof in <stddef.h>.  */
2316 @@ -133,13 +148,17 @@
2317  char *getwd ();
2318  #  define getcwd(buf, max) getwd (buf)
2319  # else
2320 +#  if VMS
2321 +#   define getcwd(buf, max) (getcwd) (buf, max, 0)
2322 +#  else
2323  char *getcwd ();
2324 +#  endif
2325  # endif
2326  # ifndef HAVE_STPCPY
2327 -static char *stpcpy PARAMS ((char *dest, const char *src));
2328 +static char *stpcpy (char *dest, const char *src);
2329  # endif
2330  # ifndef HAVE_MEMPCPY
2331 -static void *mempcpy PARAMS ((void *dest, const void *src, size_t n));
2332 +static void *mempcpy (void *dest, const void *src, size_t n);
2333  # endif
2334  #endif
2335  
2336 @@ -197,16 +216,6 @@
2337  # define IS_PATH_WITH_DIR(P) (strchr (P, '/') != NULL)
2338  #endif
2339  
2340 -/* XPG3 defines the result of `setlocale (category, NULL)' as:
2341 -   ``Directs `setlocale()' to query `category' and return the current
2342 -     setting of `local'.''
2343 -   However it does not specify the exact format.  Neither do SUSV2 and
2344 -   ISO C 99.  So we can use this feature only on selected systems (e.g.
2345 -   those using GNU C Library).  */
2346 -#ifdef _LIBC
2347 -# define HAVE_LOCALE_NULL
2348 -#endif
2349 -
2350  /* This is the type used for the search tree where known translations
2351     are stored.  */
2352  struct known_translation_t
2353 @@ -243,11 +252,8 @@
2354  # endif
2355  
2356  /* Function to compare two entries in the table of known translations.  */
2357 -static int transcmp PARAMS ((const void *p1, const void *p2));
2358  static int
2359 -transcmp (p1, p2)
2360 -     const void *p1;
2361 -     const void *p2;
2362 +transcmp (const void *p1, const void *p2)
2363  {
2364    const struct known_translation_t *s1;
2365    const struct known_translation_t *s2;
2366 @@ -271,39 +277,54 @@
2367  }
2368  #endif
2369  
2370 +#ifndef INTVARDEF
2371 +# define INTVARDEF(name)
2372 +#endif
2373 +#ifndef INTUSE
2374 +# define INTUSE(name) name
2375 +#endif
2376 +
2377  /* Name of the default domain used for gettext(3) prior any call to
2378     textdomain(3).  The default value for this is "messages".  */
2379 -const char _nl_default_default_domain[] = "messages";
2380 +const char _nl_default_default_domain[] attribute_hidden = "messages";
2381  
2382  /* Value used as the default domain for gettext(3).  */
2383 -const char *_nl_current_default_domain = _nl_default_default_domain;
2384 +const char *_nl_current_default_domain attribute_hidden
2385 +     = _nl_default_default_domain;
2386  
2387  /* Contains the default location of the message catalogs.  */
2388 +#if defined __EMX__
2389 +extern const char _nl_default_dirname[];
2390 +#else
2391  const char _nl_default_dirname[] = LOCALEDIR;
2392 +INTVARDEF (_nl_default_dirname)
2393 +#endif
2394  
2395  /* List with bindings of specific domains created by bindtextdomain()
2396     calls.  */
2397  struct binding *_nl_domain_bindings;
2398  
2399  /* Prototypes for local functions.  */
2400 -static char *plural_lookup PARAMS ((struct loaded_l10nfile *domain,
2401 -                                   unsigned long int n,
2402 -                                   const char *translation,
2403 -                                   size_t translation_len))
2404 -     internal_function;
2405 -static unsigned long int plural_eval PARAMS ((struct expression *pexp,
2406 -                                             unsigned long int n))
2407 +static char *plural_lookup (struct loaded_l10nfile *domain,
2408 +                           unsigned long int n,
2409 +                           const char *translation, size_t translation_len)
2410       internal_function;
2411 -static const char *category_to_name PARAMS ((int category)) internal_function;
2412 -static const char *guess_category_value PARAMS ((int category,
2413 -                                                const char *categoryname))
2414 +static const char *guess_category_value (int category,
2415 +                                        const char *categoryname)
2416       internal_function;
2417 +#ifdef _LIBC
2418 +# include "../locale/localeinfo.h"
2419 +# define category_to_name(category)    _nl_category_names[category]
2420 +#else
2421 +static const char *category_to_name (int category) internal_function;
2422 +#endif
2423  
2424  
2425  /* For those loosing systems which don't have `alloca' we have to add
2426     some additional code emulating it.  */
2427  #ifdef HAVE_ALLOCA
2428  /* Nothing has to be done.  */
2429 +# define freea(p) /* nothing */
2430  # define ADD_BLOCK(list, address) /* nothing */
2431  # define FREE_BLOCKS(list) /* nothing */
2432  #else
2433 @@ -328,11 +349,13 @@
2434      while (list != NULL) {                                                   \
2435        struct block_list *old = list;                                         \
2436        list = list->next;                                                     \
2437 +      free (old->address);                                                   \
2438        free (old);                                                            \
2439      }                                                                        \
2440    } while (0)
2441  # undef alloca
2442  # define alloca(size) (malloc (size))
2443 +# define freea(p) free (p)
2444  #endif /* have alloca */
2445  
2446  
2447 @@ -356,12 +379,12 @@
2448  #ifdef _LIBC
2449  # define DCIGETTEXT __dcigettext
2450  #else
2451 -# define DCIGETTEXT dcigettext__
2452 +# define DCIGETTEXT libintl_dcigettext
2453  #endif
2454  
2455  /* Lock variable to protect the global data in the gettext implementation.  */
2456  #ifdef _LIBC
2457 -__libc_rwlock_define_initialized (, _nl_state_lock)
2458 +__libc_rwlock_define_initialized (, _nl_state_lock attribute_hidden)
2459  #endif
2460  
2461  /* Checking whether the binaries runs SUID must be done and glibc provides
2462 @@ -370,6 +393,18 @@
2463  # define ENABLE_SECURE __libc_enable_secure
2464  # define DETERMINE_SECURE
2465  #else
2466 +# ifndef HAVE_GETUID
2467 +#  define getuid() 0
2468 +# endif
2469 +# ifndef HAVE_GETGID
2470 +#  define getgid() 0
2471 +# endif
2472 +# ifndef HAVE_GETEUID
2473 +#  define geteuid() getuid()
2474 +# endif
2475 +# ifndef HAVE_GETEGID
2476 +#  define getegid() getgid()
2477 +# endif
2478  static int enable_secure;
2479  # define ENABLE_SECURE (enable_secure == 1)
2480  # define DETERMINE_SECURE \
2481 @@ -382,17 +417,15 @@
2482      }
2483  #endif
2484  
2485 +/* Get the function to evaluate the plural expression.  */
2486 +#include "eval-plural.h"
2487 +
2488  /* Look up MSGID in the DOMAINNAME message catalog for the current
2489     CATEGORY locale and, if PLURAL is nonzero, search over string
2490     depending on the plural form determined by N.  */
2491  char *
2492 -DCIGETTEXT (domainname, msgid1, msgid2, plural, n, category)
2493 -     const char *domainname;
2494 -     const char *msgid1;
2495 -     const char *msgid2;
2496 -     int plural;
2497 -     unsigned long int n;
2498 -     int category;
2499 +DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2,
2500 +           int plural, unsigned long int n, int category)
2501  {
2502  #ifndef HAVE_ALLOCA
2503    struct block_list *block_list = NULL;
2504 @@ -417,6 +450,15 @@
2505    if (msgid1 == NULL)
2506      return NULL;
2507  
2508 +#ifdef _LIBC
2509 +  if (category < 0 || category >= __LC_LAST || category == LC_ALL)
2510 +    /* Bogus.  */
2511 +    return (plural == 0
2512 +           ? (char *) msgid1
2513 +           /* Use the Germanic plural rule.  */
2514 +           : n == 1 ? (char *) msgid1 : (char *) msgid2);
2515 +#endif
2516 +
2517    __libc_rwlock_rdlock (_nl_state_lock);
2518  
2519    /* If DOMAINNAME is NULL, we are interested in the default domain.  If
2520 @@ -425,6 +467,12 @@
2521    if (domainname == NULL)
2522      domainname = _nl_current_default_domain;
2523  
2524 +  /* OS/2 specific: backward compatibility with older libintl versions  */
2525 +#ifdef LC_MESSAGES_COMPAT
2526 +  if (category == LC_MESSAGES_COMPAT)
2527 +    category = LC_MESSAGES;
2528 +#endif
2529 +
2530  #if defined HAVE_TSEARCH || defined _LIBC
2531    msgid_len = strlen (msgid1) + 1;
2532  
2533 @@ -437,6 +485,7 @@
2534    search->category = category;
2535  
2536    foundp = (struct known_translation_t **) tfind (search, &root, transcmp);
2537 +  freea (search);
2538    if (foundp != NULL && (*foundp)->counter == _nl_msg_cat_cntr)
2539      {
2540        /* Now deal with plural.  */
2541 @@ -473,7 +522,7 @@
2542      }
2543  
2544    if (binding == NULL)
2545 -    dirname = (char *) _nl_default_dirname;
2546 +    dirname = (char *) INTUSE(_nl_default_dirname);
2547    else if (IS_ABSOLUTE_PATH (binding->dirname))
2548      dirname = binding->dirname;
2549    else
2550 @@ -501,16 +550,9 @@
2551         }
2552  
2553        if (ret == NULL)
2554 -       {
2555 -         /* We cannot get the current working directory.  Don't signal an
2556 -            error but simply return the default string.  */
2557 -         FREE_BLOCKS (block_list);
2558 -         __set_errno (saved_errno);
2559 -         return (plural == 0
2560 -                 ? (char *) msgid1
2561 -                 /* Use the Germanic plural rule.  */
2562 -                 : n == 1 ? (char *) msgid1 : (char *) msgid2);
2563 -       }
2564 +       /* We cannot get the current working directory.  Don't signal an
2565 +          error but simply return the default string.  */
2566 +       goto return_untranslated;
2567  
2568        stpcpy (stpcpy (strchr (dirname, '\0'), "/"), binding->dirname);
2569      }
2570 @@ -567,16 +609,7 @@
2571          domain.  Return the MSGID.  */
2572        if (strcmp (single_locale, "C") == 0
2573           || strcmp (single_locale, "POSIX") == 0)
2574 -       {
2575 -         FREE_BLOCKS (block_list);
2576 -         __libc_rwlock_unlock (_nl_state_lock);
2577 -         __set_errno (saved_errno);
2578 -         return (plural == 0
2579 -                 ? (char *) msgid1
2580 -                 /* Use the Germanic plural rule.  */
2581 -                 : n == 1 ? (char *) msgid1 : (char *) msgid2);
2582 -       }
2583 -
2584 +       break;
2585  
2586        /* Find structure describing the message catalog matching the
2587          DOMAINNAME and CATEGORY.  */
2588 @@ -584,7 +617,7 @@
2589  
2590        if (domain != NULL)
2591         {
2592 -         retval = _nl_find_msg (domain, msgid1, &retlen);
2593 +         retval = _nl_find_msg (domain, binding, msgid1, &retlen);
2594  
2595           if (retval == NULL)
2596             {
2597 @@ -592,8 +625,8 @@
2598  
2599               for (cnt = 0; domain->successor[cnt] != NULL; ++cnt)
2600                 {
2601 -                 retval = _nl_find_msg (domain->successor[cnt], msgid1,
2602 -                                        &retlen);
2603 +                 retval = _nl_find_msg (domain->successor[cnt], binding,
2604 +                                        msgid1, &retlen);
2605  
2606                   if (retval != NULL)
2607                     {
2608 @@ -608,7 +641,6 @@
2609               /* Found the translation of MSGID1 in domain DOMAIN:
2610                  starting at RETVAL, RETLEN bytes.  */
2611               FREE_BLOCKS (block_list);
2612 -             __set_errno (saved_errno);
2613  #if defined HAVE_TSEARCH || defined _LIBC
2614               if (foundp == NULL)
2615                 {
2616 @@ -647,6 +679,8 @@
2617                   (*foundp)->translation_length = retlen;
2618                 }
2619  #endif
2620 +             __set_errno (saved_errno);
2621 +
2622               /* Now deal with plural.  */
2623               if (plural)
2624                 retval = plural_lookup (domain, n, retval, retlen);
2625 @@ -656,32 +690,56 @@
2626             }
2627         }
2628      }
2629 -  /* NOTREACHED */
2630 +
2631 + return_untranslated:
2632 +  /* Return the untranslated MSGID.  */
2633 +  FREE_BLOCKS (block_list);
2634 +  __libc_rwlock_unlock (_nl_state_lock);
2635 +#ifndef _LIBC
2636 +  if (!ENABLE_SECURE)
2637 +    {
2638 +      extern void _nl_log_untranslated (const char *logfilename,
2639 +                                       const char *domainname,
2640 +                                       const char *msgid1, const char *msgid2,
2641 +                                       int plural);
2642 +      const char *logfilename = getenv ("GETTEXT_LOG_UNTRANSLATED");
2643 +
2644 +      if (logfilename != NULL && logfilename[0] != '\0')
2645 +       _nl_log_untranslated (logfilename, domainname, msgid1, msgid2, plural);
2646 +    }
2647 +#endif
2648 +  __set_errno (saved_errno);
2649 +  return (plural == 0
2650 +         ? (char *) msgid1
2651 +         /* Use the Germanic plural rule.  */
2652 +         : n == 1 ? (char *) msgid1 : (char *) msgid2);
2653  }
2654  
2655  
2656  char *
2657  internal_function
2658 -_nl_find_msg (domain_file, msgid, lengthp)
2659 -     struct loaded_l10nfile *domain_file;
2660 -     const char *msgid;
2661 -     size_t *lengthp;
2662 +_nl_find_msg (struct loaded_l10nfile *domain_file,
2663 +             struct binding *domainbinding, const char *msgid,
2664 +             size_t *lengthp)
2665  {
2666    struct loaded_domain *domain;
2667 +  nls_uint32 nstrings;
2668    size_t act;
2669    char *result;
2670    size_t resultlen;
2671  
2672    if (domain_file->decided == 0)
2673 -    _nl_load_domain (domain_file);
2674 +    _nl_load_domain (domain_file, domainbinding);
2675  
2676    if (domain_file->data == NULL)
2677      return NULL;
2678  
2679    domain = (struct loaded_domain *) domain_file->data;
2680  
2681 +  nstrings = domain->nstrings;
2682 +
2683    /* Locate the MSGID and its translation.  */
2684 -  if (domain->hash_size > 2 && domain->hash_tab != NULL)
2685 +  if (domain->hash_tab != NULL)
2686      {
2687        /* Use the hashing table.  */
2688        nls_uint32 len = strlen (msgid);
2689 @@ -691,22 +749,30 @@
2690  
2691        while (1)
2692         {
2693 -         nls_uint32 nstr = W (domain->must_swap, domain->hash_tab[idx]);
2694 +         nls_uint32 nstr =
2695 +           W (domain->must_swap_hash_tab, domain->hash_tab[idx]);
2696  
2697           if (nstr == 0)
2698             /* Hash table entry is empty.  */
2699             return NULL;
2700  
2701 -         /* Compare msgid with the original string at index nstr-1.
2702 +         nstr--;
2703 +
2704 +         /* Compare msgid with the original string at index nstr.
2705              We compare the lengths with >=, not ==, because plural entries
2706              are represented by strings with an embedded NUL.  */
2707 -         if (W (domain->must_swap, domain->orig_tab[nstr - 1].length) >= len
2708 -             && (strcmp (msgid,
2709 -                         domain->data + W (domain->must_swap,
2710 -                                           domain->orig_tab[nstr - 1].offset))
2711 -                 == 0))
2712 +         if (nstr < nstrings
2713 +             ? W (domain->must_swap, domain->orig_tab[nstr].length) >= len
2714 +               && (strcmp (msgid,
2715 +                           domain->data + W (domain->must_swap,
2716 +                                             domain->orig_tab[nstr].offset))
2717 +                   == 0)
2718 +             : domain->orig_sysdep_tab[nstr - nstrings].length > len
2719 +               && (strcmp (msgid,
2720 +                           domain->orig_sysdep_tab[nstr - nstrings].pointer)
2721 +                   == 0))
2722             {
2723 -             act = nstr - 1;
2724 +             act = nstr;
2725               goto found;
2726             }
2727  
2728 @@ -724,7 +790,7 @@
2729        size_t top, bottom;
2730  
2731        bottom = 0;
2732 -      top = domain->nstrings;
2733 +      top = nstrings;
2734        while (bottom < top)
2735         {
2736           int cmp_val;
2737 @@ -747,11 +813,29 @@
2738   found:
2739    /* The translation was found at index ACT.  If we have to convert the
2740       string to use a different character set, this is the time.  */
2741 -  result = ((char *) domain->data
2742 -           + W (domain->must_swap, domain->trans_tab[act].offset));
2743 -  resultlen = W (domain->must_swap, domain->trans_tab[act].length) + 1;
2744 +  if (act < nstrings)
2745 +    {
2746 +      result = (char *)
2747 +       (domain->data + W (domain->must_swap, domain->trans_tab[act].offset));
2748 +      resultlen = W (domain->must_swap, domain->trans_tab[act].length) + 1;
2749 +    }
2750 +  else
2751 +    {
2752 +      result = (char *) domain->trans_sysdep_tab[act - nstrings].pointer;
2753 +      resultlen = domain->trans_sysdep_tab[act - nstrings].length;
2754 +    }
2755  
2756  #if defined _LIBC || HAVE_ICONV
2757 +  if (domain->codeset_cntr
2758 +      != (domainbinding != NULL ? domainbinding->codeset_cntr : 0))
2759 +    {
2760 +      /* The domain's codeset has changed through bind_textdomain_codeset()
2761 +        since the message catalog was initialized or last accessed.  We
2762 +        have to reinitialize the converter.  */
2763 +      _nl_free_domain_conv (domain);
2764 +      _nl_init_domain_conv (domain_file, domain, domainbinding);
2765 +    }
2766 +
2767    if (
2768  # ifdef _LIBC
2769        domain->conv != (__gconv_t) -1
2770 @@ -772,8 +856,9 @@
2771          NULs.  */
2772  
2773        if (domain->conv_tab == NULL
2774 -         && ((domain->conv_tab = (char **) calloc (domain->nstrings,
2775 -                                                   sizeof (char *)))
2776 +         && ((domain->conv_tab =
2777 +                (char **) calloc (nstrings + domain->n_sysdep_strings,
2778 +                                  sizeof (char *)))
2779               == NULL))
2780         /* Mark that we didn't succeed allocating a table.  */
2781         domain->conv_tab = (char **) -1;
2782 @@ -942,11 +1027,8 @@
2783  /* Look up a plural variant.  */
2784  static char *
2785  internal_function
2786 -plural_lookup (domain, n, translation, translation_len)
2787 -     struct loaded_l10nfile *domain;
2788 -     unsigned long int n;
2789 -     const char *translation;
2790 -     size_t translation_len;
2791 +plural_lookup (struct loaded_l10nfile *domain, unsigned long int n,
2792 +              const char *translation, size_t translation_len)
2793  {
2794    struct loaded_domain *domaindata = (struct loaded_domain *) domain->data;
2795    unsigned long int index;
2796 @@ -979,93 +1061,11 @@
2797    return (char *) p;
2798  }
2799  
2800 -
2801 -/* Function to evaluate the plural expression and return an index value.  */
2802 -static unsigned long int
2803 -internal_function
2804 -plural_eval (pexp, n)
2805 -     struct expression *pexp;
2806 -     unsigned long int n;
2807 -{
2808 -  switch (pexp->nargs)
2809 -    {
2810 -    case 0:
2811 -      switch (pexp->operation)
2812 -       {
2813 -       case var:
2814 -         return n;
2815 -       case num:
2816 -         return pexp->val.num;
2817 -       default:
2818 -         break;
2819 -       }
2820 -      /* NOTREACHED */
2821 -      break;
2822 -    case 1:
2823 -      {
2824 -       /* pexp->operation must be lnot.  */
2825 -       unsigned long int arg = plural_eval (pexp->val.args[0], n);
2826 -       return ! arg;
2827 -      }
2828 -    case 2:
2829 -      {
2830 -       unsigned long int leftarg = plural_eval (pexp->val.args[0], n);
2831 -       if (pexp->operation == lor)
2832 -         return leftarg || plural_eval (pexp->val.args[1], n);
2833 -       else if (pexp->operation == land)
2834 -         return leftarg && plural_eval (pexp->val.args[1], n);
2835 -       else
2836 -         {
2837 -           unsigned long int rightarg = plural_eval (pexp->val.args[1], n);
2838 -
2839 -           switch (pexp->operation)
2840 -             {
2841 -             case mult:
2842 -               return leftarg * rightarg;
2843 -             case divide:
2844 -               return leftarg / rightarg;
2845 -             case module:
2846 -               return leftarg % rightarg;
2847 -             case plus:
2848 -               return leftarg + rightarg;
2849 -             case minus:
2850 -               return leftarg - rightarg;
2851 -             case less_than:
2852 -               return leftarg < rightarg;
2853 -             case greater_than:
2854 -               return leftarg > rightarg;
2855 -             case less_or_equal:
2856 -               return leftarg <= rightarg;
2857 -             case greater_or_equal:
2858 -               return leftarg >= rightarg;
2859 -             case equal:
2860 -               return leftarg == rightarg;
2861 -             case not_equal:
2862 -               return leftarg != rightarg;
2863 -             default:
2864 -               break;
2865 -             }
2866 -         }
2867 -       /* NOTREACHED */
2868 -       break;
2869 -      }
2870 -    case 3:
2871 -      {
2872 -       /* pexp->operation must be qmop.  */
2873 -       unsigned long int boolarg = plural_eval (pexp->val.args[0], n);
2874 -       return plural_eval (pexp->val.args[boolarg ? 1 : 2], n);
2875 -      }
2876 -    }
2877 -  /* NOTREACHED */
2878 -  return 0;
2879 -}
2880 -
2881 -
2882 +#ifndef _LIBC
2883  /* Return string representation of locale CATEGORY.  */
2884  static const char *
2885  internal_function
2886 -category_to_name (category)
2887 -     int category;
2888 +category_to_name (int category)
2889  {
2890    const char *retval;
2891  
2892 @@ -1120,13 +1120,12 @@
2893  
2894    return retval;
2895  }
2896 +#endif
2897  
2898  /* Guess value of current locale from value of the environment variables.  */
2899  static const char *
2900  internal_function
2901 -guess_category_value (category, categoryname)
2902 -     int category;
2903 -     const char *categoryname;
2904 +guess_category_value (int category, const char *categoryname)
2905  {
2906    const char *language;
2907    const char *retval;
2908 @@ -1141,27 +1140,21 @@
2909    /* We have to proceed with the POSIX methods of looking to `LC_ALL',
2910       `LC_xxx', and `LANG'.  On some systems this can be done by the
2911       `setlocale' function itself.  */
2912 -#if defined _LIBC || (defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES && defined HAVE_LOCALE_NULL)
2913 -  retval = setlocale (category, NULL);
2914 +#ifdef _LIBC
2915 +  retval = __current_locale_name (category);
2916  #else
2917 -  /* Setting of LC_ALL overwrites all other.  */
2918 -  retval = getenv ("LC_ALL");
2919 -  if (retval == NULL || retval[0] == '\0')
2920 -    {
2921 -      /* Next comes the name of the desired category.  */
2922 -      retval = getenv (categoryname);
2923 -      if (retval == NULL || retval[0] == '\0')
2924 -       {
2925 -         /* Last possibility is the LANG environment variable.  */
2926 -         retval = getenv ("LANG");
2927 -         if (retval == NULL || retval[0] == '\0')
2928 -           /* We use C as the default domain.  POSIX says this is
2929 -              implementation defined.  */
2930 -           return "C";
2931 -       }
2932 -    }
2933 +  retval = _nl_locale_name (category, categoryname);
2934  #endif
2935  
2936 +  /* Ignore LANGUAGE if the locale is set to "C" because
2937 +     1. "C" locale usually uses the ASCII encoding, and most international
2938 +       messages use non-ASCII characters. These characters get displayed
2939 +       as question marks (if using glibc's iconv()) or as invalid 8-bit
2940 +       characters (because other iconv()s refuse to convert most non-ASCII
2941 +       characters to ASCII). In any case, the output is ugly.
2942 +     2. The precise output of some programs in the "C" locale is specified
2943 +       by POSIX and should not depend on environment variables like
2944 +       "LANGUAGE".  We allow such programs to use gettext().  */
2945    return language != NULL && strcmp (retval, "C") != 0 ? language : retval;
2946  }
2947  
2948 @@ -1173,9 +1166,7 @@
2949     to be defined.  */
2950  #if !_LIBC && !HAVE_STPCPY
2951  static char *
2952 -stpcpy (dest, src)
2953 -     char *dest;
2954 -     const char *src;
2955 +stpcpy (char *dest, const char *src)
2956  {
2957    while ((*dest++ = *src++) != '\0')
2958      /* Do nothing. */ ;
2959 @@ -1185,10 +1176,7 @@
2960  
2961  #if !_LIBC && !HAVE_MEMPCPY
2962  static void *
2963 -mempcpy (dest, src, n)
2964 -     void *dest;
2965 -     const void *src;
2966 -     size_t n;
2967 +mempcpy (void *dest, const void *src, size_t n)
2968  {
2969    return (void *) ((char *) memcpy (dest, src, n) + n);
2970  }
2971 @@ -1198,8 +1186,7 @@
2972  #ifdef _LIBC
2973  /* If we want to free all resources we have to do some work at
2974     program's end.  */
2975 -static void __attribute__ ((unused))
2976 -free_mem (void)
2977 +libc_freeres_fn (free_mem)
2978  {
2979    void *old;
2980  
2981 @@ -1207,7 +1194,7 @@
2982      {
2983        struct binding *oldp = _nl_domain_bindings;
2984        _nl_domain_bindings = _nl_domain_bindings->next;
2985 -      if (oldp->dirname != _nl_default_dirname)
2986 +      if (oldp->dirname != INTUSE(_nl_default_dirname))
2987         /* Yes, this is a pointer comparison.  */
2988         free (oldp->dirname);
2989        free (oldp->codeset);
2990 @@ -1229,6 +1216,4 @@
2991        free (old);
2992      }
2993  }
2994 -
2995 -text_set_element (__libc_subfreeres, free_mem);
2996  #endif
2997 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/dcngettext.c psmisc-20.2.works.clean/intl/dcngettext.c
2998 --- tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/dcngettext.c       2001-04-13 23:00:43.000000000 -0500
2999 +++ psmisc-20.2.works.clean/intl/dcngettext.c   2004-10-13 15:18:41.000000000 -0500
3000 @@ -1,19 +1,20 @@
3001  /* Implementation of the dcngettext(3) function.
3002 -   Copyright (C) 1995-1999, 2000, 2001 Free Software Foundation, Inc.
3003 +   Copyright (C) 1995-1999, 2000-2003 Free Software Foundation, Inc.
3004  
3005 -   This program is free software; you can redistribute it and/or modify
3006 -   it under the terms of the GNU General Public License as published by
3007 -   the Free Software Foundation; either version 2, or (at your option)
3008 +   This program is free software; you can redistribute it and/or modify it
3009 +   under the terms of the GNU Library General Public License as published
3010 +   by the Free Software Foundation; either version 2, or (at your option)
3011     any later version.
3012  
3013     This program is distributed in the hope that it will be useful,
3014     but WITHOUT ANY WARRANTY; without even the implied warranty of
3015 -   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3016 -   GNU General Public License for more details.
3017 +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
3018 +   Library General Public License for more details.
3019  
3020 -   You should have received a copy of the GNU General Public License
3021 -   along with this program; if not, write to the Free Software Foundation,
3022 -   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
3023 +   You should have received a copy of the GNU Library General Public
3024 +   License along with this program; if not, write to the Free Software
3025 +   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
3026 +   USA.  */
3027  
3028  #ifdef HAVE_CONFIG_H
3029  # include <config.h>
3030 @@ -36,19 +37,16 @@
3031  # define DCNGETTEXT __dcngettext
3032  # define DCIGETTEXT __dcigettext
3033  #else
3034 -# define DCNGETTEXT dcngettext__
3035 -# define DCIGETTEXT dcigettext__
3036 +# define DCNGETTEXT libintl_dcngettext
3037 +# define DCIGETTEXT libintl_dcigettext
3038  #endif
3039  
3040  /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
3041     locale.  */
3042  char *
3043 -DCNGETTEXT (domainname, msgid1, msgid2, n, category)
3044 -     const char *domainname;
3045 -     const char *msgid1;
3046 -     const char *msgid2;
3047 -     unsigned long int n;
3048 -     int category;
3049 +DCNGETTEXT (const char *domainname,
3050 +           const char *msgid1, const char *msgid2, unsigned long int n,
3051 +           int category)
3052  {
3053    return DCIGETTEXT (domainname, msgid1, msgid2, 1, n, category);
3054  }
3055 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/dgettext.c psmisc-20.2.works.clean/intl/dgettext.c
3056 --- tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/dgettext.c 2001-04-13 23:00:42.000000000 -0500
3057 +++ psmisc-20.2.works.clean/intl/dgettext.c     2004-10-13 15:18:41.000000000 -0500
3058 @@ -1,27 +1,29 @@
3059  /* Implementation of the dgettext(3) function.
3060 -   Copyright (C) 1995-1997, 2000, 2001 Free Software Foundation, Inc.
3061 +   Copyright (C) 1995-1997, 2000-2003 Free Software Foundation, Inc.
3062  
3063 -   This program is free software; you can redistribute it and/or modify
3064 -   it under the terms of the GNU General Public License as published by
3065 -   the Free Software Foundation; either version 2, or (at your option)
3066 +   This program is free software; you can redistribute it and/or modify it
3067 +   under the terms of the GNU Library General Public License as published
3068 +   by the Free Software Foundation; either version 2, or (at your option)
3069     any later version.
3070  
3071     This program is distributed in the hope that it will be useful,
3072     but WITHOUT ANY WARRANTY; without even the implied warranty of
3073 -   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3074 -   GNU General Public License for more details.
3075 +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
3076 +   Library General Public License for more details.
3077  
3078 -   You should have received a copy of the GNU General Public License
3079 -   along with this program; if not, write to the Free Software Foundation,
3080 -   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
3081 +   You should have received a copy of the GNU Library General Public
3082 +   License along with this program; if not, write to the Free Software
3083 +   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
3084 +   USA.  */
3085  
3086  #ifdef HAVE_CONFIG_H
3087  # include <config.h>
3088  #endif
3089  
3090 +#include "gettextP.h"
3091 +
3092  #include <locale.h>
3093  
3094 -#include "gettextP.h"
3095  #ifdef _LIBC
3096  # include <libintl.h>
3097  #else
3098 @@ -36,18 +38,16 @@
3099     prefix.  So we have to make a difference here.  */
3100  #ifdef _LIBC
3101  # define DGETTEXT __dgettext
3102 -# define DCGETTEXT __dcgettext
3103 +# define DCGETTEXT INTUSE(__dcgettext)
3104  #else
3105 -# define DGETTEXT dgettext__
3106 -# define DCGETTEXT dcgettext__
3107 +# define DGETTEXT libintl_dgettext
3108 +# define DCGETTEXT libintl_dcgettext
3109  #endif
3110  
3111  /* Look up MSGID in the DOMAINNAME message catalog of the current
3112     LC_MESSAGES locale.  */
3113  char *
3114 -DGETTEXT (domainname, msgid)
3115 -     const char *domainname;
3116 -     const char *msgid;
3117 +DGETTEXT (const char *domainname, const char *msgid)
3118  {
3119    return DCGETTEXT (domainname, msgid, LC_MESSAGES);
3120  }
3121 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/dngettext.c psmisc-20.2.works.clean/intl/dngettext.c
3122 --- tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/dngettext.c        2001-04-13 23:00:43.000000000 -0500
3123 +++ psmisc-20.2.works.clean/intl/dngettext.c    2004-10-13 15:18:41.000000000 -0500
3124 @@ -1,27 +1,29 @@
3125  /* Implementation of the dngettext(3) function.
3126 -   Copyright (C) 1995-1997, 2000, 2001 Free Software Foundation, Inc.
3127 +   Copyright (C) 1995-1997, 2000-2003 Free Software Foundation, Inc.
3128  
3129 -   This program is free software; you can redistribute it and/or modify
3130 -   it under the terms of the GNU General Public License as published by
3131 -   the Free Software Foundation; either version 2, or (at your option)
3132 +   This program is free software; you can redistribute it and/or modify it
3133 +   under the terms of the GNU Library General Public License as published
3134 +   by the Free Software Foundation; either version 2, or (at your option)
3135     any later version.
3136  
3137     This program is distributed in the hope that it will be useful,
3138     but WITHOUT ANY WARRANTY; without even the implied warranty of
3139 -   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3140 -   GNU General Public License for more details.
3141 +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
3142 +   Library General Public License for more details.
3143  
3144 -   You should have received a copy of the GNU General Public License
3145 -   along with this program; if not, write to the Free Software Foundation,
3146 -   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
3147 +   You should have received a copy of the GNU Library General Public
3148 +   License along with this program; if not, write to the Free Software
3149 +   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
3150 +   USA.  */
3151  
3152  #ifdef HAVE_CONFIG_H
3153  # include <config.h>
3154  #endif
3155  
3156 +#include "gettextP.h"
3157 +
3158  #include <locale.h>
3159  
3160 -#include "gettextP.h"
3161  #ifdef _LIBC
3162  # include <libintl.h>
3163  #else
3164 @@ -38,18 +40,15 @@
3165  # define DNGETTEXT __dngettext
3166  # define DCNGETTEXT __dcngettext
3167  #else
3168 -# define DNGETTEXT dngettext__
3169 -# define DCNGETTEXT dcngettext__
3170 +# define DNGETTEXT libintl_dngettext
3171 +# define DCNGETTEXT libintl_dcngettext
3172  #endif
3173  
3174  /* Look up MSGID in the DOMAINNAME message catalog of the current
3175     LC_MESSAGES locale and skip message according to the plural form.  */
3176  char *
3177 -DNGETTEXT (domainname, msgid1, msgid2, n)
3178 -     const char *domainname;
3179 -     const char *msgid1;
3180 -     const char *msgid2;
3181 -     unsigned long int n;
3182 +DNGETTEXT (const char *domainname,
3183 +          const char *msgid1, const char *msgid2, unsigned long int n)
3184  {
3185    return DCNGETTEXT (domainname, msgid1, msgid2, n, LC_MESSAGES);
3186  }
3187 diff -urNd -urNd tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/eval-plural.h psmisc-20.2.works.clean/intl/eval-plural.h
3188 --- tmp/work/psmisc-20.2-r0/psmisc-20.2/intl/eval-plural.h      1969-12-31 18:00:00.000000000 -0600
3189 +++ psmisc-20.2.works.clean/intl/eval-plural.h  2004-10-13 15:18:41.000000000 -0500
3190 @@ -0,0 +1,108 @@
3191 +/* Plural expression evaluation.
3192 +   Copyright (C) 2000-2003 Free Software Foundation, Inc.
3193 +
3194 +   This program is free software; you can redistribute it and/or modify it
3195 +   under the terms of the GNU Library General Public License as published
3196 +   by the Free Software Foundation; either version 2, or (at your option)
3197 +   any later version.
3198 +
3199 +   This program is distributed in the hope that it will be useful,
3200 +   but WITHOUT ANY WARRANTY; without even the implied warranty of
3201 +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
3202 +   Library General Public License for more details.
3203 +
3204 +   You should have received a copy of the GNU Library General Public
3205 +   License along with this program; if not, write to the Free Software
3206 +   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
3207 +   USA.  */
3208 +
3209 +#ifndef STATIC
3210 +#define STATIC static
3211 +#endif
3212 +
3213 +/* Evaluate the plural expression and return an index value.  */
3214 +STATIC
3215 +unsigned long int
3216 +internal_function
3217 +plural_eval (struct expression *pexp, unsigned long int n)
3218 +{
3219 +  switch (pexp->nargs)
3220 +    {
3221 +    case 0:
3222 +      switch (pexp->operation)
3223 +       {
3224 +       case var:
3225 +         return n;
3226 +       case num:
3227 +         return pexp->val.num;
3228 +       default:
3229 +         break;
3230 +       }
3231 +      /* NOTREACHED */
3232 +      break;
3233 +    case 1:
3234 +      {
3235 +       /* pexp->operation must be lnot.  */
3236 +       unsigned long int arg = plural_eval (pexp->val.args[0], n);
3237 +       return ! arg;
3238 +      }
3239 +    case 2:
3240 +      {
3241 +       unsigned long int leftarg = plural_eval (pexp->val.args[0], n);
3242 +    &n