Codechange: [MinGW] use pe-bigobj-x86-64 format for x64 debug builds #10142
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation / Problem
When trying to understand why #10001 compilation was failing for MinGW x64 debug builds, I compared
objdump -t network_command.cpp.obj
from master and #10001.I noticed a lot of negative section values in #10001, so I though maybe we have too many sections (even if the compiler doesn't complain about that). I then tried to enable pe-bigobj-x86-64 and that solved the issue for #10001.
Then I decided to test something and commented out the ASLR disabling, and #10001 still build fine.
So I tried the same on master, and it builds too.
So in the end it seems OpenTTD again managed to hit some compiler limits (remember the settings hell on macos).
Description
Add
-Wa,-mbig-obj
compile flag for MinGW x64 debug builds.As a side effect, ASLR disabling in link options is not needed anymore, and removed.
Limitations
Checklist for review
Some things are not automated, and forgotten often. This list is a reminder for the reviewers.