| 
														
															@@ -2,7 +2,7 @@ package metadata; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 use base 'Exporter'; 
														 | 
														
														 | 
														
															 use base 'Exporter'; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 use strict; 
														 | 
														
														 | 
														
															 use strict; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 use warnings; 
														 | 
														
														 | 
														
															 use warnings; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-our @EXPORT = qw(%package %srcpackage %category %subdir %preconfig %features clear_packages parse_package_metadata get_multiline); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+our @EXPORT = qw(%package %srcpackage %category %subdir %preconfig %features %overrides clear_packages parse_package_metadata get_multiline); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 our %package; 
														 | 
														
														 | 
														
															 our %package; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 our %preconfig; 
														 | 
														
														 | 
														
															 our %preconfig; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -10,6 +10,7 @@ our %srcpackage; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 our %category; 
														 | 
														
														 | 
														
															 our %category; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 our %subdir; 
														 | 
														
														 | 
														
															 our %subdir; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 our %features; 
														 | 
														
														 | 
														
															 our %features; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+our %overrides; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 sub get_multiline { 
														 | 
														
														 | 
														
															 sub get_multiline { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 	my $fh = shift; 
														 | 
														
														 | 
														
															 	my $fh = shift; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -30,6 +31,7 @@ sub clear_packages() { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 	%srcpackage = (); 
														 | 
														
														 | 
														
															 	%srcpackage = (); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 	%category = (); 
														 | 
														
														 | 
														
															 	%category = (); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 	%features = (); 
														 | 
														
														 | 
														
															 	%features = (); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+	%overrides = (); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 } 
														 | 
														
														 | 
														
															 } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 sub parse_package_metadata($) { 
														 | 
														
														 | 
														
															 sub parse_package_metadata($) { 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -40,6 +42,7 @@ sub parse_package_metadata($) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 	my $preconfig; 
														 | 
														
														 | 
														
															 	my $preconfig; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 	my $subdir; 
														 | 
														
														 | 
														
															 	my $subdir; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 	my $src; 
														 | 
														
														 | 
														
															 	my $src; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+	my $override; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 	open FILE, "<$file" or do { 
														 | 
														
														 | 
														
															 	open FILE, "<$file" or do { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		warn "Cannot open '$file': $!\n"; 
														 | 
														
														 | 
														
															 		warn "Cannot open '$file': $!\n"; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -54,8 +57,13 @@ sub parse_package_metadata($) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 			$subdir =~ s/^package\///; 
														 | 
														
														 | 
														
															 			$subdir =~ s/^package\///; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 			$subdir{$src} = $subdir; 
														 | 
														
														 | 
														
															 			$subdir{$src} = $subdir; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 			$srcpackage{$src} = []; 
														 | 
														
														 | 
														
															 			$srcpackage{$src} = []; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+			$override = ""; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 			undef $pkg; 
														 | 
														
														 | 
														
															 			undef $pkg; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		}; 
														 | 
														
														 | 
														
															 		}; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+		/^Override: \s*(.+?)\s*$/ and do { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+			$override = $1; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+			$overrides{$src} = 1; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+		}; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		next unless $src; 
														 | 
														
														 | 
														
															 		next unless $src; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		/^Package:\s*(.+?)\s*$/ and do { 
														 | 
														
														 | 
														
															 		/^Package:\s*(.+?)\s*$/ and do { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 			undef $feature; 
														 | 
														
														 | 
														
															 			undef $feature; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -70,6 +78,7 @@ sub parse_package_metadata($) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 			$pkg->{buildtypes} = []; 
														 | 
														
														 | 
														
															 			$pkg->{buildtypes} = []; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 			$pkg->{subdir} = $subdir; 
														 | 
														
														 | 
														
															 			$pkg->{subdir} = $subdir; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 			$pkg->{tristate} = 1; 
														 | 
														
														 | 
														
															 			$pkg->{tristate} = 1; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+			$pkg->{override} = $override; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 			$package{$1} = $pkg; 
														 | 
														
														 | 
														
															 			$package{$1} = $pkg; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 			push @{$srcpackage{$src}}, $pkg; 
														 | 
														
														 | 
														
															 			push @{$srcpackage{$src}}, $pkg; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 		}; 
														 | 
														
														 | 
														
															 		}; 
														 |