Few parts of glibc are partially missing NLS: - argp-parse and ldconfig could allow translation of option argument names too (like in most of GNU utilities) - rpcgen (sunrpc/rpc_main.c) does some gettext calls, but doesn't initialize gettext (i.e. doesn't call setlocale() and textdomain()) and doesn't translate its help - ldd uses bash NLS ($"" style), but strings are not extracted from this file into libc.pot, so translators don't include them in *.po.
Created attachment 126 [details] Add missing NLS to rpcgen, argp-parse, ldconfig. This patch adds missing NLS to rpcgen, argp-parse and ldconfig. It doesn't include NLS for ldd. For ldd `bash --dump-po-strings ldd` should be used to extract po strings and then include them into libc.pot.
I do not want to change rpcgen since I don't know how the program reacts to running is a locale other than the C locale. One would have to change the locale around every single call to print a message which seems far too much of a hassle. If you want to do the work create a patch and reopen the bug. The argp-parse change is unnecessary, the names are never printed. The ldconfig changed I've applied.
Created attachment 425 [details] Generate msgid strings for ldd script This patch adds generating msgid strings from ldd script. ldd supports NLS since long time (using bash $"" syntax), but because of msgid strings missing in libc.pot ldd messages weren't translated and couldn't be submitted through GNU TP. Patch applies against glibc 2.3.4.
I've added patch for third issue mentioned originally (which my first patch didn't cover).
Uli, could you look at #3 and apply the patch if it's ok?
Also reported that nscd/selinux.c strings were lost.
Subject: Bug 253 CVSROOT: /cvs/glibc Module name: libc Changes by: roland@sources.redhat.com 2005-04-15 06:32:59 Modified files: . : MakeTAGS Log message: 2005-04-14 Roland McGrath <roland@redhat.com> * MakeTAGS ($P/$(domain).pot): Depend on distinfo file as well. (extract): Filter-out distinfo file name. [BZ #253] * MakeTAGS (text-srcs): Match %.bash.in files too. Patches: http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/MakeTAGS.diff?cvsroot=glibc&r1=1.49&r2=1.50
Subject: Bug 253 CVSROOT: /cvs/glibc Module name: libc Changes by: roland@sources.redhat.com 2005-04-15 06:32:55 Modified files: nscd : Makefile Log message: 2005-04-14 Roland McGrath <roland@redhat.com> [BZ #253] * nscd/Makefile (all-nscd-modules): New variable, include selinux module regardless of configuration. (distribute): Use that instead of $(nscd-modules). Patches: http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/nscd/Makefile.diff?cvsroot=glibc&r1=1.41&r2=1.42
Subject: Bug 253 CVSROOT: /cvs/glibc Module name: libc Branch: glibc-2_3-branch Changes by: roland@sources.redhat.com 2005-04-15 06:33:22 Modified files: po : libc.pot Log message: 2005-04-14 Roland McGrath <roland@redhat.com> [BZ #253] * po/libc.pot: Regenerated. Patches: http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/po/libc.pot.diff?cvsroot=glibc&only_with_tag=glibc-2_3-branch&r1=1.23.4.1&r2=1.23.4.2
Subject: Bug 253 CVSROOT: /cvs/glibc Module name: libc Branch: glibc-2_3-branch Changes by: roland@sources.redhat.com 2005-04-15 06:33:26 Modified files: nscd : Makefile Log message: 2005-04-14 Roland McGrath <roland@redhat.com> [BZ #253] * nscd/Makefile (all-nscd-modules): New variable, include selinux module regardless of configuration. (distribute): Use that instead of $(nscd-modules). Patches: http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/nscd/Makefile.diff?cvsroot=glibc&only_with_tag=glibc-2_3-branch&r1=1.40.2.1&r2=1.40.2.2
Subject: Bug 253 CVSROOT: /cvs/glibc Module name: libc Branch: glibc-2_3-branch Changes by: roland@sources.redhat.com 2005-04-15 06:33:59 Modified files: . : MakeTAGS Log message: 2005-04-14 Roland McGrath <roland@redhat.com> * MakeTAGS ($P/$(domain).pot): Depend on distinfo file as well. (extract): Filter-out distinfo file name. [BZ #253] * MakeTAGS (text-srcs): Match %.bash.in files too. Patches: http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/MakeTAGS.diff?cvsroot=glibc&only_with_tag=glibc-2_3-branch&r1=1.49&r2=1.49.4.1
The missing files are now scanned in updating libc.pot.