From 19ac879954210df3c6a010990bef42ad5c7fd967 Mon Sep 17 00:00:00 2001 From: Paul Spooren Date: Tue, 13 Jun 2017 21:59:14 +0200 Subject: [PATCH] imagebuilder: add package_list function The imagebuilder can now list all available packages by using make package_list. This is usefull for scripts to retrieve a list of all packages with versions (and size) Signed-off-by: Paul Spooren [daniel@makrotopia.org: fixed commit message] --- target/imagebuilder/files/Makefile | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/target/imagebuilder/files/Makefile b/target/imagebuilder/files/Makefile index f0e2bd1281..f8702b5861 100644 --- a/target/imagebuilder/files/Makefile +++ b/target/imagebuilder/files/Makefile @@ -111,13 +111,7 @@ _call_image: staging_dir/host/.prereq-build echo rm -rf $(TARGET_DIR) mkdir -p $(TARGET_DIR) $(BIN_DIR) $(TMP_DIR) $(DL_DIR) - if [ ! -f "$(PACKAGE_DIR)/Packages" ] || [ ! -f "$(PACKAGE_DIR)/Packages.gz" ] || [ "`find $(PACKAGE_DIR) -cnewer $(PACKAGE_DIR)/Packages.gz`" ]; then \ - echo "Package list missing or not up-to-date, generating it.";\ - $(MAKE) package_index; \ - else \ - mkdir -p $(TARGET_DIR)/tmp; \ - $(OPKG) update || true; \ - fi + $(MAKE) package_reload $(MAKE) package_install ifneq ($(USER_FILES),) $(MAKE) copy_files @@ -135,6 +129,19 @@ package_index: FORCE ) >/dev/null 2>/dev/null $(OPKG) update || true +package_reload: + if [ ! -f "$(PACKAGE_DIR)/Packages" ] || [ ! -f "$(PACKAGE_DIR)/Packages.gz" ] || [ "`find $(PACKAGE_DIR) -cnewer $(PACKAGE_DIR)/Packages.gz`" ]; then \ + echo "Package list missing or not up-to-date, generating it.";\ + $(MAKE) package_index; \ + else \ + mkdir -p $(TARGET_DIR)/tmp; \ + $(OPKG) update || true; \ + fi + +package_list: FORCE + @$(MAKE) -s package_reload + @$(OPKG) list --size 2>/dev/null | awk -F" - " '{printf "%s %s %s\n", $$1, $$2, $$3}' + package_install: FORCE @echo @echo Installing packages...