2014-02-21 20:09:53

by Kees Cook

[permalink] [raw]
Subject: Re: + makefile-fix-build-with-make-380-again.patch added to -mm tree

On Fri, Feb 21, 2014 at 12:07 PM, <[email protected]> wrote:
> Subject: + makefile-fix-build-with-make-380-again.patch added to -mm tree
> To: [email protected],[email protected],[email protected],[email protected],[email protected]
> From: [email protected]
> Date: Fri, 21 Feb 2014 12:07:52 -0800
>
>
> The patch titled
> Subject: Makefile: fix build with make 3.80 again
> has been added to the -mm tree. Its filename is
> makefile-fix-build-with-make-380-again.patch
>
> This patch should soon appear at
> http://ozlabs.org/~akpm/mmots/broken-out/makefile-fix-build-with-make-380-again.patch
> and later at
> http://ozlabs.org/~akpm/mmotm/broken-out/makefile-fix-build-with-make-380-again.patch
>
> Before you just go and hit "reply", please:
> a) Consider who else should be cc'ed
> b) Prefer to cc a suitable mailing list as well
> c) Ideally: find the original patch on the mailing list and do a
> reply-to-all to that, adding suitable additional cc's
>
> *** Remember to use Documentation/SubmitChecklist when testing your code ***
>
> The -mm tree is included into linux-next and is updated
> there every 3-4 working days
>
> ------------------------------------------------------
> From: "Jan Beulich" <[email protected]>
> Subject: Makefile: fix build with make 3.80 again
>
> According to Documentation/Changes, make 3.80 is still being supported for
> building the kernel, hence make files must not make (unconditional) use of
> features introduced only in newer versions. Commit 8779657d
> ("stackprotector: Introduce CONFIG_CC_STACKPROTECTOR_STRONG") however
> introduced an "else ifdef" construct which make 3.80 doesn't understand.
>
> Also correct a warning message still referencing the old config option
> name.
>
> Apart from that I question the use of "ifdef" here (but it was used that
> way already prior to said commit): ifeq (,y) would seem more to the point.
>
> Signed-off-by: Jan Beulich <[email protected]>
> Cc: Kees Cook <[email protected]>
> Cc: Ingo Molnar <[email protected]>
> Cc: Michal Marek <[email protected]>
> Signed-off-by: Andrew Morton <[email protected]>
> ---
>
> Makefile | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff -puN Makefile~makefile-fix-build-with-make-380-again Makefile
> --- a/Makefile~makefile-fix-build-with-make-380-again
> +++ a/Makefile
> @@ -605,7 +605,7 @@ endif
> ifdef CONFIG_CC_STACKPROTECTOR_REGULAR
> stackp-flag := -fstack-protector
> ifeq ($(call cc-option, $(stackp-flag)),)
> - $(warning Cannot use CONFIG_CC_STACKPROTECTOR: \
> + $(warning Cannot use CONFIG_CC_STACKPROTECTOR_REGULAR: \
> -fstack-protector not supported by compiler)
> endif
> else ifdef CONFIG_CC_STACKPROTECTOR_STRONG
> @@ -618,6 +618,7 @@ else
> # Force off for distro compilers that enable stack protector by default.
> stackp-flag := $(call cc-option, -fno-stack-protector)
> endif
> +endif
> KBUILD_CFLAGS += $(stackp-flag)
>
> # This warning generated too much noise in a regular build.
> _
>
> Patches currently in -mm which might be from [email protected] are
>
> makefile-fix-build-with-make-380-again.patch
>

This appears to be missing the:

-else ifdef CONFIG_CC_STACKPROTECTOR_STRONG
+else
+ifdef CONFIG_CC_STACKPROTECTOR_STRONG

chunk?

--
Kees Cook
Chrome OS Security


2014-02-21 20:19:48

by Andrew Morton

[permalink] [raw]
Subject: Re: + makefile-fix-build-with-make-380-again.patch added to -mm tree

On Fri, 21 Feb 2014 12:09:51 -0800 Kees Cook <[email protected]> wrote:

>
> This appears to be missing the:
>
> -else ifdef CONFIG_CC_STACKPROTECTOR_STRONG
> +else
> +ifdef CONFIG_CC_STACKPROTECTOR_STRONG
>
> chunk?

Yup, already fixed after my kernel wouldn't compile ;)

It conflicted with
makefile-fix-extra-parenthesis-typo-when-cc_stackprotector_regular-is-enabled.patch
and I mucked up the repairs.

2014-02-21 20:26:03

by Kees Cook

[permalink] [raw]
Subject: Re: + makefile-fix-build-with-make-380-again.patch added to -mm tree

On Fri, Feb 21, 2014 at 12:19 PM, Andrew Morton
<[email protected]> wrote:
> On Fri, 21 Feb 2014 12:09:51 -0800 Kees Cook <[email protected]> wrote:
>
>>
>> This appears to be missing the:
>>
>> -else ifdef CONFIG_CC_STACKPROTECTOR_STRONG
>> +else
>> +ifdef CONFIG_CC_STACKPROTECTOR_STRONG
>>
>> chunk?
>
> Yup, already fixed after my kernel wouldn't compile ;)
>
> It conflicted with
> makefile-fix-extra-parenthesis-typo-when-cc_stackprotector_regular-is-enabled.patch
> and I mucked up the repairs.

Great, thanks!

-Kees

--
Kees Cook
Chrome OS Security