diff options
Diffstat (limited to 'package/Makefile')
-rw-r--r-- | package/Makefile | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/package/Makefile b/package/Makefile index 1930d27cf8..bf1b16fc9a 100644 --- a/package/Makefile +++ b/package/Makefile @@ -7,6 +7,8 @@ curdir:=package +include $(INCLUDE_DIR)/feeds.mk + -include $(TMP_DIR)/.packagedeps $(curdir)/builddirs:=$(sort $(package-) $(package-y) $(package-m)) $(curdir)/builddirs-install:=. @@ -127,11 +129,19 @@ ifndef CONFIG_OPKGSMIME_PASSPHRASE endif endif +PACKAGE_SUBDIRS=. +ifneq ($(CONFIG_PER_FEED_REPO),) + PACKAGE_SUBDIRS=base $(FEEDS_ENABLED) +endif + $(curdir)/index: FORCE @echo Generating package index... - @(cd $(PACKAGE_DIR); \ + @for d in $(PACKAGE_SUBDIRS); do ( \ + [ -d $(PACKAGE_DIR)/$$d ] && \ + cd $(PACKAGE_DIR)/$$d || continue; \ $(SCRIPT_DIR)/ipkg-make-index.sh . 2>&1 > Packages && \ - gzip -9c Packages > Packages.gz ) + gzip -9c Packages > Packages.gz; \ + ); done ifeq ($(call qstrip,$(CONFIG_OPKGSMIME_KEY)),) @echo Signing key has not been configured else @@ -139,12 +149,15 @@ ifeq ($(call qstrip,$(CONFIG_OPKGSMIME_CERT)),) @echo Certificate has not been configured else @echo Signing package index... - @(cd $(PACKAGE_DIR); \ + @for d in $(PACKAGE_SUBDIRS); do ( \ + [ -d $(PACKAGE_DIR)/$$d ] && \ + cd $(PACKAGE_DIR)/$$d || continue; \ openssl smime -binary -in Packages.gz \ -out Packages.sig -outform PEM -sign \ -signer $(CONFIG_OPKGSMIME_CERT) \ -inkey $(CONFIG_OPKGSMIME_KEY) \ - $(PASSOPT) $(PASSARG) ) + $(PASSOPT) $(PASSARG); \ + ); done endif endif |