build: remove obsolete "package feature" feature
Package "features" seem to be unused for some time. In any case, custom Config.in snippets and package PROVIDES are a much more flexible way to express similar options. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
This commit is contained in:
		| @@ -49,29 +49,4 @@ $(Package/$(1)/config) | ||||
| )) | ||||
| endef | ||||
|  | ||||
| define Feature/Default | ||||
|   TARGET_NAME:= | ||||
|   TARGET_TITLE:= | ||||
|   PRIORITY:= | ||||
|   NAME:= | ||||
| endef | ||||
|  | ||||
| define Feature | ||||
|   $(eval $(Feature/Default)) | ||||
|   $(eval $(Feature/$(1))) | ||||
|   $(if $(DUMP),$(call Dumpinfo/Feature,$(1))) | ||||
| endef | ||||
|  | ||||
| define Dumpinfo/Feature | ||||
| $(info Feature: $(TARGET_NAME)_$(1) | ||||
| Target-Name: $(TARGET_NAME) | ||||
| Target-Title: $(TARGET_TITLE) | ||||
| Feature-Name: $(NAME) | ||||
| $(if $(PRIORITY),Feature-Priority: $(PRIORITY) | ||||
| )Feature-Description: | ||||
| $(Feature/$(1)/description) | ||||
| @@ | ||||
| ) | ||||
| endef | ||||
|  | ||||
| endif | ||||
|   | ||||
| @@ -2,13 +2,12 @@ package metadata; | ||||
| use base 'Exporter'; | ||||
| use strict; | ||||
| use warnings; | ||||
| our @EXPORT = qw(%package %vpackage %srcpackage %category %features %overrides clear_packages parse_package_metadata parse_target_metadata get_multiline @ignore %usernames %groupnames); | ||||
| our @EXPORT = qw(%package %vpackage %srcpackage %category %overrides clear_packages parse_package_metadata parse_target_metadata get_multiline @ignore %usernames %groupnames); | ||||
|  | ||||
| our %package; | ||||
| our %vpackage; | ||||
| our %srcpackage; | ||||
| our %category; | ||||
| our %features; | ||||
| our %overrides; | ||||
| our @ignore; | ||||
|  | ||||
| @@ -181,7 +180,6 @@ sub clear_packages() { | ||||
| 	%vpackage = (); | ||||
| 	%srcpackage = (); | ||||
| 	%category = (); | ||||
| 	%features = (); | ||||
| 	%overrides = (); | ||||
| 	%usernames = (); | ||||
| 	%groupnames = (); | ||||
| @@ -190,7 +188,6 @@ sub clear_packages() { | ||||
| sub parse_package_metadata($) { | ||||
| 	my $file = shift; | ||||
| 	my $pkg; | ||||
| 	my $feature; | ||||
| 	my $src; | ||||
| 	my $override; | ||||
| 	my %ignore = map { $_ => 1 } @ignore; | ||||
| @@ -221,7 +218,6 @@ sub parse_package_metadata($) { | ||||
| 		}; | ||||
| 		next unless $src; | ||||
| 		/^Package:\s*(.+?)\s*$/ and do { | ||||
| 			undef $feature; | ||||
| 			$pkg = {}; | ||||
| 			$pkg->{src} = $src; | ||||
| 			$pkg->{name} = $1; | ||||
| @@ -237,23 +233,6 @@ sub parse_package_metadata($) { | ||||
| 			$vpackage{$1} or $vpackage{$1} = []; | ||||
| 			unshift @{$vpackage{$1}}, $pkg; | ||||
| 		}; | ||||
| 		/^Feature:\s*(.+?)\s*$/ and do { | ||||
| 			undef $pkg; | ||||
| 			$feature = {}; | ||||
| 			$feature->{name} = $1; | ||||
| 			$feature->{priority} = 0; | ||||
| 		}; | ||||
| 		$feature and do { | ||||
| 			/^Target-Name:\s*(.+?)\s*$/ and do { | ||||
| 				$features{$1} or $features{$1} = []; | ||||
| 				push @{$features{$1}}, $feature unless $src->{ignore}; | ||||
| 			}; | ||||
| 			/^Target-Title:\s*(.+?)\s*$/ and $feature->{target_title} = $1; | ||||
| 			/^Feature-Priority:\s*(\d+)\s*$/ and $feature->{priority} = $1; | ||||
| 			/^Feature-Name:\s*(.+?)\s*$/ and $feature->{title} = $1; | ||||
| 			/^Feature-Description:/ and $feature->{description} = get_multiline(\*FILE, "\t\t\t"); | ||||
| 			next; | ||||
| 		}; | ||||
| 		/^Build-Depends: \s*(.+)\s*$/ and $src->{builddepends} = [ split /\s+/, $1 ]; | ||||
| 		/^Build-Depends\/(\w+): \s*(.+)\s*$/ and $src->{"builddepends/$1"} = [ split /\s+/, $2 ]; | ||||
| 		/^Build-Types:\s*(.+)\s*$/ and $src->{buildtypes} = [ split /\s+/, $1 ]; | ||||
|   | ||||
| @@ -337,31 +337,6 @@ sub print_package_config_category($) { | ||||
| 	undef $category{$cat}; | ||||
| } | ||||
|  | ||||
| sub print_package_features() { | ||||
| 	keys %features > 0 or return; | ||||
| 	print "menu \"Package features\"\n"; | ||||
| 	foreach my $n (keys %features) { | ||||
| 		my @features = sort { $b->{priority} <=> $a->{priority} or $a->{title} cmp $b->{title} } @{$features{$n}}; | ||||
| 		print <<EOF; | ||||
| choice | ||||
| 	prompt "$features[0]->{target_title}" | ||||
| 	default FEATURE_$features[0]->{name} | ||||
| EOF | ||||
|  | ||||
| 		foreach my $feature (@features) { | ||||
| 			print <<EOF; | ||||
| 	config FEATURE_$feature->{name} | ||||
| 		bool "$feature->{title}" | ||||
| EOF | ||||
| 			$feature->{description} =~ /\w/ and do { | ||||
| 				print "\t\thelp\n".$feature->{description}."\n"; | ||||
| 			}; | ||||
| 		} | ||||
| 		print "endchoice\n" | ||||
| 	} | ||||
| 	print "endmenu\n\n"; | ||||
| } | ||||
|  | ||||
| sub print_package_overrides() { | ||||
| 	keys %overrides > 0 or return; | ||||
| 	print "\tconfig OVERRIDE_PKGS\n"; | ||||
| @@ -376,7 +351,6 @@ sub gen_package_config() { | ||||
| 	if (scalar glob "package/feeds/*/*/image-config.in") { | ||||
| 	    print "source \"package/feeds/*/*/image-config.in\"\n"; | ||||
| 	} | ||||
| 	print_package_features(); | ||||
| 	print_package_config_category 'Base system'; | ||||
| 	foreach my $cat (sort {uc($a) cmp uc($b)} keys %category) { | ||||
| 		print_package_config_category $cat; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Matthias Schiffer
					Matthias Schiffer