Skip to content
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

Fix generation of "sombok" makefile #5

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

jkahrman
Copy link

Starting with ExtUtils-MakeMaker v7.35_05 (Perl 5.31.1 and later), makefiles generated for MSVC specify the path to the pdb file as the makefile 'stem' ($*) of the object file being compiled ('.o' extension is replaced with '.pdb'. (this allows parallel compilation). However, Unicode-LineBreak's "sombok" makefile generator incompletely rewrites the suffix rules generated by MakeMaker to attempt to account for the sombok library's code layout. This results in MSVC attempting to write to a non-existant path (cannot open program database '...\sombok\lib\lib\break.pdb').

Instead of attempting to write another substitution pattern for the new 'pdb' paths:

  1. remove the rewrites that changes directory and adjusts the paths to the files
  2. when calling the MM method that generates the suffix rules, temporarily force on a flag that causes the rules to include the compiler option that specifies the complete path to the object file.

This keeps the derived files in the expected locations.

https://rt.cpan.org/Ticket/Display.html?id=143360

Starting with ExtUtils-MakeMaker v7.35_05 (Perl 5.31.1 and later), makefiles generated for MSVC specify the path to the pdb file as the makefile 'stem' ($*) of the object file being compiled ('.o' extension is replaced with '.pdb'. (this allows parallel compilation). However, Unicode-LineBreak's "sombok" makefile generator incompletely rewrites the suffix rules generated by MakeMaker to attempt to account for the sombok library's code layout. This results in MSVC attempting to write to a non-existant path (cannot open program database '...\sombok\lib\lib\break.pdb').

Instead of attempting to write another substitution pattern for the new 'pdb' paths:
1. remove the rewrites that changes directory and adjusts the paths to the files
2. when calling the MM method that generates the suffix rules, temporarily force on a flag that causes the rules to include the compiler option that specifies the complete path to the object file.

This keeps the derived files in the expected locations.

https://rt.cpan.org/Ticket/Display.html?id=143360
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.

1 participant