* [PATCH][v4] mmc-utils: fix the building failure when DEBUG_BUILD is 1
@ 2015-06-03 1:24 rongqing.li
2015-06-10 8:58 ` Rongqing Li
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: rongqing.li @ 2015-06-03 1:24 UTC (permalink / raw)
To: openembedded-core
From: Roy Li <rongqing.li@windriver.com>
AM_CFLAGS in Makefile includes -D_FORTIFY_SOURCE=2 which will lead
to building failure when DEBUG_BUILD is 1.
Cancel the definition of _FORTIFY_SOURCE by passing -U_FORTIFY_SOURCE
via CFLAGS
Signed-off-by: Roy Li <rongqing.li@windriver.com>
---
meta/recipes-devtools/mmc/mmc-utils_git.bb | 2 ++
1 file changed, 2 insertions(+)
diff --git a/meta/recipes-devtools/mmc/mmc-utils_git.bb b/meta/recipes-devtools/mmc/mmc-utils_git.bb
index bdb4fed..dfe8902 100644
--- a/meta/recipes-devtools/mmc/mmc-utils_git.bb
+++ b/meta/recipes-devtools/mmc/mmc-utils_git.bb
@@ -13,6 +13,8 @@ SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git;branc
S = "${WORKDIR}/git"
+CFLAGS += "-U_FORTIFY_SOURCE"
+
do_install() {
install -d ${D}${bindir}
install -m 0755 mmc ${D}${bindir}
--
1.9.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH][v4] mmc-utils: fix the building failure when DEBUG_BUILD is 1
2015-06-03 1:24 [PATCH][v4] mmc-utils: fix the building failure when DEBUG_BUILD is 1 rongqing.li
@ 2015-06-10 8:58 ` Rongqing Li
2015-06-18 9:12 ` Rongqing Li
2015-06-23 11:23 ` Burton, Ross
2 siblings, 0 replies; 8+ messages in thread
From: Rongqing Li @ 2015-06-10 8:58 UTC (permalink / raw)
To: openembedded-core
ping
-Roy
On 2015年06月03日 09:24, rongqing.li@windriver.com wrote:
> From: Roy Li <rongqing.li@windriver.com>
>
> AM_CFLAGS in Makefile includes -D_FORTIFY_SOURCE=2 which will lead
> to building failure when DEBUG_BUILD is 1.
> Cancel the definition of _FORTIFY_SOURCE by passing -U_FORTIFY_SOURCE
> via CFLAGS
>
> Signed-off-by: Roy Li <rongqing.li@windriver.com>
> ---
> meta/recipes-devtools/mmc/mmc-utils_git.bb | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/meta/recipes-devtools/mmc/mmc-utils_git.bb b/meta/recipes-devtools/mmc/mmc-utils_git.bb
> index bdb4fed..dfe8902 100644
> --- a/meta/recipes-devtools/mmc/mmc-utils_git.bb
> +++ b/meta/recipes-devtools/mmc/mmc-utils_git.bb
> @@ -13,6 +13,8 @@ SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git;branc
>
> S = "${WORKDIR}/git"
>
> +CFLAGS += "-U_FORTIFY_SOURCE"
> +
> do_install() {
> install -d ${D}${bindir}
> install -m 0755 mmc ${D}${bindir}
>
--
Best Reagrds,
Roy | RongQing Li
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH][v4] mmc-utils: fix the building failure when DEBUG_BUILD is 1
2015-06-03 1:24 [PATCH][v4] mmc-utils: fix the building failure when DEBUG_BUILD is 1 rongqing.li
2015-06-10 8:58 ` Rongqing Li
@ 2015-06-18 9:12 ` Rongqing Li
2015-06-23 11:23 ` Burton, Ross
2 siblings, 0 replies; 8+ messages in thread
From: Rongqing Li @ 2015-06-18 9:12 UTC (permalink / raw)
To: openembedded-core
ping
-R
On 2015年06月03日 09:24, rongqing.li@windriver.com wrote:
> From: Roy Li <rongqing.li@windriver.com>
>
> AM_CFLAGS in Makefile includes -D_FORTIFY_SOURCE=2 which will lead
> to building failure when DEBUG_BUILD is 1.
> Cancel the definition of _FORTIFY_SOURCE by passing -U_FORTIFY_SOURCE
> via CFLAGS
>
> Signed-off-by: Roy Li <rongqing.li@windriver.com>
> ---
> meta/recipes-devtools/mmc/mmc-utils_git.bb | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/meta/recipes-devtools/mmc/mmc-utils_git.bb b/meta/recipes-devtools/mmc/mmc-utils_git.bb
> index bdb4fed..dfe8902 100644
> --- a/meta/recipes-devtools/mmc/mmc-utils_git.bb
> +++ b/meta/recipes-devtools/mmc/mmc-utils_git.bb
> @@ -13,6 +13,8 @@ SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git;branc
>
> S = "${WORKDIR}/git"
>
> +CFLAGS += "-U_FORTIFY_SOURCE"
> +
> do_install() {
> install -d ${D}${bindir}
> install -m 0755 mmc ${D}${bindir}
>
--
Best Reagrds,
Roy | RongQing Li
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH][v4] mmc-utils: fix the building failure when DEBUG_BUILD is 1
2015-06-03 1:24 [PATCH][v4] mmc-utils: fix the building failure when DEBUG_BUILD is 1 rongqing.li
2015-06-10 8:58 ` Rongqing Li
2015-06-18 9:12 ` Rongqing Li
@ 2015-06-23 11:23 ` Burton, Ross
2015-06-24 1:42 ` Rongqing Li
2 siblings, 1 reply; 8+ messages in thread
From: Burton, Ross @ 2015-06-23 11:23 UTC (permalink / raw)
To: rongqing.li@windriver.com; +Cc: OE-core
[-- Attachment #1: Type: text/plain, Size: 482 bytes --]
On 3 June 2015 at 02:24, <rongqing.li@windriver.com> wrote:
> +CFLAGS += "-U_FORTIFY_SOURCE"
>
So Richard made the valid point that this is disabling the security flags
in mmc-utils globally to fix builds in the very few cases when DEBUG_BUILD
is enabled.
Would it be sensible to have an include file that enables DEBUG_BUILD and
also tweaks CFLAGS where required? I'd also like to see what the error is,
and if it can be fixed in the code for good instead.
Ross
[-- Attachment #2: Type: text/html, Size: 968 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH][v4] mmc-utils: fix the building failure when DEBUG_BUILD is 1
2015-06-23 11:23 ` Burton, Ross
@ 2015-06-24 1:42 ` Rongqing Li
2015-06-24 14:16 ` Burton, Ross
0 siblings, 1 reply; 8+ messages in thread
From: Rongqing Li @ 2015-06-24 1:42 UTC (permalink / raw)
To: Burton, Ross; +Cc: OE-core
On 2015年06月23日 19:23, Burton, Ross wrote:
>
> On 3 June 2015 at 02:24, <rongqing.li@windriver.com
> <mailto:rongqing.li@windriver.com>> wrote:
>
> +CFLAGS += "-U_FORTIFY_SOURCE"
>
>
> So Richard made the valid point that this is disabling the security
> flags in mmc-utils globally to fix builds in the very few cases when
> DEBUG_BUILD is enabled.
>
> Would it be sensible to have an include file that enables DEBUG_BUILD
> and also tweaks CFLAGS where required? I'd also like to see what the
> error is, and if it can be fixed in the code for good instead.
>
> Ross
1. configuration
rli2@pek-hostel-deb02:/buildarea1/lirq/Yocto/poky/build$ tail -n1
conf/local.conf
SELECTED_OPTIMIZATION = " -O0 "
rli2@pek-hostel-deb02:/buildarea1/lirq/Yocto/poky/build$
2. the error
NOTE: Preparing RunQueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
ERROR: Function failed: do_compile (log file is located at
/buildarea1/lirq/Yocto/poky/build/tmp/work/armv5e-poky-linux-gnueabi/mmc-utils/0.1-r0/temp/log.do_compile.30117)
ERROR: Logfile of failure stored in:
/buildarea1/lirq/Yocto/poky/build/tmp/work/armv5e-poky-linux-gnueabi/mmc-utils/0.1-r0/temp/log.do_compile.30117
Log data follows:
| DEBUG: Executing shell function do_compile
| NOTE: make -j 24 -e MAKEFLAGS=
| arm-poky-linux-gnueabi-gcc -march=armv5e -marm -mthumb-interwork
--sysroot=/buildarea1/lirq/Yocto/poky/build/tmp/sysroots/qemuarm -Wall
-Werror -Wuninitialized -Wundef -D_FILE_OFFSET_BITS=64
-D_FORTIFY_SOURCE=2 -O0 -Wp,-MMD,./.mmc.o.d,-MT,mmc.o -c mmc.c -o mmc.o
| arm-poky-linux-gnueabi-gcc -march=armv5e -marm -mthumb-interwork
--sysroot=/buildarea1/lirq/Yocto/poky/build/tmp/sysroots/qemuarm -Wall
-Werror -Wuninitialized -Wundef -D_FILE_OFFSET_BITS=64
-D_FORTIFY_SOURCE=2 -O0 -Wp,-MMD,./.mmc_cmds.o.d,-MT,mmc_cmds.o -c
mmc_cmds.c -o mmc_cmds.o
| arm-poky-linux-gnueabi-gcc -march=armv5e -marm -mthumb-interwork
--sysroot=/buildarea1/lirq/Yocto/poky/build/tmp/sysroots/qemuarm -Wall
-Werror -Wuninitialized -Wundef -D_FILE_OFFSET_BITS=64
-D_FORTIFY_SOURCE=2 -O0
-Wp,-MMD,3rdparty/hmac_sha/.hmac_sha2.o.d,-MT,3rdparty/hmac_sha/hmac_sha2.o
-c 3rdparty/hmac_sha/hmac_sha2.c -o 3rdparty/hmac_sha/hmac_sha2.o
| arm-poky-linux-gnueabi-gcc -march=armv5e -marm -mthumb-interwork
--sysroot=/buildarea1/lirq/Yocto/poky/build/tmp/sysroots/qemuarm -Wall
-Werror -Wuninitialized -Wundef -D_FILE_OFFSET_BITS=64
-D_FORTIFY_SOURCE=2 -O0
-Wp,-MMD,3rdparty/hmac_sha/.sha2.o.d,-MT,3rdparty/hmac_sha/sha2.o -c
3rdparty/hmac_sha/sha2.c -o 3rdparty/hmac_sha/sha2.o
| make -C man
| make[1]: Entering directory
`/buildarea1/lirq/Yocto/poky/build/tmp/work/armv5e-poky-linux-gnueabi/mmc-utils/0.1-r0/git/man'
| make[1]: Nothing to be done for `all'.
| make[1]: Leaving directory
`/buildarea1/lirq/Yocto/poky/build/tmp/work/armv5e-poky-linux-gnueabi/mmc-utils/0.1-r0/git/man'
| In file included from
/buildarea1/lirq/Yocto/poky/build/tmp/sysroots/qemuarm/usr/include/stdio.h:27:0,
| from mmc.c:20:
|
/buildarea1/lirq/Yocto/poky/build/tmp/sysroots/qemuarm/usr/include/features.h:328:4:
error: #warning _FORTIFY_SOURCE requires compiling with optimization
(-O) [-Werror=cpp]
| # warning _FORTIFY_SOURCE requires compiling with optimization (-O)
| ^
| In file included from
/buildarea1/lirq/Yocto/poky/build/tmp/sysroots/qemuarm/usr/include/string.h:25:0,
| from 3rdparty/hmac_sha/hmac_sha2.c:38:
|
/buildarea1/lirq/Yocto/poky/build/tmp/sysroots/qemuarm/usr/include/features.h:328:4:
error: #warning _FORTIFY_SOURCE requires compiling with optimization
(-O) [-Werror=cpp]
| # warning _FORTIFY_SOURCE requires compiling with optimization (-O)
| ^
| In file included from
/buildarea1/lirq/Yocto/poky/build/tmp/sysroots/qemuarm/usr/include/stdio.h:27:0,
| from mmc_cmds.c:17:
|
/buildarea1/lirq/Yocto/poky/build/tmp/sysroots/qemuarm/usr/include/features.h:328:4:
error: #warning _FORTIFY_SOURCE requires compiling with optimization
(-O) [-Werror=cpp]
| # warning _FORTIFY_SOURCE requires compiling with optimization (-O)
| ^
| In file included from
/buildarea1/lirq/Yocto/poky/build/tmp/sysroots/qemuarm/usr/include/string.h:25:0,
| from 3rdparty/hmac_sha/sha2.c:42:
|
/buildarea1/lirq/Yocto/poky/build/tmp/sysroots/qemuarm/usr/include/features.h:328:4:
error: #warning _FORTIFY_SOURCE requires compiling with optimization
(-O) [-Werror=cpp]
| # warning _FORTIFY_SOURCE requires compiling with optimization (-O)
| ^
| cc1: all warnings being treated as errors
| make: *** [3rdparty/hmac_sha/hmac_sha2.o] Error 1
| make: *** Waiting for unfinished jobs....
| cc1: all warnings being treated as errors
| make: *** [mmc.o] Error 1
| cc1: all warnings being treated as errors
| make: *** [3rdparty/hmac_sha/sha2.o] Error 1
| cc1: all warnings being treated as errors
| make: *** [mmc_cmds.o] Error 1
| ERROR: oe_runmake failed
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_compile (log file is located at
/buildarea1/lirq/Yocto/poky/build/tmp/work/armv5e-poky-linux-gnueabi/mmc-utils/0.1-r0/temp/log.do_compile.30117)
ERROR: Task 6
(/buildarea1/lirq/Yocto/poky/meta/recipes-devtools/mmc/mmc-utils_git.bb,
do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 362 tasks of which 294 didn't need to be
rerun and 1 failed.
Waiting for 0 running tasks to finish:
-R
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH][v4] mmc-utils: fix the building failure when DEBUG_BUILD is 1
2015-06-24 1:42 ` Rongqing Li
@ 2015-06-24 14:16 ` Burton, Ross
2015-06-25 6:59 ` Rongqing Li
0 siblings, 1 reply; 8+ messages in thread
From: Burton, Ross @ 2015-06-24 14:16 UTC (permalink / raw)
To: Rongqing Li; +Cc: OE-core
[-- Attachment #1: Type: text/plain, Size: 784 bytes --]
On 24 June 2015 at 02:42, Rongqing Li <rongqing.li@windriver.com> wrote:
> #warning _FORTIFY_SOURCE requires compiling with optimization (-O)
> [-Werror=cpp]
> | # warning _FORTIFY_SOURCE requires compiling with optimization (-O)
>
So security_flags and debug build are mutually exclusive, and no amount of
fixing recipes one by one will fix that. This is a compiler warning
(presumably the result being that fortify isn't enabled in debug builds)
that the mmc-utils build is treating as an error, so a more reasonable fix
would be to remove -Werror from the build which is a reasonable thing to do
- only the developer of software should use -Werror as it causes untold
amounts of pain on everyone else if something changes (say, gcc adds a new
warning).
Ross
[-- Attachment #2: Type: text/html, Size: 1192 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH][v4] mmc-utils: fix the building failure when DEBUG_BUILD is 1
2015-06-24 14:16 ` Burton, Ross
@ 2015-06-25 6:59 ` Rongqing Li
2015-06-25 9:30 ` Burton, Ross
0 siblings, 1 reply; 8+ messages in thread
From: Rongqing Li @ 2015-06-25 6:59 UTC (permalink / raw)
To: Burton, Ross; +Cc: OE-core
On 2015年06月24日 22:16, Burton, Ross wrote:
>
> On 24 June 2015 at 02:42, Rongqing Li <rongqing.li@windriver.com
> <mailto:rongqing.li@windriver.com>> wrote:
>
> #warning _FORTIFY_SOURCE requires compiling with optimization (-O)
> [-Werror=cpp]
> | # warning _FORTIFY_SOURCE requires compiling with optimization (-O)
>
>
> So security_flags and debug build are mutually exclusive, and no amount
> of fixing recipes one by one will fix that. This is a compiler warning
> (presumably the result being that fortify isn't enabled in debug builds)
> that the mmc-utils build is treating as an error, so a more reasonable
> fix would be to remove -Werror from the build which is a reasonable
> thing to do - only the developer of software should use -Werror as it
> causes untold amounts of pain on everyone else if something changes
> (say, gcc adds a new warning).
>
> Ross
How about the below patch
From 6de0180f5332880195e315fdaf4899406dc54d99 Mon Sep 17 00:00:00 2001
From: Roy Li <rongqing.li@windriver.com>
Date: Thu, 25 Jun 2015 14:44:05 +0800
Subject: [PATCH] mmc-utils: fix the building failure when DEBUG_BUILD is 1
AM_CFLAGS in Makefile includes -D_FORTIFY_SOURCE=2 which will lead
to building failure when DEBUG_BUILD is 1.
Cancel the definition of _FORTIFY_SOURCE by passing -U_FORTIFY_SOURCE
via TARGET_CPPFLAGS; this does not effect the security cflags usage,
since the cflags is equal to:
CFLAGS="${TARGET_CPPFLAGS} ${SELECTED_OPTIMIZATION} ${SECURITY_CFLAGS}"
Signed-off-by: Roy Li <rongqing.li@windriver.com>
---
meta/recipes-devtools/mmc/mmc-utils_git.bb | 1 +
1 file changed, 1 insertion(+)
diff --git a/meta/recipes-devtools/mmc/mmc-utils_git.bb
b/meta/recipes-devtools/mmc/mmc-utils_git.bb
index bdb4fed..976bdf8 100644
--- a/meta/recipes-devtools/mmc/mmc-utils_git.bb
+++ b/meta/recipes-devtools/mmc/mmc-utils_git.bb
@@ -12,6 +12,7 @@ SRC_URI =
"git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git;branc
file://0001-mmc.h-don-t-include-asm-generic-int-ll64.h.patch"
S = "${WORKDIR}/git"
+TARGET_CPPFLAGS += "-U_FORTIFY_SOURCE"
do_install() {
install -d ${D}${bindir}
--
1.9.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH][v4] mmc-utils: fix the building failure when DEBUG_BUILD is 1
2015-06-25 6:59 ` Rongqing Li
@ 2015-06-25 9:30 ` Burton, Ross
0 siblings, 0 replies; 8+ messages in thread
From: Burton, Ross @ 2015-06-25 9:30 UTC (permalink / raw)
To: Rongqing Li; +Cc: OE-core
[-- Attachment #1: Type: text/plain, Size: 905 bytes --]
On 25 June 2015 at 07:59, Rongqing Li <rongqing.li@windriver.com> wrote:
> How about the below patch
>
> From 6de0180f5332880195e315fdaf4899406dc54d99 Mon Sep 17 00:00:00 2001
> From: Roy Li <rongqing.li@windriver.com>
> Date: Thu, 25 Jun 2015 14:44:05 +0800
> Subject: [PATCH] mmc-utils: fix the building failure when DEBUG_BUILD is 1
>
> AM_CFLAGS in Makefile includes -D_FORTIFY_SOURCE=2 which will lead
> to building failure when DEBUG_BUILD is 1.
> Cancel the definition of _FORTIFY_SOURCE by passing -U_FORTIFY_SOURCE
> via TARGET_CPPFLAGS; this does not effect the security cflags usage,
> since the cflags is equal to:
> CFLAGS="${TARGET_CPPFLAGS} ${SELECTED_OPTIMIZATION} ${SECURITY_CFLAGS}"
>
You're still globally turning off fortify when it's only a *warning* that
fortify and debug builds are mutually exclusive. Disabling -Werror is the
best thing to do here.
Ross
[-- Attachment #2: Type: text/html, Size: 1447 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2015-06-25 9:30 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-03 1:24 [PATCH][v4] mmc-utils: fix the building failure when DEBUG_BUILD is 1 rongqing.li
2015-06-10 8:58 ` Rongqing Li
2015-06-18 9:12 ` Rongqing Li
2015-06-23 11:23 ` Burton, Ross
2015-06-24 1:42 ` Rongqing Li
2015-06-24 14:16 ` Burton, Ross
2015-06-25 6:59 ` Rongqing Li
2015-06-25 9:30 ` Burton, Ross
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox