Skip to content

allow building with high-water mark to be independent of -DDEBUGGING #22131

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

Merged
merged 1 commit into from
Apr 14, 2024

Conversation

tonycoz
Copy link
Contributor

@tonycoz tonycoz commented Apr 9, 2024

This allows a debugging perl to be built with the high water mark checks disabled, or a non-debugging perl to be built with the high water marks enabled.

This should allow Debian, the reporter for #16607 to build both their normal perl and debugperl with the same state of high water mark checks and avoid the mismatch between a debugperl and non-debug dynamic extension.

Fixes #16607

Ideally Debian (@ntyni ?) would check this does what they need.

This allows a debugging perl to be built with the high water mark
checks disabled, or a non-debugging perl to be built with the
high water marks enabled.

This should allow Debian, the reporter for Perl#16607 to build both their
normal perl and debugperl with the same state of high water mark
checks and avoid the mismatch between a debugperl and non-debug
dynamic extension.

Fixes Perl#16607
@ntyni
Copy link
Contributor

ntyni commented Apr 13, 2024

Hi, I can confirm that this should solve our use case in #16607. We are currently patching the HWM checks away, and this would allow us to drop the patch and build our debugperl with -DPERL_NO_HWM to get the same effect (= allow it to load XS modules built with the normal non-DEBUGGING perl.)

I tested the combinations and they worked as I expected: XS modules installed from CPAN with a default non-DEBUGGING perl

  • did not work with a default DEBUGGING perl (no change)
  • worked with a DEBUGGING -DPERL_NO_HWM perl
  • did not work with a non-DEBUGGING -DPERL_USE_HWM perl

The tests I used were from #16607:

perl -MDateTime -e 'print DateTime->today'

printf '<AAA>\n<DDD/><CCC><DDD>\n</DDD></CCC>\n</AAA>' | perl -MXML​::LibXML -e 'XML​::LibXML->new->parse_fh(*STDIN)->documentElement->childNodes; '

Many thanks for your work on this!

@tonycoz tonycoz merged commit a742fa0 into Perl:blead Apr 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

stack checks make -DDEBUGGING builds incompatible with normal ones
3 participants