X-Git-Url: https://git.archive.openwrt.org/?a=blobdiff_plain;f=include%2Fpackage-ipkg.mk;h=16378a0f0e0143b4c191dd3727b46904dc3d0a8f;hb=8e2cf077d0066a626bf3b90596acd941f430fe9e;hp=b71fce42a8fccb2601b5dcab3c0789f45f20dcef;hpb=752d6b39f1c17a8142995f5a31a2814a2e187be6;p=openwrt.git diff --git a/include/package-ipkg.mk b/include/package-ipkg.mk index b71fce42a8..16378a0f0e 100644 --- a/include/package-ipkg.mk +++ b/include/package-ipkg.mk @@ -5,32 +5,36 @@ # See /LICENSE for more information. # +# where to build (and put) .ipk packages +IPKG:= \ + IPKG_TMP=$(TMP_DIR)/ipkg \ + IPKG_INSTROOT=$(TARGET_DIR) \ + IPKG_CONF_DIR=$(STAGING_DIR)/etc \ + IPKG_OFFLINE_ROOT=$(TARGET_DIR) \ + $(SCRIPT_DIR)/ipkg -force-defaults -force-depends + +# invoke ipkg-build with some default options +IPKG_BUILD:= \ + ipkg-build -c -o 0 -g 0 + define BuildIPKGVariable $(call shexport,Package/$(1)/$(2)) $(1)_COMMANDS += var2file "$(call shvar,Package/$(1)/$(2))" $(2); endef ifeq ($(DUMP),) - define BuildIPKG + define BuildTarget/ipkg IPKG_$(1):=$(PACKAGE_DIR)/$(1)_$(VERSION)_$(PKGARCH).ipk IDIR_$(1):=$(PKG_BUILD_DIR)/ipkg/$(1) INFO_$(1):=$(IPKG_STATE_DIR)/info/$(1).list ifdef Package/$(1)/install - ifneq ($(CONFIG_PACKAGE_$(1)),) + ifneq ($(CONFIG_PACKAGE_$(1))$(SDK)$(DEVELOPER),) compile: $$(IPKG_$(1)) ifeq ($(CONFIG_PACKAGE_$(1)),y) install: $$(INFO_$(1)) endif - - ifneq ($(MAKECMDGOALS),prereq) - ifneq ($$(shell $(SCRIPT_DIR)/timestamp.pl -p -x ipkg -x ipkg-install '$$(IPKG_$(1))' '$(PKG_BUILD_DIR)'),$$(IPKG_$(1))) - $(PKG_BUILD_DIR)/.built: package-rebuild - $$(info Rebuilding $(subst $(TOPDIR)/,,$$(IPKG_$(1)))) - endif - endif - else compile: $(1)-disabled $(1)-disabled: @@ -56,6 +60,7 @@ ifeq ($(DUMP),) DEPENDS=$$$${DEPENDS:+$$$$DEPENDS, }$$$${depend##+}; \ done; \ echo "Depends: $$$$DEPENDS"; \ + echo "Provides: $(PROVIDES)"; \ echo "Source: $(SOURCE)"; \ echo "Section: $(SECTION)"; \ echo "Priority: $(PRIORITY)"; \ @@ -68,12 +73,10 @@ ifeq ($(DUMP),) $($(1)_COMMANDS) \ ) - $$(IPKG_$(1)): $(PKG_BUILD_DIR)/.built $$(IDIR_$(1))/CONTROL/control + $$(IPKG_$(1)): $(STAGING_DIR)/etc/ipkg.conf $(PKG_BUILD_DIR)/.built $$(IDIR_$(1))/CONTROL/control $(call Package/$(1)/install,$$(IDIR_$(1))) mkdir -p $(PACKAGE_DIR) - -find $$(IDIR_$(1)) -name CVS | xargs rm -rf - -find $$(IDIR_$(1)) -name .svn | xargs rm -rf - -find $$(IDIR_$(1)) -name '.#*' | xargs rm -f + -find $$(IDIR_$(1)) -name 'CVS' -o -name '.svn' -o -name '.#*' | $(XARGS) rm -rf $(RSTRIP) $$(IDIR_$(1)) $(IPKG_BUILD) $$(IDIR_$(1)) $(PACKAGE_DIR) @[ -f $$(IPKG_$(1)) ] || false @@ -86,11 +89,14 @@ ifeq ($(DUMP),) clean: $(1)-clean - $(PKG_BUILD_DIR)/.version-$(1)_$(VERSION)_$(PKGARCH): $(PKG_BUILD_DIR)/.prepared + $(PKG_BUILD_DIR)/.version-$(1)_$(VERSION)_$(PKGARCH): $(STAMP_PREPARED) -@rm -f $(PKG_BUILD_DIR)/.version-$(1)_* 2>/dev/null @touch $$@ + endef - $$(eval $$(call Build/DefaultTargets,$(1))) + $(STAGING_DIR)/etc/ipkg.conf: + mkdir -p $(STAGING_DIR)/etc + echo "dest root /" > $(STAGING_DIR)/etc/ipkg.conf + echo "option offline_root $(TARGET_DIR)" >> $(STAGING_DIR)/etc/ipkg.conf - endef endif