BUG: Handle --f77flags and --f90flags for meson [wheel build]#26870
Merged
charris merged 1 commit intoJul 5, 2024
Conversation
Backport of numpy#26703, numpy#26706, and numpy#26812. Closes numpy#25784. Background and notes: - Although the CLI was passing `fc_flags` to the Meson backend they weren't being used - The behavior currently is to (redundantly) collect the unique set of flags passed via either `--f77flags` or `--f90flags` - They all map to `fortran_args` for the `meson.build` (`distutils` used to have separate handling for the two cases) - Eventually these should be merged into a single `--fflags` argument (basically since they're now redundant post-distutils) - This is likely only when we have 3.12 as the lowest supported version, since `distutils` will need to have both CLI options - The test is specially crafted to get an error without `-ffixed-form` but is otherwise junk - Adding a continuation character at the end of the line as well will both get `f2py` and `gfortran` to compile without `-ffixed-form` - Or putting the same code in a `.f` file, thereby signalling to F2PY that this is a Fortran 77 file It does make sense to handle `fortran_args` this way though, since it is more robust than setting `FFLAGS` (which anyway won't work due to a `meson` bug, mesonbuild/meson#13327). Squashed commit of the following: commit bbc198b48b79417f210bd38de6c60ab98d18857d Author: Rohit Goswami <rog32@hi.is> Date: Fri Jun 28 19:43:41 2024 +0200 CI,MAINT: Bump gfortran version [wheel build] Co-authored-by: ngoldbaum <ngoldbaum@users.noreply.github.com> commit fffa296b7a611de1ab25f85619e92e6d6c5185a4 Author: Rohit Goswami <rog32@hi.is> Date: Fri Jun 28 14:54:50 2024 +0200 CI,TST: Fix meson tests needing gfortran [wheel build] commit 807e898e80e544e720512f9feccc9c897cd55f08 Author: Rohit Goswami <rog32@hi.is> Date: Sun Jun 16 09:40:06 2024 +0000 TST: Skip an f2py module test on Windows commit cbcb6c2c4340f5bbca46e2c6d8474bbed7d90664 Author: Rohit Goswami <rog32@hi.is> Date: Sun Jun 16 04:06:16 2024 +0000 MAINT: Be more robust wrt f2py flags commit 09e3eb004b0e076271817384a92d489b3b0cc0eb Author: Rohit Goswami <rog32@hi.is> Date: Sun Jun 16 03:44:17 2024 +0000 TST: Add one for passing arguments to f2py Co-authored-by: warrickball <warrickball@users.noreply.github.com> commit 04d53b44b75537fc5b411cf9e54c2f169198419f Author: Rohit Goswami <rog32@hi.is> Date: Sun Jun 16 00:14:54 2024 +0000 BUG: Use fortran args from f2py in meson commit 6f736b0cbe977ba9270c45f7cc22b7ae8ce06ed2 Author: Rohit Goswami <rog32@hi.is> Date: Sat Jun 15 23:36:55 2024 +0000 MAINT,BUG: Correctly skip distutils options
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Backport of #26703, #26706, and #26812.
Closes #25784. Background and notes:
fc_flagsto the Meson backend they weren't being used--f77flagsor--f90flagsfortran_argsfor themeson.build(distutilsused to have separate handling for the two cases)--fflagsargument (basically since they're now redundant post-distutils)distutilswill need to have both CLI options-ffixed-formbut is otherwise junkf2pyandgfortranto compile without-ffixed-form.ffile, thereby signalling to F2PY that this is a Fortran 77 fileIt does make sense to handle
fortran_argsthis way though, since it is more robust than settingFFLAGS(which anyway won't work due to amesonbug, mesonbuild/meson#13327).Squashed commit of the following:
commit bbc198b48b79417f210bd38de6c60ab98d18857d
Author: Rohit Goswami rog32@hi.is
Date: Fri Jun 28 19:43:41 2024 +0200
commit fffa296b7a611de1ab25f85619e92e6d6c5185a4
Author: Rohit Goswami rog32@hi.is
Date: Fri Jun 28 14:54:50 2024 +0200
commit 807e898e80e544e720512f9feccc9c897cd55f08
Author: Rohit Goswami rog32@hi.is
Date: Sun Jun 16 09:40:06 2024 +0000
commit cbcb6c2c4340f5bbca46e2c6d8474bbed7d90664
Author: Rohit Goswami rog32@hi.is
Date: Sun Jun 16 04:06:16 2024 +0000
commit 09e3eb004b0e076271817384a92d489b3b0cc0eb
Author: Rohit Goswami rog32@hi.is
Date: Sun Jun 16 03:44:17 2024 +0000
commit 04d53b44b75537fc5b411cf9e54c2f169198419f
Author: Rohit Goswami rog32@hi.is
Date: Sun Jun 16 00:14:54 2024 +0000
commit 6f736b0cbe977ba9270c45f7cc22b7ae8ce06ed2
Author: Rohit Goswami rog32@hi.is
Date: Sat Jun 15 23:36:55 2024 +0000