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

Re: RFS: john (updated package)


Am 17.03.2011 16:25, schrieb Ruben Molina:

>> Won't that create a ppc64 binary if I have such a CPU, even if I try to
>> build on a normal ppc?
> Yes, it will. Isn't that the expected behavior?

I'm not a powerpc porter or user myself, but I don't think so.  Builds
should be deterministic and reproducible. Think for example about the
following scenario:  The Debian project has several buildds for it's
powerpc architecture.  Some of them a 64-Bit CPU, some of them have only
32-Bit archs.

Now assume your package get's build on the ppc64 machine.  We'll have a
ppc64 bit binary, correct?  But nothing prevents me from installing it
on my ppc32 system, but if I do so, I can't use it, can I?

>> Similar for the detection of your detection of MMX and SSE, which is
>> even less clear to me:  You install a script to do runtime detection of
>> MMX and SSE/2 support, but you also have compile time checks for that.
> The script you mention is no longer used. Even if preserved in the
> package sources, it is not installed in the binary package. 
> Should it be deleted?

Yes, please.  Having unused stuff in your package can be confusing for
others, who need to do something with your package (think of Securty
updates, NMUs, or someone who needs to take it over, after you've been
abducted by aliens).

> Instead of a script, CPU fallbacks (provided by upstream) are used. 
> A optimized binary tries to run and it fallback into a less optimized
> binary as needed: john (sse2) → john-non-sse (mmx) → john-non-mmx (any).
> Is it a bit clearer now?

Ah, okay, I see.  But the optimized binaries are only build, if the CPU
I'm building the package on, supports it?

Best regards,

Reply to: