- This v2 version corrects an error where a debug echo statement was left in the lfs file - Update from version 2.14 to 2.16 - Update of rootfile not required - Version 2.16 required libcap to be available, which it is, but it could not be found by rng-tools. This is because rng-tools is using pkg-config and the required libcap.pc file was not stored in the standard directory location for .pc files. Therefore a patch for libcap is bundled together with this update to fix this.
Tested-by: Adolf Belka adolf.belka@ipfire.org Signed-off-by: Adolf Belka adolf.belka@ipfire.org --- lfs/rng-tools | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/lfs/rng-tools b/lfs/rng-tools index 6a85a8482..86fc0ce3d 100644 --- a/lfs/rng-tools +++ b/lfs/rng-tools @@ -24,7 +24,7 @@
include Config
-VER = 6.14 +VER = 6.16 SUMMARY = This is a random number generator daemon
THISAPP = rng-tools-$(VER) @@ -33,7 +33,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = rng-tools -PAK_VER = 1 +PAK_VER = 2
DEPS =
@@ -47,7 +47,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_BLAKE2 = 177065f9ea68b68459d034d38278f866a0c9d5c499578fabcc29ceb387b49667393f23dcae9f13ff401599846e872dbada73f5e319a99dfa4605cdb77ee3e896 +$(DL_FILE)_BLAKE2 = ab1a84c9a298e71ea5cdc1e91004ac069199a0128ee9701b1b3e24b6c705c63a642ab3db260a2c6c910c185e8fc75d5775caa3b7c370f102c75fac496e9bca17
install : $(TARGET)
@@ -82,7 +82,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && ./autogen.sh cd $(DIR_APP) && ./configure \ - --prefix=/usr \ + --prefix=/usr \ --without-pkcs11 \ --without-rtlsdr cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
- libcap places the files by default in /lib and not /usr/lib etc. To fix this libcap made a symlink for the library file from /lib to /usr/lib. However the .pc files were left in /lib/pkgconfig and not /usr/lib/pkgconfig and were therefore not found by the update of rng-tools which now required libcap to be found. - Changed the prefix settings for libcap which placed the libraries and .pc files in the correct locations while keeping the executables in their existing location. - This removed the need for symlinking /usr/lib/libcap.so to /lib/libcap.so.2.67 as the libraries are now placed in /usr/lib - Installed the ipfire build with these changes into a vm system and confirmed that everything worked. Input from Michael Tremer that if ping worked then libcap was functioning correctly. - The prefixes have to be applied to both make and make install to end up with the files in the correct places.
Tested-by: Adolf Belka adolf.belka@ipfire.org Signed-off-by: Adolf Belka adolf.belka@ipfire.org --- config/rootfiles/common/libcap | 17 +++++++++-------- lfs/libcap | 13 ++++++++----- 2 files changed, 17 insertions(+), 13 deletions(-)
diff --git a/config/rootfiles/common/libcap b/config/rootfiles/common/libcap index 194fc7f19..af1c22e83 100644 --- a/config/rootfiles/common/libcap +++ b/config/rootfiles/common/libcap @@ -1,11 +1,3 @@ -lib/libcap.so.2 -lib/libcap.so.2.67 -#lib/libpsx.so -#lib/libpsx.so.2 -lib/libpsx.so.2.67 -#lib/pkgconfig/libcap.pc -#lib/pkgconfig/libpsx.pc -lib/security/pam_cap.so sbin/capsh sbin/getcap sbin/getpcaps @@ -13,6 +5,15 @@ sbin/setcap #usr/include/sys/capability.h #usr/include/sys/psx_syscall.h usr/lib/libcap.so +usr/lib/libcap.so.2 +usr/lib/libcap.so.2.67 +#usr/lib/libpsx.so +#usr/lib/libpsx.so.2 +usr/lib/libpsx.so.2.67 +#usr/lib/pkgconfig/libcap.pc +#usr/lib/pkgconfig/libpsx.pc +#usr/lib/security +usr/lib/security/pam_cap.so #usr/share/man/man1/capsh.1 #usr/share/man/man3/cap_clear.3 #usr/share/man/man3/cap_clear_flag.3 diff --git a/lfs/libcap b/lfs/libcap index 9eab679ff..63f4ef8b0 100644 --- a/lfs/libcap +++ b/lfs/libcap @@ -72,10 +72,13 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) # Prevent a static library from being installed cd $(DIR_APP) && sed -i '/install -m.*STA/d' libcap/Makefile - cd $(DIR_APP) && make GOLANG=no - cd $(DIR_APP) && make install GOLANG=no - rm -vf /lib/libcap.so - ln -svf /lib/libcap.so.2.67 /usr/lib/libcap.so - chmod +x /lib/libcap.so.* + cd $(DIR_APP) && make GOLANG=no \ + prefix=/usr \ + exec_prefix= \ + lib_prefix=/usr + cd $(DIR_APP) && make install GOLANG=no \ + prefix=/usr \ + exec_prefix= \ + lib_prefix=/usr @rm -rf $(DIR_APP) @$(POSTBUILD)