package/tpm2-tools: fix build with gcc 4.8

Fix the following build failure with gcc 4.8 raised since bump to
version 4.3.2 in commit	91aa6efa85:

lib/tpm2_eventlog_yaml.c: In function 'yaml_uefi_var_unicodename':
lib/tpm2_eventlog_yaml.c:130:5: error: 'for' loop initial declarations are only allowed in C99 mode
     for(size_t i = 0; i < data->UnicodeNameLength; ++i, tmp += ret) {
     ^
lib/tpm2_eventlog_yaml.c:130:5: note: use option -std=c99 or -std=gnu99 to compile your code
lib/tpm2_eventlog_yaml.c: In function 'yaml_specid_algs':
lib/tpm2_eventlog_yaml.c:335:5: error: 'for' loop initial declarations are only allowed in C99 mode
     for (size_t i = 0; i < count; ++i, ++alg) {
     ^

Fixes:
 - http://autobuild.buildroot.org/results/018c75cfbb34006c0bca52dcc255ad6f9cc43b77

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Fabrice Fontaine 2021-08-09 23:29:59 +02:00 committed by Thomas Petazzoni
parent 884a415ccb
commit 6b04d4f22c
2 changed files with 32 additions and 0 deletions

View File

@ -0,0 +1,30 @@
From 521c3cc506b18c5c84d86e1e90d1daee39849b0c Mon Sep 17 00:00:00 2001
From: William Roberts <william.c.roberts@intel.com>
Date: Mon, 8 Feb 2021 11:57:28 -0600
Subject: [PATCH] configure: make build gnu99
Signed-off-by: William Roberts <william.c.roberts@intel.com>
[Retrieved from:
https://github.com/tpm2-software/tpm2-tools/commit/521c3cc506b18c5c84d86e1e90d1daee39849b0c
and updated to set gnu99 instead of c99 as done by
https://github.com/tpm2-software/tpm2-tools/commit/5d0267428e96989afce406d096994ec5091ee107]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
configure.ac | 3 +++
1 file changed, 3 insertions(+)
diff --git a/configure.ac b/configure.ac
index dc15b5595..25039a0d9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -287,6 +287,9 @@ AC_DEFUN([add_c_flag], [
# -D_GNU_SOURCE is required for execvpe() in options.c
add_c_flag([-D_GNU_SOURCE], [AC_MSG_ERROR([Cannot enable -D_GNU_SOURCE])])
+# Enable gnu99 mode, since we use some of these features.
+add_c_flag([-std=gnu99], [AC_MSG_ERROR([Cannot enable -std=gnu99])])
+
# Best attempt compiler options that are on newer versions of GCC that
# we can't widely enforce without killing other peoples builds.
# Works with gcc only. Needs to be disabled on BSD and clang

View File

@ -11,6 +11,8 @@ TPM2_TOOLS_LICENSE_FILES = doc/LICENSE
TPM2_TOOLS_CPE_ID_VENDOR = tpm2-tools_project
TPM2_TOOLS_SELINUX_MODULES = tpm2
TPM2_TOOLS_DEPENDENCIES = libcurl openssl tpm2-tss host-pkgconf util-linux
# We're patching configure.ac
TPM2_TOOLS_AUTORECONF = YES
# -fstack-protector-all and FORTIFY_SOURCE=2 is used by
# default. Disable that so the BR2_SSP_* / BR2_FORTIFY_SOURCE_* options