X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fopenwrt.git;a=blobdiff_plain;f=include%2Fpackage-ipkg.mk;h=2591f5e7e9bb3336386ac18d17abe6f7f65815f7;hp=815aef093a2196906490c5c2eb0478550964c087;hb=192bf087d4c87b6d550290bff6841d1975e0c71b;hpb=c3787d4c0c1d6707d06181628794367395f536e7 diff --git a/include/package-ipkg.mk b/include/package-ipkg.mk index 815aef093a..2591f5e7e9 100644 --- a/include/package-ipkg.mk +++ b/include/package-ipkg.mk @@ -5,22 +5,25 @@ # See /LICENSE for more information. # -include $(INCLUDE_DIR)/feeds.mk +ifndef DUMP + include $(INCLUDE_DIR)/feeds.mk +endif # invoke ipkg-build with some default options IPKG_BUILD:= \ - $(STAGING_DIR_HOST)/bin/ipkg-build -c -o 0 -g 0 + $(SCRIPT_DIR)/ipkg-build -c -o 0 -g 0 IPKG_STATE_DIR:=$(TARGET_DIR)/usr/lib/opkg # 1: package name # 2: variable name # 3: variable suffix +# 4: file is a script define BuildIPKGVariable ifdef Package/$(1)/$(2) $$(IPKG_$(1)) : VAR_$(2)$(3)=$$(Package/$(1)/$(2)) $(call shexport,Package/$(1)/$(2)) - $(1)_COMMANDS += echo "$$$$$$$$$(call shvar,Package/$(1)/$(2))" > $(2)$(3); + $(1)_COMMANDS += echo "$$$$$$$$$(call shvar,Package/$(1)/$(2))" > $(2)$(3); $(if $(4),chmod 0755 $(2)$(3);) endif endef @@ -66,7 +69,7 @@ ifneq ($(PKG_NAME),toolchain) XARGS="$(XARGS)"; \ $(SCRIPT_DIR)/gen-dependencies.sh "$$(IDIR_$(1))"; \ ) | while read FILE; do \ - grep -qE "^$$$$FILE$$$$" $(PKG_INFO_DIR)/$(1).provides || \ + grep -qxF "$$$$FILE" $(PKG_INFO_DIR)/$(1).provides || \ echo "$$$$FILE" >> $(PKG_INFO_DIR)/$(1).missing; \ done; \ if [ -f "$(PKG_INFO_DIR)/$(1).missing" ]; then \ @@ -125,11 +128,12 @@ ifeq ($(DUMP),) $(FixupReverseDependencies) $(eval $(call BuildIPKGVariable,$(1),conffiles)) - $(eval $(call BuildIPKGVariable,$(1),preinst)) - $(eval $(call BuildIPKGVariable,$(1),postinst,-pkg)) - $(eval $(call BuildIPKGVariable,$(1),prerm,-pkg)) - $(eval $(call BuildIPKGVariable,$(1),postrm)) + $(eval $(call BuildIPKGVariable,$(1),preinst,,1)) + $(eval $(call BuildIPKGVariable,$(1),postinst,-pkg,1)) + $(eval $(call BuildIPKGVariable,$(1),prerm,-pkg,1)) + $(eval $(call BuildIPKGVariable,$(1),postrm,,1)) + $(STAGING_DIR_ROOT)/stamp/.$(1)_installed : export PATH=$$(TARGET_PATH_PKG) $(STAGING_DIR_ROOT)/stamp/.$(1)_installed: $(STAMP_BUILT) rm -rf $(STAGING_DIR_ROOT)/tmp-$(1) mkdir -p $(STAGING_DIR_ROOT)/stamp $(STAGING_DIR_ROOT)/tmp-$(1) @@ -153,7 +157,7 @@ Package: $(1) Version: $(VERSION) $$(call addfield,Depends,$$(Package/$(1)/DEPENDS) )$$(call addfield,Conflicts,$$(call mergelist,$(CONFLICTS)) -)$$(call addfield,Provides,$(PROVIDES) +)$$(call addfield,Provides,$$(call mergelist,$(PROVIDES)) )$$(call addfield,Source,$(SOURCE) )$$(call addfield,License,$$(PKG_LICENSE) )$$(call addfield,LicenseFiles,$$(PKG_LICENSE_FILES) @@ -169,6 +173,7 @@ $(_endef) $(PKG_INFO_DIR)/$(1).provides: $$(IPKG_$(1)) $$(IPKG_$(1)) : export CONTROL=$$(Package/$(1)/CONTROL) $$(IPKG_$(1)) : export DESCRIPTION=$$(Package/$(1)/description) + $$(IPKG_$(1)) : export PATH=$$(TARGET_PATH_PKG) $$(IPKG_$(1)): $(STAMP_BUILT) $(INCLUDE_DIR)/package-ipkg.mk @rm -rf $$(PDIR_$(1))/$(1)_* $$(IDIR_$(1)) mkdir -p $(PACKAGE_DIR) $$(IDIR_$(1))/CONTROL $(PKG_INFO_DIR) @@ -203,7 +208,7 @@ $(_endef) echo ". \$$$${IPKG_INSTROOT}/lib/functions.sh"; \ echo "default_prerm \$$$$0 \$$$$@"; \ ) > prerm; \ - chmod 0755 prerm; \ + chmod 0755 postinst prerm; \ $($(1)_COMMANDS) \ )