This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH][RevisedX3] PR43715 - Fix --enable-plugin on darwin


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Jack Howarth wrote:
> Nathanael,
>   Can I get a review on the patch...
> 
> http://gcc.gnu.org/ml/gcc-patches/2010-04/msg00610.html
> 
> to fix --enable-plugin for darwin. We don't have access
> to objdump and have to have the option to use nm for
> the exported symbol check instead for the --enable-plugin
> option to work. The above patch has been regression tested
> on x86_64 darwin10 and x86_64 Fedora 10.
But not on a cross-compile?  Hint: if you're screwing around with
configury, the easiest thing to break is build != host, and the
second-easiest thing to break is host != target.

> There also is
> a copy for gcc-4_5-branch (which has context differences
> in the patch)...

I've been way out of touch with GCC configury for a long time (other
parts of my life have been taking a huge amount of time for years), and
so I don't really understand the plugins architecture, so I'm not
totally on top of this.

But I do have an immediate question (so I can't approve this right now).

Which objdump are we talking about? -- the one running on the build
machine for the host machine, the one running on the host machine during
normal operation dealing with files for the target machine, or the one
running on the build machine dealing with files for the target machine?

I think you may be using the wrong one.  The patch doesn't look like it
works right for all Canadian cross-compile scenarios.

Of course, it also appears to me that the entire plugin architecture
would fail to configure correctly on all build != host scenarios, and
all build != target scenarios.  It seems to be using $gcc_cv_objdump
(which is OBJDUMP_FOR_TARGET) when it really wants to be testing the
features of the *host* objdump part of the time, and the build->host
objdump the rest of the time.

I wonder how the plugins patch got approved in the first place.  In
which case this isn't really your responsibility, but it would be much
better if something reasonable were done in this case.

Hence the Cc:s.  Alex, Paulo, DJ?  I'm kinda not up to fixing this
complex a cross-compilation error right now.

If this patch were properly tested on:
(1) A cross-built native (built on Linux, host=Darwin)
(2) A simple cross from Darwin to Linux (build=host=Darwin, target=Linux)

Then I'd feel able to approve it.  Given the nature of crosses, it will
probably be less work to simply work the logic out and implement
something I can approve based on how it appears to behave, than to
actually test it!

> 
> http://gcc.gnu.org/ml/gcc-patches/2010-04/msg00545.html
> 
> Thanks in advance for any helping in getting a review.
>         Jack
> 

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAkv2DgMACgkQRGZ0aC4lkIJIWwCdEOvAjZ9grymaCejSfagXVpwd
PYoAn2PV6YM7kbh8yrY3BzkgDOADPxcK
=98WZ
-----END PGP SIGNATURE-----


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]