From 75810a54724fe7f39d59e400e67f3cacc3450f89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Ab=C3=ADlio=20Oliveira=20Matos?= Date: Wed, 21 May 2008 15:24:25 +0000 Subject: [PATCH] - Update to 1.0.3 - Backport two patches from upstream (turn off debug and use the lapack version that R was compiled with) --- .cvsignore | 2 +- rpy-1.0.1-FHSinclude.patch | 2 +- rpy-1.0.3-turn-off-debug.patch | 42 +++++++++++++++++++ rpy-1.0.3-use-lapack.patch | 74 ++++++++++++++++++++++++++++++++++ rpy.spec | 14 ++++++- sources | 2 +- 6 files changed, 131 insertions(+), 5 deletions(-) create mode 100644 rpy-1.0.3-turn-off-debug.patch create mode 100644 rpy-1.0.3-use-lapack.patch diff --git a/.cvsignore b/.cvsignore index 134ae09..2ad5bcf 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -rpy-1.0.2.tar.gz +rpy-1.0.3.tar.gz diff --git a/rpy-1.0.1-FHSinclude.patch b/rpy-1.0.1-FHSinclude.patch index 51df9c2..3461de9 100644 --- a/rpy-1.0.1-FHSinclude.patch +++ b/rpy-1.0.1-FHSinclude.patch @@ -7,7 +7,7 @@ - include_dirs = [ os.path.join(RHOME.strip(), 'include'), - 'src', '/usr/share/R/include' ] + include_dirs = [ os.path.join(RHOME.strip(), 'include'), -+ 'src', '/usr/share/R/include', "/usr/include/R/"] ++ 'src', '/usr/share/R/include', "/usr/include/R"] libraries=['R','Rlapack'] library_dirs = r_libs runtime_libs = r_libs diff --git a/rpy-1.0.3-turn-off-debug.patch b/rpy-1.0.3-turn-off-debug.patch new file mode 100644 index 0000000..c04eeb0 --- /dev/null +++ b/rpy-1.0.3-turn-off-debug.patch @@ -0,0 +1,42 @@ +Revision: 517 + http://rpy.svn.sourceforge.net/rpy/?rev=517&view=rev +Author: warnes +Date: 2008-05-14 10:10:57 -0700 (Wed, 14 May 2008) + +Log Message: +----------- +Turn off debug build flag for default installs, add todo about Rlapack/lapack + +Modified Paths: +-------------- + trunk/rpy/setup.py + +Modified: trunk/rpy/setup.py +=================================================================== +--- trunk/rpy/setup.py 2008-05-14 17:05:47 UTC (rev 516) ++++ trunk/rpy/setup.py 2008-05-14 17:10:57 UTC (rev 517) +@@ -30,13 +30,14 @@ + See the files INSTALL.UNIX and INSTALL.WINDOWS for more details. + """ + +-DEBUG=True ++DEBUG=False + + import os, os.path, sys, shutil, re + from distutils.core import setup, Extension + from distutils.sysconfig import * + from distutils.errors import * + import rpy_tools ++ + if sys.platform=="win32": + import rpy_wintools + +@@ -85,7 +86,7 @@ + get_config_vars()['OPT'] = '-g -Wall' + else: + # to avoid strict prototypes errors from R includes +- get_config_vars()['OPT'] = '-DNDEBUG -g -O3 -Wall' ++ get_config_vars()['OPT'] = '-DNDEBUG -O3 -Wall' + + # get the Python version + if sys.version[:3] >= '2.2': diff --git a/rpy-1.0.3-use-lapack.patch b/rpy-1.0.3-use-lapack.patch new file mode 100644 index 0000000..b1086e3 --- /dev/null +++ b/rpy-1.0.3-use-lapack.patch @@ -0,0 +1,74 @@ +Revision: 523 + http://rpy.svn.sourceforge.net/rpy/?rev=523&view=rev +Author: warnes +Date: 2008-05-14 11:31:21 -0700 (Wed, 14 May 2008) + +Log Message: +----------- +Use the 'R CMD config LAPACK_LIBS' command to determin the appropriate link flags for lapack, instead of blindly assuming that '-L/lib -lRlapack' is the correct magic incantation. + +Modified Paths: +-------------- + trunk/rpy/rpy_tools.py + trunk/rpy/setup.py + +Modified: trunk/rpy/rpy_tools.py +=================================================================== +--- trunk/rpy/rpy_tools.py 2008-05-14 17:51:40 UTC (rev 522) ++++ trunk/rpy/rpy_tools.py 2008-05-14 18:31:21 UTC (rev 523) +@@ -143,3 +143,20 @@ + % PYTHON_DIR ) + + return PYTHON_DIR ++ ++def get_R_LAPACK_LIB_FLAGS(RHOME=get_R_HOME()): ++ """ ++ Determine the necessary link arguments for lapack ++ """ ++ rexec = os.path.join(RHOME, 'bin', 'R') ++ stat, output = getstatusoutput('"%s" CMD config LAPACK_LIBS' % rexec ) ++ if stat or len(output)<=0: ++ raise RuntimeError("Couldn't execute the R interpreter" + ++ " `%s'.\n" % rexec ) ++ ++ LAPACK_LIB_FLAGS = output.strip() ++ if not LAPACK_LIB_FLAGS: ++ raise RuntimeError("Couldn't obtain LAPACK_LIBS information from output\n" ++ "of `R CMD config LAPACK_LIBS'.\n") ++ ++ return LAPACK_LIB_FLAGS + +Modified: trunk/rpy/setup.py +=================================================================== +--- trunk/rpy/setup.py 2008-05-14 17:51:40 UTC (rev 522) ++++ trunk/rpy/setup.py 2008-05-14 18:31:21 UTC (rev 523) +@@ -150,23 +150,20 @@ + library_dirs= r_libs + runtime_libs = r_libs + extra_compile_args=[] +- elif sys.platform=='osf1V5': +- include_dirs = [ os.path.join(RHOME.strip(), 'include'), +- 'src' ] +- libraries=['R','Rlapack'] +- library_dirs = r_libs +- runtime_libs = r_libs +- extra_compile_args=["-shared"] +- source_files = source_files + ["src/setenv.c"] ++ + else: # unix-like systems, this is known to work for Linux and Solaris + include_dirs = [ os.path.join(RHOME.strip(), 'include'), + 'src', '/usr/share/R/include', "/usr/include/R"] +- libraries=['R','Rlapack'] + library_dirs = r_libs + runtime_libs = r_libs + extra_compile_args=["-shared"] + source_files = source_files + ["src/setenv.c"] + ++ libraries=['R'] ++ ++ # Ask R to tell us how to properly link against lapack ++ extra_compile_args += [ rpy_tools.get_R_LAPACK_LIB_FLAGS( RHOME ) ] ++ + # Discover which array packages are present + try: + import numpy diff --git a/rpy.spec b/rpy.spec index 1c8eb4d..cf9bb79 100644 --- a/rpy.spec +++ b/rpy.spec @@ -3,14 +3,19 @@ %define rver 2.7.0 Name: rpy Summary: Python interface to the R language -Version: 1.0.2 +Version: 1.0.3 Release: 1%{?dist} Url: http://rpy.sourceforge.net Source: http://downloads.sf.net/%{name}/%{name}-%{version}.tar.gz License: GPLv2+ Group: Development/Libraries BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +# The R headers are now in /usr/include/R (for F9+) Patch0: rpy-1.0.1-FHSinclude.patch +# Backported patches from development +Patch1: rpy-1.0.3-turn-off-debug.patch +Patch2: rpy-1.0.3-use-lapack.patch BuildRequires: R-devel = %{rver}, numpy, python-devel, texinfo-tex, tetex @@ -28,8 +33,9 @@ converted to Python exceptions. %prep %setup -q -# The R headers are now in /usr/include/R (for F9+) %patch0 +%patch1 -p2 +%patch2 -p2 %build env CFLAGS="$RPM_OPT_FLAGS" python setup.py build @@ -68,6 +74,10 @@ fi %changelog +* Wed May 21 2008 José Matos - 1.0.3-1 +- Update to 1.0.3 +- Backport two patches from upstream (turn off debug and use the lapack version that R was compiled with) + * Tue Apr 29 2008 Tom "spot" Callaway - 1.0.2-1 - update to 1.0.2 - R 2.7.0 diff --git a/sources b/sources index e38d82d..83148bc 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -44ad8b30fd1ab86cd7213f5bd6746242 rpy-1.0.2.tar.gz +10fd4904f622e5647638817279933900 rpy-1.0.3.tar.gz