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

Re: RFH: linux-2.6 patch needs tester



Hendrik Sattler <debian@hendrik-sattler.de> writes:

> Am Donnerstag 23 November 2006 07:43 schrieb Goswin von Brederlow:
>> I wrote a patch for the linux-2.6 source top enable 64bit kernels for
>> i386 as we had in sarge. I've tested the patch on amd64 and i386 so I
>> know native builds will work.
>
> You wrote in #379090:
> "Without that flag the build tries to use x86_64-linux-gnu-gcc, which
> is not available on i386. Only gcc -m64 is."
>
> Well, why isn't this changed, then? A small script on i386 like:
> ----- /usr/bin/x86_64-linux-gnu-gcc -----
> #!/bin/sh
> exec `basename $0 | cut -f 4 -d -` -m64 "$@"
> -----------------------------------------
> with links from others should be not problem and would remove all special 
> cases.
> Simply fake the cross-compilation and you have no special case anymore. This 
> might also be good for other situations where you want to compile for amd64 
> on i386 but must omit the runtime checks.
>
> HS

You need this for gcc, gcc-x.y, as, objdump, .... That was the hack
used in kernel-source in sarge with those scripts in
source-dir/bin/. That was before the kernel used -m32/-m64 correctly
itself.

But since the kernel does handle -m32/-m64 the make-kpkg util was
changed to use the native compiler instead of a cross compiler if
specified. I see no reason not to use it. The change is far shorter
than adding all the wrapper scripts.


In fact I would like to extend the --cross-compile=- feature to
DEB_HOST_ARCH=i386 && DEB_BUILD_ARCH=amd64 so you can cross build
linux-2.6 for i386 under amd64 without cross compiler.

MfG
        Goswin



Reply to: