Hello,
On 23 Apr 2021, at 17:15, Robin Roevens robin.roevens@disroot.org wrote:
- Introduce SUMMARY and INITSCRIPTS macro's in LFS-makefiles.
- Add a Summary and InitScripts field to the meta-* addon files
containing the value's of those macro's.
- Replace the INSTALL_INITSCRIPT makefile macro by a new
INSTALL_INITSCRIPTS macro/method that will install all initscripts defined in the new INITSCRIPTS macro.
- Adapt libvirt and zabbix_agentd pak as examples of how to use this.
Signed-off-by: Robin Roevens robin.roevens@disroot.org
lfs/Config | 8 ++++++-- lfs/libvirt | 6 ++++-- lfs/zabbix_agentd | 5 ++++- src/pakfire/meta | 2 ++ 4 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/lfs/Config b/lfs/Config index eadbbc408..61d6f0c82 100644 --- a/lfs/Config +++ b/lfs/Config @@ -299,15 +299,19 @@ define PAK # Create meta file sed \ -e "s/NAME/$(PROG)/g" \
-e "s/VER/$(VER)/g" \ -e "s/RELEASE/$(PAK_VER)/g" \ -e "s/DEPS/$(DEPS)/g" \ -e "s/SIZE/$$(stat --format=%s /install/packages/$(PROG)-$(VER)-$(PAK_VER).ipfire)/g" \-e "s/SUMMARY/$(SUMMARY)/g" \
< /usr/src/src/pakfire/meta > /install/packages/meta-$(PROG)-e "s/INITSCRIPTS/$(INITSCRIPTS)/g" \
endef
-define INSTALL_INITSCRIPT
- install -m 754 -v $(DIR_SRC)/src/initscripts/packages/$(1) /etc/rc.d/init.d/$(1)
+define INSTALL_INITSCRIPTS
- for initscript in $(INITSCRIPTS); do \
install -m 754 -v $(DIR_SRC)/src/initscripts/packages/$$initscript /etc/rc.d/init.d/$$initscript; \
- done
endef
This won’t abort any more if there install command failed. The exit code is ignored and the loop will continue with its next iteration.
You could add “|| exit 1” after the install command. There should be plenty of examples in the code where this has been used.
ifeq "$(BUILD_ARCH)" "$(filter $(BUILD_ARCH),aarch64 riscv64)" diff --git a/lfs/libvirt b/lfs/libvirt index 28a95d317..be5d3db3a 100644 --- a/lfs/libvirt +++ b/lfs/libvirt @@ -25,6 +25,7 @@ include Config
VER = 6.5.0 +SUMMARY = Server side daemon and supporting files for libvirt
THISAPP = libvirt-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -37,6 +38,8 @@ PAK_VER = 25
DEPS = ebtables libpciaccess libtirpc libyajl ncat qemu
+INITSCRIPTS= libvirtd virtlogd
############################################################################### # Top-level Rules ############################################################################### @@ -121,8 +124,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) cd $(DIR_APP)/build_libvirt && make install
#install initscripts
- $(call INSTALL_INITSCRIPT,libvirtd)
- $(call INSTALL_INITSCRIPT,virtlogd)
@$(INSTALL_INITSCRIPTS) mv /usr/libexec/libvirt-guests.sh /etc/rc.d/init.d/libvirt-guests
# Backup
diff --git a/lfs/zabbix_agentd b/lfs/zabbix_agentd index c69643a54..a72fe024b 100644 --- a/lfs/zabbix_agentd +++ b/lfs/zabbix_agentd @@ -25,6 +25,7 @@ include Config
VER = 4.2.6 +SUMMARY = Zabbix Agent
THISAPP = zabbix-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -35,6 +36,8 @@ PROG = zabbix_agentd PAK_VER = 4 DEPS =
+INITSCRIPTS= zabbix_agentd
############################################################################### # Top-level Rules ############################################################################### @@ -106,7 +109,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) chown zabbix.zabbix /var/run/zabbix
# Install initscripts
- $(call INSTALL_INITSCRIPT,zabbix_agentd)
@$(INSTALL_INITSCRIPTS)
# Install sudoers include file install -v -m 644 $(DIR_SRC)/config/zabbix_agentd/sudoers \
diff --git a/src/pakfire/meta b/src/pakfire/meta index d97b2a0fa..849b9cd6c 100644 --- a/src/pakfire/meta +++ b/src/pakfire/meta @@ -1,6 +1,8 @@ Name: NAME +Summary: SUMMARY ProgVersion: VER Release: RELEASE Size: SIZE Dependencies: DEPS File: NAME-VER-RELEASE.ipfire
+InitScripts: INITSCRIPTS
2.31.1
Also, what happens with all the other files that used to call “INSTALL_INITSCRIPT”?
-Michael
-- Dit bericht is gescanned op virussen en andere gevaarlijke inhoud door MailScanner en lijkt schoon te zijn.