Re: OCaml / aarch64 / binutils / coq mess

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 29 Aug 2017 14:51:49 +0100
"Richard W.M. Jones" <rjones@xxxxxxxxxx> wrote:

> OCaml 4.05 was added to Fedora 27+ recently.  Unfortunately, on
> aarch64 only, it interacts badly with a change made in binutils 2.29
> which tightens up the rules on relocations for PC-relative addresses.
> More details:
> 
>   https://caml.inria.fr/mantis/view.php?id=7585            detailed discussion
>   https://github.com/ocaml/ocaml/pull/1268                 partial solution
>   https://sourceware.org/ml/binutils/2017-06/msg00171.html binutils change
> 
> This only affects dynamic loading of OCaml modules on aarch64, and in
> particular it only affects the Coq theorem prover.  This package has a
> number of dependencies, so it affects several other packages too.  I
> believe the complete list is:
> 
>   - coq           Theorem prover
>   - frama-c       Framework for source code analysis of C software
>   - gappalib-coq  Coq support library for gappa
>   - why           Software verification platform
> 
> I tried very hard to modify the OCaml aarch64 code generator to make
> this work, but it seems as if the OCaml front end compiler doesn't
> provide enough information for us to know if a particular symbol will
> be used outside a module (it just assumes that all non-private symbols
> can be used this way).  Or something.  Anyway I couldn't work out how
> to fix it.
> 
> So ...  I don't know what to do here, but I guess possible options
> include:
> 
> (1) Continue having broken dependencies for the affected packages on
> aarch64 for a bit and see if upstream come up with anything.

I would lean to that "solution"

> 
> (2) ‘ExcludeArch: aarch64’ on coq and its dependencies.  We would of
> course file the relavent ExcludeArch bugs.  The thing that stops me
> doing this is that we're nowhere nearer to having a fix, so it just
> punts the problem, plus aarch64 is an important target and Coq is an
> important package.
> 
> (3) Disable the problematic coq modules.  I'm not clear if they are
> necessary however, since I've only used Coq as an end user, I've never
> delved into how it works.
> 
> (4) Back out the binutils change?  I guess it was made for good
> reasons even though it breaks everything.  Also it would be a
> downstream change which is bad for Fedora, and we'd probably need to
> mass-rebuild everything which is even worse.
> 
> (5) Your Plan Here.

I would file a bug against binutils to get attention from the
maintainer (nickc), not sure he is monitoring this list.


		Dan

> 
> Suggestions?
> 
> Rich.
> 
> -- 
> Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
> Read my programming and virtualization blog: http://rwmj.wordpress.com
> Fedora Windows cross-compiler. Compile Windows programs, test, and
> build Windows installers. Over 100 libraries supported.
> http://fedoraproject.org/wiki/MinGW
> _______________________________________________
> devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
> To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux