Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 91512 - dev-lang/R has bad 64-bit detection
Summary: dev-lang/R has bad 64-bit detection
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All All
: High normal (vote)
Assignee: Gentoo Science Related Packages
URL:
Whiteboard:
Keywords:
Depends on: 95881
Blocks: 55238
  Show dependency tree
 
Reported: 2005-05-04 19:57 UTC by SpanKY
Modified: 2006-04-10 15:23 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description SpanKY gentoo-dev 2005-05-04 19:57:05 UTC
currently the R ebuild uses the 64-bit eclass to detect whether the system is 64bit ... the eclass is an ugly hack and the ebuild should move to using a compile-time detection routine
Comment 1 Danny van Dyk (RETIRED) gentoo-dev 2005-05-06 15:31:15 UTC
Hey Mike,
the problem is as follows: dev-lang/R works wonderfully on 64bit system as long as
you use a native FORTRAN compiler (tested with both ifc and g77, g95/gfortran test
is still pending). Now the BIG BUT: Compiling it with f2c produces badass code.
As we use fortran.eclass to specify all the FORTRAN compiler that can be used with a package, we need to make sure to _not specify_ f2c on 64bit machines. In fact,
newer versions (>2.0.0 afaik) of R detect f2c on 64bit during configure already,
but it would be kind to tell the user early about this.

I don't see an easy way to accomplish this out of hand, but i'm always open to proposals. /me too would like to get rid of 64-bit.eclass ;-)
Comment 2 Marcus D. Hanwell (RETIRED) gentoo-dev 2005-05-06 16:24:29 UTC
I was just trying to figure out the best way to modify the ebuild after reading through all the old bug reports. I assumed testing for ${ARCH} in the ebuild would be just as bad too.
Comment 3 SpanKY gentoo-dev 2005-05-06 16:34:14 UTC
i understand the issue, i just want 64-bit.eclass gone ;)

i dont know anything about the build system of R, but here's a safe test for multilib/cross-compiling/etc... that you could use in the ebuild:

echo 'int main(){}' > test.c
$(tc-getCC) -c test.c -o test.o
if file test.o | grep -qs 64-bit ; then
    64 bit !
else
    32 bit !
fi
Comment 4 Marcus D. Hanwell (RETIRED) gentoo-dev 2005-05-07 18:16:56 UTC
Thanks SpanKY - I have added this detection code to 2.1.0-r1. I would like testing on this version, and I will backport the new detection code to the stable 2.0.1 and 1.9.0-r1 ebuilds.
Comment 5 Marcus D. Hanwell (RETIRED) gentoo-dev 2005-05-25 06:38:30 UTC
Right, I have committed the new 64 bit detection code to 2.1.0-r1 and 2.0.1 now.
Everyone has stabilised on 2.0.1 and to the old 1.9.0-r1 is gone and R no longer
uses the 64-bit eclass. Hope that's OK. Let me know if there are any problems at
all.
Comment 6 Marcus D. Hanwell (RETIRED) gentoo-dev 2005-06-12 11:04:33 UTC
Reopened pending removal of dev-python/rpy-0.3.5 
Comment 7 Marcus D. Hanwell (RETIRED) gentoo-dev 2005-06-12 11:25:13 UTC
Removed now thanks to kloeri removing dev-python/rpy-0.3.5 - thanks. 
Comment 8 Jules Gagnon 2006-04-10 11:45:19 UTC
This test create/overwrite test.c and test.o in the current directory where emerge is started. This is BAD! Could you use a safer directory?
Comment 9 SpanKY gentoo-dev 2006-04-10 15:23:49 UTC
that's already been fixed in unstable versions