allow targets to select/deselect config symbols
SVN-Revision: 9150
This commit is contained in:
		| @@ -150,6 +150,7 @@ define BuildTargets/DumpCurrent | |||||||
| 	 echo 'Target-Path: $(subst $(TOPDIR)/,,$(PWD))'; \ | 	 echo 'Target-Path: $(subst $(TOPDIR)/,,$(PWD))'; \ | ||||||
| 	 echo 'Target-Arch: $(ARCH)'; \ | 	 echo 'Target-Arch: $(ARCH)'; \ | ||||||
| 	 echo 'Target-Features: $(FEATURES)'; \ | 	 echo 'Target-Features: $(FEATURES)'; \ | ||||||
|  | 	 echo 'Target-Depends: $(DEPENDS)'; \ | ||||||
| 	 echo 'Linux-Version: $(LINUX_VERSION)'; \ | 	 echo 'Linux-Version: $(LINUX_VERSION)'; \ | ||||||
| 	 echo 'Linux-Release: $(LINUX_RELEASE)'; \ | 	 echo 'Linux-Release: $(LINUX_RELEASE)'; \ | ||||||
| 	 echo 'Linux-Kernel-Arch: $(LINUX_KARCH)'; \ | 	 echo 'Linux-Kernel-Arch: $(LINUX_KARCH)'; \ | ||||||
|   | |||||||
| @@ -25,7 +25,9 @@ sub parse_target_metadata() { | |||||||
| 			$target = { | 			$target = { | ||||||
| 				id => $1, | 				id => $1, | ||||||
| 				conf => confstr($1), | 				conf => confstr($1), | ||||||
| 				profiles => [] | 				profiles => [], | ||||||
|  | 				features => [], | ||||||
|  | 				depends => [] | ||||||
| 			}; | 			}; | ||||||
| 			push @target, $target; | 			push @target, $target; | ||||||
| 		}; | 		}; | ||||||
| @@ -38,6 +40,7 @@ sub parse_target_metadata() { | |||||||
| 		/^Target-Path:\s*(.+)\s*$/ and $target->{path} = $1; | 		/^Target-Path:\s*(.+)\s*$/ and $target->{path} = $1; | ||||||
| 		/^Target-Arch:\s*(.+)\s*$/ and $target->{arch} = $1; | 		/^Target-Arch:\s*(.+)\s*$/ and $target->{arch} = $1; | ||||||
| 		/^Target-Features:\s*(.+)\s*$/ and $target->{features} = [ split(/\s+/, $1) ]; | 		/^Target-Features:\s*(.+)\s*$/ and $target->{features} = [ split(/\s+/, $1) ]; | ||||||
|  | 		/^Target-Depends:\s*(.+)\s*$/ and $target->{depends} = [ split(/\s+/, $1) ]; | ||||||
| 		/^Target-Description:/ and $target->{desc} = get_multiline(*FILE); | 		/^Target-Description:/ and $target->{desc} = get_multiline(*FILE); | ||||||
| 		/^Linux-Version:\s*(.+)\s*$/ and $target->{version} = $1; | 		/^Linux-Version:\s*(.+)\s*$/ and $target->{version} = $1; | ||||||
| 		/^Linux-Release:\s*(.+)\s*$/ and $target->{release} = $1; | 		/^Linux-Release:\s*(.+)\s*$/ and $target->{release} = $1; | ||||||
| @@ -189,6 +192,20 @@ EOF | |||||||
| 		if ($target->{id} ne $target->{board}) { | 		if ($target->{id} ne $target->{board}) { | ||||||
| 			print "\tselect TARGET_".$target->{boardconf}."\n"; | 			print "\tselect TARGET_".$target->{boardconf}."\n"; | ||||||
| 		} | 		} | ||||||
|  | 		foreach my $dep (@{$target->{depends}}) { | ||||||
|  | 			my $mode = "depends"; | ||||||
|  | 			my $flags; | ||||||
|  | 			my $name; | ||||||
|  |  | ||||||
|  | 			$dep =~ /^([@\+\-]+)(.+)$/; | ||||||
|  | 			$flags = $1; | ||||||
|  | 			$name = $2; | ||||||
|  |  | ||||||
|  | 			$flags =~ /-/ and $mode = "deselect"; | ||||||
|  | 			$flags =~ /\+/ and $mode = "select"; | ||||||
|  | 			$flags =~ /@/ and print "\t$mode $name\n"; | ||||||
|  | 		} | ||||||
|  | 		 | ||||||
| 		print "$features$help\n\n" | 		print "$features$help\n\n" | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Felix Fietkau
					Felix Fietkau