From 0b981574068cdd6e77cd67ebf26a66556bd64cf1 Mon Sep 17 00:00:00 2001 From: Yegor Yefremov Date: Fri, 25 Sep 2026 08:02:37 +0200 Subject: [PATCH] package/haveged: needs threads MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Since the bump to version 1.9.15 in commit 2a28d25d0c61 ("package/haveged: bump to version 1.9.15"), haveged unconditionally includes and uses named semaphores (sem_open() and friends) to synchronize command instances. As a result, the build fails with toolchains without threads support: haveged.c:37:10: fatal error: semaphore.h: No such file or directory Add a dependency on BR2_TOOLCHAIN_HAS_THREADS. Since threads are now always available, unconditionally pass --enable-threads. Fixes: https://autobuild.buildroot.org/results/814cb7b5537d8b7b2c23f3d90e37b2b41de7ee3f Fixes: 2a28d25d0c61 ("package/haveged: bump to version 1.9.15") Signed-off-by: Yegor Yefremov Assisted-by: Claude:claude-opus-5-5 Signed-off-by: Thomas Petazzoni (cherry picked from commit cec5f7af80a564b8862aee71e3cf516b325e41f0) Signed-off-by: Raphaël Mélotte --- package/haveged/Config.in | 5 +++++ package/haveged/haveged.mk | 7 +------ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package/haveged/Config.in b/package/haveged/Config.in index 0e49a2db7c..8862792824 100644 --- a/package/haveged/Config.in +++ b/package/haveged/Config.in @@ -1,9 +1,14 @@ config BR2_PACKAGE_HAVEGED bool "haveged" depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_THREADS # semaphore.h help The haveged project is an attempt to provide an easy-to-use, unpredictable random number generator based upon an adaptation of the HAVEGE algorithm. http://www.issihosts.com/haveged/ + +comment "haveged needs a toolchain w/ threads" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/haveged/haveged.mk b/package/haveged/haveged.mk index e22712f016..bf3209cfdc 100644 --- a/package/haveged/haveged.mk +++ b/package/haveged/haveged.mk @@ -18,18 +18,13 @@ HAVEGED_CONF_OPTS = \ --disable-nistest \ --disable-enttest \ --disable-olt \ + --enable-threads \ --enable-tune ifeq ($(BR2_sparc_v8)$(BR2_sparc_leon3),y) HAVEGED_CONF_OPTS += --enable-clock_gettime endif -ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) -HAVEGED_CONF_OPTS += --enable-threads -else -HAVEGED_CONF_OPTS += --disable-threads -endif - define HAVEGED_INSTALL_INIT_SYSV $(INSTALL) -m 755 -D package/haveged/S21haveged \ $(TARGET_DIR)/etc/init.d/S21haveged