Merge in 3.0.2-4 from master

This commit is contained in:
Orion Poplawski 2014-02-07 10:34:31 -07:00
commit 97cbe426cf
6 changed files with 22 additions and 319 deletions

3
.gitignore vendored
View File

@ -10,3 +10,6 @@ R-2.11.1.tar.gz
/R-2.15.0.tar.gz
/R-2.15.1.tar.gz
/R-2.15.2.tar.gz
/R-3.0.0.tar.gz
/R-3.0.1.tar.gz
/R-3.0.2.tar.gz

View File

@ -1,35 +0,0 @@
From f849075205ac15da7ad9bd3fbe81ca08af053fbe Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
Date: Tue, 14 Feb 2012 14:40:22 +0100
Subject: [PATCH] Adapt to PCRE 8.30
PCRE 8.30 renamed private function _pcre_valid_utf8() to
_pcre_valid_utf().
---
src/main/util.c | 10 +++++++++-
1 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/src/main/util.c b/src/main/util.c
index 13ce259..c1eb572 100644
--- a/src/main/util.c
+++ b/src/main/util.c
@@ -1258,7 +1258,15 @@ Rboolean mbcsValid(const char *str)
#include "pcre.h"
/* This changed at 8.13: we don't allow < 8.0 */
-#if PCRE_MAJOR > 8 || PCRE_MINOR >= 13
+#if PCRE_MAJOR > 8 || PCRE_MINOR >= 30
+extern int _pcre_valid_utf(const char *string, int length, int *erroroffset);
+
+Rboolean utf8Valid(const char *str)
+{
+ int errp;
+ return (_pcre_valid_utf(str, (int) strlen(str), &errp) == 0);
+}
+#elif PCRE_MAJOR > 8 || PCRE_MINOR >= 13
extern int _pcre_valid_utf8(const char *string, int length, int *erroroffset);
Rboolean utf8Valid(const char *str)
--
1.7.7.6

View File

@ -1,234 +0,0 @@
diff -up R-2.15.2/configure.makeinfo-fix R-2.15.2/configure
--- R-2.15.2/configure.makeinfo-fix 2012-10-18 18:05:56.000000000 -0400
+++ R-2.15.2/configure 2013-02-28 10:41:14.644967025 -0500
@@ -5196,6 +5196,8 @@ makeinfo_version_min=`echo ${makeinfo_ve
if test -z "${makeinfo_version_maj}" \
|| test -z "${makeinfo_version_min}"; then
r_cv_prog_makeinfo_v4=no
+elif test ${makeinfo_version_maj} -ge 5; then
+ r_cv_prog_makeinfo_v4=yes
elif test ${makeinfo_version_maj} -lt 4 \
|| test ${makeinfo_version_min} -lt 7; then
r_cv_prog_makeinfo_v4=no
diff -up R-2.15.2/m4/R.m4.makeinfo-fix R-2.15.2/m4/R.m4
--- R-2.15.2/m4/R.m4.makeinfo-fix 2012-10-13 18:05:05.000000000 -0400
+++ R-2.15.2/m4/R.m4 2013-02-28 10:39:53.083965801 -0500
@@ -210,6 +210,8 @@ makeinfo_version_min=`echo ${makeinfo_ve
if test -z "${makeinfo_version_maj}" \
|| test -z "${makeinfo_version_min}"; then
r_cv_prog_makeinfo_v4=no
+elif test ${makeinfo_version_maj} -ge 5; then
+ r_cv_prog_makeinfo_v4=yes
elif test ${makeinfo_version_maj} -lt 4 \
|| test ${makeinfo_version_min} -lt 7; then
r_cv_prog_makeinfo_v4=no
diff -up R-2.15.2/doc/manual/R-defs.texi.fixeqn R-2.15.2/doc/manual/R-defs.texi
--- R-2.15.2/doc/manual/R-defs.texi.fixeqn 2013-02-28 13:33:51.858006222 -0500
+++ R-2.15.2/doc/manual/R-defs.texi 2013-02-28 13:34:03.042006581 -0500
@@ -17,16 +17,18 @@ S
@acronym{HTML}
@end macro
-@macro eqn {t, a}
@iftex
+@macro eqn {t, a}
@tex
$\t\$%
@end tex
+@end macro
@end iftex
@ifnottex
+@macro eqn {t, a}
\a\@c
-@end ifnottex
@end macro
+@end ifnottex
@macro pkg {p}
@strong{\p\}
diff -up R-2.15.2/doc/manual/R-intro.texi.fixeqn R-2.15.2/doc/manual/R-intro.texi
--- R-2.15.2/doc/manual/R-intro.texi.fixeqn 2013-02-28 13:35:57.380030603 -0500
+++ R-2.15.2/doc/manual/R-intro.texi 2013-02-28 13:40:16.093042240 -0500
@@ -2045,13 +2045,17 @@ is the matrix product. If @code{x} is a
@noindent
is a quadratic form.@footnote{Note that @code{x %*% x} is ambiguous, as
-it could mean either @xTx{} or @xxT{}, where @eqn{@strong{x},x} is the
-column form. In such cases the smaller matrix seems implicitly to be
-the interpretation adopted, so the scalar @xTx{} is in this case the
-result. The matrix @xxT{} may be calculated either by @code{cbind(x)
-%*% x} or @code{x %*% rbind(x)} since the result of @code{rbind()} or
+it could mean either @xTx{}
+ or @xxT{},
+ where @eqn{@strong{x},x}
+ is the column form. In such cases the smaller matrix seems implicitly to be
+the interpretation adopted, so the scalar @xTx{}
+ is in this case the result. The matrix @xxT{}
+ may be calculated either by @code{cbind(x)%*% x} or @code{x %*% rbind(x)} since the result of @code{rbind()} or
@code{cbind()} is always a matrix. However, the best way to compute
-@xTx{} or @xxT{} is @code{crossprod(x)} or @code{x %o% x}
+@xTx{}
+ or @xxT{}
+ is @code{crossprod(x)} or @code{x %o% x}
respectively.}
@findex crossprod
@@ -2107,12 +2111,16 @@ but rarely is needed. Numerically, it i
potentially unstable to compute @code{x <- solve(A) %*% b} instead of
@code{solve(A,b)}.
-The quadratic form @eqn{@strong{x^T A^{-1} x},@ @code{x %*% A^@{-1@} %*%
-x} @ } which is used in multivariate computations, should be computed by
+The quadratic form @eqn{@strong{x^T A^{-1} x},@ @code{x %*% A^@{-1@} %*%x} @ }
+, which is used in multivariate computations, should be computed by
something like@footnote{Even better would be to form a matrix square
-root @eqn{B, B} with @eqn{A = BB^T, A = BB'} and find the squared length of the
-solution of @eqn{By = x, By = x}, perhaps using the Cholesky or
-eigendecomposition of @eqn{A, A}.} @code{x %*% solve(A,x)}, rather than
+root @eqn{B, B}
+ with @eqn{A = BB^T, A = BB'}
+ and find the squared length of the
+solution of @eqn{By = x, By = x},
+perhaps using the Cholesky or
+eigendecomposition of @eqn{A, A}.
+} @code{x %*% solve(A,x)}, rather than
computing the inverse of @code{A}.
@node Eigenvalues and eigenvectors, Singular value decomposition and determinants, Linear equations and inversion, Matrix facilities
@@ -6549,8 +6557,7 @@ disappear.
@c need to adapt the discussion slightly.
@table @code
-@item
-Start @R{} appropriately for your platform (@pxref{Invoking R}).
+@item Start @R{} appropriately for your platform (@pxref{Invoking R}).
The @R{} program begins, with a banner.
@@ -6753,15 +6760,13 @@ parts @dots{}
@item plot(w, xlim=c(-1,1), ylim=c(-1,1), pch="+",xlab="x", ylab="y")
@itemx lines(z)
-@itemx
-All points are inside the unit circle, but the distribution is not
+@itemx All points are inside the unit circle, but the distribution is not
uniform.
@item w <- sqrt(runif(100))*exp(2*pi*runif(100)*1i)
@itemx plot(w, xlim=c(-1,1), ylim=c(-1,1), pch="+", xlab="x", ylab="y")
@itemx lines(z)
-@itemx
-The second method uses the uniform distribution. The points should now
+@itemx The second method uses the uniform distribution. The points should now
look more evenly spaced over the disc.
@item rm(th, w, z)
@@ -7066,7 +7071,7 @@ Post-process @R{} profiling files.
Convert Rd format to various other formats, including @HTML{}, @LaTeX{},
plain text, and extracting the examples. @code{Rd2txt} can be used as
shorthand for @code{Rd2conv -t txt}.
-@itemx Rd2pdf
+@item Rd2pdf
Convert Rd format to PDF.
@item Stangle
Extract S/R code from Sweave documentation
diff -up R-2.15.2/doc/manual/R-lang.texi.fixeqn R-2.15.2/doc/manual/R-lang.texi
--- R-2.15.2/doc/manual/R-lang.texi.fixeqn 2013-02-28 13:41:17.454055194 -0500
+++ R-2.15.2/doc/manual/R-lang.texi 2013-02-28 13:43:05.114064174 -0500
@@ -3795,13 +3795,20 @@ Information from the operating system
environment can be accessed and manipulated with
@quotation
@multitable @columnfractions 0.3 0.7
-@item @code{Sys.getenv} @tab OS environment variables @findex Sys.getenv
-@item @code{Sys.putenv} @findex Sys.putenv
-@item @code{Sys.getlocale} @tab System locale @findex Sys.getlocale
-@item @code{Sys.putlocale} @findex Sys.putlocale
-@item @code{Sys.localeconv} @findex Sys.localeconv
-@item @code{Sys.time} @tab Current time @findex Sys.time
-@item @code{Sys.timezone} @tab Time zone @findex Sys.timezone
+@item @code{Sys.getenv} @tab OS environment variables
+@findex Sys.getenv
+@item @code{Sys.putenv}
+@findex Sys.putenv
+@item @code{Sys.getlocale} @tab System locale
+@findex Sys.getlocale
+@item @code{Sys.putlocale}
+@findex Sys.putlocale
+@item @code{Sys.localeconv}
+@findex Sys.localeconv
+@item @code{Sys.time} @tab Current time
+@findex Sys.time
+@item @code{Sys.timezone} @tab Time zone
+@findex Sys.timezone
@end multitable
@end quotation
@@ -3809,17 +3816,28 @@ environment can be accessed and manipula
A uniform set of file access functions is provided on all platforms:
@quotation
@multitable @columnfractions 0.3 0.7
-@item @code{file.access} @tab Ascertain File Accessibility @findex file.access
-@item @code{file.append} @tab Concatenate files @findex file.append
-@item @code{file.choose} @tab Prompt user for file name @findex file.choose
-@item @code{file.copy} @tab Copy files @findex file.copy
-@item @code{file.create} @tab Create or truncate a files @findex file.create
-@item @code{file.exists} @tab Test for existence @findex file.exists
-@item @code{file.info} @tab Miscellaneous file information @findex file.info
-@item @code{file.remove} @tab remove files @findex file.remove
-@item @code{file.rename} @tab rename files @findex file.rename
-@item @code{file.show} @tab Display a text file @findex file.show
-@item @code{unlink} @tab Remove files or directories. @findex unlink
+@item @code{file.access} @tab Ascertain File Accessibility
+@findex file.access
+@item @code{file.append} @tab Concatenate files
+@findex file.append
+@item @code{file.choose} @tab Prompt user for file name
+@findex file.choose
+@item @code{file.copy} @tab Copy files
+@findex file.copy
+@item @code{file.create} @tab Create or truncate a files
+@findex file.create
+@item @code{file.exists} @tab Test for existence
+@findex file.exists
+@item @code{file.info} @tab Miscellaneous file information
+@findex file.info
+@item @code{file.remove} @tab remove files
+@findex file.remove
+@item @code{file.rename} @tab rename files
+@findex file.rename
+@item @code{file.show} @tab Display a text file
+@findex file.show
+@item @code{unlink} @tab Remove files or directories.
+@findex unlink
@end multitable
@end quotation
@@ -3827,10 +3845,14 @@ There are also functions for manipulatin
platform-independent way.
@quotation
@multitable @columnfractions 0.3 0.7
-@item @code{basename} @tab File name without directory @findex basename
-@item @code{dirname} @tab Directory name @findex dirname
-@item @code{file.path} @tab Construct path to file @findex file.path
-@item @code{path.expand} @tab Expand @code{~} in Unix path @findex path.expand
+@item @code{basename} @tab File name without directory
+@findex basename
+@item @code{dirname} @tab Directory name
+@findex dirname
+@item @code{file.path} @tab Construct path to file
+@findex file.path
+@item @code{path.expand} @tab Expand @code{~} in Unix path
+@findex path.expand
@end multitable
@end quotation
@@ -4471,7 +4493,8 @@ Newlines have a function which is a comb
expression terminator. If an expression can terminate at the end of
the line the parser will assume it does so, otherwise the newline is
treated as whitespace. Semicolons (@samp{;}) may be used to separate
-elementary @cindex expression
+elementary
+@cindex expression
expressions on the same line.

View File

@ -1,11 +0,0 @@
--- R-2.7.2/configure.org 2008-09-25 15:00:20.000000000 +0900
+++ R-2.7.2/configure 2008-09-25 15:00:35.000000000 +0900
@@ -26995,7 +26995,7 @@
;;
# Ignore these flags.
- -lang* | -lcrt*.o | -lc | -lgcc* | -lSystem | -libmil | -LANG:=* | -LIST:* | -LNO:*)
+ -little | -lang* | -lcrt*.o | -lc | -lgcc* | -lSystem | -libmil | -LANG:=* | -LIST:* | -LNO:*)
;;
-lkernel32)
test x"$CYGWIN" != xyes && ac_cv_f77_libs="$ac_cv_f77_libs $ac_arg"

View File

@ -1,37 +0,0 @@
--- a/src/modules/X11/devX11.c (révision 61681)
+++ b/src/modules/X11/devX11.c (révision 61682)
@@ -244,6 +244,7 @@
{
if(inclose || !xd || !xd->buffered || xd->holdlevel > 0) return;
cairo_paint(xd->xcc);
+ cairo_surface_flush(xd->xcs);
if (xd->type == WINDOW) XDefineCursor(display, xd->window, arrow_cursor);
XSync(display, 0);
xd->last = currentTime();
@@ -753,8 +754,10 @@
#ifdef HAVE_WORKING_CAIRO
pX11Desc xd = (pX11Desc) dd->deviceSpecific;
/* We can use the buffered copy where we have it */
- if(xd->buffered == 1) cairo_paint(xd->xcc);
- else if (xd->buffered > 1)
+ if(xd->buffered == 1) {
+ cairo_paint(xd->xcc);
+ cairo_surface_flush(xd->xcs);
+ } else if (xd->buffered > 1)
/* rely on timer to repaint eventually */
xd->last_activity = currentTime();
else
@@ -2691,7 +2694,11 @@
Cairo_update(xd);
return;
}
- if(xd->buffered) cairo_paint(xd->xcc);
+ if(xd->buffered) {
+ cairo_paint(xd->xcc);
+ cairo_surface_flush(xd->xcs);
+ }
+
#endif
if(xd->type==WINDOW) XDefineCursor(display, xd->window, arrow_cursor);
XSync(display, 0);

