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

RE: Dpkg for Hurd



> > * The Hurd does not return correct error status. A call to 
> exit() ever
> >   returns exit status 1. This is bad! because dpkg calls 
> subprocesses
> >   extensively and will stop working when they seem to fail.
> >   In exit(int status), status is de-facto ignored (set to 1).
> >   Therefore, dpkg --build fails, because it calls dpkg-deb, 
> which returns
> >   with exit().
> >   FIX: Let dpkg ignore error status. I tried this in lib/mlib.c:
> >     n = WEXITSTATUS (status);
> >     if ((n != 0) && (n != 1)) {
> >                  ^^^^^^^^^^^
> >       ohshit (_("subprocess %s terminated with error status %d"),
> >         description, n);
> > 
> >   It *seemed* to work.
> 
> Shudder.
> 
> If statements in #!/bin/sh scripts won't work properly till this
> is fixed.  && and || will be useless as well.  Installations won't
> be reliable, and it will be pure luck (or a lot of manual work) if
> you manage to install a working system.
> 
> -- 
> Raul
> 

This is a serious issue.  I think we need some feedback from bug-hurd
folks as to whether this is a desirable choice for some reason.  Is this
a bug in their implementation of sh or bash?  Or is it imbedded in glibc
somewhere?

-Brent


-- 
To UNSUBSCRIBE, email to debian-hurd-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org


Reply to: