From d6dbc22bbcde78bbc378ca3f006771a2b074ff2e Mon Sep 17 00:00:00 2001 From: John Crispin Date: Thu, 11 Sep 2014 12:27:49 +0000 Subject: ipkg: add a default postinst/prerm script the postinst script enables/starts the init.d scripts upon package installation and installs the users required by the package. the prerm script stops and disables the init.d scripts. Signed-off-by: John Crispin SVN-Revision: 42470 --- include/package-ipkg.mk | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'include/package-ipkg.mk') diff --git a/include/package-ipkg.mk b/include/package-ipkg.mk index 1caeaa25b6..494444613a 100644 --- a/include/package-ipkg.mk +++ b/include/package-ipkg.mk @@ -16,7 +16,7 @@ IPKG_STATE_DIR:=$(TARGET_DIR)/usr/lib/opkg define BuildIPKGVariable ifdef Package/$(1)/$(2) $(call shexport,Package/$(1)/$(2)) - $(1)_COMMANDS += var2file "$(call shvar,Package/$(1)/$(2))" $(2); + $(1)_COMMANDS += var2file "$(call shvar,Package/$(1)/$(2))" $(2)$(3); endif endef @@ -117,8 +117,8 @@ ifeq ($(DUMP),) $(eval $(call BuildIPKGVariable,$(1),conffiles)) $(eval $(call BuildIPKGVariable,$(1),preinst)) - $(eval $(call BuildIPKGVariable,$(1),postinst)) - $(eval $(call BuildIPKGVariable,$(1),prerm)) + $(eval $(call BuildIPKGVariable,$(1),postinst,-pkg)) + $(eval $(call BuildIPKGVariable,$(1),prerm,-pkg)) $(eval $(call BuildIPKGVariable,$(1),postrm)) $(STAGING_DIR_ROOT)/stamp/.$(1)_installed: $(STAMP_BUILT) @@ -174,6 +174,17 @@ ifeq ($(DUMP),) echo -n "Description: "; $(SH_FUNC) getvar $(call shvar,Package/$(1)/description) | sed -e 's,^[[:space:]]*, ,g'; \ ) > $$(IDIR_$(1))/CONTROL/control chmod 644 $$(IDIR_$(1))/CONTROL/control + ( \ + echo "#!/bin/sh"; \ + echo ". \$$$${IPKG_INSTROOT}/lib/functions.sh"; \ + echo "default_postinst \$$$$0 \$$$$@"; \ + ) > $$(IDIR_$(1))/CONTROL/postinst + ( \ + echo "#!/bin/sh"; \ + echo ". \$$$${IPKG_INSTROOT}/lib/functions.sh"; \ + echo "default_prerm \$$$$0 \$$$$@"; \ + ) > $$(IDIR_$(1))/CONTROL/prerm + chmod 0755 $$(IDIR_$(1))/CONTROL/prerm $(SH_FUNC) (cd $$(IDIR_$(1))/CONTROL; \ $($(1)_COMMANDS) \ ) -- cgit v1.2.3