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
This commit is contained in:
parent
2b5f3d64a3
commit
585997f8d2
2 changed files with 18 additions and 8 deletions
16
Makefile
16
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
|
||||
|
|
|
@ -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";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue