diff mbox series

[v2] time64.inc: Simplify GLIBC_64BIT_TIME_FLAGS usage

Message ID 20240724210715.3457292-1-tom.hochstein@oss.nxp.com
State Accepted, archived
Commit e8177827f92e71c80c5b63453d8bbd1defbe1fbc
Headers show
Series [v2] time64.inc: Simplify GLIBC_64BIT_TIME_FLAGS usage | expand

Commit Message

Tom Hochstein July 24, 2024, 9:07 p.m. UTC
The implementation uses the append operator to include
GLIBC_64BIT_TIME_FLAGS in TARGET_CC_ARCH, but it places the space in
the GLIBC_64BIT_TIME_FLAGS assignment in order to avoid a 'spurious
space' when the value is empty.

68b50d3 time64: Remove leading whitespace from GLIBC_64BIT_TIME_FLAGS

The problem with this is it requires anyone wishing to assign a value
to GLIBC_64BIT_TIME_FLAGS to add the leading space, otherwise this is
the error:

cc1: error: '-Werror=format-security-D_TIME_BITS=64': no option '-Wformat-security-D_TIME_BITS=64'

Remove the non-standard usage requirement with a different design that
uses the += operator and moves the arch override.

Signed-off-by: Tom Hochstein <tom.hochstein@oss.nxp.com>
---
 meta/conf/distro/include/time64.inc | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)
diff mbox series

Patch

diff --git a/meta/conf/distro/include/time64.inc b/meta/conf/distro/include/time64.inc
index 510da11039..1361bff7ad 100644
--- a/meta/conf/distro/include/time64.inc
+++ b/meta/conf/distro/include/time64.inc
@@ -8,15 +8,20 @@ 
 #
 # Working to address those (before Y2038 rolls in) will be appreciated.
 
-GLIBC_64BIT_TIME_FLAGS = " -D_TIME_BITS=64 -D_FILE_OFFSET_BITS=64"
+TARGET_CC_ARCH += "${GLIBC_64BIT_TIME_FLAGS}"
 
 # Only needed for some 32-bit architectures, some relatively newer
 # architectures do not need it ( e.g. riscv32 )
-TARGET_CC_ARCH:append:arm = "${GLIBC_64BIT_TIME_FLAGS}"
-TARGET_CC_ARCH:append:armeb = "${GLIBC_64BIT_TIME_FLAGS}"
-TARGET_CC_ARCH:append:mipsarcho32 = "${GLIBC_64BIT_TIME_FLAGS}"
-TARGET_CC_ARCH:append:powerpc = "${@bb.utils.contains('TUNE_FEATURES', 'm32', '${GLIBC_64BIT_TIME_FLAGS}', '', d)}"
-TARGET_CC_ARCH:append:x86 = "${@bb.utils.contains('TUNE_FEATURES', 'm32', '${GLIBC_64BIT_TIME_FLAGS}', '', d)}"
+GLIBC_64BIT_TIME_FLAGS_WHEN_NEEDED = "-D_TIME_BITS=64 -D_FILE_OFFSET_BITS=64"
+
+GLIBC_64BIT_TIME_FLAGS             = ""
+GLIBC_64BIT_TIME_FLAGS:arm         = "${GLIBC_64BIT_TIME_FLAGS_WHEN_NEEDED}"
+GLIBC_64BIT_TIME_FLAGS:armeb       = "${GLIBC_64BIT_TIME_FLAGS_WHEN_NEEDED}"
+GLIBC_64BIT_TIME_FLAGS:mipsarcho32 = "${GLIBC_64BIT_TIME_FLAGS_WHEN_NEEDED}"
+GLIBC_64BIT_TIME_FLAGS:powerpc     = \
+    "${@bb.utils.contains('TUNE_FEATURES', 'm32', '${GLIBC_64BIT_TIME_FLAGS_WHEN_NEEDED}', '', d)}"
+GLIBC_64BIT_TIME_FLAGS:x86         = \
+    "${@bb.utils.contains('TUNE_FEATURES', 'm32', '${GLIBC_64BIT_TIME_FLAGS_WHEN_NEEDED}', '', d)}"
 
 GLIBC_64BIT_TIME_FLAGS:pn-glibc = ""
 GLIBC_64BIT_TIME_FLAGS:pn-glibc-y2038-tests = ""