# NOTICE: this spec file is reriverd from the HAVEGED project(see Source0 as below)attachment # and made some modifications. The exactly file path is ./contrib/build/fedora.spec. Summary: A Linux entropy source using the HAVEGE algorithm Name: haveged Version: 1.9.13 Release: 2 License: GPLv3+ URL: https://github.com/jirka-h/haveged Source0: https://github.com/jirka-h/%{name}/archive/v%{version}/%{name}-%{version}.tar.gz Source1: haveged.service Patch0: fix-the-core-file-problem.patch Requires(post): systemd Requires(preun): systemd Requires(postun): systemd BuildRequires: automake gdb coreutils glibc-common systemd %description A Linux entropy source using the HAVEGE algorithm Haveged is a user space entropy daemon which is not dependent upon the standard mechanisms for harvesting randomness for the system entropy pool. This is important in systems with high entropy needs or limited user interaction (e.g. headless servers). Haveged uses HAVEGE (HArdware Volatile Entropy Gathering and Expansion) to maintain a 1M pool of random bytes used to fill /dev/random whenever the supply of random bits in /dev/random falls below the low water mark of the device. The principle inputs to haveged are the sizes of the processor instruction and data caches used to setup the HAVEGE collector. The haveged default is a 4kb data cache and a 16kb instruction cache. On machines with a cpuid instruction, haveged will attempt to select appropriate values from internal tables. %package devel Summary: Headers and shared development libraries for HAVEGE algorithm Requires: %{name} = %{version}-%{release} %description devel Headers and shared object symbolic links for the HAVEGE algorithm %package_help %prep %autosetup -n %{name}-%{version} -p1 %build %configure make %check make check %install rm -rf %{buildroot} make install DESTDIR=%{buildroot} INSTALL="install -p" chmod 0644 COPYING README ChangeLog AUTHORS rm -rf %{buildroot}/etc/init.d pushd $RPM_BUILD_ROOT mkdir -p .%{_unitdir} install -p -m644 %{SOURCE1} .%{_unitdir}/haveged.service popd %delete_la_and_a %clean rm -rf %{buildroot} %post /sbin/ldconfig %systemd_post haveged.service %preun %systemd_preun haveged.service %postun /sbin/ldconfig %systemd_postun_with_restart haveged.service %files %defattr(-, root, root, -) %{_sbindir}/haveged %{_unitdir}/haveged.service %{_libdir}/*so.* %doc COPYING README ChangeLog AUTHORS %files devel %defattr(-, root, root, -) %dir %{_includedir}/%{name} %{_includedir}/%{name}/havege.h %doc contrib/build/havege_sample.c %{_libdir}/*.so %files help %defattr(-, root, root, -) %{_mandir}/man8/haveged.8* %{_mandir}/man3/libhavege.3* %changelog * Thu Aug 13 2020 Anakin Zhang - 1.9.13-2 - remove libhavege.so.1* * Thu Jul 23 2020 wangchen - 1.9.13-1 - update to 1.9.13 * Tue Jan 7 2020 openEuler Buildteam - 1.9.8-2 - update service * Mon Oct 14 2019 openEuler Buildteam - 1.9.8-1 - update to 1.9.8-1 * Fri Sep 27 2019 openEuler Buildteam - 1.9.1-3 - fix the core file problem * Fri Sep 27 2019 openEuler Buildteam - 1.9.1-2 - adjust requires * Wed Sep 4 2019 openEuler Buildteam - 1.9.1-1 - rewrite spec file based upstream spec