ar71xx: fix LAN portmasks on wnr2000-v4
[openwrt/openwrt.git] / package / Makefile
index bf1b16fc9a255952c558e40764118d46be0f751e..d5212f09a84fd0867fc2498439b2b9de93bec59f 100644 (file)
@@ -59,6 +59,7 @@ endif
 
 # where to build (and put) .ipk packages
 OPKG:= \
+  IPKG_NO_SCRIPT=1 \
   IPKG_TMP=$(TMP_DIR)/ipkg \
   IPKG_INSTROOT=$(TARGET_DIR) \
   IPKG_CONF_DIR=$(STAGING_DIR)/etc \
@@ -94,7 +95,7 @@ $(curdir)/install: $(TMP_DIR)/.build
        - find $(STAGING_DIR_ROOT) -type d | $(XARGS) chmod 0755
        rm -rf $(TARGET_DIR)
        [ -d $(TARGET_DIR)/tmp ] || mkdir -p $(TARGET_DIR)/tmp
-       @$(FIND) `sed -e 's|.*|$(PACKAGE_DIR)/&_*.ipk|' $(PACKAGE_INSTALL_FILES)` | sort -u | $(OPKG) install
+       @$(FIND) `sed -e 's|.*|$(PACKAGE_DIR)$(if $(CONFIG_PER_FEED_REPO),/*)/&_*.ipk|' $(PACKAGE_INSTALL_FILES)` | sort -u | $(OPKG) install
        @for file in $(PACKAGE_INSTALL_FILES); do \
                [ -s $$file.flags ] || continue; \
                for flag in `cat $$file.flags`; do \
@@ -108,15 +109,15 @@ $(curdir)/install: $(TMP_DIR)/.build
        @mkdir -p $(TARGET_DIR)/etc/rc.d
        @( \
                cd $(TARGET_DIR); \
-               for script in ./etc/init.d/*; do \
-                       grep '#!/bin/sh /etc/rc.common' $$script >/dev/null || continue; \
-                       IPKG_INSTROOT=$(TARGET_DIR) $$(which bash) ./etc/rc.common $$script enable; \
+               for script in ./usr/lib/opkg/info/*.postinst; do \
+                       IPKG_INSTROOT=$(TARGET_DIR) $$(which bash) $$script; \
                done || true \
        )
        @-find $(TARGET_DIR) -name CVS   | $(XARGS) rm -rf
        @-find $(TARGET_DIR) -name .svn  | $(XARGS) rm -rf
        @-find $(TARGET_DIR) -name '.#*' | $(XARGS) rm -f
-       rm -f $(TARGET_DIR)/usr/lib/opkg/info/*.postinst
+       rm -f $(TARGET_DIR)/usr/lib/opkg/info/*.postinst*
+       rm -f $(TARGET_DIR)/usr/lib/opkg/info/*.prerm*
        $(if $(CONFIG_CLEAN_IPKG),rm -rf $(TARGET_DIR)/usr/lib/opkg)
        $(call mklibs)
 
@@ -142,6 +143,14 @@ $(curdir)/index: FORCE
                $(SCRIPT_DIR)/ipkg-make-index.sh . 2>&1 > Packages && \
                        gzip -9c Packages > Packages.gz; \
        ); done
+ifdef CONFIG_SIGNED_PACKAGES
+       @echo Signing package index...
+       @for d in $(PACKAGE_SUBDIRS); do ( \
+               [ -d $(PACKAGE_DIR)/$$d ] && \
+                       cd $(PACKAGE_DIR)/$$d || continue; \
+               $(STAGING_DIR_HOST)/bin/usign -S -m Packages -s $(BUILD_KEY); \
+       ); done
+else
 ifeq ($(call qstrip,$(CONFIG_OPKGSMIME_KEY)),)
        @echo Signing key has not been configured
 else
@@ -160,6 +169,7 @@ else
        ); done
 endif
 endif
+endif
 
 $(curdir)/preconfig: