Skip to content

Commit 1f6946a

Browse files
committed
udpcast: add recipe
udpcast is a file transfer tool that can send data simultaneously to many destinations on a LAN. It is an alternative to uftp which is already in meta-networking. On a lossy network, udpcast provided 10x faster transfer rates with error correction enabled while using a half as much CPU thanks to a simpler algorithm. v2: - Add a patch to fix compilation with musl (submitted upstream) - Add a dependency on perl-native to build manpages instead of removing them with a patch - inherit manpages
1 parent 446560a commit 1f6946a

File tree

3 files changed

+50
-0
lines changed

3 files changed

+50
-0
lines changed

meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,7 @@ RDEPENDS:packagegroup-meta-networking-support = "\
236236
rdma-core \
237237
tcpreplay \
238238
tinyproxy \
239+
udpcast \
239240
uftp \
240241
unbound \
241242
vnstat \
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
From 5203821a936b1927c401034fe323686ad9eafb04 Mon Sep 17 00:00:00 2001
2+
From: Enguerrand de Ribaucourt <[email protected]>
3+
Date: Thu, 6 Jun 2024 15:57:12 +0200
4+
Subject: [PATCH 1/1] include stddef.h for ptrdiff_t
5+
6+
This fixes compilation with musl.
7+
8+
Upstream-Status: Pending
9+
10+
Signed-off-by: Enguerrand de Ribaucourt <[email protected]>
11+
---
12+
receivedata.c | 1 +
13+
1 file changed, 1 insertion(+)
14+
15+
diff --git a/receivedata.c b/receivedata.c
16+
index 9a68f67..0aa797f 100644
17+
--- a/receivedata.c
18+
+++ b/receivedata.c
19+
@@ -1,4 +1,5 @@
20+
#include <assert.h>
21+
+#include <stddef.h>
22+
#include <sys/types.h>
23+
#include <unistd.h>
24+
#include <stdlib.h>
25+
--
26+
2.34.1
27+
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
SUMMARY = "UDP broadcast file distribution and installation"
2+
DESCRIPTION = "UDPcast is a file transfer tool that can send data \
3+
simultaneously to many destinations on a LAN. This can for instance be \
4+
used to install entire classrooms of PC's at once. The advantage of UDPcast \
5+
over using other methods (nfs, ftp, whatever) is that UDPcast uses UDP's \
6+
multicast abilities: it won't take longer to install 15 machines than it would \
7+
to install just 2."
8+
HOMEPAGE = "http://www.udpcast.linux.lu/"
9+
SECTION = "console/network"
10+
LICENSE = "GPL-2.0-or-later & BSD-2-Clause"
11+
LIC_FILES_CHKSUM = "file://COPYING;md5=e3cf524a29c8476be354bb329d36ff80"
12+
13+
SRC_URI = "http://www.udpcast.linux.lu/download/${BP}.tar.gz \
14+
file://0001-include-stddef.h-for-ptrdiff_t.patch \
15+
"
16+
SRC_URI[sha256sum] = "17b5cd8b1e54f7e2e53357ac02ee86e4198bf704096987a03a3b5c402a0ecea1"
17+
18+
# Installation of rateGovernor.h fails without brokensep
19+
inherit autotools-brokensep manpages
20+
21+
# pod2man required to build manpages
22+
DEPENDS += "perl-native"

0 commit comments

Comments
 (0)