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

Remove extra interpretations to fflags #28

Merged
merged 1 commit into from
Mar 8, 2019

Conversation

mwtoews
Copy link
Contributor

@mwtoews mwtoews commented Mar 8, 2019

Flags should be passed as expected by the compiler. Currently, pymake's checking/adding '-' to each fflag token is problematic for (e.g.) Intel, which can have flags with spaces like -warn unused. Also, compiler flags are always case-sensitive, so there's no need to do .upper() on these. (Also, these spaces need to be split in cmdlist to work correctly with Popen, which is done here too.)

This is a minor breaking change, in that external tools that use pymake will need to ensure the fflags have dashes, where they would normally be expected by the compiler.

There are many other changes included here (got carried away):

  • fflags can either be a str '-flag1 -flag two' or list ['-flag1', '-flag two']
  • Correct ifort -double_size to -double-size, and /real_size to /real-size
  • Use more descriptive -real-size 64 instead of -r8 (does same thing)
  • Decode messages for Python 3
  • Simplify flag_available(); document some limitations in docstring
  • Use Windows flags as documented (usually /flag:1 rather than -flag 1)

These should now be expected as if passed to the compiler.

Also:
 - fflags can also be a list of flags
 - corrections to ifort '-double-size'
 - decode messages for Python 3
 - simplify flag_available(); document limitations at top
 - use Windows flags as documented (usually /flag rather than -flag)
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.

2 participants