lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <52D7FBF7.2070508@suse.cz>
Date:	Thu, 16 Jan 2014 16:34:15 +0100
From:	Michal Marek <mmarek@...e.cz>
To:	Rusty Russell <rusty@...tcorp.com.au>,
	LKML <linux-kernel@...r.kernel.org>
CC:	linux-kbuild@...r.kernel.org
Subject: Re: [PATCH] scripts/gcc-version.sh: handle CC="gcc -m32"

On 15.1.2014 05:18, Rusty Russell wrote:
> Michal Marek <mmarek@...e.cz> writes:
>> On 3.1.2014 18:10, Michal Marek wrote:
>>> On 2013-12-10 08:13, Rusty Russell wrote:
>>>> Without it we get ugly warnings (though build still succeeds).
>>>>
>>>> $ make -j8 CC="gcc -m32"
>>>> In file included from <command-line>:0:0:
>>>> /usr/include/stdc-predef.h:30:26: fatal error: bits/predefs.h: No such file or directory
>>>>  #include <bits/predefs.h>
>>>>                           ^
>>>> compilation terminated.
>>>> In file included from <command-line>:0:0:
>>>> /usr/include/stdc-predef.h:30:26: fatal error: bits/predefs.h: No such file or directory
>>>>  #include <bits/predefs.h>
>>>>                           ^
>>>> compilation terminated.
>>>> /home/rusty/devel/kernel/linux/scripts/gcc-version.sh: line 31: printf: #: invalid number
>>>> /home/rusty/devel/kernel/linux/scripts/gcc-version.sh: line 31: printf: #: invalid number
>>>> /bin/sh: 1: [: 0001: unexpected operator
>>>>   CHK     include/config/kernel.release
>>>>   CHK     include/generated/uapi/linux/version.h
>>>> make[1]: Nothing to be done for `all'.
>>>> ...
>>>>
>>>> Signed-off-by: Rusty Russell <rusty@...tcorp.com.au>
>>>>
>>>> diff --git a/scripts/gcc-version.sh b/scripts/gcc-version.sh
>>>> index 7f2126df91f2..d48b0cbaf246 100644
>>>> --- a/scripts/gcc-version.sh
>>>> +++ b/scripts/gcc-version.sh
>>>> @@ -14,7 +14,7 @@ if [ "$1" = "-p" ] ; then
>>>>  	shift;
>>>>  fi
>>>>  
>>>> -compiler="$*"
>>>> +compiler="$1"
>>>
>>> But this will break things like CC="ccache gcc". Your problem is that
>>> you do not have the 32bit glibc headers, right?
>>
>> BTW, what is the usecase for CC="gcc -m32"? AFAICS, at least x86 and
>> powerpc do this for you when building a 32bit kernel.
> 
> No, without -m32 I get:
> 
> $ make
> make[1]: Nothing to be done for `all'.
> make[1]: Nothing to be done for `relocs'.
>   CHK     include/config/kernel.release
>   CHK     include/generated/uapi/linux/version.h
>   CHK     include/generated/utsrelease.h
>   CC      kernel/bounds.s
> gcc: warning: ‘-mcpu=’ is deprecated; use ‘-mtune=’ or ‘-march=’ instead
> gcc: warning: ‘-mcpu=’ is deprecated; use ‘-mtune=’ or ‘-march=’ instead
> kernel/bounds.c:1:0: error: CPU you selected does not support x86-64 instruction set
>  /*
>  ^
> kernel/bounds.c:1:0: warning: -mregparm is ignored in 64-bit mode [enabled by default]
> make[1]: *** [kernel/bounds.s] Error 1
> make: *** [prepare0] Error 2
> 
> If that's *supposed* to work, then the bug is elsewhere.

It is supposed to work, but I have no idea what's going on here. Please
provide output of
$ uname -m
$ gcc -v
$ make V=1
$ cat .config

and we will see.

Michal
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