aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/metadata.pl
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2014-10-05 16:41:33 +0000
committerFelix Fietkau <nbd@openwrt.org>2014-10-05 16:41:33 +0000
commit3ed277255c06d3bd7950ef688986f2a8f64a9e6a (patch)
treefe87b5f66a904b1c6c9c0659e4f7ba0b8be1d02d /scripts/metadata.pl
parent742d20f881f219f4851607ee3c944ce175b9b7fc (diff)
downloadmaster-187ad058-3ed277255c06d3bd7950ef688986f2a8f64a9e6a.tar.gz
master-187ad058-3ed277255c06d3bd7950ef688986f2a8f64a9e6a.tar.bz2
master-187ad058-3ed277255c06d3bd7950ef688986f2a8f64a9e6a.zip
build: add support for declaring package CONFLICTS which only affect selecting built-in packages
Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@42770 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'scripts/metadata.pl')
-rwxr-xr-xscripts/metadata.pl13
1 files changed, 13 insertions, 0 deletions
diff --git a/scripts/metadata.pl b/scripts/metadata.pl
index 4014613de6..366e61cb63 100755
--- a/scripts/metadata.pl
+++ b/scripts/metadata.pl
@@ -522,6 +522,18 @@ sub mconf_depends {
return $res;
}
+sub mconf_conflicts {
+ my $pkgname = shift;
+ my $depends = shift;
+ my $res = "";
+
+ foreach my $depend (@$depends) {
+ next unless $package{$depend};
+ $res .= "\t\tdepends on m || (PACKAGE_$depend != y)\n";
+ }
+ return $res;
+}
+
sub print_package_config_category($) {
my $cat = shift;
my %menus;
@@ -583,6 +595,7 @@ sub print_package_config_category($) {
}
print mconf_depends($pkg->{name}, $pkg->{depends}, 0);
print mconf_depends($pkg->{name}, $pkg->{mdepends}, 0);
+ print mconf_conflicts($pkg->{name}, $pkg->{conflicts});
print "\t\thelp\n";
print $pkg->{description};
print "\n";