Skip to content

Strawberry perl 5.40.2.1, 5.38.4.1, 5.34.3.1 #233

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 34 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
1e1ed54
Config files for strawberry perl 5.40.1
shawnlaffan Jan 22, 2025
0afab71
Provide GNUMakefile for 5.40.1
shawnlaffan Jan 22, 2025
a7a163c
Makefile for 5.40.1 - revert optimisation change
shawnlaffan Jan 22, 2025
3fab675
5.40.1 config: use libxml2-2.12.9
shawnlaffan Jan 22, 2025
2442485
5.40.1: disable Imager-File-TIFF for now
shawnlaffan Jan 22, 2025
43fdf3d
5.40.1 config: install newly non-core PDL modules
shawnlaffan Jan 22, 2025
cc5cf66
Override optimize flag in Config_heavy.pl
shawnlaffan Jan 23, 2025
c197254
Fix libwebp download link
shawnlaffan Jan 23, 2025
2afa323
Simplify optimize override
shawnlaffan Jan 23, 2025
45c9fc9
Cpan upgrade step: install to vendor
shawnlaffan Jan 23, 2025
27249cd
5.40.1 config: Rearrange PDL deps, reinstate PDL::IO::GD
shawnlaffan Jan 23, 2025
d0774de
Use config args to control optimization flags
shawnlaffan Jan 30, 2025
56d14cc
5.40.1.1 config: set optimize flags
shawnlaffan Jan 30, 2025
bc538b0
Add config_heavy entry for perl_optimize_core
shawnlaffan Jan 31, 2025
0f62eab
5.40.1.1: skip specific PDL tests
shawnlaffan Jan 31, 2025
e202d33
Support suffix arg in CreateReleaseNotes step
shawnlaffan Jan 31, 2025
a62268e
5.40.1.1 config: Create PDL edition distribution list and release notes
shawnlaffan Jan 31, 2025
7e2a47f
Configs for 5.38.3.1
shawnlaffan Feb 4, 2025
907ca35
Config and script for 5.34.3.1 beta
shawnlaffan Feb 5, 2025
748e485
5.34.3.1 config: add step to create JSON snippet
shawnlaffan Feb 5, 2025
2795459
prefix the optimize_core_build config entry with "my_"
shawnlaffan Feb 5, 2025
3b23f8c
build script for 5.34.3.1
shawnlaffan Mar 2, 2025
c989f1c
5.34.3.1: disable Spreadsheet::ParseXLSX
shawnlaffan Mar 3, 2025
753429e
Add patches for #240
shawnlaffan Apr 22, 2025
b10bde1
Upgrade step: install to perl
shawnlaffan Apr 22, 2025
3cd5534
Rename 5.40.1 config files for 5.40.2
shawnlaffan Apr 22, 2025
24d6bd9
Use libxml 2.12.10, disable some modules
shawnlaffan Apr 23, 2025
59fc253
5.40.2 beta 2 build script
shawnlaffan May 2, 2025
ba6b24a
re-enable several modules
shawnlaffan May 2, 2025
a89e3f5
SP 5.40.2.1
shawnlaffan May 11, 2025
13a23ba
5.40.2.1: re-enable CryptX
shawnlaffan May 14, 2025
1d9f293
5.38.4.1 files
shawnlaffan May 15, 2025
45043bc
Modified perl-23179 patch for 5.38.4
shawnlaffan May 16, 2025
e5bc4e6
rename older build scripts
shawnlaffan May 17, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions devel.utils/_build-5.38.4.1_local_mscvrt.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
::@cls
::call ..\build.bat test

::set PERL_USE_UNSAFE_INC=1

subst Z: C:\shawn\sp_repos

set SP=c:\perls\5.38.2.2_PDL
set PATH=%SP%\c\bin;%SP%\perl\bin;%SP%\perl\site\bin;Z:\sw\wix311;Z:\winlibs\bin;%PATH%
set PERLEXE=%SP%\perl\bin\perl

:: update blib - requires Build.PL to have been run
call ..\build.bat test

::set MAKEFLAGS=-j12
set TEST_JOBS=8

:: tests take a long time
set TEST_CORE=-test_core
#set TEST_CORE=-notest_core

::set SKIP_MSI_STEP=1
::set SKIP_PDL_STEP=1
%PERLEXE% -Mblib ..\script\perldist_strawberry -job ..\share\64bit-5.38.4.1.pp %TEST_CORE% -beta=2 -interactive -restorepoints -wixbin_dir=z:\sw\wix311 -cpan_url https://cpan.metacpan.org


26 changes: 26 additions & 0 deletions devel.utils/_build-5.40.2_local_ucrt.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
::@cls
::call ..\build.bat test

::set PERL_USE_UNSAFE_INC=1

subst Z: C:\shawn\sp_repos

set SP=c:\perls\5.38.2.2_PDL
set PATH=%SP%\c\bin;%SP%\perl\bin;%SP%\perl\site\bin;Z:\sw\wix311;Z:\winlibs\bin;%PATH%
set PERLEXE=%SP%\perl\bin\perl

:: update blib - requires Build.PL to have been run
call ..\build.bat test

::set MAKEFLAGS=-j12
set TEST_JOBS=8

:: tests take a long time
set TEST_CORE=-test_core
#set TEST_CORE=-notest_core

::set SKIP_MSI_STEP=1
::set SKIP_PDL_STEP=1
%PERLEXE% -Mblib ..\script\perldist_strawberry -job ..\share\64bit-5.40.2.1.pp %TEST_CORE% -beta=0 -interactive -restorepoints -wixbin_dir=z:\sw\wix311 -cpan_url https://cpan.metacpan.org


26 changes: 26 additions & 0 deletions devel.utils/build-5.34.3.1_local.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
::@cls
::call ..\build.bat test

::set PERL_USE_UNSAFE_INC=1

subst Z: C:\shawn\sp_repos

set SP=c:\perls\5.38.2.2_PDL
set PATH=%SP%\c\bin;%SP%\perl\bin;%SP%\perl\site\bin;Z:\sw\wix311;Z:\winlibs\bin;%PATH%
set PERLEXE=%SP%\perl\bin\perl

:: update blib - requires Build.PL to have been run
call ..\build.bat test

:: set MAKEFLAGS=-j20
:: set TEST_JOBS=8

:: tests take a long time
set TEST_CORE=-test_core
set TEST_CORE=-notest_core

::set SKIP_MSI_STEP=1
::set SKIP_PDL_STEP=1
%PERLEXE% -Mblib ..\script\perldist_strawberry -job ..\share\64bit-5.34.3.1.pp %TEST_CORE% -beta=0 -interactive -restorepoints -wixbin_dir=z:\sw\wix311 -cpan_url https://cpan.metacpan.org


File renamed without changes.
File renamed without changes.
26 changes: 26 additions & 0 deletions devel.utils/build-5.38.3.1_local_ucrt.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
::@cls
::call ..\build.bat test

::set PERL_USE_UNSAFE_INC=1

subst Z: C:\shawn\sp_repos

set SP=c:\perls\5.38.2.2_PDL
set PATH=%SP%\c\bin;%SP%\perl\bin;%SP%\perl\site\bin;Z:\sw\wix311;Z:\winlibs\bin;%PATH%
set PERLEXE=%SP%\perl\bin\perl

:: update blib - requires Build.PL to have been run
call ..\build.bat test

set MAKEFLAGS=-j20
set TEST_JOBS=8

:: tests take a long time
set TEST_CORE=-test_core
::set TEST_CORE=-notest_core

::set SKIP_MSI_STEP=1
::set SKIP_PDL_STEP=1
%PERLEXE% -Mblib ..\script\perldist_strawberry -job ..\share\64bit-5.38.3.1.pp %TEST_CORE% -beta=0 -interactive -restorepoints -wixbin_dir=z:\sw\wix311 -cpan_url https://cpan.metacpan.org


File renamed without changes.
File renamed without changes.
7 changes: 6 additions & 1 deletion lib/Perl/Dist/Strawberry/Step/CreateReleaseNotes.pm
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,13 @@ sub run {
my $self = shift;

$self->boss->message(2, "Creating Release Notes");

my $suffix = $self->{config}->{suffix} // '';
if ($suffix) {
$self->boss->message(2, "Appending suffix ${suffix}");
}

my $html_file = catfile($self->global->{output_dir}, $self->global->{output_basename} .".html");
my $html_file = catfile($self->global->{output_dir}, $self->global->{output_basename} . $suffix . ".html");
my $tt_file = catfile($self->global->{dist_sharedir}, qw/extra-files release_notes.html.tt/);

# get release date
Expand Down
31 changes: 31 additions & 0 deletions lib/Perl/Dist/Strawberry/Step/InstallPerlCore.pm
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,11 @@ sub run {
my $u64 = defined $self->global->{perl_64bitint} ? $self->global->{perl_64bitint} : ($self->{config}->{perl_64bitint} // $self->{config}->{use_64_bit_int} // 0);
# XXX use_64_bit_int is for backwards compatibility

# Optionally override the default optimization settings.
# This hack is needed as some perls need -Os to build but then modules need -O2.
my $optimize_core = $self->global->{optimize_core} // $self->{config}->{optimize_core};
my $optimize_cpan = $self->global->{optimize_cpan} // $self->{config}->{optimize_cpan};

# Build win32 perl
SCOPE: {
my $wd = $self->_push_dir( $unpack_to, $perlsrc, 'win32' );
Expand Down Expand Up @@ -160,6 +165,10 @@ sub run {
$new_env->{PROCESSOR_ARCHITECTURE} = 'x86';
push @make_args, 'WIN64=undef';
}
if ($optimize_core) {
push @make_args, "OPTIMIZE=${optimize_core}";
$self->boss->message(3, "Building core using OPTIMIZE=${optimize_core}");
}

my $maketool = $self->global->{maketool} || 'dmake';
#create debuging build scripts in 'win32' subdir
Expand Down Expand Up @@ -256,6 +265,28 @@ sub run {

die "FATAL: perl.exe not properly installed" unless -f catfile($image_dir, qw/perl bin perl.exe/);

if ($optimize_cpan) {
my $config_heavy = catfile($image_dir, qw/perl lib Config_heavy.pl/);
if (-e $config_heavy) { # it should always be there
$self->boss->message(3, "Updating optimize settings in Config_heavy.pl");
#use File::Copy qw /copy/;
#my $bk = "${config_heavy}.orig";
#copy $config_heavy, $bk; # directory rw probs - disable for now
local $/ = undef;
open my $fh, $config_heavy or die "Unable to open $config_heavy for reading, $?";
my $data = <$fh>;
$fh->close;
# now update the file
$data =~ s/^optimize=(.+)$/my_optimize_core_build=$1\noptimize='$optimize_cpan'/m;
my $ro_flag = $self->_unset_ro($config_heavy);
open my $ofh, '>', $config_heavy or die "Unable to open $config_heavy for writing, $?";
print {$ofh} $data;
$ofh->close;
$self->_restore_ro($config_heavy, $ro_flag);
#$self->_restore_ro($bk, $ro_flag);
}
};

# Create some missing directories
my @d = ( catdir($image_dir, qw/perl vendor lib/),
catdir($image_dir, qw/perl site bin/),
Expand Down
2 changes: 1 addition & 1 deletion share/64bit-5.32.1.1.pp
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@
'<dist_sharedir>/perl-5.32/win32_config.gc.tt' => 'win32/config.gc',
'<dist_sharedir>/perl-5.32/perlexe.rc.tt' => 'win32/perlexe.rc',
'<dist_sharedir>/perl-5.32/win32_config_H.gc' => 'win32/config_H.gc', # enables gdbm/ndbm/odbm
'<dist_sharedir>/perl-5.32/win32_FindExt.pm' => 'win32/FindExt.pm',
'<dist_sharedir>/perl-5.32/win32_FindExt.pm' => 'win32/FindExt.pm', # needed?
},
license => { #SRC paths are relative to the perl src root
'Readme' => '<image_dir>/licenses/perl/Readme',
Expand Down
Loading