vivier / qemu-m68k

Other
41 stars 7 forks source link

R does not work properly with upstream, works with qemu-m68k #31

Open glaubitz opened 6 years ago

glaubitz commented 6 years ago

Trying to build an R package on Debian when using qemu from git upstream fails with:

        mkdir -p /<<PKGBUILDDIR>>/debian/r-bioc-biocparallel/usr/lib/R/site-library
        xvfb-run --auto-servernum --server-num=20 -s "-screen 0 1024x768x24 -ac +extension GLX +render -noreset" R CMD INSTALL -l /<<PKGBUILDDIR>>/debian/r-bioc-biocparallel/usr/lib/R/site-library --clean . "--built-timestamp='Fri, 13 Jul 2018 11:16:16 +0200'"
* installing *source* package 'BiocParallel' ...
Error in if (nc[currentIndex] == 0L) upperBlockIndex <- c(upperBlockIndex,  :
  missing value where TRUE/FALSE needed
ERROR: installing package DESCRIPTION failed for package 'BiocParallel'
* removing '/<<PKGBUILDDIR>>/debian/r-bioc-biocparallel/usr/lib/R/site-library/BiocParallel'

Building the same package using qemu-m68k works just fine. So I guess it's one of the FPU patches that's missing.

Can you suggest which?

vivier commented 6 years ago

Try:

2b745c4c03 softfloat: disable floatx80_invalid_encoding() for m68k

It's not the good behavior: we should raise an exception instead of ignoring it, but it works better than behaving like intel FPU

glaubitz commented 6 years ago

Yes, this patch fixes this particular problem.

I had to add an additional declaration at the top of translate.c though in order to make it build:

+static inline bool floatx80_invalid_encoding(floatx80 a);
+