target/imagebuilder: add depends target to show all package that gets installed
[openwrt/staging/dedeckeh.git] / target / imagebuilder / files / Makefile
index 65cba92b32746ab6524bb3d2bc792e287f8fc6a3..79e6826c106ecd87a894e163eb57bf87aa142bb1 100644 (file)
@@ -27,6 +27,7 @@ include $(INCLUDE_DIR)/rootfs.mk
 
 include $(INCLUDE_DIR)/version.mk
 export REVISION
+export SOURCE_DATE_EPOCH
 
 define Helptext
 Available Commands:
@@ -34,6 +35,7 @@ Available Commands:
        info:   Show a list of available target profiles
        clean:  Remove images and temporary build files
        image:  Build an image (see below for more information).
+       package_depends: Show installation dependency of the package
 
 Building images:
        By default 'make image' will create an image with the default
@@ -54,6 +56,13 @@ Print manifest:
 
        make manifest PROFILE="<profilename>" # override the default target profile
        make manifest PACKAGES="<pkg1> [<pkg2> [<pkg3> ...]]" # include extra packages
+       make manifest STRIP_ABI=1 # remove ABI version from printed package names
+
+package_depends:
+       List "all" packages dependency of the package
+       You can use the following parameters:
+
+       make package_depends PACKAGE="<pkg>"
 
 endef
 $(eval $(call shexport,Helptext))
@@ -101,6 +110,7 @@ staging_dir/host/.prereq-build: include/prereq-build.mk
 
 _call_info: FORCE
        echo 'Current Target: "$(TARGETID)"'
+       echo 'Current Architecture: "$(ARCH)"'
        echo 'Current Revision: "$(REVISION)"'
        echo 'Default Packages: $(DEFAULT_PACKAGES)'
        echo 'Available Profiles:'
@@ -129,7 +139,7 @@ _call_manifest: FORCE
        mkdir -p $(TARGET_DIR) $(BIN_DIR) $(TMP_DIR) $(DL_DIR)
        $(MAKE) package_reload >/dev/null
        $(MAKE) package_install >/dev/null
-       $(OPKG) list-installed
+       $(OPKG) list-installed $(if $(STRIP_ABI),--strip-abi)
 
 package_index: FORCE
        @echo >&2
@@ -138,7 +148,7 @@ package_index: FORCE
        (cd $(PACKAGE_DIR); $(SCRIPT_DIR)/ipkg-make-index.sh . > Packages && \
                gzip -9nc Packages > Packages.gz; \
                $(if $(CONFIG_SIGNATURE_CHECK), \
-                       $(STAGING_DIR_HOST)/bin/usign -S -m Packages -s $(BUILD_KEY)); \
+                       $(STAGING_DIR_HOST)/bin/usign -S -m Packages -s $(BUILD_KEY)) \
        ) >/dev/null 2>/dev/null
        $(OPKG) update >&2 || true
 
@@ -260,4 +270,13 @@ endif
        @$(MAKE) -s package_reload
        @$(OPKG) whatdepends -A $(PACKAGE)
 
-.SILENT: help info image manifest whatdepends
+package_depends: FORCE
+ifeq ($(PACKAGE),)
+       @echo 'Variable `PACKAGE` is not set but required by `package_depends`'
+       @exit 1
+endif
+       @$(MAKE) -s package_reload
+       @$(OPKG) depends -A $(PACKAGE)
+
+
+.SILENT: help info image manifest whatdepends package_depends