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

Re: (maybe) libffi problem for armhf - help needed!



On Wed, Mar 28, 2012 at 05:19:54PM +0100, Steve McIntyre wrote:
> Hey folks,
> 
> I should have sent this out earlier, but vacation and other stuff
> interrupted... :-(
> 
> I had a chat a couple of weeks ago with Marcus Shawcroft, one of the
> toolchain experts at ARM, and he's worried that programs/libraries
> using libffi on armhf are going to have problems. libffi didn't really
> support variadic functions until recently, and the armhf ABI is
> *interesting* in this area. See [1] for an ffi mailing list post with
> more information, dating back to last year. This is the first time
> I've really been aware of this as an issue, and it could mean we need
> to work on things quickly. There's a link in that mail to a Linaro
> wiki page listing packages that use libffi5 [1]. Looking at the
> current state in unstable, I see:

That certainly is an interesting problem.  Makes me wonder how other
architectures pass floating point to variadic functions.  Never thought
about it before.

> tack:~$ apt-cache rdepends libffi5 | grep '^  ' | wc -l
> 586
> tack:~$ apt-cache rdepends libffi5 | grep '^  ' | grep -e ghc -e haskell | wc -l
> 444
> 
> which means that there's a lot of haskell packages to worry about, and
> up to ~140 other places to check. The changes for libffi (including an
> extra API call to fix this) went in to unstable back in August 2011 in
> 3.0.10~rc10-1, but packages *using* libffi would need updating to
> actually use this new API where necessary.
> 
> I think we need to check all those users, to find:
> 
>  (a) they're safe (i.e. they don't use variadics with floating point)
>  (b) they need updating to use the new libffi API
> 
> I've put a list up in the Debian wiki at [3] to help track
> this. Please dive in and look at how these packages are using FFI!

I went through all the packages in the not obviously haskell list and
moved all those that build-dep on ghc to the obviously haskell section.

There was one package that builds with fp-compiler but uses some libghc
packages.  Since it didn't use ghc I didn't consider that to be obviously
haskell related.  Seems to be pascal using libghc somehow.  Probably
explains the need for libffi though.

> [1] http://permalink.gmane.org/gmane.comp.lib.ffi.general/277
> [2] https://wiki.linaro.org/WorkingGroups/ToolChain/FFIusers
> [3] http://wiki.debian.org/ArmHardFloatTodo#libffi

I should pick a package to try and check and/or fix.

-- 
Len Sorensen


Reply to: