@@ -649,7 +649,7 @@ my %defconfig = (
649
649
nobuild_perl_bin => [' src/perl.com' , $^X],
650
650
},
651
651
' v5.36.0-full-v0.1.0' => {
652
- desc => ' Full perl v5.36.0' ,
652
+ desc => ' Full perl v5.36.0 built with Cosmopolitan Libc 2.1.1 ' ,
653
653
perl_id => ' cosmo-apperl' ,
654
654
cosmo_id => ' 38df0a41866eda5a763730d56f2733a319b78afa' ,
655
655
cosmo_mode => ' ' ,
@@ -663,13 +663,13 @@ my %defconfig = (
663
663
zip_extra_files => {},
664
664
},
665
665
' v5.36.0-full-v0.1.0-vista' => {
666
- desc => ' Full perl v5.36.0, but with non-standard cosmopolitan libc that still supports vista' ,
666
+ desc => ' Full perl v5.36.0, but with non-standard Cosmopolitan Libc that still supports vista' ,
667
667
base => ' v5.36.0-full-v0.1.0' ,
668
- cosmo_id => ' f4ff1729d145b2e404b9aa6cc98a623d7740d6b3 ' ,
668
+ cosmo_id => ' 9c5a7795add7add5a214afce27d896084e0861c5 ' ,
669
669
dest => ' perl-vista.com' ,
670
670
},
671
671
' v5.36.0-small-v0.1.0' => {
672
- desc => ' small perl v5.36.0' ,
672
+ desc => ' small perl v5.36.0 built with Cosmopolitan Libc 2.1.1 ' ,
673
673
base => ' v5.36.0-full-v0.1.0' ,
674
674
perl_onlyextensions => [qw( Cwd Fcntl File/Glob Hash/Util IO List/Util POSIX Socket attributes re) ],
675
675
perl_extra_flags => [' -Doptimize=-Os' , ' -de' ],
@@ -678,9 +678,9 @@ my %defconfig = (
678
678
dest => ' perl-small.com' ,
679
679
},
680
680
' v5.36.0-small-v0.1.0-vista' => {
681
- desc => ' small perl v5.36.0, but with non-standard cosmopolitan libc that still supports vista' ,
681
+ desc => ' small perl v5.36.0, but with non-standard Cosmopolitan Libc that still supports vista' ,
682
682
base => ' v5.36.0-small-v0.1.0' ,
683
- cosmo_id => ' f4ff1729d145b2e404b9aa6cc98a623d7740d6b3 ' ,
683
+ cosmo_id => ' 9c5a7795add7add5a214afce27d896084e0861c5 ' ,
684
684
dest => ' perl-small-vista.com' ,
685
685
},
686
686
' full' => { desc => ' moving target: full' , base => ' v5.36.0-full-v0.1.0' },
@@ -702,7 +702,7 @@ my %defconfig = (
702
702
perl_cosmo_dev_on_vista => {
703
703
desc => " For developing cosmo platform perl without apperl additions on vista" ,
704
704
base => " perl_cosmo_dev" ,
705
- cosmo_id => ' f4ff1729d145b2e404b9aa6cc98a623d7740d6b3 ' ,
705
+ cosmo_id => ' 9c5a7795add7add5a214afce27d896084e0861c5 ' ,
706
706
},
707
707
}
708
708
);
@@ -799,6 +799,15 @@ sub InstallBuildDeps {
799
799
print " apperlm install-build-deps: wrote site config to " .SITE_CONFIG_FILE." \n " ;
800
800
}
801
801
802
+ sub _remove_arr_items_from_arr {
803
+ my ($src , $toremove ) = @_ ;
804
+ foreach my $item (@{$toremove }) {
805
+ my $index = 0;
806
+ $index ++ until $src -> [$index ] eq $item ;
807
+ splice (@$src , $index , 1);
808
+ }
809
+ }
810
+
802
811
sub Status {
803
812
my $Configs = _load_apperl_configs();
804
813
my @configlist = sort (keys %{$Configs -> {apperl_configs }});
@@ -814,8 +823,27 @@ sub Status {
814
823
$CurAPPerlName = $Configs -> {' defaultconfig' };
815
824
exists $Configs -> {apperl_configs }{$CurAPPerlName } or die (" non-existent default apperl config $CurAPPerlName " );
816
825
}
817
- foreach my $item (@configlist ) {
818
- print (sprintf " %s %-30.30s | %s \n " , $CurAPPerlName && ($item eq $CurAPPerlName ) ? ' *' : ' ' , $item , ($Configs -> {apperl_configs }{$item }{desc } // ' ' ));
826
+
827
+ my @projectitems ;
828
+ my $projectconfig = _load_json(PROJECT_FILE);
829
+ if ($projectconfig && exists $projectconfig -> {apperl_configs }) {
830
+ @projectitems = sort (keys %{$projectconfig -> {apperl_configs }});
831
+ }
832
+ my @stable = grep ( / v\d +\.\d +\.\d +(\- vista)?$ / , @configlist );
833
+ my @rolling = (' full' , ' full-vista' , ' small' , ' small-vista' );
834
+ my @internal = (' dontuse_threads' , ' perl_cosmo_dev' , ' perl_cosmo_dev_on_vista' );
835
+ my @categories = (
836
+ [' PROJECT' , \@projectitems ],
837
+ [' STABLE' , \@stable ],
838
+ [' ROLLING' , \@rolling ],
839
+ [' UNSTABLE/INTERNAL' , \@internal ],
840
+ [' UNKNOWN' , \@configlist ]
841
+ );
842
+ foreach my $cat (@categories ) {
843
+ foreach my $item (@{$cat -> [1]}) {
844
+ print (sprintf " %s %-30.30s | %-17.17s |%s \n " , $CurAPPerlName && ($item eq $CurAPPerlName ) ? ' *' : ' ' , $item , $cat -> [0], ($Configs -> {apperl_configs }{$item }{desc } // ' ' ));
845
+ }
846
+ _remove_arr_items_from_arr(\@configlist , \@{$cat -> [1]});
819
847
}
820
848
}
821
849
@@ -1386,7 +1414,7 @@ and building APPerl.
1386
1414
=item *
1387
1415
1388
1416
C<apperlm install-build-deps > installs APPerl build dependencies,
1389
- currently, a fork of the perl5 source and the cosmopolitan libc . This
1417
+ currently, a fork of the perl5 source and the Cosmopolitan Libc . This
1390
1418
is only necessary if you are building APPerl from scratch (not using a
1391
1419
nobuild configuration). Initialization of the repos can be skipped by
1392
1420
passing the path to them locally. The cosmopolitan repo
0 commit comments