aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2020-11-26 12:24:36 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2020-11-26 12:26:33 +0000
commit8e029d9fbf9fffc5ed5f590e41a3c41b1eff5132 (patch)
treed8604b091c2e03e643bc0a104c1f0ec2a7e674fb
parente3c80ad9577e0a178e31199e7c8b16b7e9626611 (diff)
main/alpine-ipxe: fix build with recent gcc
fixes #12136
-rw-r--r--main/alpine-ipxe/APKBUILD5
-rw-r--r--main/alpine-ipxe/gcc-10.patch40
2 files changed, 44 insertions, 1 deletions
diff --git a/main/alpine-ipxe/APKBUILD b/main/alpine-ipxe/APKBUILD
index 2f9c0bfcc8d..46bc0ada955 100644
--- a/main/alpine-ipxe/APKBUILD
+++ b/main/alpine-ipxe/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Carlo Landmeter <clandmeter@alpinelinux.org>
pkgname=alpine-ipxe
pkgver=1.20.1
-pkgrel=0
+pkgrel=1
pkgdesc="iPXE build for Alpine Linux netboot"
url="https://boot.alpinelinux.org"
arch="x86 x86_64 aarch64"
@@ -13,6 +13,7 @@ options="!strip !check !archcheck !tracedeps" # no tests
install=""
subpackages=""
source="ipxe-$pkgver.tar.gz::https://github.com/ipxe/ipxe/archive/v$pkgver.tar.gz
+ gcc-10.patch
DST_Root_CA_X3.pem
alpine-netboot-ca.crt
boot.ipxe
@@ -58,6 +59,7 @@ build() {
make EMBED="$srcdir/boot.ipxe" \
CERT="$srcdir"/alpine-netboot-ca.crt,"$srcdir"/DST_Root_CA_X3.pem \
TRUST="$srcdir"/alpine-netboot-ca.crt,"$srcdir"/DST_Root_CA_X3.pem \
+ EXTRA_CFLAGS="-fcommon" \
$_targets
}
@@ -79,6 +81,7 @@ _split() {
}
sha512sums="39142187c7b84e81ed95865b2c6ca6624fd10ee49350741bcf4beff47cd4ebdce91eca9d7b4d3d91e45b96bd50fa554fa6b71e8e3ea6bcc474b0a71f5d35e5cd ipxe-1.20.1.tar.gz
+99d6dfbfe3a1a5c3792246c18976d7aab708301a4a1163978a22ae2c3052ca59c10fa5a418d131b783f2c230d78c05aad8f295e87cf82e48479dfb345d8793be gcc-10.patch
1f52b62aa9e3ec0656ea3cb5c8e52eda924d58728e64bb03ca6c112858b91b13cf0a9328b105bb232973e240406b240ed14e72b5bd325e82e6fddf3126dbcc58 DST_Root_CA_X3.pem
68030e3f30983ee45c7f740445a246ea0df225becdd0644e06ffdbd84682ac576934dab79fecceb31b70929d81ce85b40301a977862bf7beb042270be21e6d34 alpine-netboot-ca.crt
5a4f1edd0178e696e919e93b90689091f669bffe77ebb9da10d4872d208205fe42b285551f541a07b2067054a2344639052e2b297a582a1f71d907797a77d719 boot.ipxe"
diff --git a/main/alpine-ipxe/gcc-10.patch b/main/alpine-ipxe/gcc-10.patch
new file mode 100644
index 00000000000..0462db67312
--- /dev/null
+++ b/main/alpine-ipxe/gcc-10.patch
@@ -0,0 +1,40 @@
+From 8a1d66c7aec020f3e90254ed2fa55ecd9494fcc3 Mon Sep 17 00:00:00 2001
+From: Michael Brown <mcb30@ipxe.org>
+Date: Sat, 27 Jun 2020 20:43:32 +0100
+Subject: [PATCH] [golan] Add explicit type casts for nodnic_queue_pair_type
+
+GCC 10 emits warnings for implicit conversions of enumerated types.
+
+The flexboot_nodnic code defines nodnic_queue_pair_type with values
+identical to those of ib_queue_pair_type, and implicitly casts between
+them. Add an explicit cast to fix the warning.
+
+Signed-off-by: Michael Brown <mcb30@ipxe.org>
+---
+ drivers/infiniband/flexboot_nodnic.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/src/drivers/infiniband/flexboot_nodnic.c b/src/drivers/infiniband/flexboot_nodnic.c
+index 93bb05446..7d039fffc 100644
+--- a/drivers/infiniband/flexboot_nodnic.c
++++ b/drivers/infiniband/flexboot_nodnic.c
+@@ -365,7 +365,8 @@ static int flexboot_nodnic_create_qp ( struct ib_device *ibdev,
+ goto qp_alloc_err;
+ }
+
+- status = nodnic_port_create_qp(&port->port_priv, qp->type,
++ status = nodnic_port_create_qp(&port->port_priv,
++ (nodnic_queue_pair_type) qp->type,
+ qp->send.num_wqes * sizeof(struct nodnic_send_wqbb),
+ qp->send.num_wqes,
+ qp->recv.num_wqes * sizeof(struct nodnic_recv_wqe),
+@@ -406,7 +407,8 @@ static void flexboot_nodnic_destroy_qp ( struct ib_device *ibdev,
+ struct flexboot_nodnic_port *port = &flexboot_nodnic->port[ibdev->port - 1];
+ struct flexboot_nodnic_queue_pair *flexboot_nodnic_qp = ib_qp_get_drvdata ( qp );
+
+- nodnic_port_destroy_qp(&port->port_priv, qp->type,
++ nodnic_port_destroy_qp(&port->port_priv,
++ (nodnic_queue_pair_type) qp->type,
+ flexboot_nodnic_qp->nodnic_queue_pair);
+
+ free(flexboot_nodnic_qp);