package/openswan: allow uClibc build

uClibc-ng 1.0.41 added ns_t_tkey, but since external toolchains may
have a version older than 1.0.41, we introduce a compatibility patch
that avoids the use of ns_t_tkey. This compatibility patch can be
dropped in the future when uClibc-ng 1.0.41 is sufficiently deployed.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Waldemar Brodkorb 2022-06-09 10:41:19 +02:00 committed by Thomas Petazzoni
parent ec82347cde
commit fa4dba4aa2
2 changed files with 31 additions and 4 deletions

View File

@ -0,0 +1,29 @@
From 66f8abe037970dda50fbc460edb2a2fa9f391d8a Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Date: Wed, 3 Aug 2022 19:14:25 +0200
Subject: [PATCH] lib/libopenswan/constants.c: workaround missing ns_t_tkey
definition in uClibc < 1.0.41
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
lib/libopenswan/constants.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/lib/libopenswan/constants.c b/lib/libopenswan/constants.c
index 90c973b5f..04e68da42 100644
--- a/lib/libopenswan/constants.c
+++ b/lib/libopenswan/constants.c
@@ -1411,7 +1411,9 @@ static const char *const rr_qtype_name[] = {
NULL
};
-enum_names rr_qtype_names = { ns_t_tkey, ns_t_any
+/* ns_t_tkey is 249, but its definition is missing from uClibc <
+ * 1.0.41, so let's hardcode it */
+enum_names rr_qtype_names = { 249 /* ns_t_tkey */, ns_t_any
, rr_qtype_name, &rr_type_names };
static const char *const rr_class_name[] = {
--
2.37.1

View File

@ -2,7 +2,6 @@ config BR2_PACKAGE_OPENSWAN
bool "openswan"
depends on BR2_USE_MMU # iproute2
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 # iproute2
depends on !BR2_TOOLCHAIN_USES_UCLIBC # ns_t_tkey
select BR2_PACKAGE_GMP
select BR2_PACKAGE_IPROUTE2
help
@ -10,7 +9,6 @@ config BR2_PACKAGE_OPENSWAN
http://www.openswan.org
comment "openswan needs a glibc or musl toolchain w/ headers >= 3.4"
comment "openswan needs a toolchain w/ headers >= 3.4"
depends on BR2_USE_MMU
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 || \
BR2_TOOLCHAIN_USES_UCLIBC
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4