[Buildroot] [git commit] package/meson-tools: fix build with older gcc versions

Thomas Petazzoni thomas.petazzoni at bootlin.com
Sat Sep 19 21:03:04 UTC 2020


commit: https://git.buildroot.net/buildroot/commit/?id=b70114eecd47fc7d95361c5ef01bcd25cf8f6a55
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

The meson-tools code uses C99 constructs without passing -std=c99,
which causes the build to fail with old gcc versions. Since there are
very few instances of C99 constructs, we simply patch them out.

Fixes:

 - http://autobuild.buildroot.net/results/602d474a12cf2400e4f38ffad903758d7fd9f2f5
 - http://autobuild.buildroot.net/results/65cfe582ce60fcff18afd008c3d469471ffb0e49

Signed-off-by: Dagg Stompler <daggs at gmx.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
---
 ...nc-gxl-remove-non-std-C-convention-in-for.patch | 50 ++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/package/meson-tools/0001-amlbootenc-gxl-remove-non-std-C-convention-in-for.patch b/package/meson-tools/0001-amlbootenc-gxl-remove-non-std-C-convention-in-for.patch
new file mode 100644
index 0000000000..243c59b5c1
--- /dev/null
+++ b/package/meson-tools/0001-amlbootenc-gxl-remove-non-std-C-convention-in-for.patch
@@ -0,0 +1,50 @@
+From 7c5475187d1bdf861360ffd8bc1aaea84a341db3 Mon Sep 17 00:00:00 2001
+From: Dagg Stompler <daggs at gmx.com>
+Date: Fri, 11 Sep 2020 12:28:52 +0300
+Subject: [PATCH] amlbootenc-gxl: remove non std C convention in for
+
+not all compilers have c99 or gnu99 enabled, so try not to use a
+non std C convention in for call loops
+
+Signed-off-by: Dagg Stompler <daggs at gmx.com>
+---
+ amlbootenc-gxl.c | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/amlbootenc-gxl.c b/amlbootenc-gxl.c
+index 3695e13..233563d 100644
+--- a/amlbootenc-gxl.c
++++ b/amlbootenc-gxl.c
+@@ -51,6 +51,7 @@ static int boot_enc(const char *input, const char *output)
+ 		._unknown3 = 0x02000000,
+ 		.sig2 = AMLOGIC_C_SIGNATURE,
+ 	};
++	int i;
+
+ 	assert(sizeof(hdr) == 0x100);
+
+@@ -130,10 +131,10 @@ static int boot_enc(const char *input, const char *output)
+ 	memcpy(hdr.iv, (uint8_t[]){ 0x14, 0x82, 0x5b, 0x1b, 0x10, 0xc1, 0x49, 0x0d, 0x8f, 0x13, 0x0a, 0x99, 0x15, 0x50, 0x1d, 0x37 }, 16);
+ 	}
+ #else
+-	for (int i = 0; i < sizeof(hdr.key); i++) {
++	for (i = 0; i < sizeof(hdr.key); i++) {
+ 		hdr.key[i] = rand();
+ 	}
+-	for (int i = 0; i < sizeof(hdr.iv); i++) {
++	for (i = 0; i < sizeof(hdr.iv); i++) {
+ 		hdr.iv[i] = rand();
+ 	}
+ #endif
+@@ -151,7 +152,7 @@ static int boot_enc(const char *input, const char *output)
+ 	AES_cbc_encrypt(src_buf, buf + hdr.first_offset, hdr.block_size, &aes_key, iv, AES_ENCRYPT);
+ 	SHA256_Update(&sha256_ctx, buf + hdr.first_offset, hdr.block_size);
+
+-	for (int i = 1; i < hdr.payload_size / hdr.block_size; i++) {
++	for (i = 1; i < hdr.payload_size / hdr.block_size; i++) {
+ 		memset(src_buf, 0, hdr.block_size);
+ 		fread(src_buf, 1, hdr.block_size, fin);
+ 		AES_cbc_encrypt(src_buf, buf + hdr.data_offset + (i - 1) * hdr.block_size, hdr.block_size, &aes_key, iv, AES_ENCRYPT);
+--
+2.28.0
+


More information about the buildroot mailing list