21
R.spec
View File

@ -17,7 +17,7 @@
Name: R
Version: 3.0.2
Release: 1%{?dist}
Release: 3%{?dist}
Summary: A language for data analysis and graphics
URL: http://www.r-project.org
Source0: ftp://cran.r-project.org/pub/R/src/base/R-3/R-%{version}.tar.gz
@ -32,7 +32,7 @@ BuildRequires: gcc-gfortran
BuildRequires: gcc-c++, tex(latex), texinfo-tex
BuildRequires: libpng-devel, libjpeg-devel, readline-devel
BuildRequires: tcl-devel, tk-devel, ncurses-devel
BuildRequires: blas >= 3.0, pcre-devel, zlib-devel
BuildRequires: blas-devel >= 3.0, pcre-devel, zlib-devel
%if %{modern}
BuildRequires: java-1.5.0-gcj
%else
@ -171,6 +171,8 @@ Summary: Full R development environment metapackage
Requires: R-core-devel = %{version}-%{release}
%if %{modern}
Requires: R-java-devel = %{version}-%{release}
%else
Group: Development/Libraries
%endif
%description devel
@ -303,10 +305,16 @@ export FCFLAGS="%{optflags}"
( %configure \
--with-system-zlib --with-system-bzlib --with-system-pcre \
--with-lapack \
--with-blas \
--with-tcl-config=%{_libdir}/tclConfig.sh \
--with-tk-config=%{_libdir}/tkConfig.sh \
--enable-R-shlib \
--enable-prebuilt-html \
%if %{modern}
%ifnarch %{arm}
--enable-lto \
%endif
%endif
rdocdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} \
rincludedir=%{_includedir}/R \
rsharedir=%{_datadir}/R) \
@ -811,6 +819,15 @@ R CMD javareconf \
%postun -n libRmath -p /sbin/ldconfig
%changelog
* Fri Jan 24 2014 Tom Callaway <spot@fedoraproject.org> - 3.0.2-4
- disable lto on non-modern targets (not just ppc)
* Fri Jan 24 2014 Tom Callaway <spot@fedoraproject.org> - 3.0.2-3
- disable lto on ppc/ppc64
* Fri Dec 20 2013 Tom Callaway <spot@fedoraproject.org> - 3.0.2-2
- add --with-blas, --enable-lto to configure
* Tue Oct 15 2013 Tom Callaway <spot@fedoraproject.org> - 3.0.2-1
- update to 3.0.2