-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Don't parse gcc -v
/ gfortran -v
blindly
#2616
Comments
"without any attempt" seems a bit harsh, it just cannot distinguish parts it does not yet know. I did not notice this with earlier snapshots of gcc10 - could you provide a log that shows the problem ? |
What I meant by
is that the output of
You need
or in another word, run To see this happen more easily,
The easiest way to work around it for now is to just unset |
MAKEFLAGS as per posix is intended to change behaviour of |
Suspect this is in the context of a bigger build, have not tried yet but perhaps we can unset/unexport MAKEFLAGS from the toplevel Makefile to limit the "damage". |
But why - if a person intends to posixly change build behaviour they now cannot? |
The workaround I was talking about was to unset/set the env in the perl script. Messing with |
I'm not sure what you are trying to say here. FWIW, I never explicitly set the As a side note, passing the |
Easiest (if ugliest) fix seems to be to ignore any all-numeric "library names" when determining the linker options. |
f_check
andc_check
seems to parse the output ofgcc -v
/gfortran -v
without any attempt to distinguish different part of the output. This seems to be extremely fragile and can break whenever new outputs were added that just happens to look like a linker flag even if it might be flags for something else or completely unrelated strings.In particular, this cause a compile error under GCC 10 if running under a parallel make with job server and if the
-l
flag is in theMAKEFLAGS
. Sincegcc
is started byperl
and doesn't have the jobserver fd, GCC 10 correctly disabled job server support (after gcc-mirror/gcc@e006ead52305) which causes the newMAKEFLAGS
to be printed to the output when-v
is on. The make flag is then being blindly interpreted as a linker flag and cause an error in the link test!The text was updated successfully, but these errors were encountered: