* gcc -Wp,-MD no longer working in svn build
@ 2010-08-13 11:00 Anton Blanchard
2010-08-13 11:14 ` Joseph S. Myers
0 siblings, 1 reply; 5+ messages in thread
From: Anton Blanchard @ 2010-08-13 11:00 UTC (permalink / raw)
To: joseph; +Cc: gcc
Hi Joseph,
I hit the following problem when trying to build a ppc64 Linux kernel
from svn today:
# gcc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -o scripts/basic/fixdep scripts/basic/fixdep.c
cc1: error: unrecognized command line option â-MDâ
Backing this out fixed it:
| jsm28 | 2010-08-13 08:52:49 +1000 (Fri, 13 Aug 2010) | 11 lines
* gcc.c (cpp_unique_options): Generate -MDX and -MMDX from -MD and
-MMD.
c-family:
* c.opt (MD, MMD): Change to MDX and MMDX.
* c-opts.c (c_common_handle_option): Use OPT_MMD and OPT_MMDX.
fortran:
* lang.opt (MD, MMD): Change to MDX and MMDX.
* cpp.c (gfc_cpp_handle_option): Use OPT_MMD and OPT_MMDX.
Anton
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: gcc -Wp,-MD no longer working in svn build
2010-08-13 11:00 gcc -Wp,-MD no longer working in svn build Anton Blanchard
@ 2010-08-13 11:14 ` Joseph S. Myers
2010-08-13 11:46 ` Arnaud Charlet
0 siblings, 1 reply; 5+ messages in thread
From: Joseph S. Myers @ 2010-08-13 11:14 UTC (permalink / raw)
To: Anton Blanchard; +Cc: gcc
On Fri, 13 Aug 2010, Anton Blanchard wrote:
> Hi Joseph,
>
> I hit the following problem when trying to build a ppc64 Linux kernel
> from svn today:
>
> # gcc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -o scripts/basic/fixdep scripts/basic/fixdep.c
The options passed to internal binaries such as cc1 are not a documented
public interface to GCC, so if you pass such options via -Wp you must
expect to need to change your makefiles when the GCC-internal interfaces
change. Instead, you should use the various public interfaces documented
in cppopts.texi, which *are* stable interfaces. I think what you want
here is "-MD -MF scripts/basic/.fixdep.d" with no -Wp.
--
Joseph S. Myers
joseph@codesourcery.com
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: gcc -Wp,-MD no longer working in svn build
2010-08-13 11:14 ` Joseph S. Myers
@ 2010-08-13 11:46 ` Arnaud Charlet
2010-08-13 19:40 ` Joseph S. Myers
0 siblings, 1 reply; 5+ messages in thread
From: Arnaud Charlet @ 2010-08-13 11:46 UTC (permalink / raw)
To: Joseph S. Myers; +Cc: Anton Blanchard, gcc, Arnaud Charlet
> > I hit the following problem when trying to build a ppc64 Linux kernel
> > from svn today:
> >
> > # gcc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wmissing-prototypes
> > -Wstrict-prototypes -O2 -fomit-frame-pointer -o
> > scripts/basic/fixdep scripts/basic/fixdep.c
>
> The options passed to internal binaries such as cc1 are not a documented
> public interface to GCC, so if you pass such options via -Wp you must
> expect to need to change your makefiles when the GCC-internal interfaces
> change. Instead, you should use the various public interfaces documented
> in cppopts.texi, which *are* stable interfaces. I think what you want
> here is "-MD -MF scripts/basic/.fixdep.d" with no -Wp.
Well, I know of several projects that rely on -Wp,-MD or -Wp,-MMD, so this
change will certainly affect lots of people I suspect.
Can't we be friendlier to these projects and keep backward compatibility?
Arno
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: gcc -Wp,-MD no longer working in svn build
2010-08-13 11:46 ` Arnaud Charlet
@ 2010-08-13 19:40 ` Joseph S. Myers
2010-08-13 22:09 ` Arnaud Charlet
0 siblings, 1 reply; 5+ messages in thread
From: Joseph S. Myers @ 2010-08-13 19:40 UTC (permalink / raw)
To: Arnaud Charlet; +Cc: Anton Blanchard, gcc
On Fri, 13 Aug 2010, Arnaud Charlet wrote:
> > The options passed to internal binaries such as cc1 are not a documented
> > public interface to GCC, so if you pass such options via -Wp you must
> > expect to need to change your makefiles when the GCC-internal interfaces
> > change. Instead, you should use the various public interfaces documented
> > in cppopts.texi, which *are* stable interfaces. I think what you want
> > here is "-MD -MF scripts/basic/.fixdep.d" with no -Wp.
>
> Well, I know of several projects that rely on -Wp,-MD or -Wp,-MMD, so this
> change will certainly affect lots of people I suspect.
>
> Can't we be friendlier to these projects and keep backward compatibility?
Allowing the same option to behave differently in the driver and in cc1
regarding whether it takes operands seems like error-prone complexity;
every piece of code that now or in the future looks at CL_SEPARATE will
need also to check whether it is in the driver or in cc1. Why is this
code not using -MF?
--
Joseph S. Myers
joseph@codesourcery.com
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: gcc -Wp,-MD no longer working in svn build
2010-08-13 19:40 ` Joseph S. Myers
@ 2010-08-13 22:09 ` Arnaud Charlet
0 siblings, 0 replies; 5+ messages in thread
From: Arnaud Charlet @ 2010-08-13 22:09 UTC (permalink / raw)
To: Joseph S. Myers; +Cc: Anton Blanchard, gcc
> Allowing the same option to behave differently in the driver and in cc1
> regarding whether it takes operands seems like error-prone complexity;
> every piece of code that now or in the future looks at CL_SEPARATE will
> need also to check whether it is in the driver or in cc1. Why is this
> code not using -MF?
I don't know, was -MF always available, or was -Wp,-MD the
only available option at some point?
Arno
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2010-08-13 11:46 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-08-13 11:00 gcc -Wp,-MD no longer working in svn build Anton Blanchard
2010-08-13 11:14 ` Joseph S. Myers
2010-08-13 11:46 ` Arnaud Charlet
2010-08-13 19:40 ` Joseph S. Myers
2010-08-13 22:09 ` Arnaud Charlet
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).