diff options
author | Tony Cook <tony@develop-help.com> | 2018-01-10 11:32:43 +1100 |
---|---|---|
committer | Tony Cook <tony@develop-help.com> | 2018-02-08 13:58:14 +1100 |
commit | c0e3b4b51cabf15ed8fc5f564dfeea31c25f5239 (patch) | |
tree | b7781d7bde6800522f3b4cf56ed46bd59fb6551d /win32/Makefile | |
parent | d6ecacbcfb0cb2280a237e991e0a57ff707e4e42 (diff) | |
download | perl-c0e3b4b51cabf15ed8fc5f564dfeea31c25f5239.tar.gz |
(perl #127743) re-work recursion limit handling
Previously this worked by calculating the limits and then rebuilding
Storable.so, this meant Storable.so was built twice meaning a new make
would then rebuild its dependencies.
This was also a hard limit, so if Storable's user knew the available
stack space changed they would need to rebuild Storable to adapt.
This also allows for successful static Storable builds.
I also updated the stacksize tool to prevent popping up segfault error
messages at the user on Win32.
Since I was still seeing test failures in recurse.t on a variety of
platforms, I made the default limit calculations even more
conservative.
Diffstat (limited to 'win32/Makefile')
-rw-r--r-- | win32/Makefile | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/win32/Makefile b/win32/Makefile index ff7c4e671a..3889ff9ec5 100644 --- a/win32/Makefile +++ b/win32/Makefile @@ -1225,13 +1225,12 @@ Extensions_clean: Extensions_realclean: -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --all --target=realclean -PostExt: rebuild_storable +PostExt: ..\lib\Storable\Limit.pm -rebuild_storable: $(PERLEXE) +..\lib\Storable\Limit.pm: $(PERLEXE) Extensions $(PERLEXE) -I..\lib -I. ..\dist\Storable\stacksize --core - cd ..\dist\Storable - $(MAKE) PERL_CORE=1 - cd ..\..\win32 + if not exist ..\lib\Storable mkdir ..\lib\Storable + copy ..\dist\Storable\lib\Storable\Limit.pm ..\lib\Storable\Limit.pm #------------------------------------------------------------------------------- @@ -1311,6 +1310,7 @@ distclean: realclean -del /f $(LIBDIR)\Time\HiRes.pm -del /f $(LIBDIR)\Unicode\Normalize.pm -del /f $(LIBDIR)\Math\BigInt\FastCalc.pm + -del /f $(LIBDIR)\Storable.pm $(LIBDIR)\Storable\Limit.pm -del /f $(LIBDIR)\Win32.pm -del /f $(LIBDIR)\Win32CORE.pm -del /f $(LIBDIR)\Win32API\File.pm |