From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-1173843-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(No client certificate requested)
	by finch.gentoo.org (Postfix) with ESMTPS id 397E11382C5
	for <garchives@archives.gentoo.org>; Sun, 24 May 2020 05:04:15 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id 372CBE0830;
	Sun, 24 May 2020 05:04:14 +0000 (UTC)
Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183])
	(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id C6416E0830
	for <gentoo-commits@lists.gentoo.org>; Sun, 24 May 2020 05:04:13 +0000 (UTC)
Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52])
	(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id DA3DB34F066
	for <gentoo-commits@lists.gentoo.org>; Sun, 24 May 2020 05:04:11 +0000 (UTC)
Received: from localhost.localdomain (localhost [IPv6:::1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id 7B779175
	for <gentoo-commits@lists.gentoo.org>; Sun, 24 May 2020 05:04:09 +0000 (UTC)
From: "Mark Wright" <gienah@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: 8bit
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "Mark Wright" <gienah@gentoo.org>
Message-ID: <1590296404.c50d7c8594743247a9df75e21ad0dd6dc3747911.gienah@gentoo>
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/R/
X-VCS-Repository: repo/gentoo
X-VCS-Files: dev-lang/R/Manifest dev-lang/R/R-4.0.0.ebuild
X-VCS-Directories: dev-lang/R/
X-VCS-Committer: gienah
X-VCS-Committer-Name: Mark Wright
X-VCS-Revision: c50d7c8594743247a9df75e21ad0dd6dc3747911
X-VCS-Branch: master
Date: Sun, 24 May 2020 05:04:09 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply
X-Archives-Salt: 317387de-50e0-4f47-90af-3886acb5dc93
X-Archives-Hash: 6775fcd2257344b23287353d6a3f0bb9

commit:     c50d7c8594743247a9df75e21ad0dd6dc3747911
Author:     Mark Wright <gienah <AT> gentoo <DOT> org>
AuthorDate: Sun May 24 05:00:04 2020 +0000
Commit:     Mark Wright <gienah <AT> gentoo <DOT> org>
CommitDate: Sun May 24 05:00:04 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c50d7c85

dev-lang/R: Thanks to Neil for help with bump to 4.0.0

Closes: https://bugs.gentoo.org/719210
Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Mark Wright <gienah <AT> gentoo.org>

 dev-lang/R/Manifest       |   1 +
 dev-lang/R/R-4.0.0.ebuild | 234 ++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 235 insertions(+)

diff --git a/dev-lang/R/Manifest b/dev-lang/R/Manifest
index 7fd12a8b015..18eb82e449d 100644
--- a/dev-lang/R/Manifest
+++ b/dev-lang/R/Manifest
@@ -1,3 +1,4 @@
 DIST R-3.4.1.tar.gz 30200109 BLAKE2B 03602e9a48759caee8ce047fa6273df7a54af089de4489e21953c0e3fc7bfdf720d924f1e0167d3dbf65f63ed42ac10dea8b45289b921cda1c0e6d25a0063ebb SHA512 19bd50c87dc001ef947c15c1760f27ac8986ff6b43c6d90d3093ae184e42963027ef06faf31ec57ac9e519af7a35a2f53f8ea23ef75d800ebbd02945cedc4651
 DIST R-3.6.3.tar.gz 33308185 BLAKE2B f82751e21d3b502132f8f27d4fc47a921fb085a50c3da3b45e08fbbdd1ab3d42e89b4fa6653a570c21176d79f492277b1d0b86c3c9f4da1386d8b6e4771d4d2c SHA512 9b1dc78922e431bd1af81e6e560b10ad04d121718f680fed32db735d561fd40ea6028759976722db11559f1a78fe684119b766f0567128cb2ee5003aa87a0931
+DIST R-4.0.0.tar.gz 33173947 BLAKE2B 6b67ba5b008f1fd3d5fa3c92805c1e206ece64e821124e3b2d6f72a550ed8084699916b88d41dcc1985b57a286518dcf63d240503aeb2ae7fe31e66c0d30396d SHA512 fa8b684fd0c8a1c9784b8e0e749b34141e513a83d4f3b6792cdf97826264191e7484f6705014974c9268570e717e1a1d39f6a88225fc751189b6f51e1a303163
 DIST R-78d6830e28ea90a046da79a9b4f70c39594bb6d6.bash_completion 13596 BLAKE2B 53338e4a1c4f68beb69247216e553dbcac47f660fbf032bfebf7a660e32d2cff5b11ed35411c52de7e1fd6e00bbf5b5ea19369a325fa0a38bd93d63dc3288cbd SHA512 9ccd19bb1b0c18a2f13035ccd6809447429e197e298fb4d1df808ef345d723b42f75a1b91c349f6dbb46e4a82e59ef33e11300c495d79b63d670d0c0f2b16a06

diff --git a/dev-lang/R/R-4.0.0.ebuild b/dev-lang/R/R-4.0.0.ebuild
new file mode 100644
index 00000000000..64a0a4e0b49
--- /dev/null
+++ b/dev-lang/R/R-4.0.0.ebuild
@@ -0,0 +1,234 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit bash-completion-r1 autotools eutils flag-o-matic fortran-2 multilib toolchain-funcs
+
+# latest git commit for R bash completion: https://github.com/deepayan/rcompletion
+BCPV=78d6830e28ea90a046da79a9b4f70c39594bb6d6
+
+DESCRIPTION="Language and environment for statistical computing and graphics"
+HOMEPAGE="http://www.r-project.org/"
+SRC_URI="
+	mirror://cran/src/base/R-4/${P}.tar.gz
+	https://raw.githubusercontent.com/deepayan/rcompletion/${BCPV}/bash_completion/R -> ${PN}-${BCPV}.bash_completion"
+
+LICENSE="|| ( GPL-2 GPL-3 ) LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~hppa ~ia64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="cairo doc icu java jpeg lapack minimal nls openmp perl png prefix profile readline static-libs test tiff tk X"
+REQUIRED_USE="png? ( || ( cairo X ) ) jpeg? ( || ( cairo X ) ) tiff? ( || ( cairo X ) )"
+
+# At least one package installation in the test suite requires TeX,
+# and will fail without it (bug #718056).
+BDEPEND="virtual/pkgconfig
+	doc? (
+		virtual/latex-base
+		dev-texlive/texlive-fontsrecommended
+	)
+	test? ( virtual/latex-base )"
+DEPEND="
+	app-arch/bzip2:0=
+	app-arch/xz-utils:0=
+	app-text/ghostscript-gpl
+	dev-libs/libpcre:3=
+	net-libs/libtirpc
+	net-misc/curl
+	virtual/blas:0
+	|| ( sys-apps/coreutils app-misc/realpath )
+	cairo? ( x11-libs/cairo:0=[X=] x11-libs/pango:0= )
+	icu? ( dev-libs/icu:= )
+	jpeg? ( virtual/jpeg:0 )
+	lapack? ( virtual/lapack:0 )
+	perl? ( dev-lang/perl )
+	png? ( media-libs/libpng:0= )
+	readline? ( sys-libs/readline:0= )
+	tiff? ( media-libs/tiff:0= )
+	tk? ( dev-lang/tk:0= )
+	X? ( x11-libs/libXmu:0= x11-misc/xdg-utils )"
+
+RDEPEND="${DEPEND}
+	sys-libs/zlib:0[minizip]
+	java? ( >=virtual/jre-1.5 )"
+
+RESTRICT="minimal? ( test )
+	!test? ( test )"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-3.4.1-parallel.patch
+	"${FILESDIR}"/${PN}-3.4.1-rmath-shared.patch
+	"${FILESDIR}"/${PN}-3.6.2-no-LDFLAGS-in-libR-pkg-config.patch
+	"${FILESDIR}"/${PN}-3.6.2-no-gzip-doc.patch
+)
+
+pkg_pretend() {
+	[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+	if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+		FORTRAN_NEED_OPENMP=1
+	fi
+	fortran-2_pkg_setup
+	filter-ldflags -Wl,-Bdirect -Bdirect
+	# avoid using existing R installation
+	unset R_HOME
+	# Temporary fix for bug #419761
+	if [[ ($(tc-getCC) == *gcc) && ($(gcc-version) == 4.7) ]]; then
+		append-flags -fno-ipa-cp-clone
+	fi
+}
+
+src_prepare() {
+	default
+
+	# fix packages.html for doc (gentoo bug #205103)
+	sed -e "s:../../../library:../../../../$(get_libdir)/R/library:g" \
+		-i src/library/tools/R/Rd.R || die
+
+	# fix Rscript path when installed (gentoo bug #221061)
+	sed -e "s:-DR_HOME='\"\$(rhome)\"':-DR_HOME='\"${EROOT}/usr/$(get_libdir)/${PN}\"':" \
+		-i src/unix/Makefile.in || die "sed unix Makefile failed"
+
+	# fix HTML links to manual (gentoo bug #273957)
+	sed -e 's:\.\./manual/:manual/:g' \
+		-i $(grep -Flr ../manual/ doc) || die "sed for HTML links failed"
+
+	use lapack && \
+		export LAPACK_LIBS="$($(tc-getPKG_CONFIG) --libs lapack)"
+
+	if use X; then
+		export R_BROWSER="$(type -p xdg-open)"
+		export R_PDFVIEWER="$(type -p xdg-open)"
+	fi
+	use perl && \
+		export PERL5LIB="${S}/share/perl:${PERL5LIB:+:}${PERL5LIB}"
+
+	# don't search /usr/local
+	sed -i -e '/FLAGS=.*\/local\//c\: # removed by ebuild' configure.ac || die
+	# Fix for Darwin (OS X)
+	if use prefix; then
+		if [[ ${CHOST} == *-darwin* ]] ; then
+			sed -e 's:-install_name libR.dylib:-install_name ${libdir}/R/lib/libR.dylib:' \
+				-e 's:-install_name libRlapack.dylib:-install_name ${libdir}/R/lib/libRlapack.dylib:' \
+				-e 's:-install_name libRblas.dylib:-install_name ${libdir}/R/lib/libRblas.dylib:' \
+				-e "/SHLIB_EXT/s/\.so/.dylib/" \
+				-i configure.ac || die
+			# sort of "undo" 2.14.1-rmath-shared.patch
+			sed -e "s:-Wl,-soname=libRmath.so:-install_name ${EROOT}/usr/$(get_libdir)/libRmath.dylib:" \
+				-i src/nmath/standalone/Makefile.in || die
+		else
+			append-ldflags -Wl,-rpath="${EROOT}/usr/$(get_libdir)/R/lib"
+		fi
+	fi
+	AT_M4DIR=m4
+	eautoreconf
+}
+
+src_configure() {
+	#	--with-system-tre \
+	# tre is patched from upstream
+	econf \
+		--enable-byte-compiled-packages \
+		--enable-R-shlib \
+		--disable-R-framework \
+		--with-blas="$($(tc-getPKG_CONFIG) --libs blas)" \
+		rdocdir="${EPREFIX}/usr/share/doc/${PF}" \
+		$(use_enable java) \
+		$(use_enable nls) \
+		$(use_enable openmp) \
+		$(use_enable profile R-profiling) \
+		$(use_enable profile memory-profiling) \
+		$(use_enable static-libs static) \
+		$(use_enable static-libs R-static-lib) \
+		$(use_with cairo) \
+		$(use_with icu ICU) \
+		$(use_with jpeg jpeglib) \
+		$(use_with lapack) \
+		$(use_with !minimal recommended-packages) \
+		$(use_with png libpng) \
+		$(use_with readline) \
+		$(use_with tiff libtiff) \
+		$(use_with tk tcltk) \
+		$(use_with tk tk-config "${EPREFIX}"/usr/$(get_libdir)/tkConfig.sh) \
+		$(use_with tk tcl-config "${EPREFIX}"/usr/$(get_libdir)/tclConfig.sh) \
+		$(use_with X x)
+}
+
+src_compile() {
+	export VARTEXFONTS="${T}/fonts"
+	emake AR="$(tc-getAR)"
+	emake -C src/nmath/standalone \
+		shared $(use static-libs && echo static) AR="$(tc-getAR)"
+	use doc && emake info pdf
+}
+
+src_install() {
+	default
+	emake -j1 -C src/nmath/standalone DESTDIR="${D}" install
+
+	if use doc; then
+		emake DESTDIR="${D}" install-info install-pdf
+		dosym ../manual /usr/share/doc/${PF}/html/manual
+	fi
+
+	cat > 99R <<-EOF
+		LDPATH=${EROOT}/usr/$(get_libdir)/${PN}/lib
+		R_HOME=${EROOT}/usr/$(get_libdir)/${PN}
+	EOF
+	doenvd 99R
+	newbashcomp "${DISTDIR}"/${PN}-${BCPV}.bash_completion ${PN}
+	# The buildsystem has a different understanding of install_names than
+	# we require.  Since it builds modules like shared objects (wrong), many
+	# objects (all modules) get an incorrect install_name.  Fixing the build
+	# system here is not really trivial.
+	if [[ ${CHOST} == *-darwin* ]] ; then
+		local mod
+		pushd "${ED}"/usr/$(get_libdir)/R > /dev/null
+		for mod in $(find . -name "*.dylib") ; do
+			mod=${mod#./}
+			install_name_tool -id "${EPREFIX}/usr/$(get_libdir)/R/${mod}" \
+				"${mod}"
+		done
+		popd > /dev/null
+	fi
+
+	# Users are encouraged to access some of the the R documentation
+	# interactively, through functions like "contributors()" that
+	# tries to open the "AUTHORS" file. Other files can be accessed
+	# by name with RShowDoc(), and the documentation for e.g. license()
+	# and RShowDoc() suggests a few of these names. Here we try to
+	# collect as many names as possible that a user might actually
+	# try to view through R, because if we don't decompress them,
+	# then R doesn't know what to do with 'em. Bug #556706.
+	INTERACTIVE_DOCS=(
+		AUTHORS
+		COPYING
+		FAQ
+		NEWS
+		THANKS
+	)
+
+	# Other data sources that are shipped as "documentation," but which
+	# need to be accessible via their original unmolested filenames.
+	INTERACTIVE_DATA=(
+		BioC_mirrors.csv
+		CRAN_mirrors.csv
+		KEYWORDS.db
+		NEWS.rds
+	)
+
+	NOCOMPRESS_DOCS=( "${INTERACTIVE_DOCS[@]}" "${INTERACTIVE_DATA[@]}" )
+
+	for f in "${NOCOMPRESS_DOCS[@]}"; do
+		docompress -x "/usr/share/doc/${PF}/${f}"
+	done
+}
+
+pkg_postinst() {
+	if use java; then
+		einfo "Re-initializing java paths for ${P}"
+		R CMD javareconf
+	fi
+}