Files
openwrt-packages/utils/rng-tools/Makefile
John Audia 513e8c598c rngd-tools: run as unprivileged user
For better security and isolation, used the -D option to run as newly
created unprivileged user.

Build system: x86/64
Build-tested: x86/64-glibc
Run-tested: x86/64-glibc

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-07-26 09:57:58 +03:00

84 lines
2.2 KiB
Makefile

#
# Copyright (C) 2011-2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=rng-tools
PKG_VERSION:=6.17
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/nhorman/rng-tools/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=4aa50994232da74499b60b3ebf79118e30a1943be375b7d931dcf18df5442fd3
PKG_MAINTAINER:=
PKG_LICENSE:=GPL-2.0-or-later
PKG_LICENSE_FILES:=COPYING
PKG_CPE_ID:=cpe:/a:rng-tools_project:rng-tools
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
PKG_BUILD_DEPENDS:=!USE_GLIBC:argp-standalone
include $(INCLUDE_DIR)/package.mk
define Package/rng-tools
SECTION:=utils
CATEGORY:=Utilities
TITLE:=Daemon for adding entropy to kernel entropy pool
URL:=https://github.com/nhorman/rng-tools
USERID:=rngd=209:rngd=209
DEPENDS:=+libopenssl +libcap +libcurl +jansson
endef
define Package/rng-tools/description
Daemon for adding entropy to kernel entropy pool. By default it uses
/dev/urandom as the source but the init script can be modified
to use a hardware source like /dev/hwrng if present
endef
TARGET_CFLAGS += -fno-stack-protector -fomit-frame-pointer
TARGET_LDFLAGS += -Wl,-z,norelro
CONFIGURE_ARGS += \
--without-nistbeacon \
--without-pkcs11 \
--without-rtlsdr \
--disable-werror \
--disable-debug
ifndef CONFIG_USE_GLIBC
CONFIGURE_VARS += LIBS="-largp"
endif
define Build/Prepare
$(call Build/Prepare/Default)
(cd $(PKG_BUILD_DIR); ln -s README.md README)
endef
define Build/Compile
$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
DESTDIR="$(PKG_INSTALL_DIR)" \
CFLAGS="$(TARGET_CFLAGS)" \
LDFLAGS="$(TARGET_LDFLAGS)" \
MALLOC_CHECK_=0
endef
define Package/rng-tools/install
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/rngd.init $(1)/etc/init.d/rngd
$(INSTALL_DIR) $(1)/etc/uci-defaults
$(INSTALL_BIN) ./files/rngd.uci_defaults $(1)/etc/uci-defaults/rngd
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/rngtest $(1)/usr/bin/
$(INSTALL_DIR) $(1)/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/rngd $(1)/sbin/
endef
$(eval $(call BuildPackage,rng-tools))