Added --non-interactive flag to svn package downloads
[openwrt.git] / scripts / feeds
index deafaca..133f853 100755 (executable)
@@ -46,7 +46,7 @@ sub parse_config() {
                $line[0] =~ /^src-\w+$/ or $valid = 0;
                $line[1] =~ /^\w+$/ or $valid = 0;
                @src = split /\s+/, $line[2];
-               $valid or die "Syntax error in feeds.list, line: $line\n";
+               $valid or die "Syntax error in feeds.conf, line: $line\n";
 
                $name{$line[1]} and die "Duplicate feed name '$line[1]', line: $line\n";
                $name{$line[1]} = 1;
@@ -99,7 +99,7 @@ sub update_index($)
 
 my %update_method = (
        'src-svn' => {
-               'init'          => "svn checkout '%s' '%s'",
+               'init'          => "svn checkout --non-interactive --trust-server-cert '%s' '%s'",
                'update'        => "svn update",
                'controldir'    => ".svn"},
        'src-cpy' => {
@@ -179,6 +179,7 @@ sub search_feed {
                my $substr;
                my $pkgmatch = 1;
 
+               next if $pkg->{vdepends};
                foreach my $substr (@substr) {
                        my $match;
                        foreach my $key (qw(name title description src)) {
@@ -212,6 +213,7 @@ sub list_feed {
        get_feed($feed);
        foreach my $name (sort { lc($a) cmp lc($b) } keys %package) {
                my $pkg = $package{$name};
+               next if $pkg->{vdepends};
                if($pkg->{name}) {
                        printf "\%-32s\t\%s\n", $pkg->{name}, $pkg->{title};
                }
@@ -327,10 +329,11 @@ sub install_package {
 
        # install all dependencies
        foreach my $vpkg (@{$srcpackage{$src}}, $pkg) {
-               foreach my $dep (@{$vpkg->{depends}}, @{$vpkg->{builddepends}}) {
+               foreach my $dep (@{$vpkg->{depends}}, @{$vpkg->{builddepends}}, @{$vpkg->{"builddepends/host"}}) {
                        next if $dep =~ /@/;
                        $dep =~ s/^\+//;
                        $dep =~ s/^.+://;
+                       $dep =~ s/\/.+$//;
                        next unless $dep;
                        install_package($feed, $dep) == 0 or $ret = 1;
                }
@@ -383,6 +386,7 @@ sub install {
                                get_feed($f->[1]);
                                foreach my $name (sort { lc($a) cmp lc($b) } keys %package) {
                                        my $p = $package{$name};
+                                       next if $p->{vdepends};
                                        if( $p->{name} ) {
                                                install_package($feed, $p->{name}) == 0 or $ret = 1;
                                        }