[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Dpkg-dev problems.



On Sun, Feb 15, 1998 at 02:52:51PM -0300, Nicolás Lichtmaier wrote:
> > > That is a bug in the internationalization of dpkg-dev. A workaround is
> > > defining LC_ALL=C before invoking dpkg-source or dpkg-buildpackage, as in:
> > > "LC_ALL=C dpkg-source -b icon-9.3/"
> > Could you go into more detail?  dpkg-deb is exclusively perlscripts,
> > and thus has no i18n past that that perl does, so this might be a perl
> > bug.
> 
>  It's a dpkg-dev bug because you can fully control the locale used, and it
> should do a 'unset LC_***' if it needs it.
> 
>  I reported the bug 2 months ago... it's #15686.

Well, I'm not a perl guru, but as you asked for an explanation I've been
looking through the code and finally I've isolated the bug. (I'm CCing
this to 15686@bugs.debian.org).

In /usr/lib/dpkg/controllib.pl , line 66, is the definition of sub
outputclose.

"...
sub outputclose {
    my ($dosubstvars) = @_;
    for $f (keys %f) { $substvar{"F:$f"}= $f{$f}; }
    if (length($varlistfile)) {
        $varlistfile="./$varlistfile" if $varlistfile =~ m/\s/;
        if (open(SV,"< $varlistfile")) {
[...]
        } elsif ($! !~ m/no such file or directory/i) {
			^^^^^^^^^^^^^^^^^^^^^^^^^^^
            &error("unable to open substvars file $varlistfile: $!");
        }
..."

It looks for the error message _in_English_, so it won't work with
translated error messages. 

I suggest setting LC_MESSAGES=C (or better LC_ALL=C) in every dpkg-dev
script until we internationalize the package (something we should try to
do for Debian 2.1).

	Thanks,
--
Enrique Zanardi						   ezanardi@ull.es
Dpto. Fisica Fundamental y Experimental			Univ. de La Laguna


--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-devel-request@lists.debian.org .
Trouble?  e-mail to templin@bucknell.edu .


Reply to: