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 | 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 | endif | ||||||
|   | |||||||
| @@ -2,13 +2,12 @@ package metadata; | |||||||
| use base 'Exporter'; | use base 'Exporter'; | ||||||
| use strict; | use strict; | ||||||
| use warnings; | 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 %package; | ||||||
| our %vpackage; | our %vpackage; | ||||||
| our %srcpackage; | our %srcpackage; | ||||||
| our %category; | our %category; | ||||||
| our %features; |  | ||||||
| our %overrides; | our %overrides; | ||||||
| our @ignore; | our @ignore; | ||||||
|  |  | ||||||
| @@ -181,7 +180,6 @@ sub clear_packages() { | |||||||
| 	%vpackage = (); | 	%vpackage = (); | ||||||
| 	%srcpackage = (); | 	%srcpackage = (); | ||||||
| 	%category = (); | 	%category = (); | ||||||
| 	%features = (); |  | ||||||
| 	%overrides = (); | 	%overrides = (); | ||||||
| 	%usernames = (); | 	%usernames = (); | ||||||
| 	%groupnames = (); | 	%groupnames = (); | ||||||
| @@ -190,7 +188,6 @@ sub clear_packages() { | |||||||
| sub parse_package_metadata($) { | sub parse_package_metadata($) { | ||||||
| 	my $file = shift; | 	my $file = shift; | ||||||
| 	my $pkg; | 	my $pkg; | ||||||
| 	my $feature; |  | ||||||
| 	my $src; | 	my $src; | ||||||
| 	my $override; | 	my $override; | ||||||
| 	my %ignore = map { $_ => 1 } @ignore; | 	my %ignore = map { $_ => 1 } @ignore; | ||||||
| @@ -221,7 +218,6 @@ sub parse_package_metadata($) { | |||||||
| 		}; | 		}; | ||||||
| 		next unless $src; | 		next unless $src; | ||||||
| 		/^Package:\s*(.+?)\s*$/ and do { | 		/^Package:\s*(.+?)\s*$/ and do { | ||||||
| 			undef $feature; |  | ||||||
| 			$pkg = {}; | 			$pkg = {}; | ||||||
| 			$pkg->{src} = $src; | 			$pkg->{src} = $src; | ||||||
| 			$pkg->{name} = $1; | 			$pkg->{name} = $1; | ||||||
| @@ -237,23 +233,6 @@ sub parse_package_metadata($) { | |||||||
| 			$vpackage{$1} or $vpackage{$1} = []; | 			$vpackage{$1} or $vpackage{$1} = []; | ||||||
| 			unshift @{$vpackage{$1}}, $pkg; | 			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: \s*(.+)\s*$/ and $src->{builddepends} = [ split /\s+/, $1 ]; | ||||||
| 		/^Build-Depends\/(\w+): \s*(.+)\s*$/ and $src->{"builddepends/$1"} = [ split /\s+/, $2 ]; | 		/^Build-Depends\/(\w+): \s*(.+)\s*$/ and $src->{"builddepends/$1"} = [ split /\s+/, $2 ]; | ||||||
| 		/^Build-Types:\s*(.+)\s*$/ and $src->{buildtypes} = [ split /\s+/, $1 ]; | 		/^Build-Types:\s*(.+)\s*$/ and $src->{buildtypes} = [ split /\s+/, $1 ]; | ||||||
|   | |||||||
| @@ -337,31 +337,6 @@ sub print_package_config_category($) { | |||||||
| 	undef $category{$cat}; | 	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() { | sub print_package_overrides() { | ||||||
| 	keys %overrides > 0 or return; | 	keys %overrides > 0 or return; | ||||||
| 	print "\tconfig OVERRIDE_PKGS\n"; | 	print "\tconfig OVERRIDE_PKGS\n"; | ||||||
| @@ -376,7 +351,6 @@ sub gen_package_config() { | |||||||
| 	if (scalar glob "package/feeds/*/*/image-config.in") { | 	if (scalar glob "package/feeds/*/*/image-config.in") { | ||||||
| 	    print "source \"package/feeds/*/*/image-config.in\"\n"; | 	    print "source \"package/feeds/*/*/image-config.in\"\n"; | ||||||
| 	} | 	} | ||||||
| 	print_package_features(); |  | ||||||
| 	print_package_config_category 'Base system'; | 	print_package_config_category 'Base system'; | ||||||
| 	foreach my $cat (sort {uc($a) cmp uc($b)} keys %category) { | 	foreach my $cat (sort {uc($a) cmp uc($b)} keys %category) { | ||||||
| 		print_package_config_category $cat; | 		print_package_config_category $cat; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Matthias Schiffer
					Matthias Schiffer