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

Re: many packages held for alpha



On Fri, Sep 11, 2015 at 10:43:24AM +0100, Simon Brown wrote:
> Thanks Bob, What was the fix?

Quick answer: see the discussion at bugs.debian.org for bug 789807.

Somewhat longer answer...  On alpha, and maybe other architectures,
there's no guarantee that the byte in front of a character array is
non-printable.  The fact the problem didn't appear on x86 is a happy
accident.  Suggested fix was to put a NULL at the beginning of the array
to force any garbage in front of the array to be ignored when the build
process ran "strings" on a compiled program.  Implemented fix was to
make that first byte a newline, which has the same effect as far as
enabling "strings" to pull the correct content from the compiled
program.

Explanation of longer answer :-).  The build process creates a source
file for both C and C++ that the C preprocessor parses to build a
character array listing various compiler features and whether they exist
(depending on the version of the compiler).  The resulting executable (a
.bin file) is then scanned by the "strings" command to pull the
resulting character array out of the executable.  On alpha, there was
printable garbage in front of the character array that "corrupted" the
"strings" output and confused the parser that was looking at it.

--Bob


Reply to: