Compare commits

..

47 Commits

Author SHA1 Message Date
Tom Callaway 04660705fe Merge branch 'master' into epel7 2018-05-14 12:54:09 -04:00
Tom Callaway 551d3a62a8 Merge branch 'master' into epel7 2018-03-28 13:10:16 -04:00
Tom Callaway 990222c906 Merge branch 'master' into epel7 2017-11-30 16:05:16 -05:00
Tom Callaway 3b8bfeed90 Merge branch 'master' into epel7 2017-10-30 09:09:54 -04:00
Tom Callaway ab4f8ea579 Merge branch 'master' into epel7 2017-10-27 12:44:14 -04:00
Tom Callaway 8f5609244b Merge branch 'epel7' of ssh://pkgs.fedoraproject.org/rpms/R into epel7 2017-06-30 11:29:42 -04:00
Tom Callaway 0d878585a5 Merge branch 'master' into epel7 2017-06-30 11:29:30 -04:00
José Matos d80ed4051c Merge branch 'master' into epel7 2017-05-13 00:14:33 +01:00
Tom Callaway 3efbfc5044 Merge branch 'master' into epel7 2017-04-22 12:14:56 -07:00
Tom Callaway 2a8cdda9fe Merge branch 'master' into epel7 2017-03-08 11:12:11 -08:00
Tom Callaway 54f7316c5c Merge branch 'master' into epel7 2016-12-15 09:44:29 -05:00
Tom Callaway 6852d52eb8 Merge branch 'master' into epel7 2016-10-31 15:55:25 -04:00
Tom Callaway 5c0f71354b Merge branch 'master' into epel7 2016-10-31 10:58:12 -04:00
Tom Callaway 60d8671b58 Merge branch 'master' into epel7 2016-08-08 14:02:11 -04:00
Tom Callaway c4a01cb457 Merge branch 'master' into epel7 2016-07-06 10:02:36 -04:00
Tom Callaway 3432fcebf2 Merge branch 'master' into epel7 2016-05-13 15:32:55 -04:00
Tom Callaway 85bd323de9 Merge branch 'master' into epel7 2016-05-10 12:53:34 -04:00
Tom Callaway 9ad13cc563 Merge branch 'master' into epel7 2016-05-10 12:15:29 -04:00
Tom Callaway 4963b7c67f Merge branch 'master' into epel7 2016-01-26 17:02:25 -05:00
Tom Callaway 59ac84717f Merge branch 'master' into epel7 2016-01-15 15:26:53 -05:00
Tom Callaway e70ec074bf Merge branch 'master' into epel7 2015-12-11 20:58:30 -05:00
Tom Callaway 5f53e1b4f6 Merge branch 'master' into epel7 2015-10-23 11:13:41 -04:00
Tom Callaway 5460a773ed Merge branch 'master' into epel7 2015-08-14 15:20:23 -04:00
Tom Callaway a9b025ccf3 merge 2015-07-10 12:13:33 -04:00
Tom Callaway fe4bb60b08 merge 2015-06-18 13:31:43 -04:00
Tom Callaway e05a92cecc merge fix 2015-06-18 13:27:02 -04:00
Jakub Čajka d8cbd7f03b update BR for s390 2015-05-04 14:15:55 +02:00
Tom Callaway eea413a2df 3.2.0 2015-04-30 13:49:22 -04:00
Tom Callaway 2180319005 3.1.3 2015-03-09 17:33:57 -04:00
Tom Callaway e9c31a6be3 3.1.2 2014-10-31 13:11:25 -04:00
Tom Callaway 7f15c3b4a9 fix java Requires 2014-10-09 09:36:19 -04:00
Tom Callaway b68c60b2f4 add Requires: unzip to R-core 2014-08-08 14:49:30 +02:00
Tom Callaway 1fb1be58dd add Requires: make to R-core 2014-08-08 13:22:28 +02:00
Tom Callaway 9ec8e0bdf3 3.1.1 2014-07-16 13:04:00 -04:00
Tom Callaway 807af4e7f5 add blas-devel && lapack-devel to R-core-devel and R-devel requires 2014-05-07 13:24:36 -04:00
Tom Callaway 935b5b77cc unified spec 2014-04-29 21:30:42 -04:00
Tom Callaway 520add3c97 should work everywhere now 2014-04-29 20:55:36 -04:00
Tom Callaway 7f46a77123 MOAR FIXES 2014-04-29 20:18:30 -04:00
Tom Callaway f335ce90ec FIXES 2014-04-29 20:05:10 -04:00
Tom Callaway 59d7dffa3b epel fixes 2014-04-29 13:17:34 -04:00
Tom Callaway a83e33208a 3.1.0 2014-04-29 11:01:29 -04:00
Orion Poplawski b3f552913d Merge branch 'master' into epel7 2014-02-07 12:16:57 -07:00
Orion Poplawski 97cbe426cf Merge in 3.0.2-4 from master 2014-02-07 10:34:31 -07:00
Tom Callaway cd700c91a9 3.0.2 2013-10-18 00:58:33 +01:00
Tom Callaway 0a7c20509d conditionalize hack 2013-05-18 15:25:06 -04:00
Tom Callaway 7974f51a4d 3.0.1 2013-05-17 17:16:49 -04:00
Tom Callaway 358b109279 R3 2013-04-15 12:44:54 -04:00
15 changed files with 177 additions and 10797 deletions

49
.gitignore vendored
View File

@ -1,8 +1,28 @@
/xz-5.2.2.tar.bz2
/zlib-1.2.8.tar.gz
/bzip2-1.0.6.tar.gz
/curl-7.48.0.tar.bz2
/pcre-8.38.tar.bz2
R-2.11.1.tar.gz
/R-2.12.0.tar.gz
/R-2.12.1.tar.gz
/R-2.12.2.tar.gz
/R-2.13.0.tar.gz
/R-2.13.1.tar.gz
/R-2.13.2.tar.gz
/R-2.14.0.tar.gz
/R-2.14.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
/R-3.0.3.tar.gz
/R-3.1.1.tar.gz
/R-3.1.2.tar.gz
/R-3.1.3.tar.gz
/R-3.2.0.tar.gz
/R-3.2.1.tar.gz
/R-3.2.2.tar.gz
/R-3.2.3.tar.gz
/R-3.2.4-revised.tar.gz
/R-3.3.0.tar.gz
/R-3.3.1.tar.gz
/R-3.3.2.tar.gz
/R-3.3.3.tar.gz
@ -22,22 +42,3 @@
/curl-7.59.0.tar.bz2
/xz-5.2.4.tar.bz2
/R-3.5.0.tar.gz
/R-3.5.1.tar.gz
/curl-7.61.1.tar.bz2
/curl-7.63.0.tar.bz2
/R-3.5.2.tar.gz
/R-3.5.3.tar.gz
/R-3.6.0.tar.gz
/R-3.6.1.tar.gz
/R-3.6.2.tar.gz
/bzip2-1.0.8.tar.gz
/pcre-8.43.tar.bz2
/curl-7.67.0.tar.bz2
/R-3.6.3.tar.gz
/R-4.0.0.tar.gz
/R-4.0.1.tar.gz
/R-4.0.2.tar.gz
/xz-5.2.5.tar.bz2
/R-4.0.3.tar.gz
/pcre-8.44.tar.bz2
/curl-7.72.0.tar.bz2

File diff suppressed because it is too large Load Diff

View File

@ -1,149 +0,0 @@
diff -uNr R-2.5.0/src/nmath/standalone/Makefile.in R-2.5.0-patched/src/nmath/standalone/Makefile.in
--- R-2.5.0/src/nmath/standalone/Makefile.in 2007-03-26 18:42:08.000000000 +0200
+++ R-2.5.0-patched/src/nmath/standalone/Makefile.in 2007-04-29 14:50:55.000000000 +0200
@@ -67,7 +67,7 @@
libRmath_la_LDFLAGS =
CLEANFILES = Makedeps *.d *.o *.lo test $(SOURCES)
-DISTCLEANFILES = Makefile $(Rexeclibdir_LIBRARIES) $(Rexeclibdir_LTLIBRARIES)
+DISTCLEANFILES = Makefile libRmath.pc $(Rexeclibdir_LIBRARIES) $(Rexeclibdir_LTLIBRARIES)
DEFS = -DHAVE_CONFIG_H -DMATHLIB_STANDALONE
ALL_CPPFLAGS = $(R_XTRA_CPPFLAGS) -I$(srcdir)/.. $(CPPFLAGS) $(DEFS)
@@ -78,7 +78,7 @@
@r_cc_lo_rules_frag@
-all: Makefile inc static shared
+all: Makefile inc static shared build-pc
inc:
(cd ../../include; $(MAKE) Rmath.h)
@@ -100,6 +100,11 @@
shared: Makefile ../../include/Rconfig.h Copy Makedeps
@$(MAKE) $(Rexeclibdir_LTLIBRARIES)
+build-pc:
+ @$(SED) -e "s:@libdir:$(libdir):" -e "s:@includedir:$(includedir):" \
+ -e 's/@VERSION/$(VERSION)/' -e 's/@libm/$(LIBM)/' $(srcdir)/libRmath.pc.in \
+ > "libRmath.pc"
+
../../include/Rconfig.h:
(cd $(@D); $(MAKE) $(@F))
@@ -163,9 +168,7 @@
install-pc:
@$(MKINSTALLDIRS) "$(libdir)/pkgconfig"
- @$(SED) -e "s:@libdir:$(libdir):" -e "s:@includedir:$(includedir):" \
- -e 's/@VERSION/$(VERSION)/' -e 's/@libm/$(LIBM)/' $(srcdir)/libRmath.pc.in \
- > "$(libdir)/pkgconfig/libRmath.pc"
+ @$(INSTALL_DATA) libRmath.pc "$(libdir)/pkgconfig/libRmath.pc"
uninstall:
@rm -f $(includedir)/Rmath.h $(libdir)/$(libRmath_la) $(libdir)/libRmath.a "$(libdir)/pkgconfig/libRmath.pc"
diff -uNr R-2.5.0/src/scripts/Makefile.in R-2.5.0-patched/src/scripts/Makefile.in
--- R-2.5.0/src/scripts/Makefile.in 2007-03-26 18:42:09.000000000 +0200
+++ R-2.5.0-patched/src/scripts/Makefile.in 2007-04-29 14:50:14.000000000 +0200
@@ -23,17 +23,22 @@
DISTFILES = Makefile.in Makefile.win $(SCRIPTS_S) $(SCRIPTS_B_IN) R.sh.in
CLEANFILES =
-DISTCLEANFILES = Makefile R.fe R.sh $(SCRIPTS_B)
+DISTCLEANFILES = Makefile R.fe R.fe2 R.sh $(SCRIPTS_B)
all: Makefile R
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
-R: $(SCRIPTS_B) R.fe
+R: $(SCRIPTS_B) R.fe R.fe2
@$(MAKE) rhome=$(top_builddir) install-cmds
@$(INSTALL_SCRIPT) R.fe $(top_builddir)/bin/R
+R.fe2:
+ @(d=`echo '$(rhome)' | sed 's,/,\\\/,g';`; \
+ sed -e "s/\\(R_HOME_DIR=\\).*/\\1$${d}/;" -e "s+\\(R_SHARE_DIR=\\).*+\\1$(rsharedir)+;" -e "s+\\(R_INCLUDE_DIR=\\).*+\\1$(rincludedir)+;" -e "s+\\(R_DOC_DIR=\\).*+\\1$(rdocdir)+;"\
+ < R.fe > $@)
+
## <NOTE>
## Seems we need target rules for creating FOO from FOO.in: pattern
## rules ('%:%.in') are not portable, and some versions of Make do not
@@ -95,10 +100,8 @@
install: installdirs install-cmds
@rm -f $(bindir)/R
- @(d=`echo '$(rhome)' | sed 's,/,\\\/,g';`; \
- sed -e "s/\\(R_HOME_DIR=\\).*/\\1$${d}/;" -e "s+\\(R_SHARE_DIR=\\).*+\\1$(rsharedir)+;" -e "s+\\(R_INCLUDE_DIR=\\).*+\\1$(rincludedir)+;" -e "s+\\(R_DOC_DIR=\\).*+\\1$(rdocdir)+;"\
- < R.fe > "$(Rexecbindir)/R")
- @$(INSTALL_SCRIPT) "$(Rexecbindir)/R" "$(bindir)/R"
+ @$(INSTALL_SCRIPT) R.fe2 "$(Rexecbindir)/R"
+ @$(INSTALL_SCRIPT) R.fe2 "$(bindir)/R"
@chmod 755 "$(bindir)/R" "$(Rexecbindir)/R"
## why of all the scriots does this alone chmod just one copy?
installdirs:
diff -uNr R-2.5.0/src/unix/Makefile.in R-2.5.0-patched/src/unix/Makefile.in
--- R-2.5.0/src/unix/Makefile.in 2007-03-26 18:41:33.000000000 +0200
+++ R-2.5.0-patched/src/unix/Makefile.in 2007-04-29 14:51:55.000000000 +0200
@@ -26,7 +26,7 @@
@WANT_R_SHLIB_TRUE@ALL_CFLAGS = $(ALL_CFLAGS_LO)
-all: Makefile Makedeps R
+all: Makefile Makedeps R
Makefile: $(srcdir)/Makefile.in \
$(top_builddir)/config.status \
@@ -38,11 +38,23 @@
@cat $(DEPENDS) >> Makefile
@touch $@
-R: Makefile
+R: Makefile
@$(MAKE) Makedeps
@WANT_R_SHLIB_FALSE@ @$(MAKE) libunix.a
@WANT_R_SHLIB_TRUE@ @$(MAKE) stamp-lo
+ @$(MAKE) rhome=$(abs_top_builddir) build-Rscript
@$(MAKE) rhome=$(abs_top_builddir) install-Rscript
+ @$(MAKE) build-Rscript
+ @$(MAKE) build-pc
+
+build-pc:
+ @$(SED) -e "s:@rhome:$(rhome):" -e "s:@rincludedir:$(rincludedir):" \
+ -e 's/@VERSION/$(VERSION)/' $(srcdir)/libR.pc.in \
+ > "libR.pc"
+
+build-Rscript:
+ $(CC) $(ALL_CPPFLAGS) $(ALL_CFLAGS) -DR_HOME='"$(rhome)"' -o Rscript \
+ $(srcdir)/Rscript.c
## is this portable?
../include/Rversion.h:
@@ -60,22 +72,19 @@
clean:
@-rm -rf .libs _libs
@-rm -f Makedeps *.d *.o *.a *.lo *.la stamp-lo
+ @-rm -f Rscript libR.pc
distclean: clean
@-rm -f Makefile
maintainer-clean: distclean
-## we need to build at install time to capture the correct 'rhome'
+## install previously built Rscript
install-Rscript:
- $(CC) $(ALL_CPPFLAGS) $(ALL_CFLAGS) -DR_HOME='"$(rhome)"' -o Rscript \
- $(srcdir)/Rscript.c
@$(MKINSTALLDIRS) "$(Rexecbindir)"
@$(INSTALL_PROGRAM) Rscript "$(Rexecbindir)/Rscript"
-## substitute at install time to allow 'prefix' to be overridden
+## install previously built libR.pc
install-pc:
@$(MKINSTALLDIRS) "$(libdir)/pkgconfig"
- @$(SED) -e "s:@rhome:$(rhome):" -e "s:@rincludedir:$(rincludedir):" \
- -e 's/@VERSION/$(VERSION)/' $(srcdir)/libR.pc.in \
- > "$(libdir)/pkgconfig/libR.pc"
+ @$(INSTALL_DATA) libR.pc "$(libdir)/pkgconfig/libR.pc"
install: install-Rscript @WANT_R_SHLIB_TRUE@ install-pc
@$(MKINSTALLDIRS) "$(bindir)"
@$(INSTALL_PROGRAM) Rscript "$(bindir)/Rscript"

View File

@ -1,18 +0,0 @@
Index: src/unix/Makefile.in
===================================================================
--- src/unix/Makefile.in (revision 45534)
+++ src/unix/Makefile.in (revision 45535)
@@ -78,11 +78,11 @@
-e 's/@VERSION/$(VERSION)/' $(srcdir)/libR.pc.in \
> "$(DESTDIR)$(libdir)/pkgconfig/libR.pc"
-install: install-main install-Rscript
+install: install-main
install: @WANT_R_SHLIB_TRUE@ install-pc
install: @WANT_R_STATIC_TRUE@ install-pc
-install-main:
+install-main: install-Rscript
@$(MKINSTALLDIRS) "$(DESTDIR)$(bindir)"
@$(INSTALL_PROGRAM) Rscript "$(DESTDIR)$(bindir)/Rscript"

View File

@ -1,27 +0,0 @@
diff -up R-2.7.1/src/scripts/javareconf.BAD R-2.7.1/src/scripts/javareconf
--- R-2.7.1/src/scripts/javareconf.BAD 2008-08-29 11:04:21.000000000 -0400
+++ R-2.7.1/src/scripts/javareconf 2008-08-29 11:05:34.000000000 -0400
@@ -125,16 +125,17 @@ fi
javac_works='not present'
if test -n "$JAVAC"; then
javac_works='not functional'
- rm -rf /tmp/A.java /tmp/A.class
- echo "public class A { }" > /tmp/A.java
- if test -e /tmp/A.java; then
- if "${JAVAC}" /tmp/A.java >/dev/null; then
- if test -e /tmp/A.class; then
+ tempdir=`mktemp -d`
+ echo "public class A { }" > ${tempdir}/A.java
+ if test -e ${tempdir}/A.java; then
+ if "${JAVAC}" ${tempdir}/A.java >/dev/null; then
+ if test -e ${tempdir}/A.class; then
javac_works=yes
fi
fi
fi
- rm -rf /tmp/A.java /tmp/A.class
+ rm -rf ${tempdir}
+
fi
if test "${javac_works}" = yes; then
echo "Java compiler : ${JAVAC}"

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,26 +0,0 @@
diff -up R-2.8.0/configure.BAD R-2.8.0/configure
--- R-2.8.0/configure.BAD 2008-10-26 11:51:56.000000000 -0400
+++ R-2.8.0/configure 2008-10-26 11:52:31.000000000 -0400
@@ -44779,6 +44779,11 @@ else
have_bzlib=no
fi
if test "x${have_bzlib}" = xyes; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_BZLIB_H 1
+_ACEOF
+
{ echo "$as_me:$LINENO: checking if bzip2 version >= 1.0.5" >&5
echo $ECHO_N "checking if bzip2 version >= 1.0.5... $ECHO_C" >&6; }
if test "${r_cv_have_bzlib+set}" = set; then
diff -up R-2.8.0/m4/R.m4.BAD R-2.8.0/m4/R.m4
--- R-2.8.0/m4/R.m4.BAD 2008-09-21 18:05:06.000000000 -0400
+++ R-2.8.0/m4/R.m4 2008-10-26 11:53:05.000000000 -0400
@@ -3055,6 +3055,7 @@ else
have_bzlib=no
fi
if test "x${have_bzlib}" = xyes; then
+AC_DEFINE(HAVE_BZLIB_H, 1, [Define to 1 if you have bzlib.h.])
AC_CACHE_CHECK([if bzip2 version >= 1.0.5], [r_cv_have_bzlib],
[AC_LANG_PUSH(C)
r_save_LIBS="${LIBS}"

View File

@ -1,32 +0,0 @@
diff -up R-3.0.1/src/library/tools/R/install.R.armfix R-3.0.1/src/library/tools/R/install.R
--- R-3.0.1/src/library/tools/R/install.R.armfix 2013-08-12 13:57:17.956790673 -0400
+++ R-3.0.1/src/library/tools/R/install.R 2013-08-12 13:59:51.230800752 -0400
@@ -108,7 +108,11 @@
SHLIB_EXT <- if (WINDOWS) ".dll" else {
## can we do better?
mconf <- file.path(R.home(), paste0("etc", rarch), "Makeconf")
- sub(".*= ", "", grep("^SHLIB_EXT", readLines(mconf), value = TRUE))
+ if (substr( Sys.info()["machine"], 1, 3) == "arm") { # arm has broken regexps in libc
+ sub(".*= ", "", grep("^SHLIB_EXT", readLines(mconf), value = TRUE), perl = TRUE)
+ } else {
+ sub(".*= ", "", grep("^SHLIB_EXT", readLines(mconf), value = TRUE))
+ }
}
options(warn = 1)
@@ -1627,8 +1631,13 @@
mconf <- readLines(file.path(R.home(),
paste0("etc", Sys.getenv("R_ARCH")),
"Makeconf"))
- SHLIB_EXT <- sub(".*= ", "", grep("^SHLIB_EXT", mconf, value = TRUE))
- SHLIB_LIBADD <- sub(".*= ", "", grep("^SHLIB_LIBADD", mconf, value = TRUE))
+ if (substr( Sys.info()["machine"], 1, 3) == "arm") { # arm has broken regexps in libc
+ SHLIB_EXT <- sub(".*= ", "", grep("^SHLIB_EXT", mconf, value = TRUE), perl = TRUE)
+ SHLIB_LIBADD <- sub(".*= ", "", grep("^SHLIB_LIBADD", mconf, value = TRUE), perl = TRUE)
+ } else {
+ SHLIB_EXT <- sub(".*= ", "", grep("^SHLIB_EXT", mconf, value = TRUE))
+ SHLIB_LIBADD <- sub(".*= ", "", grep("^SHLIB_LIBADD", mconf, value = TRUE))
+ }
MAKE <- Sys.getenv("MAKE")
rarch <- Sys.getenv("R_ARCH")
} else {

View File

@ -1,16 +0,0 @@
diff -up R-3.6.2/src/main/arithmetic.c.ppc64 R-3.6.2/src/main/arithmetic.c
--- R-3.6.2/src/main/arithmetic.c.ppc64 2019-10-18 18:15:02.000000000 -0400
+++ R-3.6.2/src/main/arithmetic.c 2019-12-18 09:05:50.363220122 -0500
@@ -177,7 +177,12 @@ void attribute_hidden InitArithmetic()
}
#if HAVE_LONG_DOUBLE && (SIZEOF_LONG_DOUBLE > SIZEOF_DOUBLE)
+# ifdef __PPC64__
+ // PowerPC 64 (when gcc has -mlong-double-128) fails constant folding with LDOUBLE
+# define q_1_eps (1 / LDBL_EPSILON)
+# else
static LDOUBLE q_1_eps = 1 / LDBL_EPSILON;
+# endif
#else
static double q_1_eps = 1 / DBL_EPSILON;
#endif

View File

@ -1,50 +0,0 @@
diff -up R-4.0.0/src/main/machar.c.ppc64 R-4.0.0/src/main/machar.c
--- R-4.0.0/src/main/machar.c.ppc64 2020-06-02 14:42:18.741222048 -0400
+++ R-4.0.0/src/main/machar.c 2020-06-02 14:44:26.523106368 -0400
@@ -98,21 +98,22 @@ MACH_NAME(int *ibeta, int *it, int *irnd
{
volatile DTYPE a, b, beta, betain, betah, one,
t, temp, tempa, temp1, two, y, z, zero;
- int i, itemp, iz, j, k, mx, nxres;
+ int i, iz, j, k, mx, nxres;
one = 1;
two = one+one;
zero = one-one;
/* determine ibeta, beta ala malcolm. */
-
- a = one;
+ a = one; // a = <large> = 9.0072e+15 for 'double' is used later
do {
a = a + a;
temp = a + one;
temp1 = temp - a;
}
while(temp1 - one == zero);
+#ifdef _no_longer___did_overflow_ // on IBM PowerPPC ('Power 8')
+ int itemp;
b = one;
do {
b = b + b;
@@ -121,6 +122,9 @@ MACH_NAME(int *ibeta, int *it, int *irnd
}
while (itemp == 0);
*ibeta = itemp;
+#else
+ *ibeta = (int) FLT_RADIX;
+#endif
beta = *ibeta;
/* determine it, irnd */
diff -up R-4.0.0/src/main/platform.c.ppc64 R-4.0.0/src/main/platform.c
--- R-4.0.0/src/main/platform.c.ppc64 2020-06-02 14:44:40.940754817 -0400
+++ R-4.0.0/src/main/platform.c 2020-06-02 14:45:08.940072121 -0400
@@ -43,6 +43,7 @@
#include <Rinterface.h>
#include <Fileio.h>
#include <ctype.h> /* toupper */
+#include <float.h> // -> FLT_RADIX
#include <limits.h>
#include <string.h>
#include <stdlib.h> /* for realpath */

7
R-make-search-index.sh Executable file
View File

@ -0,0 +1,7 @@
#!/bin/bash
# This script used to do something, now it doesn't.
# Why are you reading this?
exit 0

492
R.spec
View File

@ -1,63 +1,6 @@
# We do not want this.
%define __brp_mangle_shebangs /usr/bin/true
%global runjavareconf 1
# lapack comes from openblas, whenever possible.
# We decided to implement this change in Fedora 31+ and EPEL-8 only.
# This was to minimize the impact on end-users who might have R modules
# installed locally with the old dependency on libRlapack.so
%if 0%{?fedora} >= 31
%global syslapack 1
%else
%if 0%{?rhel} && 0%{?rhel} >= 8
%global syslapack 1
%else
%global syslapack 0
%endif
%endif
%if 0%{?rhel} >= 8
%global openblas 1
%else
%if 0%{?rhel} == 7
%ifarch x86_64 %{ix86} armv7hl %{power64} aarch64
%global openblas 1
%else
%global openblas 0
%endif
%else
%if 0%{?fedora}
%global openblas 1
%else
%global openblas 0
%endif
%endif
%endif
%if 0%{?fedora} >= 33
%global flexiblas 1
%else
%global flexiblas 0
%endif
%if 0%{?fedora} >= 31
%global usemacros 1
%else
%if 0%{?rhel} && 0%{?rhel} >= 8
%global usemacros 1
%else
%global usemacros 0
%endif
%endif
%if 0%{?rhel} && 0%{?rhel} <= 6
%ifarch ppc64 ppc64le
%global runjavareconf 0
%endif
%endif
%ifarch x86_64
%global java_arch amd64
%else
@ -80,21 +23,6 @@
%global with_java_headless 1
%endif
# We need this on old EL for C++11 support.
%if 0%{?rhel} && 0%{?rhel} <= 7
%global use_devtoolset 1
%else
%global use_devtoolset 0
%endif
%if 0%{?rhel} == 7
%global dts_version 8
%endif
%if 0%{?rhel} == 6
%global dts_version 7
%endif
# Using lto breaks debuginfo.
# %%if 0%%{?fedora} >= 19
# %%global with_lto 1
@ -153,16 +81,30 @@
%global texi2any 1
%endif
%global major_version 4
%global minor_version 0
%global patch_version 3
%global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d)
%ifarch x86_64 %{ix86} armv7hl %{power64} aarch64
%if 0%{?rhel} >= 7
%global openblas 1
%else
%if 0%{?fedora} >= 23
%global openblas 1
%else
%global openblas 0
%endif
%endif
%else
%global openblas 0
%endif
Name: R
Version: %{major_version}.%{minor_version}.%{patch_version}
Version: 3.5.0
Release: 1%{?dist}
Summary: A language for data analysis and graphics
URL: http://www.r-project.org
Source0: https://cran.r-project.org/src/base/R-4/R-%{version}.tar.gz
Source0: https://cran.r-project.org/src/base/R-3/R-%{version}.tar.gz
Source1: macros.R
Source2: R-make-search-index.sh
%if %{texi2any}
# If we have texi2any 5.1+, we can generate the docs on the fly.
# If not, we're building for a very old target (RHEL 6 or older)
@ -179,14 +121,14 @@ Source106: https://cran.r-project.org/doc/FAQ/R-FAQ.html
%endif
%if %{zlibhack}
%global zlibv 1.2.11
%global bzipv 1.0.8
%global xzv 5.2.5
%global pcrev 8.44
%global curlv 7.72.0
%global bzipv 1.0.6
%global xzv 5.2.4
%global pcrev 8.42
%global curlv 7.59.0
Source1000: http://zlib.net/zlib-%{zlibv}.tar.gz
Source1001: https://www.sourceware.org/pub/bzip2/bzip2-%{bzipv}.tar.gz
Source1001: http://www.bzip.org/1.0.6/bzip2-%{bzipv}.tar.gz
Source1002: http://tukaani.org/xz/xz-%{xzv}.tar.bz2
Source1003: https://ftp.pcre.org/pub/pcre/pcre-%{pcrev}.tar.bz2
Source1003: ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-%{pcrev}.tar.bz2
Source1004: https://curl.haxx.se/download/curl-%{curlv}.tar.bz2
BuildRequires: glibc-devel
BuildRequires: groff
@ -208,15 +150,12 @@ BuildRequires: stunnel
# see https://bugzilla.redhat.com/show_bug.cgi?id=1324145
Patch1: R-3.3.0-fix-java_path-in-javareconf.patch
License: GPLv2+
Group: Applications/Engineering
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: pcre-devel, zlib-devel
%if 0%{modern}
# Fedora (at least rawhide) pulls this into the buildroot anyways, but lets be explicit for consistency
BuildRequires: pcre2-devel
%endif
%if 0%{?rhel}
# RHEL older than 6
%if 0%{?rhel} < 7
@ -243,26 +182,29 @@ BuildRequires: java
BuildRequires: tre-devel
BuildRequires: autoconf, automake, libtool
%endif
%if %{flexiblas}
BuildRequires: flexiblas-devel
%else
%if %{openblas}
BuildRequires: openblas-devel
%endif
%endif
%if %{syslapack}
%if !%{flexiblas}
%if !%{openblas}
# We use the bundled lapack and shim for BLAS now.
%if 0
%if 0%{?fedora} >= 21
BuildRequires: lapack-devel >= 3.5.0-7
BuildRequires: blas-devel >= 3.5.0-7
%else
%if 0%{?fedora} >= 19
BuildRequires: lapack-devel >= 3.4.2-7
BuildRequires: blas-devel >= 3.4.2-7
%else
BuildRequires: lapack-devel
BuildRequires: blas-devel >= 3.0
%endif
%endif
%endif
BuildRequires: libSM-devel, libX11-devel, libICE-devel, libXt-devel
BuildRequires: bzip2-devel, libXmu-devel, cairo-devel, libtiff-devel
BuildRequires: pango-devel, xz-devel
BuildRequires: gcc-objc, pango-devel, xz-devel
%if %{libicu}
BuildRequires: libicu-devel
%endif
@ -271,10 +213,6 @@ BuildRequires: less
BuildRequires: tex(inconsolata.sty)
BuildRequires: tex(upquote.sty)
%endif
%if %{use_devtoolset}
BuildRequires: devtoolset-%{dts_version}-toolchain
%endif
# R-devel will pull in R-core
Requires: R-devel = %{version}-%{release}
# libRmath-devel will pull in libRmath
@ -303,9 +241,8 @@ and called at run time.
%package core
Summary: The minimal R components necessary for a functional runtime
Requires: xdg-utils
# Bugzilla 1875165
Recommends: cups
Group: Applications/Engineering
Requires: xdg-utils, cups
# R inherits the compiler flags it was built with, hence we need this on hardened systems
%if 0%{hardening}
Requires: redhat-rpm-config
@ -324,64 +261,42 @@ Requires: sed, gawk, tex(latex), less, make, unzip
# Make sure we bring the new libRmath with us
Requires: libRmath%{?_isa} = %{version}-%{release}
%if !%{syslapack}
%if !%{flexiblas}
%if %{openblas}
Requires: openblas-Rblas
%endif
%endif
%endif
%if %{use_devtoolset}
# We need it for CXX11 and higher support.
Requires: devtoolset-%{dts_version}-toolchain
%endif
# This is our ABI provides to prevent mismatched installs.
# R packages should autogenerate a Requires: R(ABI) based on the R they were built against.
Provides: R(ABI) = %{major_version}.%{minor_version}
# These are the submodules that R-core provides. Sometimes R modules say they
# depend on one of these submodules rather than just R. These are provided for
# packager convenience.
%define add_submodule() %{lua:
local name = rpm.expand("%1")
local version = rpm.expand("%2")
local rpm_version = string.gsub(version, "-", ".")
print("Provides: R-" .. name .. " = " .. rpm_version .. "\\n")
print("Provides: R(" .. name .. ") = " .. version)
}
%add_submodule base %{version}
%add_submodule boot 1.3-25
%add_submodule class 7.3-17
%add_submodule cluster 2.1.0
%add_submodule codetools 0.2-16
%add_submodule compiler %{version}
%add_submodule datasets %{version}
%add_submodule foreign 0.8-80
%add_submodule graphics %{version}
%add_submodule grDevices %{version}
%add_submodule grid %{version}
%add_submodule KernSmooth 2.23-17
%add_submodule lattice 0.20-41
%add_submodule MASS 7.3-53
%add_submodule Matrix 1.2-18
Provides: R-base = %{version}
Provides: R-boot = 1.3.20
Provides: R-class = 7.3.14
Provides: R-cluster = 2.0.7.1
Provides: R-codetools = 0.2.15
Provides: R-datasets = %{version}
Provides: R-foreign = 0.8.70
Provides: R-graphics = %{version}
Provides: R-grDevices = %{version}
Provides: R-grid = %{version}
Provides: R-KernSmooth = 2.23.15
Provides: R-lattice = 0.20.35
Provides: R-MASS = 7.3.49
Provides: R-Matrix = 1.2.14
Obsoletes: R-Matrix < 0.999375-7
%add_submodule methods %{version}
%add_submodule mgcv 1.8-33
%add_submodule nlme 3.1-149
%add_submodule nnet 7.3-14
%add_submodule parallel %{version}
%add_submodule rpart 4.1-15
%add_submodule spatial 7.3-12
%add_submodule splines %{version}
%add_submodule stats %{version}
%add_submodule stats4 %{version}
%add_submodule survival 3.2-7
%add_submodule tcltk %{version}
%add_submodule tools %{version}
%add_submodule translations %{version}
%add_submodule utils %{version}
Provides: R-methods = %{version}
Provides: R-mgcv = 1.8.23
Provides: R-nlme = 3.1.137
Provides: R-nnet = 7.3.12
Provides: R-parallel = %{version}
Provides: R-rpart = 4.1.13
Provides: R-spatial = 7.3.11
Provides: R-splines = %{version}
Provides: R-stats = %{version}
Provides: R-stats4 = %{version}
Provides: R-survival = 2.41.3
Provides: R-tcltk = %{version}
Provides: R-tools = %{version}
Provides: R-utils = %{version}
%description core
A language and environment for statistical computing and graphics.
@ -399,26 +314,14 @@ and called at run time.
%package core-devel
Summary: Core files for development of R packages (no Java)
Group: Applications/Engineering
Requires: R-core = %{version}-%{release}
# You need all the BuildRequires for the development version
Requires: gcc-c++, gcc-gfortran, tex(latex), texinfo-tex
Requires: bzip2-devel, libX11-devel, zlib-devel
Requires: bzip2-devel, libX11-devel, pcre-devel, zlib-devel
Requires: tcl-devel, tk-devel, pkgconfig, xz-devel
# This may go away at some point, possibly R 3.6?
Requires: pcre-devel
%if 0%{modern}
# Configure picks this up, but despite linking to it, it does not seem to be used as of R 3.5.2.
Requires: pcre2-devel
%endif
%if %{syslapack}
%if %{flexiblas}
Requires: flexiblas-devel
%else
%if %{openblas}
Requires: openblas-devel
%endif
%endif
%endif
# No longer true.
# Requires: blas-devel >= 3.0, lapack-devel
%if %{modern}
Requires: libicu-devel
%endif
@ -443,7 +346,7 @@ Requires: tex(cm-super-ts1.enc)
Requires: qpdf
%endif
Provides: R-Matrix-devel = 1.2.18
Provides: R-Matrix-devel = 1.2.14
Obsoletes: R-Matrix-devel < 0.999375-7
%if %{modern}
@ -458,13 +361,11 @@ Install R-core-devel if you are going to develop or compile R packages.
%package devel
Summary: Full R development environment metapackage
%if %{usemacros}
Requires: R-rpm-macros
%endif
Requires: R-core-devel = %{version}-%{release}
%if %{modern}
Requires: R-java-devel = %{version}-%{release}
%else
Group: Development/Libraries
%endif
%description devel
@ -474,6 +375,7 @@ environment.
%if %{modern}
%package java
Summary: R with Fedora provided Java Runtime Environment
Group: Applications/Engineering
Requires(post): R-core = %{version}-%{release}
%if %{with_java_headless}
Requires: java-headless
@ -500,6 +402,7 @@ Fedora's openJDK.
%package java-devel
Summary: Development package for use with Java enabled R components
Group: Applications/Engineering
Requires(post): R-core-devel = %{version}-%{release}
Requires(post): java-devel
@ -510,6 +413,7 @@ that assume java is present and configured on the system.
%package -n libRmath
Summary: Standalone math library from the R project
Group: Development/Libraries
%description -n libRmath
A standalone library of mathematical and statistical functions derived
@ -517,6 +421,7 @@ from the R project. This package provides the shared libRmath library.
%package -n libRmath-devel
Summary: Headers from the R Standalone math library
Group: Development/Libraries
Requires: libRmath = %{version}-%{release}, pkgconfig
%description -n libRmath-devel
@ -525,6 +430,7 @@ from the R project. This package provides the libRmath header files.
%package -n libRmath-static
Summary: Static R Standalone math library
Group: Development/Libraries
Requires: libRmath-devel = %{version}-%{release}
%description -n libRmath-static
@ -595,9 +501,6 @@ make DESTDIR=%{_builddir}/%{name}-%{version}/curl-%{curlv}/target INSTALL="insta
popd
%endif
%if %{use_devtoolset}
. /opt/rh/devtoolset-%{dts_version}/enable
%endif
# Add PATHS to Renviron for R_LIBS_SITE
echo 'R_LIBS_SITE=${R_LIBS_SITE-'"'/usr/local/lib/R/site-library:/usr/local/lib/R/library:%{_libdir}/R/library:%{_datadir}/R/library'"'}' >> etc/Renviron.in
@ -656,28 +559,16 @@ export FCFLAGS="%{optflags} -ffat-lto-objects"
%else
export FCFLAGS="%{optflags}"
%endif
%if 0%{?fedora} >= 30
# gcc9 needs us to pass --no-optimize-sibling-calls to gfortran
export FCFLAGS="%{optflags} --no-optimize-sibling-calls"
export FFLAGS="%{optflags} --no-optimize-sibling-calls"
%endif
# RHEL 5 & 6 & 7 have a broken BLAS, so we need to use the bundled bits in R until
# they are fixed... and it doesn't look like it will ever be fixed in RHEL 5.
# https://bugzilla.redhat.com/show_bug.cgi?id=1117491
# https://bugzilla.redhat.com/show_bug.cgi?id=1117496
# https://bugzilla.redhat.com/show_bug.cgi?id=1117497
#
# On old RHEL, we use --enable-BLAS-shlib here. It generates a shared library
# We use --enable-BLAS-shlib here. It generates a shared library
# of the R bundled blas, that can be replaced by an optimized version.
# It also results in R using the bundled lapack copy.
%if %{flexiblas}
# avoid this check
sed -i '/"checking whether the BLAS is complete/i r_cv_complete_blas=yes' configure
%endif
( %configure \
%if 0%{?rhel} && 0%{?rhel} <= 5
--with-readline=no \
@ -686,22 +577,14 @@ sed -i '/"checking whether the BLAS is complete/i r_cv_complete_blas=yes' config
--with-system-tre \
%endif
--with-system-valgrind-headers \
%if %{syslapack}
%if 0%{?fedora}
--with-lapack \
%if %{flexiblas}
--with-blas="flexiblas" \
%else
--with-blas \
%endif
%else
--enable-BLAS-shlib \
%endif
--with-tcl-config=%{_libdir}/tclConfig.sh \
--with-tk-config=%{_libdir}/tkConfig.sh \
--enable-BLAS-shlib \
--enable-R-shlib \
--enable-prebuilt-html \
--enable-R-profiling \
--enable-memory-profiling \
%if %{with_lto}
%ifnarch %{arm}
--enable-lto \
@ -714,7 +597,8 @@ sed -i '/"checking whether the BLAS is complete/i r_cv_complete_blas=yes' config
%endif
rdocdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} \
rincludedir=%{_includedir}/R \
rsharedir=%{_datadir}/R) | tee CONFIGURE.log
rsharedir=%{_datadir}/R) \
> CONFIGURE.log
cat CONFIGURE.log | grep -A30 'R is now' - > CAPABILITIES
%if 0%{?zlibhack}
make V=1 CURL_CPPFLAGS='-DCURL_STATICLIB -I%{_builddir}/%{name}-%{version}/curl-%{curlv}/target%{_includedir}' CURL_LIBS=`%{_builddir}/%{name}-%{version}/curl-%{curlv}/target/usr/bin/curl-config --libs`
@ -735,24 +619,17 @@ sed -i 's|@eqn|@math|g' doc/manual/R-intro.texi
%if %{texi2any}
make MAKEINFO=texi2any info
%else
# Well, this used to work, but now rhel 6 is too old and buggy.
# make MAKEINFO=makeinfo info
make MAKEINFO=makeinfo info
%endif
%if %{texi2any}
# Convert to UTF-8
for i in doc/manual/R-intro.info doc/manual/R-FAQ.info doc/FAQ doc/manual/R-admin.info doc/manual/R-exts.info-1; do
iconv -f iso-8859-1 -t utf-8 -o $i{.utf8,}
mv $i{.utf8,}
done
%endif
%install
%if %{texi2any}
make DESTDIR=${RPM_BUILD_ROOT} install install-info
%else
make DESTDIR=${RPM_BUILD_ROOT} install
%endif
# And now, undo the hack. :P
%if 0%{?fedora} >= 19
mv doc/manual/R-exts.texi.spot doc/manual/R-exts.texi
@ -777,6 +654,14 @@ echo "%{_libdir}/R/lib" > $RPM_BUILD_ROOT/etc/ld.so.conf.d/%{name}-%{_arch}.conf
mkdir -p $RPM_BUILD_ROOT%{_datadir}/R/library
# Install rpm helper macros
mkdir -p $RPM_BUILD_ROOT%{macrosdir}/
install -m0644 %{SOURCE1} $RPM_BUILD_ROOT%{macrosdir}/
# Install rpm helper script
mkdir -p $RPM_BUILD_ROOT/usr/lib/rpm/
install -m0755 %{SOURCE2} $RPM_BUILD_ROOT/usr/lib/rpm/
# Fix multilib
touch -r README ${RPM_BUILD_ROOT}%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}}/CAPABILITIES
touch -r README doc/manual/*.pdf
@ -807,7 +692,7 @@ fi
if [ ! -d "$RPM_BUILD_ROOT%{_datadir}/texmf/tex/latex/R" ]; then
mkdir -p $RPM_BUILD_ROOT%{_datadir}/texmf/tex/latex
pushd $RPM_BUILD_ROOT%{_datadir}/texmf/tex/latex
ln -s %{_datadir}/R/texmf/tex/latex R
ln -s ../../../R/texmf/tex/latex R
popd
fi
@ -836,21 +721,16 @@ sed -i 's|:/builddir/build/BUILD/R-%{version}/curl-%{curlv}/target%{_libdir}/:/b
sed -i 's|/builddir/build/BUILD/R-%{version}/curl-%{curlv}/target%{_libdir}/:/builddir/build/BUILD/R-%{version}/curl-%{curlv}/target%{_libdir}||g' %{buildroot}%{_libdir}/R/etc/ldpaths
%endif
%if !%{syslapack}
%if !%{flexiblas}
%if %{openblas}
# Rename the R blas so.
mv %{buildroot}%{_libdir}/R/lib/libRblas.so %{buildroot}%{_libdir}/R/lib/libRrefblas.so
%endif
%endif
%endif
# okay, look. its very clear that upstream does not run the test suite on any non-intel architectures.
%check
%if 0%{?zlibhack}
# Most of these tests pass. Some don't. All pieces belong to you.
%else
%ifnarch ppc64 ppc64le armv7hl s390x aarch64
%ifnarch ppc64 ppc64le
# Needed by tests/ok-error.R, which will smash the stack on PPC64. This is the purpose of the test.
ulimit -s 16384
TZ="Europe/Paris" make check
@ -858,17 +738,23 @@ TZ="Europe/Paris" make check
%endif
%post core
# Create directory entries for info files
# (optional doc files, so we must check that they are installed)
for doc in admin exts FAQ intro lang; do
file=%{_infodir}/R-${doc}.info.gz
if [ -e $file ]; then
/sbin/install-info ${file} %{_infodir}/dir 2>/dev/null || :
fi
done
/sbin/ldconfig
%if %{runjavareconf}
R CMD javareconf \
JAVA_HOME=%{_jvmdir}/jre \
JAVA_CPPFLAGS='-I%{_jvmdir}/java/include\ -I%{_jvmdir}/java/include/linux' \
JAVA_LIBS='-L%{_jvmdir}/jre/lib/%{java_arch}/server \
-L%{_jvmdir}/jre/lib/%{java_arch}\ -L%{_jvmdir}/java/lib/%{java_arch}\ -L%{_jvmdir}/jre/lib/server \
-L%{_jvmdir}/jre/lib/%{java_arch}\ -L%{_jvmdir}/java/lib/%{java_arch} \
-L/usr/java/packages/lib/%{java_arch}\ -L/lib\ -L/usr/lib\ -ljvm' \
JAVA_LD_LIBRARY_PATH=%{_jvmdir}/jre/lib/%{java_arch}/server:%{_jvmdir}/jre/lib/%{java_arch}:%{_jvmdir}/java/lib/%{java_arch}:%{_jvmdir}/jre/lib/server:/usr/java/packages/lib/%{java_arch}:/lib:/usr/lib \
JAVA_LD_LIBRARY_PATH=%{_jvmdir}/jre/lib/%{java_arch}/server:%{_jvmdir}/jre/lib/%{java_arch}:%{_jvmdir}/java/lib/%{java_arch}:/usr/java/packages/lib/%{java_arch}:/lib:/usr/lib \
> /dev/null 2>&1 || exit 0
%endif
# With 2.10.0, we no longer need to do any of this.
@ -882,6 +768,18 @@ R CMD javareconf \
# Don't use .. based paths, substitute /usr/share/R
# sed -i "s!../../..!/usr/share/R!g" %{_docdir}/R-%{version}/html/search/index.txt
%preun core
if [ $1 = 0 ]; then
# Delete directory entries for info files (if they were installed)
for doc in admin exts FAQ intro lang; do
file=%{_infodir}/R-${doc}.info.gz
if [ -e ${file} ]; then
/sbin/install-info --delete R-${doc} %{_infodir}/dir 2>/dev/null || :
fi
done
fi
%postun core
/sbin/ldconfig
if [ $1 -eq 0 ] ; then
@ -893,40 +791,39 @@ fi
%if %{modern}
%post java
%if %{runjavareconf}
R CMD javareconf \
JAVA_HOME=%{_jvmdir}/jre \
JAVA_CPPFLAGS='-I%{_jvmdir}/java/include\ -I%{_jvmdir}/java/include/linux' \
JAVA_LIBS='-L%{_jvmdir}/jre/lib/%{java_arch}/server \
-L%{_jvmdir}/jre/lib/%{java_arch}\ -L%{_jvmdir}/java/lib/%{java_arch}\ -L%{_jvmdir}/jre/lib/server \
-L%{_jvmdir}/jre/lib/%{java_arch}\ -L%{_jvmdir}/java/lib/%{java_arch} \
-L/usr/java/packages/lib/%{java_arch}\ -L/lib\ -L/usr/lib\ -ljvm' \
JAVA_LD_LIBRARY_PATH=%{_jvmdir}/jre/lib/%{java_arch}/server:%{_jvmdir}/jre/lib/%{java_arch}:%{_jvmdir}/java/lib/%{java_arch}:%{_jvmdir}/jre/lib/server:/usr/java/packages/lib/%{java_arch}:/lib:/usr/lib \
JAVA_LD_LIBRARY_PATH=%{_jvmdir}/jre/lib/%{java_arch}/server:%{_jvmdir}/jre/lib/%{java_arch}:%{_jvmdir}/java/lib/%{java_arch}:/usr/java/packages/lib/%{java_arch}:/lib:/usr/lib \
> /dev/null 2>&1 || exit 0
%endif
%post java-devel
%if %{runjavareconf}
R CMD javareconf \
JAVA_HOME=%{_jvmdir}/jre \
JAVA_CPPFLAGS='-I%{_jvmdir}/java/include\ -I%{_jvmdir}/java/include/linux' \
JAVA_LIBS='-L%{_jvmdir}/jre/lib/%{java_arch}/server \
-L%{_jvmdir}/jre/lib/%{java_arch}\ -L%{_jvmdir}/java/lib/%{java_arch}\ -L%{_jvmdir}/jre/lib/server \
-L%{_jvmdir}/jre/lib/%{java_arch}\ -L%{_jvmdir}/java/lib/%{java_arch} \
-L/usr/java/packages/lib/%{java_arch}\ -L/lib\ -L/usr/lib\ -ljvm' \
JAVA_LD_LIBRARY_PATH=%{_jvmdir}/jre/lib/%{java_arch}/server:%{_jvmdir}/jre/lib/%{java_arch}:%{_jvmdir}/java/lib/%{java_arch}:%{_jvmdir}/jre/lib/server:/usr/java/packages/lib/%{java_arch}:/lib:/usr/lib \
JAVA_LD_LIBRARY_PATH=%{_jvmdir}/jre/lib/%{java_arch}/server:%{_jvmdir}/jre/lib/%{java_arch}:%{_jvmdir}/java/lib/%{java_arch}:/usr/java/packages/lib/%{java_arch}:/lib:/usr/lib \
> /dev/null 2>&1 || exit 0
%endif
%endif
%ldconfig_scriptlets -n libRmath
%post -n libRmath -p /sbin/ldconfig
%postun -n libRmath -p /sbin/ldconfig
%files
# Metapackage
%files core
%defattr(-, root, root, -)
%{_bindir}/R
%{_bindir}/Rscript
%{_datadir}/R/
%{_datadir}/texmf/tex/latex/R
%{_datadir}/texmf/
# Have to break this out for the translations
%dir %{_libdir}/R/
%{_libdir}/R/bin/
@ -972,7 +869,6 @@ R CMD javareconf \
%lang(de) %{_libdir}/R/library/boot/po/de/
%lang(en) %{_libdir}/R/library/boot/po/en*/
%lang(fr) %{_libdir}/R/library/boot/po/fr/
%lang(it) %{_libdir}/R/library/boot/po/it/
%lang(ko) %{_libdir}/R/library/boot/po/ko/
%lang(pl) %{_libdir}/R/library/boot/po/pl/
%lang(ru) %{_libdir}/R/library/boot/po/ru/
@ -992,7 +888,6 @@ R CMD javareconf \
%lang(de) %{_libdir}/R/library/class/po/de/
%lang(en) %{_libdir}/R/library/class/po/en*/
%lang(fr) %{_libdir}/R/library/class/po/fr/
%lang(it) %{_libdir}/R/library/class/po/it/
%lang(ko) %{_libdir}/R/library/class/po/ko/
%lang(pl) %{_libdir}/R/library/class/po/pl/
%{_libdir}/R/library/class/R/
@ -1044,7 +939,6 @@ R CMD javareconf \
%lang(de) %{_libdir}/R/library/foreign/po/de/
%lang(en) %{_libdir}/R/library/foreign/po/en*/
%lang(fr) %{_libdir}/R/library/foreign/po/fr/
%lang(it) %{_libdir}/R/library/foreign/po/it/
%lang(pl) %{_libdir}/R/library/foreign/po/pl/
%{_libdir}/R/library/foreign/R/
# graphics
@ -1066,7 +960,6 @@ R CMD javareconf \
%lang(de) %{_libdir}/R/library/KernSmooth/po/de/
%lang(en) %{_libdir}/R/library/KernSmooth/po/en*/
%lang(fr) %{_libdir}/R/library/KernSmooth/po/fr/
%lang(it) %{_libdir}/R/library/KernSmooth/po/it/
%lang(ko) %{_libdir}/R/library/KernSmooth/po/ko/
%lang(pl) %{_libdir}/R/library/KernSmooth/po/pl/
%{_libdir}/R/library/KernSmooth/R/
@ -1106,7 +999,6 @@ R CMD javareconf \
%lang(de) %{_libdir}/R/library/MASS/po/de/
%lang(en) %{_libdir}/R/library/MASS/po/en*/
%lang(fr) %{_libdir}/R/library/MASS/po/fr/
%lang(it) %{_libdir}/R/library/MASS/po/it/
%lang(ko) %{_libdir}/R/library/MASS/po/ko/
%lang(pl) %{_libdir}/R/library/MASS/po/pl/
%{_libdir}/R/library/MASS/R/
@ -1178,7 +1070,6 @@ R CMD javareconf \
%lang(de) %{_libdir}/R/library/nnet/po/de/
%lang(en) %{_libdir}/R/library/nnet/po/en*/
%lang(fr) %{_libdir}/R/library/nnet/po/fr/
%lang(it) %{_libdir}/R/library/nnet/po/it/
%lang(ko) %{_libdir}/R/library/nnet/po/ko/
%lang(pl) %{_libdir}/R/library/nnet/po/pl/
%{_libdir}/R/library/nnet/R/
@ -1219,7 +1110,6 @@ R CMD javareconf \
%lang(de) %{_libdir}/R/library/spatial/po/de/
%lang(en) %{_libdir}/R/library/spatial/po/en*/
%lang(fr) %{_libdir}/R/library/spatial/po/fr/
%lang(it) %{_libdir}/R/library/spatial/po/it/
%lang(ko) %{_libdir}/R/library/spatial/po/ko/
%lang(pl) %{_libdir}/R/library/spatial/po/pl/
%{_libdir}/R/library/spatial/ppdata/
@ -1243,15 +1133,16 @@ R CMD javareconf \
%{_libdir}/R/COPYING
# %%{_libdir}/R/NEWS*
%{_libdir}/R/SVN-REVISION
%if %{texi2any}
/usr/lib/rpm/R-make-search-index.sh
%{_infodir}/R-*.info*
%endif
%{macrosdir}/macros.R
%{_mandir}/man1/*
%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}}
%docdir %{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}}
/etc/ld.so.conf.d/*
%files core-devel
%defattr(-, root, root, -)
%{_libdir}/pkgconfig/libR.pc
%{_includedir}/R
# Symlink to %%{_includedir}/R/
@ -1269,144 +1160,23 @@ R CMD javareconf \
%endif
%files -n libRmath
%defattr(-, root, root, -)
%doc doc/COPYING
%{_libdir}/libRmath.so
%files -n libRmath-devel
%defattr(-, root, root, -)
%{_includedir}/Rmath.h
%{_libdir}/pkgconfig/libRmath.pc
%files -n libRmath-static
%defattr(-, root, root, -)
%{_libdir}/libRmath.a
%changelog
* Mon Oct 12 2020 Tom Callaway <spot@fedoraproject.org> - 4.0.3-1
- update to 4.0.3
* Tue Sep 8 2020 Tom Callaway <spot@fedoraproject.org> - 4.0.2-5
- make cups a "Recommends" instead of a "Requires" (bz1875165)
- even though f31 uses a forked spec file, reflect the systemlapack change there here
* Fri Aug 07 2020 Iñaki Úcar <iucar@fedoraproject.org> - 4.0.2-4
- https://fedoraproject.org/wiki/Changes/FlexiBLAS_as_BLAS/LAPACK_manager
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Wed Jul 15 2020 Tom Callaway <spot@fedoraproject.org> - 4.0.2-2
- add additional paths to find libjvm.so (OpenJDK 11+)
* Mon Jun 22 2020 Tom Callaway <spot@fedoraproject.org> - 4.0.2-1
- update to 4.0.2
* Tue Jun 16 2020 Tom Callaway <spot@fedoraproject.org> - 4.0.1-1
- update to 4.0.1
* Mon Jun 15 2020 Pete Walter <pwalter@fedoraproject.org> - 4.0.0-3
- Rebuild for ICU 67
* Tue Jun 2 2020 Tom Callaway <spot@fedoraproject.org> - 4.0.0-2
- apply upstream fix for ppc64 infinite loop
* Fri May 8 2020 Tom Callaway <spot@fedoraproject.org> - 4.0.0-1
- update to 4.0.0
NOTE: This major release update requires all installed R modules to be rebuilt in order to work.
To help with this, we've added an R(ABI) Provides/Requires setup.
* Mon Mar 2 2020 Tom Callaway <spot@fedoraproject.org> - 3.6.3-1
- update to 3.6.3
- conditionalize lapack changes from previous commits to Fedora 32+ and EPEL-8
* Tue Feb 18 2020 Tom Callaway <spot@fedoraproject.org> - 3.6.2-5
- fix openblas conditionals, openblas has wider arch support everywhere except el7
* Tue Feb 18 2020 Tom Callaway <spot@fedoraproject.org> - 3.6.2-4
- fix conditionals so that Fedora builds against system openblas for lapack/blas
and we only generate the R lapack/blas libs on RHEL 5-6-7 (where system lapack/openblas
is not reliable). Thanks to Dirk Eddelbuettel for pointing out the error.
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.6.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Wed Dec 18 2019 Tom Callaway <spot@fedoraproject.org> - 3.6.2-2
- adjust ppc64 patch to reflect upstream fix
* Thu Dec 12 2019 Tom Callaway <spot@fedoraproject.org> - 3.6.2-1
- update to 3.6.2
- disable tests on all non-intel arches
- fix powerpc64
* Fri Nov 01 2019 Pete Walter <pwalter@fedoraproject.org> - 3.6.1-3
- Rebuild for ICU 65
* Fri Aug 30 2019 Tom Callaway <spot@fedoraproject.org> - 3.6.1-2
- conditionalize macro usage so that it only happens on Fedora 31+ and EPEL-8
* Fri Aug 16 2019 Tom Callaway <spot@fedoraproject.org> - 3.6.1-1
- update to 3.6.1
* Sun Aug 11 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.6.0-5
- Remove unused and nonfunctional macros and helper script
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.6.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sun Jul 21 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.6.0-3
- Add automated dependency generator to R-devel
- Add standard Provides for bundled libraries
* Thu Jun 13 2019 Tom Callaway <spot@fedoraproject.org> - 3.6.0-2
- use devtoolset toolchain to compile on el6/el7 for C++11 support
* Wed May 29 2019 Tom Callaway <spot@fedoraproject.org> - 3.6.0-1
- update to 3.6.0
- use --no-optimize-sibling-calls for gfortran to work around issues
* Mon Mar 11 2019 Tom Callaway <spot@fedoraproject.org> - 3.5.3-1
- update to 3.5.3
* Sun Feb 17 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 3.5.2-5
- Rebuild for readline 8.0
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.5.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Wed Jan 23 2019 Pete Walter <pwalter@fedoraproject.org> - 3.5.2-3
- Rebuild for ICU 63
* Tue Jan 8 2019 Tom Callaway <spot@fedoraproject.org> - 3.5.2-2
- handle pcre2 use/detection
* Mon Jan 7 2019 Tom Callaway <spot@fedoraproject.org> - 3.5.2-1
- update to 3.5.2
* Fri Dec 7 2018 Tom Callaway <spot@fedoraproject.org> - 3.5.1-2
- use absolute path in symlink for latex dir (bz1594102)
* Mon Sep 10 2018 Tom Callaway <spot@fedoraproject.org> - 3.5.1-1
- update to 3.5.1
- update bundled curl to 7.61.1
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.5.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Tue Jul 10 2018 Pete Walter <pwalter@fedoraproject.org> - 3.5.0-5
- Rebuild for ICU 62
* Tue Jun 5 2018 Tom Callaway <spot@fedoraproject.org> - 3.5.0-4
- only own /usr/share/texmf/tex/latex/R ... not /usr/share/texmf
* Fri May 18 2018 Tom Callaway <spot@fedoraproject.org> - 3.5.0-3
- do not run javareconf on el6/ppc64 EVEN in the java subpackages
* Fri May 18 2018 Tom Callaway <spot@fedoraproject.org> - 3.5.0-2
- do not run javareconf on el6/ppc64
* Mon May 14 2018 Tom Callaway <spot@fedoraproject.org> - 3.5.0-1
- update to 3.5.0
- update xz bundle (rhel6 only)
- disable tests on armv7hl
- disable info builds on rhel 6
* Sun May 13 2018 Stefan O'Rear <sorear2@gmail.com> - 3.4.4-3
- Add riscv* to target CPU specs

9
macros.R Normal file
View File

@ -0,0 +1,9 @@
#
# RPM macros for R packaging
#
#
# Make R search index.txt
#
%_R_make_search_index /usr/lib/rpm/R-make-search-index.sh

View File

@ -1,2 +0,0 @@
[koji]
targets = epel8 epel8-playground

10
sources
View File

@ -1,6 +1,6 @@
SHA512 (zlib-1.2.11.tar.gz) = 73fd3fff4adeccd4894084c15ddac89890cd10ef105dd5e1835e1e9bbb6a49ff229713bd197d203edfa17c2727700fce65a2a235f07568212d820dca88b528ae
SHA512 (bzip2-1.0.8.tar.gz) = 083f5e675d73f3233c7930ebe20425a533feedeaaa9d8cc86831312a6581cefbe6ed0d08d2fa89be81082f2a5abdabca8b3c080bf97218a1bd59dc118a30b9f3
SHA512 (xz-5.2.5.tar.bz2) = 89e25ddf72427ee9608cbf2e9dbc24d592cb67a27f44ccf7d47e4d9405774444e9cfcd02ac4bcb92064860371ed31d3cfbecd5fe063f296ead607714c0a664a1
SHA512 (R-4.0.3.tar.gz) = 2493295f3052d077a4820c0f84ca1c37df262b8b357f62f2ea99dbfffea065861735a08fa2098421078e58e917c540e680a668546d450af734722b421669e058
SHA512 (pcre-8.44.tar.bz2) = f26d850aab5228799e58ac8c2306fb313889332c39e29b118ef1de57677c5c90f970d68d3f475cabc64f8b982a77f04eca990ff1057f3ccf5e19bd137997c4ac
SHA512 (curl-7.72.0.tar.bz2) = ca787b8890c485f3176b9d51b024d217d69f28c34ab84c4091a2fcbbe5f13346efd559e9bb507971aec0ecb6ec4ed5975d2722773015728b72d3f26a3574c312
SHA512 (bzip2-1.0.6.tar.gz) = 00ace5438cfa0c577e5f578d8a808613187eff5217c35164ffe044fbafdfec9e98f4192c02a7d67e01e5a5ccced630583ad1003c37697219b0f147343a3fdd12
SHA512 (pcre-8.42.tar.bz2) = b47b923108f6ee0c31409b79d0888314271b482a22590e164d02f21d2112fba22dd0342c24f9ba0f5fcc5b8c65550bad08c476e30a2fc79b34ecf4601ed82f3d
SHA512 (curl-7.59.0.tar.bz2) = 9b5586f443a3c9fed947debce86861a8dea0fbf59bf8838cfd72a0884f13073630cf9d369b5535a059d122decd738c652705567752517f5cb11148cc16f693fb
SHA512 (xz-5.2.4.tar.bz2) = 25a548c34a304ba51cdaa63813df0fa4ac2f3cf0ec6dc2d181ec5b62fe586090cd0f1c866ee7ba19e9b264ecabf9ca9f2f1dda7f95313546da4152f3cfaa7e6e
SHA512 (R-3.5.0.tar.gz) = c2703e892eb6f12ec7b536540b823d4ef011dddcbdca06c12d438bc1f07debae9dbd0f72abb6f0d4c577a3c74b155452ef527489cf023ed892109dd86c23bc37