add config symbols for the kernel version
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sat, 10 Nov 2007 15:22:53 +0000 (15:22 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sat, 10 Nov 2007 15:22:53 +0000 (15:22 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@9520 3c298f89-4303-0410-b956-a3cf2f4a3e73

rules.mk
scripts/metadata.pl

index 5c66dfde1a14942f3b220608c3a899f3db9605ba..4a0fa32e3554b124a5d687825220224df8558dc0 100644 (file)
--- a/rules.mk
+++ b/rules.mk
@@ -138,6 +138,10 @@ $(call shvar,$(1))=$$(call $(1))
 export $(call shvar,$(1))
 endef
 
+define confvar
+$(foreach v,$(1),$(if $($(v)),y,n))
+endef
+
 # file extension
 ext=$(word $(words $(subst ., ,$(1))),$(subst ., ,$(1)))
 
index 914b5127b4ad1dbf61d88976bd371c2e6abccc2f..2898289bcc22dffe782e08fc3e3d80e98a8efa0d 100755 (executable)
@@ -173,6 +173,13 @@ sub target_name($) {
        }
 }
 
+sub kver($) {
+       my $v = shift;
+       $v =~ tr/\./_/;
+       $v =~ /(\d+_\d+_\d+)(_\d+)?/ and $v = $1;
+       return $v;
+}
+
 sub print_target($) {
        my $target = shift;
        my $features = target_config_features(@{$target->{features}});
@@ -190,10 +197,12 @@ sub print_target($) {
                undef $help;
        }
 
+       my $v = kver($target->{version});
        $confstr = <<EOF;
 config TARGET_$target->{conf}
        bool "$target->{name}"
        select LINUX_$kernel
+       select LINUX_$v
 EOF
        if ($target->{subtarget}) {
                $confstr .= "\tdepends TARGET_$target->{boardconf}\n";
@@ -296,6 +305,16 @@ EOF
                $target->{subtarget} or print "\t\tdefault \"".$target->{board}."\" if TARGET_".$target->{conf}."\n";
        }
 
+       my %kver;
+       foreach my $target (@target) {
+               my $v = kver($target->{version});
+               next if $kver{$v};
+               $kver{$v} = 1;
+               print <<EOF;
+config LINUX_$v
+       bool
+EOF
+       }
 }
 
 my %dep_check;