From 585997f8d2cb0c080a9f9d6f158dcefe55f9ad12 Mon Sep 17 00:00:00 2001 From: Ralph Hempel Date: Thu, 20 Mar 2008 17:08:24 +0000 Subject: [PATCH] fix package/symlinks target, will call scripts/feeds update / install introduce new package/symlinks-install and package/symlinks-clean targets - package/symlink-install will re-create the index files and the symlinks for all ./feeds (no update from repositories is performed) - package/symlink-clean will delete all installed symlinks (keeping the ./feeds untouched) SVN-Revision: 10634 --- Makefile | 16 +++++++++++++--- scripts/feeds | 10 +++++----- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/Makefile b/Makefile index 77660bb8d7e..8b0ef0d57d5 100644 --- a/Makefile +++ b/Makefile @@ -57,10 +57,20 @@ prepare: .config $(tools/stamp-install) $(toolchain/stamp-install) world: prepare $(target/stamp-compile) $(package/stamp-cleanup) $(package/stamp-compile) $(package/stamp-install) $(package/stamp-rootfs-prepare) $(target/stamp-install) FORCE $(MAKE) package/index +# update all feeds, re-create index files, install symlinks package/symlinks: - $(SCRIPT_DIR)/feeds update - cd package; ln -sf ../feeds/packages openwrt-packages + $(SCRIPT_DIR)/feeds update -a + $(SCRIPT_DIR)/feeds install -a -.PHONY: clean dirclean prereq prepare world package/symlinks +# re-create index files, install symlinks +package/symlinks-install: + $(SCRIPT_DIR)/feeds update -i + $(SCRIPT_DIR)/feeds install -a + +# remove all symlinks, don't touch ./feeds +package/symlinks-clean: + $(SCRIPT_DIR)/feeds uninstall -a + +.PHONY: clean dirclean prereq prepare world package/symlinks package/symlinks-install package/symlinks-clean endif diff --git a/scripts/feeds b/scripts/feeds index 3c6c05064fb..4176c31f32f 100755 --- a/scripts/feeds +++ b/scripts/feeds @@ -238,15 +238,17 @@ sub install_package { $feed = lookup_package($feed, $name); $feed or do { $installed{$name} and return 0; - warn "WARNING: No feed for package '$name' found.\n"; - return 1; + # TODO: check if it's already installed within ./package directory + warn "WARNING: No feed for package '$name' found, maybe it's already part of the standard packages?\n"; + return 0; }; my $pkg = $feed{$feed->[1]}->{$name} or return 1; $pkg->{name} or do { $installed{$name} and return 0; + # TODO: check if this is an alias package, maybe it's known by another name warn "WARNING: Package '$name' is not available in feed $feed->[1].\n"; - return 1; + return 0; }; my $src = $pkg->{src}; my $type = $feed->[0]; @@ -327,8 +329,6 @@ sub install { my $p = $package{$name}; if( $p->{name} ) { install_package($feed, $p->{name}) == 0 or $ret = 1; - } else { - warn "WARNING: Package '$name' is not available\n"; } } } -- 2.30.2