Skip to content

Commit c62d744

Browse files
committed
make apperlm list more sane, remove unmaintained configs
1 parent d3991a8 commit c62d744

File tree

1 file changed

+35
-15
lines changed

1 file changed

+35
-15
lines changed

lib/Perl/Dist/APPerl.pm

+35-15
Original file line numberDiff line numberDiff line change
@@ -722,14 +722,14 @@ my %defconfig = (
722722
dest => 'perl-small.com',
723723
install_modules => [],
724724
},
725-
# development configs
726-
'dbg' => { base => 'full', perl_extra_flags => ['-Doptimize=-g3 -gdwarf-4', '-de']},
727-
dontuse_threads => {
728-
desc => "not recommended, threaded build is buggy",
729-
base => 'full',
730-
perl_extra_flags => ['-Doptimize=-Os', '-Dusethreads', '-de'],
731-
perl_id => 'cosmo-apperl'
725+
'nobuild' => {
726+
desc => 'base nobuild config',
727+
dest => 'perl-nobuild.com',
728+
MANIFEST => ['lib', 'bin'],
729+
zip_extra_files => {},
730+
nobuild_perl_bin => ['src/perl.com', $^X],
732731
},
732+
# development configs
733733
perl_cosmo_dev => {
734734
desc => "For developing cosmo platform perl without apperl additions",
735735
base => 'full',
@@ -853,11 +853,22 @@ sub InstallBuildDeps {
853853

854854
sub _remove_arr_items_from_arr {
855855
my ($src, $toremove) = @_;
856-
foreach my $item (@{$toremove}) {
857-
my $index = 0;
858-
$index++ until $src->[$index] eq $item;
859-
splice(@$src, $index, 1);
856+
my @remove = @{$toremove};
857+
foreach my $srcindex (reverse 0..$#{$src}) {
858+
for my $removeindex (reverse 0..$#remove) {
859+
if ($src->[$srcindex] eq $remove[$removeindex]) {
860+
splice(@$src, $srcindex, 1);
861+
return if (scalar(@remove) == 1);
862+
splice(@remove, $removeindex, 1);
863+
last;
864+
}
865+
}
860866
}
867+
#foreach my $item (@{$toremove}) {
868+
# my $index = 0;
869+
# $index++ until $src->[$index] eq $item;
870+
# splice(@$src, $index, 1);
871+
#}
861872
}
862873

863874
sub Status {
@@ -880,22 +891,31 @@ sub Status {
880891
my $projectconfig = _load_json(PROJECT_FILE);
881892
if($projectconfig && exists $projectconfig->{apperl_configs}) {
882893
@projectitems = sort (keys %{$projectconfig->{apperl_configs}});
894+
_remove_arr_items_from_arr(\@configlist, \@projectitems);
883895
}
884-
my @stable = grep( /v\d+\.\d+\.\d+(\-vista)?$/, @configlist);
885-
my @rolling = ('full', 'full-vista', 'small', 'small-vista');
886-
my @internal = ('dontuse_threads', 'perl_cosmo_dev', 'perl_apperl_dev', 'dbg');
896+
my @nobuild = grep(/nobuild/, @configlist);
897+
_remove_arr_items_from_arr(\@configlist, \@nobuild);
898+
my @stable = grep( /v\d+\.\d+\.\d+$/, @configlist);
899+
_remove_arr_items_from_arr(\@configlist, \@stable);
900+
my @rolling = grep(/^(full|small)$/, @configlist);
901+
_remove_arr_items_from_arr(\@configlist, \@rolling);
902+
my @deprecated = grep(/\-vista$/, @configlist);
903+
_remove_arr_items_from_arr(\@configlist, \@deprecated);
904+
my @internal = grep(/^(dontuse_threads|perl_cosmo_dev|perl_apperl_dev|dbg)$/, @configlist);
905+
_remove_arr_items_from_arr(\@configlist, \@internal);
887906
my @categories = (
888907
['PROJECT', \@projectitems],
889908
['STABLE', \@stable],
890909
['ROLLING', \@rolling],
910+
['NOBUILD', \@nobuild],
911+
['DEPRECATED', \@deprecated],
891912
['UNSTABLE/INTERNAL', \@internal],
892913
['UNKNOWN', \@configlist]
893914
);
894915
foreach my $cat (@categories) {
895916
foreach my $item (@{$cat->[1]}) {
896917
print (sprintf "%s %-30.30s | %-17.17s |%s\n", $CurAPPerlName && ($item eq $CurAPPerlName) ? '*' : ' ', $item, $cat->[0], ($Configs->{apperl_configs}{$item}{desc} // ''));
897918
}
898-
_remove_arr_items_from_arr(\@configlist, \@{$cat->[1]});
899919
}
900920
}
901921

0 commit comments

Comments
 (0)