X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/60c107b531e09536b4f5b728a0e394da0720d0ba..66ba7ac042972065d06ce3bdb09bbe3b42368057:/include/package.mk diff --git a/include/package.mk b/include/package.mk index 069e28b84..7ae95f8fe 100644 --- a/include/package.mk +++ b/include/package.mk @@ -12,11 +12,20 @@ endif include $(INCLUDE_DIR)/prereq.mk +define shvar +V_$(subst .,_,$(subst -,_,$(subst /,_,$(1)))) +endef + +define shexport +$(call shvar,$(1))=$$(call $(1)) +export $(call shvar,$(1)) +endef + define Build/DefaultTargets ifeq ($(DUMP),) ifeq ($(CONFIG_AUTOREBUILD),y) _INFO:= - ifneq ($(shell $(SCRIPT_DIR)/timestamp.pl -p $(PKG_BUILD_DIR) .),$(PKG_BUILD_DIR)) + ifneq ($$(shell $(SCRIPT_DIR)/timestamp.pl -p $(PKG_BUILD_DIR) .),$(PKG_BUILD_DIR)) _INFO+=$(subst $(TOPDIR)/,,$(PKG_BUILD_DIR)) $(PKG_BUILD_DIR)/.prepared: package-clean endif @@ -98,9 +107,8 @@ define BuildDescription endef define BuildIPKGVariable - pkg_$(subst .,_,$(subst -,_,$(1)))_$(2) = $$(Package/$(1)/$(2)) - export pkg_$(subst .,_,$(subst -,_,$(1))_$(2)) - $(1)_COMMANDS += if [ -n "$$$$$$$$pkg_$(subst .,_,$(subst -,_,$(1)))_$(2)" ]; then echo "$$$$$$$$pkg_$(subst .,_,$(subst -,_,$(1)))_$(2)" > $(2); fi; + $(call shexport,Package/$(1)/$(2)) + $(1)_COMMANDS += var2file "$(call shvar,Package/$(1)/$(2))" $(2); endef define BuildPackage @@ -161,6 +169,8 @@ define BuildPackage echo "Default: $(DEFAULT)"; endif + $(call shexport,Package/$(1)/description) + DUMPINFO += \ if [ "$$$$PREREQ_CHECK" = 1 ]; then echo "Prereq-Check: 1"; fi; \ echo "Version: $(VERSION)"; \ @@ -168,22 +178,27 @@ define BuildPackage echo "Build-Depends: $(PKG_BUILDDEP)"; \ echo "Category: $(CATEGORY)"; \ echo "Title: $(TITLE)"; \ - echo "Description: $(DESCRIPTION)" | sed -e 's,\\,\n,g'; + if isset $(call shvar,Package/$(1)/description); then \ + echo -n "Description: "; \ + getvar $(call shvar,Package/$(1)/description); \ + else \ + echo "Description: $(DESCRIPTION)" | sed -e 's,\\,\n,g'; \ + fi; ifneq ($(URL),) DUMPINFO += \ - echo; \ - echo "$(URL)"; - endif - - DUMPINFO += \ - echo "@@"; - - ifneq ($(CONFIG),) - DUMPINFO += \ - echo "Config: $(CONFIG)" | sed -e 's,\\,\n,g'; \ - echo "@@"; + echo; \ + echo "$(URL)"; endif + + DUMPINFO += \ + echo "@@"; + + $(call shexport,Package/$(1)/config) + DUMPINFO += \ + if isset $(call shvar,Package/$(1)/config); then echo "Config: "; getvar $(call shvar,Package/$(1)/config); fi; \ + echo "@@"; + endif $(eval $(call BuildIPKGVariable,$(1),conffiles))