public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Hans de Graaff" <graaff@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/ruby/
Date: Sun, 24 Oct 2021 08:05:53 +0000 (UTC)	[thread overview]
Message-ID: <1635062748.2e7dcbb185136614583f05167cdf7e82ced45144.graaff@gentoo> (raw)

commit:     2e7dcbb185136614583f05167cdf7e82ced45144
Author:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 24 06:49:56 2021 +0000
Commit:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
CommitDate: Sun Oct 24 08:05:48 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2e7dcbb1

dev-lang/ruby: reverse unbundling of did_you_mean

There are too many hardcoded assumptions about did_you_mean being
bundled in core tools like rubygems, bundler, and rdoc. Fixing these is
not possible without patching these tools and that brings us further
from upstream, so instead this unbundling is now reversed.

Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Hans de Graaff <graaff <AT> gentoo.org>

 dev-lang/ruby/ruby-2.7.4-r1.ebuild | 267 +++++++++++++++++++++++++++++++++++++
 dev-lang/ruby/ruby-3.0.2-r1.ebuild | 267 +++++++++++++++++++++++++++++++++++++
 2 files changed, 534 insertions(+)

diff --git a/dev-lang/ruby/ruby-2.7.4-r1.ebuild b/dev-lang/ruby/ruby-2.7.4-r1.ebuild
new file mode 100644
index 00000000000..1941ac0252c
--- /dev/null
+++ b/dev-lang/ruby/ruby-2.7.4-r1.ebuild
@@ -0,0 +1,267 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic multilib
+
+MY_P="${PN}-$(ver_cut 1-3)"
+S=${WORKDIR}/${MY_P}
+
+SLOT=$(ver_cut 1-2)
+MY_SUFFIX=$(ver_rs 1 '' ${SLOT})
+RUBYVERSION=${SLOT}.0
+
+DESCRIPTION="An object-oriented scripting language"
+HOMEPAGE="https://www.ruby-lang.org/"
+SRC_URI="https://cache.ruby-lang.org/pub/ruby/${SLOT}/${MY_P}.tar.xz"
+
+LICENSE="|| ( Ruby-BSD BSD-2 )"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="berkdb debug doc examples gdbm ipv6 jemalloc jit +rdoc rubytests socks5 +ssl static-libs systemtap tk xemacs"
+
+RDEPEND="
+	berkdb? ( sys-libs/db:= )
+	gdbm? ( sys-libs/gdbm:= )
+	jemalloc? ( dev-libs/jemalloc:= )
+	jit? ( || ( sys-devel/gcc:* sys-devel/clang:* ) )
+	ssl? (
+		dev-libs/openssl:0=
+	)
+	socks5? ( >=net-proxy/dante-1.1.13 )
+	systemtap? ( dev-util/systemtap )
+	tk? (
+		dev-lang/tcl:0=[threads]
+		dev-lang/tk:0=[threads]
+	)
+	dev-libs/libyaml
+	dev-libs/libffi:=
+	sys-libs/readline:0=
+	sys-libs/zlib
+	virtual/libcrypt:=
+	>=app-eselect/eselect-ruby-20191222
+"
+
+DEPEND="${RDEPEND}"
+
+BUNDLED_GEMS="
+	>=dev-ruby/minitest-5.13.0[ruby_targets_ruby27]
+	>=dev-ruby/net-telnet-0.2.0[ruby_targets_ruby27]
+	>=dev-ruby/power_assert-1.1.7[ruby_targets_ruby27]
+	>=dev-ruby/rake-13.0.1[ruby_targets_ruby27]
+	>=dev-ruby/test-unit-3.3.4[ruby_targets_ruby27]
+	>=dev-ruby/xmlrpc-0.3.0[ruby_targets_ruby27]
+"
+
+PDEPEND="
+	${BUNDLED_GEMS}
+	virtual/rubygems[ruby_targets_ruby27]
+	>=dev-ruby/bundler-2.1.4[ruby_targets_ruby27]
+	>=dev-ruby/did_you_mean-1.3.1[ruby_targets_ruby27]
+	>=dev-ruby/json-2.0.2[ruby_targets_ruby27]
+	rdoc? ( >=dev-ruby/rdoc-6.1.2[ruby_targets_ruby27] )
+	xemacs? ( app-xemacs/ruby-modes )"
+
+src_prepare() {
+	eapply "${FILESDIR}"/2.7/{003,010}*.patch
+
+	if use elibc_musl ; then
+		eapply "${FILESDIR}"/2.7/{900,901}-musl-*.patch
+	fi
+
+	# Reset time on patched gem_prelude.rb to avoid the need for a base
+	# ruby during bootstrapping, bug 787137
+	touch -t 202001010000 gem_prelude.rb || die
+
+	einfo "Unbundling gems..."
+	cd "$S"
+	# Remove bundled gems that we will install via PDEPEND, bug
+	# 539700.
+	rm -fr gems/* || die
+	# Don't install CLI tools since they will clash with the gem
+	rm -f bin/{racc,racc2y,y2racc} || die
+	sed -i -e '/executables/ s:^:#:' lib/racc/racc.gemspec || die
+
+	einfo "Removing bundled libraries..."
+	rm -fr ext/fiddle/libffi-3.2.1 || die
+
+	if use prefix ; then
+		# Fix hardcoded SHELL var in mkmf library
+		sed -i -e "s#\(SHELL = \).*#\1${EPREFIX}/bin/sh#" lib/mkmf.rb || die
+
+		if [[ ${CHOST} == *darwin* ]] ; then
+			# avoid symlink loop on Darwin (?!)
+			sed -i \
+				-e '/LIBRUBY_ALIASES=/s/lib$(RUBY_INSTALL_NAME).$(SOEXT)//' \
+				configure.ac || die
+
+			# make ar/libtool hack for Darwin work
+			sed -i \
+				-e "s/ac_cv_prog_ac_ct_AR='libtool/ac_cv_prog_AR='${CHOST}-libtool/" \
+				configure.ac || die
+		fi
+	fi
+
+	eapply_user
+
+	eautoreconf
+}
+
+src_configure() {
+	local modules= myconf=
+
+	# -fomit-frame-pointer makes ruby segfault, see bug #150413.
+	filter-flags -fomit-frame-pointer
+	# In many places aliasing rules are broken; play it safe
+	# as it's risky with newer compilers to leave it as it is.
+	append-flags -fno-strict-aliasing
+
+	# Socks support via dante
+	if use socks5 ; then
+		# Socks support can't be disabled as long as SOCKS_SERVER is
+		# set and socks library is present, so need to unset
+		# SOCKS_SERVER in that case.
+		unset SOCKS_SERVER
+	fi
+
+	# Increase GC_MALLOC_LIMIT if set (default is 8000000)
+	if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
+		append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
+	fi
+
+	# ipv6 hack, bug 168939. Needs --enable-ipv6.
+	use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
+
+	# Determine which modules *not* to build depending in the USE flags.
+	if ! use berkdb ; then
+		modules="${modules},dbm"
+	fi
+	if ! use gdbm ; then
+		modules="${modules},gdbm"
+	fi
+	if ! use ssl ; then
+		modules="${modules},openssl"
+	fi
+	if ! use tk ; then
+		modules="${modules},tk"
+	fi
+
+	# Provide an empty LIBPATHENV because we disable rpath but we do not
+	# need LD_LIBRARY_PATH by default since that breaks USE=multitarget
+	# #564272
+	INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
+		--program-suffix=${MY_SUFFIX} \
+		--with-soname=ruby${MY_SUFFIX} \
+		--with-readline-dir="${EPREFIX}"/usr \
+		--enable-shared \
+		--enable-pthread \
+		--disable-rpath \
+		--with-out-ext="${modules}" \
+		$(use_with jemalloc jemalloc) \
+		$(use_enable jit jit-support ) \
+		$(use_enable socks5 socks) \
+		$(use_enable systemtap dtrace) \
+		$(use_enable doc install-doc) \
+		--enable-ipv6 \
+		$(use_enable static-libs static) \
+		$(use_enable static-libs install-static-library) \
+		$(use_with static-libs static-linked-ext) \
+		$(use_enable debug) \
+		${myconf} \
+		--enable-option-checking=no
+
+	# Makefile is broken because it lacks -ldl
+	rm -rf ext/-test-/popen_deadlock || die
+}
+
+src_compile() {
+	emake V=1 EXTLDFLAGS="${LDFLAGS}" MJIT_CFLAGS="${CFLAGS}" MJIT_OPTFLAGS="" MJIT_DEBUGFLAGS=""
+}
+
+src_test() {
+	emake -j1 V=1 test
+
+	elog "Ruby's make test has been run. Ruby also ships with a make check"
+	elog "that cannot be run until after ruby has been installed."
+	elog
+	if use rubytests; then
+		elog "You have enabled rubytests, so they will be installed to"
+		elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
+		elog "than root, and you must place them into a writeable directory."
+		elog "Then call: "
+		elog
+		elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
+	else
+		elog "Enable the rubytests USE flag to install the make check tests"
+	fi
+}
+
+src_install() {
+	# Remove the remaining bundled gems. We do this late in the process
+	# since they are used during the build to e.g. create the
+	# documentation.
+	einfo "Removing default gems before installation"
+	rm -rf lib/bundler* lib/rdoc/rdoc.gemspec || die
+
+	# Ruby is involved in the install process, we don't want interference here.
+	unset RUBYOPT
+
+	local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
+
+	LD_LIBRARY_PATH="${S}:${ED}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
+
+	if [[ ${CHOST} == *darwin* ]] ; then
+		DYLD_LIBRARY_PATH="${S}:${ED}/usr/$(get_libdir)${DYLD_LIBRARY_PATH+:}${DYLD_LIBRARY_PATH}"
+		export DYLD_LIBRARY_PATH
+	fi
+
+	RUBYLIB="${S}:${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
+	for d in $(find "${S}/ext" -type d) ; do
+		RUBYLIB="${RUBYLIB}:$d"
+	done
+	export LD_LIBRARY_PATH RUBYLIB
+
+	# Create directory for the default gems
+	local gem_home="${EPREFIX}/usr/$(get_libdir)/ruby/gems/${RUBYVERSION}"
+	mkdir -p "${D}/${gem_home}" || die "mkdir gem home failed"
+
+	emake V=1 DESTDIR="${D}" GEM_DESTDIR=${gem_home} install
+
+	# Remove installed rubygems and rdoc copy
+	rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
+	rm -rf "${ED}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
+	rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
+	rm -rf "${ED}/usr/bin/"{bundle,bundler,ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
+
+	if use doc; then
+		emake DESTDIR="${D}" GEM_DESTDIR=${gem_home} install-doc
+	fi
+
+	if use examples; then
+		dodoc -r sample
+	fi
+
+	dodoc ChangeLog NEWS doc/NEWS* README*
+
+	if use rubytests; then
+		pushd test
+		insinto /usr/share/${PN}-${SLOT}/test
+		doins -r .
+		popd
+	fi
+}
+
+pkg_postinst() {
+	if [[ ! -n $(readlink "${EROOT}"/usr/bin/ruby) ]] ; then
+		eselect ruby set ruby${MY_SUFFIX}
+	fi
+
+	elog
+	elog "To switch between available Ruby profiles, execute as root:"
+	elog "\teselect ruby set ruby(23|24|...)"
+	elog
+}
+
+pkg_postrm() {
+	eselect ruby cleanup
+}

diff --git a/dev-lang/ruby/ruby-3.0.2-r1.ebuild b/dev-lang/ruby/ruby-3.0.2-r1.ebuild
new file mode 100644
index 00000000000..16eea1190ab
--- /dev/null
+++ b/dev-lang/ruby/ruby-3.0.2-r1.ebuild
@@ -0,0 +1,267 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic multilib
+
+MY_P="${PN}-$(ver_cut 1-3)"
+S=${WORKDIR}/${MY_P}
+
+SLOT=$(ver_cut 1-2)
+MY_SUFFIX=$(ver_rs 1 '' ${SLOT})
+RUBYVERSION=${SLOT}.0
+
+DESCRIPTION="An object-oriented scripting language"
+HOMEPAGE="https://www.ruby-lang.org/"
+SRC_URI="https://cache.ruby-lang.org/pub/ruby/${SLOT}/${MY_P}.tar.xz"
+
+LICENSE="|| ( Ruby-BSD BSD-2 )"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="berkdb debug doc examples gdbm ipv6 jemalloc jit +rdoc rubytests socks5 +ssl static-libs systemtap tk xemacs"
+
+RDEPEND="
+	berkdb? ( sys-libs/db:= )
+	gdbm? ( sys-libs/gdbm:= )
+	jemalloc? ( dev-libs/jemalloc:= )
+	jit? ( || ( sys-devel/gcc:* sys-devel/clang:* ) )
+	ssl? (
+		dev-libs/openssl:0=
+	)
+	socks5? ( >=net-proxy/dante-1.1.13 )
+	systemtap? ( dev-util/systemtap )
+	tk? (
+		dev-lang/tcl:0=[threads]
+		dev-lang/tk:0=[threads]
+	)
+	dev-libs/libyaml
+	dev-libs/libffi:=
+	sys-libs/readline:0=
+	sys-libs/zlib
+	virtual/libcrypt:=
+	>=app-eselect/eselect-ruby-20201225
+"
+
+DEPEND="${RDEPEND}"
+
+BUNDLED_GEMS="
+	>=dev-ruby/minitest-5.14.2[ruby_targets_ruby30]
+	>=dev-ruby/power_assert-1.2.0[ruby_targets_ruby30]
+	>=dev-ruby/rake-13.0.3[ruby_targets_ruby30]
+	>=dev-ruby/rbs-1.0.0[ruby_targets_ruby30]
+	>=dev-ruby/rexml-3.2.4[ruby_targets_ruby30]
+	>=dev-ruby/rss-0.2.9[ruby_targets_ruby30]
+	>=dev-ruby/test-unit-3.3.7[ruby_targets_ruby30]
+	>=dev-ruby/typeprof-0.11.0[ruby_targets_ruby30]
+"
+
+PDEPEND="
+	${BUNDLED_GEMS}
+	virtual/rubygems[ruby_targets_ruby30]
+	>=dev-ruby/bundler-2.2.15[ruby_targets_ruby30]
+	>=dev-ruby/did_you_mean-1.5.0[ruby_targets_ruby30]
+	>=dev-ruby/json-2.5.1[ruby_targets_ruby30]
+	rdoc? ( >=dev-ruby/rdoc-6.3.0[ruby_targets_ruby30] )
+	xemacs? ( app-xemacs/ruby-modes )"
+
+src_prepare() {
+	eapply "${FILESDIR}"/"${SLOT}"/010*.patch
+
+	if use elibc_musl ; then
+		eapply "${FILESDIR}"/3.0/900-musl-*.patch
+		eapply "${FILESDIR}"/2.7/901-musl-*.patch
+	fi
+
+	einfo "Unbundling gems..."
+	cd "$S"
+	# Remove bundled gems that we will install via PDEPEND, bug
+	# 539700.
+	rm -fr gems/* || die
+	touch gems/bundled_gems || die
+	# Don't install CLI tools since they will clash with the gem
+	rm -f bin/{racc,racc2y,y2racc} || die
+	sed -i -e '/executables/ s:^:#:' lib/racc/racc.gemspec || die
+
+	einfo "Removing bundled libraries..."
+	rm -fr ext/fiddle/libffi-3.2.1 || die
+
+	if use prefix ; then
+		# Fix hardcoded SHELL var in mkmf library
+		sed -i -e "s#\(SHELL = \).*#\1${EPREFIX}/bin/sh#" lib/mkmf.rb || die
+
+		if [[ ${CHOST} == *darwin* ]] ; then
+			# avoid symlink loop on Darwin (?!)
+			sed -i \
+				-e '/LIBRUBY_ALIASES=/s/lib$(RUBY_INSTALL_NAME).$(SOEXT)//' \
+				configure.ac || die
+
+			# make ar/libtool hack for Darwin work
+			sed -i \
+				-e "s/ac_cv_prog_ac_ct_AR='libtool/ac_cv_prog_AR='${CHOST}-libtool/" \
+				configure.ac || die
+		fi
+	fi
+
+	eapply_user
+
+	eautoreconf
+}
+
+src_configure() {
+	local modules= myconf=
+
+	# -fomit-frame-pointer makes ruby segfault, see bug #150413.
+	filter-flags -fomit-frame-pointer
+	# In many places aliasing rules are broken; play it safe
+	# as it's risky with newer compilers to leave it as it is.
+	append-flags -fno-strict-aliasing
+
+	# Socks support via dante
+	if use socks5 ; then
+		# Socks support can't be disabled as long as SOCKS_SERVER is
+		# set and socks library is present, so need to unset
+		# SOCKS_SERVER in that case.
+		unset SOCKS_SERVER
+	fi
+
+	# Increase GC_MALLOC_LIMIT if set (default is 8000000)
+	if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
+		append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
+	fi
+
+	# ipv6 hack, bug 168939. Needs --enable-ipv6.
+	use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
+
+	# Determine which modules *not* to build depending in the USE flags.
+	if ! use berkdb ; then
+		modules="${modules},dbm"
+	fi
+	if ! use gdbm ; then
+		modules="${modules},gdbm"
+	fi
+	if ! use ssl ; then
+		modules="${modules},openssl"
+	fi
+	if ! use tk ; then
+		modules="${modules},tk"
+	fi
+
+	# Provide an empty LIBPATHENV because we disable rpath but we do not
+	# need LD_LIBRARY_PATH by default since that breaks USE=multitarget
+	# #564272
+	INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
+		--program-suffix=${MY_SUFFIX} \
+		--with-soname=ruby${MY_SUFFIX} \
+		--with-readline-dir="${EPREFIX}"/usr \
+		--enable-shared \
+		--enable-pthread \
+		--disable-rpath \
+		--with-out-ext="${modules}" \
+		$(use_with jemalloc jemalloc) \
+		$(use_enable jit jit-support ) \
+		$(use_enable socks5 socks) \
+		$(use_enable systemtap dtrace) \
+		$(use_enable doc install-doc) \
+		--enable-ipv6 \
+		$(use_enable static-libs static) \
+		$(use_enable static-libs install-static-library) \
+		$(use_with static-libs static-linked-ext) \
+		$(use_enable debug) \
+		${myconf} \
+		--enable-option-checking=no
+
+	# Makefile is broken because it lacks -ldl
+	rm -rf ext/-test-/popen_deadlock || die
+}
+
+src_compile() {
+	emake V=1 EXTLDFLAGS="${LDFLAGS}" MJIT_CFLAGS="${CFLAGS}" MJIT_OPTFLAGS="" MJIT_DEBUGFLAGS=""
+}
+
+src_test() {
+	emake -j1 V=1 test
+
+	elog "Ruby's make test has been run. Ruby also ships with a make check"
+	elog "that cannot be run until after ruby has been installed."
+	elog
+	if use rubytests; then
+		elog "You have enabled rubytests, so they will be installed to"
+		elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
+		elog "than root, and you must place them into a writeable directory."
+		elog "Then call: "
+		elog
+		elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
+	else
+		elog "Enable the rubytests USE flag to install the make check tests"
+	fi
+}
+
+src_install() {
+	# Remove the remaining bundled gems. We do this late in the process
+	# since they are used during the build to e.g. create the
+	# documentation.
+	einfo "Removing default gems before installation"
+	rm -rf lib/bundler* lib/rdoc/rdoc.gemspec || die
+
+	# Ruby is involved in the install process, we don't want interference here.
+	unset RUBYOPT
+
+	local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
+
+	LD_LIBRARY_PATH="${S}:${ED}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
+
+	if [[ ${CHOST} == *darwin* ]] ; then
+		DYLD_LIBRARY_PATH="${S}:${ED}/usr/$(get_libdir)${DYLD_LIBRARY_PATH+:}${DYLD_LIBRARY_PATH}"
+		export DYLD_LIBRARY_PATH
+	fi
+
+	RUBYLIB="${S}:${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
+	for d in $(find "${S}/ext" -type d) ; do
+		RUBYLIB="${RUBYLIB}:$d"
+	done
+	export LD_LIBRARY_PATH RUBYLIB
+
+	# Create directory for the default gems
+	local gem_home="${EPREFIX}/usr/$(get_libdir)/ruby/gems/${RUBYVERSION}"
+	mkdir -p "${D}/${gem_home}" || die "mkdir gem home failed"
+
+	emake V=1 DESTDIR="${D}" GEM_DESTDIR=${gem_home} install
+
+	# Remove installed rubygems and rdoc copy
+	rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
+	rm -rf "${ED}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
+	rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
+	rm -rf "${ED}/usr/bin/"{bundle,bundler,ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
+
+	if use doc; then
+		emake DESTDIR="${D}" GEM_DESTDIR=${gem_home} install-doc
+	fi
+
+	if use examples; then
+		dodoc -r sample
+	fi
+
+	dodoc ChangeLog NEWS.md doc/NEWS* README*
+
+	if use rubytests; then
+		pushd test
+		insinto /usr/share/${PN}-${SLOT}/test
+		doins -r .
+		popd
+	fi
+}
+
+pkg_postinst() {
+	if [[ ! -n $(readlink "${EROOT}"/usr/bin/ruby) ]] ; then
+		eselect ruby set ruby${MY_SUFFIX}
+	fi
+
+	elog
+	elog "To switch between available Ruby profiles, execute as root:"
+	elog "\teselect ruby set ruby(23|24|...)"
+	elog
+}
+
+pkg_postrm() {
+	eselect ruby cleanup
+}


             reply	other threads:[~2021-10-24  8:05 UTC|newest]

Thread overview: 460+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-24  8:05 Hans de Graaff [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-11-12 12:37 [gentoo-commits] repo/gentoo:master commit in: dev-lang/ruby/ Hans de Graaff
2024-11-09  8:14 Matt Jolly
2024-11-05  6:51 Hans de Graaff
2024-11-05  6:51 Hans de Graaff
2024-11-05  6:51 Hans de Graaff
2024-11-01  6:37 Hans de Graaff
2024-10-31 17:05 Arthur Zamarin
2024-10-31 13:51 Sam James
2024-10-31 13:51 Sam James
2024-09-30 18:31 Fabian Groffen
2024-09-11  0:15 Sam James
2024-09-04  5:35 Hans de Graaff
2024-08-31  2:49 Sam James
2024-08-31  2:23 Sam James
2024-08-17  7:24 Hans de Graaff
2024-08-16  8:22 Hans de Graaff
2024-08-16  7:56 Arthur Zamarin
2024-08-16  7:56 Arthur Zamarin
2024-08-16  7:56 Arthur Zamarin
2024-08-16  7:56 Arthur Zamarin
2024-08-16  5:07 Sam James
2024-07-28  7:26 Hans de Graaff
2024-07-27  8:12 Hans de Graaff
2024-07-17  4:38 Viorel Munteanu
2024-07-12  6:21 Ionen Wolkens
2024-07-12  6:21 Ionen Wolkens
2024-07-10  7:36 Hans de Graaff
2024-07-09 11:29 Hans de Graaff
2024-07-09  6:03 Hans de Graaff
2024-07-09  6:02 Hans de Graaff
2024-06-17 11:26 Arthur Zamarin
2024-06-17 11:26 Arthur Zamarin
2024-06-01  5:41 Hans de Graaff
2024-06-01  5:41 Hans de Graaff
2024-05-20 21:49 Sam James
2024-05-20 21:49 Sam James
2024-05-20 21:49 Sam James
2024-05-20 21:49 Sam James
2024-05-20 21:49 Sam James
2024-04-27  7:43 Hans de Graaff
2024-04-24  5:45 Hans de Graaff
2024-04-24  5:44 Hans de Graaff
2024-03-29  8:16 Hans de Graaff
2024-02-10  8:59 Hans de Graaff
2024-02-10  8:59 Hans de Graaff
2024-01-20 10:26 Hans de Graaff
2024-01-19 18:16 Mike Gilbert
2023-10-08  9:45 Hans de Graaff
2023-10-06 18:00 Sam James
2023-09-29  7:35 Hans de Graaff
2023-09-10 10:41 Fabian Groffen
2023-07-08 20:22 Hans de Graaff
2023-06-16 20:54 Sam James
2023-06-16 20:54 Sam James
2023-06-05 12:07 Sam James
2023-05-30  1:28 Sam James
2023-05-29 20:21 Sam James
2023-05-29 20:10 Sam James
2023-05-29 20:01 Arthur Zamarin
2023-05-29 19:45 Arthur Zamarin
2023-05-29 19:45 Arthur Zamarin
2023-05-29 19:45 Arthur Zamarin
2023-05-16  1:52 Sam James
2023-05-04 19:49 Fabian Groffen
2023-04-26  6:31 Hans de Graaff
2023-04-25 22:16 Sam James
2023-04-24 23:16 Sam James
2023-04-24 23:16 Sam James
2023-04-24 23:16 Sam James
2023-04-24 23:16 Sam James
2023-04-24 23:16 Sam James
2023-04-24 23:16 Sam James
2023-04-23 22:28 Sam James
2023-04-23 21:40 Sam James
2023-04-23 21:36 Sam James
2023-04-23 21:36 Sam James
2023-04-23 21:33 Sam James
2023-04-22 14:28 Sam James
2023-04-22 11:27 Jakov Smolić
2023-04-22 10:34 Arthur Zamarin
2023-04-22  8:51 Arthur Zamarin
2023-04-22  8:42 Arthur Zamarin
2023-04-10  8:21 Sam James
2023-04-10  6:32 Sam James
2023-04-10  5:20 Sam James
2023-04-10  4:56 Sam James
2023-03-31  7:17 Hans de Graaff
2023-02-03  6:26 Sam James
2023-01-15 15:22 Sam James
2023-01-15 15:14 Sam James
2023-01-15 15:14 Sam James
2023-01-15 12:53 Sam James
2023-01-15 12:53 Sam James
2023-01-15 12:44 Sam James
2022-12-03 15:51 Hans de Graaff
2022-12-02 17:22 Arthur Zamarin
2022-11-30 21:15 Jakov Smolić
2022-11-26 17:12 Arthur Zamarin
2022-11-26 13:57 Arthur Zamarin
2022-11-26 13:57 Arthur Zamarin
2022-11-26 13:56 Arthur Zamarin
2022-11-26 13:00 Arthur Zamarin
2022-11-26 13:00 Arthur Zamarin
2022-11-24 18:04 Hans de Graaff
2022-05-08 16:12 WANG Xuerui
2022-05-08 16:12 WANG Xuerui
2022-05-07  6:34 Hans de Graaff
2022-05-04 23:32 Sam James
2022-05-01  8:43 Hans de Graaff
2022-05-01  7:40 Hans de Graaff
2022-05-01  6:34 Hans de Graaff
2022-04-30 19:11 Sam James
2022-04-30 19:11 Sam James
2022-04-23  9:53 Hans de Graaff
2022-04-23  9:45 Hans de Graaff
2022-04-15  7:26 Arthur Zamarin
2022-04-15  7:26 Arthur Zamarin
2022-04-15  7:26 Arthur Zamarin
2022-04-15  7:16 Arthur Zamarin
2022-04-15  6:37 Arthur Zamarin
2022-04-15  6:37 Arthur Zamarin
2022-04-14  8:12 Agostino Sarubbo
2022-04-14  8:11 Agostino Sarubbo
2022-04-14  8:09 Agostino Sarubbo
2022-04-14  8:08 Agostino Sarubbo
2022-04-12 14:09 Hans de Graaff
2022-02-07  9:46 Fabian Groffen
2022-01-16 14:18 Fabian Groffen
2021-12-05  7:33 Hans de Graaff
2021-12-04 18:04 Sam James
2021-12-04 18:04 Sam James
2021-12-01  9:02 Agostino Sarubbo
2021-11-29 18:39 Arthur Zamarin
2021-11-29 18:39 Arthur Zamarin
2021-11-29 18:39 Arthur Zamarin
2021-11-29 18:39 Arthur Zamarin
2021-11-29 18:33 Arthur Zamarin
2021-11-29 18:33 Arthur Zamarin
2021-11-29 17:34 Arthur Zamarin
2021-11-29 17:34 Arthur Zamarin
2021-11-29 17:34 Arthur Zamarin
2021-11-29 17:34 Arthur Zamarin
2021-11-29 17:31 Jakov Smolić
2021-11-29 17:31 Jakov Smolić
2021-11-25  9:10 Hans de Graaff
2021-10-14  9:07 Sam James
2021-10-14  9:07 Sam James
2021-10-14  9:07 Sam James
2021-10-11  1:36 Sam James
2021-10-11  1:17 Sam James
2021-10-11  1:07 Sam James
2021-10-11  1:07 Sam James
2021-07-24  9:24 Hans de Graaff
2021-07-22  6:07 Sam James
2021-07-21 15:39 Marek Szuba
2021-07-21 15:39 Marek Szuba
2021-07-18  8:46 Hans de Graaff
2021-07-17  3:58 Sam James
2021-07-16  8:52 Hans de Graaff
2021-07-15 13:44 Sergei Trofimovich
2021-07-11  9:00 Agostino Sarubbo
2021-07-11  8:58 Agostino Sarubbo
2021-07-10 17:28 Sam James
2021-07-10 15:40 Sam James
2021-07-07 19:15 Hans de Graaff
2021-07-06 17:59 Sam James
2021-07-06 17:59 Sam James
2021-07-02  6:28 Agostino Sarubbo
2021-07-01 18:32 Sergei Trofimovich
2021-07-01 18:32 Sergei Trofimovich
2021-07-01  8:25 Agostino Sarubbo
2021-07-01  8:24 Agostino Sarubbo
2021-07-01  8:23 Agostino Sarubbo
2021-07-01  8:22 Agostino Sarubbo
2021-06-26  5:30 Hans de Graaff
2021-06-24 23:27 Sam James
2021-05-02  8:26 Mikle Kolyada
2021-05-01  6:12 Hans de Graaff
2021-04-06  6:14 Hans de Graaff
2021-03-13 14:00 Hans de Graaff
2020-12-28  8:32 Hans de Graaff
2020-12-27 14:08 Fabian Groffen
2020-12-25  7:58 Hans de Graaff
2020-12-10 20:18 Sam James
2020-10-03  5:20 Hans de Graaff
2020-09-20 22:54 Thomas Deutschmann
2020-09-19 20:06 Sergei Trofimovich
2020-09-14 22:36 Sam James
2020-09-14 21:06 Sam James
2020-09-14 20:55 Sam James
2020-09-14 20:53 Sam James
2020-09-14 20:07 Sam James
2020-09-14 19:57 Sam James
2020-08-07  6:22 Hans de Graaff
2020-05-10  7:16 Hans de Graaff
2020-05-02 11:29 Ulrich Müller
2020-04-14  5:50 Hans de Graaff
2020-04-13 14:52 Agostino Sarubbo
2020-04-13 14:50 Agostino Sarubbo
2020-04-12 13:28 Hans de Graaff
2020-04-09 18:40 Sergei Trofimovich
2020-04-05  9:43 Hans de Graaff
2020-04-03 21:57 Sergei Trofimovich
2020-04-03 13:12 Agostino Sarubbo
2020-04-03 12:16 Agostino Sarubbo
2020-04-03 12:13 Agostino Sarubbo
2020-04-03 12:05 Agostino Sarubbo
2020-04-03  9:29 Mikle Kolyada
2020-04-03  7:37 Mart Raudsepp
2020-04-02  2:21 Matt Turner
2020-04-02  2:11 Matt Turner
2020-04-02  2:11 Matt Turner
2020-03-31 15:41 Hans de Graaff
2020-02-23  6:04 Hans de Graaff
2019-12-29 13:36 Jeroen Roovers
2019-12-28 16:22 Sergei Trofimovich
2019-12-02 11:07 Mikle Kolyada
2019-10-27  6:52 Hans de Graaff
2019-10-20  8:55 Mikle Kolyada
2019-10-11 22:32 Sergei Trofimovich
2019-10-07 19:12 Sergei Trofimovich
2019-10-07  7:29 Agostino Sarubbo
2019-10-06 22:56 Matt Turner
2019-10-06 22:56 Matt Turner
2019-10-06 19:33 Aaron Bauman
2019-10-05  6:54 Michał Górny
2019-10-04 12:57 Agostino Sarubbo
2019-10-04 11:54 Agostino Sarubbo
2019-10-03 14:40 Hans de Graaff
2019-10-03  9:41 Agostino Sarubbo
2019-10-03  8:40 Agostino Sarubbo
2019-10-03  8:39 Agostino Sarubbo
2019-10-03  6:07 Hans de Graaff
2019-10-01 18:06 Hans de Graaff
2019-10-01 18:06 Hans de Graaff
2019-09-21 22:57 Matt Turner
2019-09-21 22:57 Matt Turner
2019-09-13 17:52 Mikle Kolyada
2019-09-13 17:43 Mikle Kolyada
2019-09-13 12:04 Agostino Sarubbo
2019-09-11  3:51 Matt Turner
2019-09-04  9:41 Agostino Sarubbo
2019-09-03 19:28 Aaron Bauman
2019-09-03  8:30 Agostino Sarubbo
2019-09-02 16:59 Hans de Graaff
2019-09-02 10:11 Agostino Sarubbo
2019-09-02  9:32 Agostino Sarubbo
2019-09-02  7:25 Agostino Sarubbo
2019-09-01 21:25 Aaron Bauman
2019-09-01  9:21 Sergei Trofimovich
2019-08-30 18:39 Sergei Trofimovich
2019-08-28 23:22 Thomas Deutschmann
2019-08-28 23:22 Thomas Deutschmann
2019-08-28 17:38 Hans de Graaff
2019-08-28 17:38 Hans de Graaff
2019-08-28 17:38 Hans de Graaff
2019-08-23 20:10 Sergei Trofimovich
2019-08-18 17:09 Aaron Bauman
2019-08-18  6:04 Hans de Graaff
2019-07-29 16:32 Hans de Graaff
2019-07-29  8:47 Mikle Kolyada
2019-07-25 15:44 Hans de Graaff
2019-06-06  6:46 Agostino Sarubbo
2019-06-04 18:51 Agostino Sarubbo
2019-05-30 20:33 Sergei Trofimovich
2019-05-30 20:30 Sergei Trofimovich
2019-05-30 20:08 Sergei Trofimovich
2019-05-30 20:05 Sergei Trofimovich
2019-05-30 17:23 Aaron Bauman
2019-05-26 22:27 Thomas Deutschmann
2019-05-26 11:08 Mikle Kolyada
2019-05-26  8:27 Sergei Trofimovich
2019-05-11 17:28 Mikle Kolyada
2019-05-11  6:08 Hans de Graaff
2019-04-27 19:48 Aaron Bauman
2019-04-18  6:07 Hans de Graaff
2019-04-02  3:57 Hans de Graaff
2019-03-15  6:39 Hans de Graaff
2019-03-15  6:39 Hans de Graaff
2019-02-19 14:53 Fabian Groffen
2019-01-08 11:34 Lars Wendler
2018-12-30  3:43 Matt Turner
2018-12-28  6:58 Hans de Graaff
2018-12-28  6:58 Hans de Graaff
2018-12-27  2:57 Matt Turner
2018-12-25 11:11 Sergei Trofimovich
2018-12-23 12:55 Mikle Kolyada
2018-12-16  7:33 Hans de Graaff
2018-12-11 17:15 Hans de Graaff
2018-12-11 16:42 Thomas Deutschmann
2018-12-11 16:42 Thomas Deutschmann
2018-12-11  9:48 Hans de Graaff
2018-12-01 14:51 Sergei Trofimovich
2018-11-18  8:11 Hans de Graaff
2018-11-17 21:34 Thomas Deutschmann
2018-11-12 19:00 Hans de Graaff
2018-11-06 23:56 Sergei Trofimovich
2018-11-03  5:32 Matt Turner
2018-10-31 17:17 Markus Meier
2018-10-29 23:26 Sergei Trofimovich
2018-10-26  5:37 Matt Turner
2018-10-26  5:37 Matt Turner
2018-10-26  0:52 Thomas Deutschmann
2018-10-23 18:23 Sergei Trofimovich
2018-10-21 18:05 Mikle Kolyada
2018-10-19 13:32 Hans de Graaff
2018-10-19  5:35 Hans de Graaff
2018-10-18  5:36 Hans de Graaff
2018-10-01 12:40 Thomas Deutschmann
2018-06-16  6:24 Hans de Graaff
2018-06-16  5:41 Hans de Graaff
2018-06-15  5:45 Hans de Graaff
2018-06-12 22:02 Mikle Kolyada
2018-05-28  5:26 Hans de Graaff
2018-05-27 11:29 Mikle Kolyada
2018-04-22 19:18 Matt Turner
2018-04-22 19:18 Matt Turner
2018-04-20 21:27 Sergei Trofimovich
2018-04-20 21:27 Sergei Trofimovich
2018-04-14 11:40 Markus Meier
2018-04-14 11:40 Markus Meier
2018-04-08 22:11 Matt Turner
2018-04-08 22:11 Matt Turner
2018-04-05 16:57 Hans de Graaff
2018-04-05 13:43 Thomas Deutschmann
2018-04-05  6:10 Sergei Trofimovich
2018-04-05  6:10 Sergei Trofimovich
2018-04-03 21:07 Sergei Trofimovich
2018-04-03 21:07 Sergei Trofimovich
2018-03-29  6:46 Hans de Graaff
2018-03-21  1:38 Matt Turner
2018-03-18 19:59 Markus Meier
2018-03-14 21:29 Sergei Trofimovich
2018-03-14 19:57 Sergei Trofimovich
2018-03-14 17:31 Lars Wendler
2018-03-14  8:03 Sergei Trofimovich
2018-02-18 11:28 Sergei Trofimovich
2018-02-16 16:40 Hans de Graaff
2018-02-06 19:43 Benda XU
2018-01-29  8:47 Hans de Graaff
2018-01-29  8:22 Tobias Klausmann
2018-01-23 23:01 Sergei Trofimovich
2018-01-21 20:30 Thomas Deutschmann
2018-01-21 15:47 Hans de Graaff
2018-01-17  5:11 Thomas Deutschmann
2018-01-07  8:48 Hans de Graaff
2018-01-07  8:48 Hans de Graaff
2017-12-26  7:06 Hans de Graaff
2017-12-25 17:02 Hans de Graaff
2017-12-24 13:47 Sergei Trofimovich
2017-12-23 20:24 Sergei Trofimovich
2017-12-21 19:28 Markus Meier
2017-12-20 13:09 Agostino Sarubbo
2017-12-19 22:20 Sergei Trofimovich
2017-12-17  9:23 Sergei Trofimovich
2017-12-15  7:34 Hans de Graaff
2017-12-15  7:22 Hans de Graaff
2017-12-15  7:04 Hans de Graaff
2017-11-30 20:06 Sergei Trofimovich
2017-10-30  6:08 Hans de Graaff
2017-10-03  5:35 Hans de Graaff
2017-10-02 23:45 Thomas Deutschmann
2017-10-02 12:54 Manuel Rüger
2017-10-01 11:58 Benda XU
2017-09-24 18:50 Sergei Trofimovich
2017-09-23 19:45 Sergei Trofimovich
2017-09-23 12:40 Sergei Trofimovich
2017-09-23  6:38 Hans de Graaff
2017-09-18  4:31 Markus Meier
2017-09-17 16:51 Sergei Trofimovich
2017-09-16 19:13 Sergei Trofimovich
2017-09-16 11:08 Sergei Trofimovich
2017-09-15 15:38 Tobias Klausmann
2017-09-15  7:31 Hans de Graaff
2017-09-13  6:49 Hans de Graaff
2017-09-11  7:46 Sergei Trofimovich
2017-09-07 18:44 Markus Meier
2017-09-04 10:47 Tobias Klausmann
2017-09-02 13:29 Sergei Trofimovich
2017-09-01 18:44 Matt Turner
2017-09-01 18:44 Matt Turner
2017-09-01 13:56 Hans de Graaff
2017-09-01  7:22 Hans de Graaff
2017-09-01  7:22 Hans de Graaff
2017-09-01  7:22 Hans de Graaff
2017-08-23 18:27 Markus Meier
2017-08-08 14:03 Sergei Trofimovich
2017-08-08  4:33 Markus Meier
2017-07-23  8:49 Hans de Graaff
2017-07-23  8:49 Hans de Graaff
2017-07-21 17:01 Hans de Graaff
2017-07-15 14:13 Hans de Graaff
2017-07-11  4:58 Markus Meier
2017-06-05 21:53 Sergei Trofimovich
2017-05-27  6:44 Hans de Graaff
2017-04-30  8:38 Hans de Graaff
2017-04-30  8:10 Jeroen Roovers
2017-04-27  6:00 Hans de Graaff
2017-04-25  7:08 Tobias Klausmann
2017-03-30  6:08 Hans de Graaff
2017-03-29  5:21 Hans de Graaff
2017-03-26  7:50 Hans de Graaff
2017-03-26  7:50 Hans de Graaff
2017-03-08 23:39 Michael Weber
2017-03-01 13:05 Michael Weber
2017-02-03  7:41 Hans de Graaff
2016-12-28  8:14 Hans de Graaff
2016-12-26 19:17 Hans de Graaff
2016-12-26 19:17 Hans de Graaff
2016-11-22  6:38 Hans de Graaff
2016-11-16  5:58 Hans de Graaff
2016-10-02  6:58 Hans de Graaff
2016-10-02  6:58 Hans de Graaff
2016-09-19 13:17 Lars Wendler
2016-08-31 15:24 Lars Wendler
2016-07-09  5:29 Hans de Graaff
2016-07-08 13:28 Agostino Sarubbo
2016-07-08  8:42 Agostino Sarubbo
2016-07-08  8:17 Agostino Sarubbo
2016-06-21 11:32 Jeroen Roovers
2016-06-20 18:40 Hans de Graaff
2016-06-11  7:05 Jeroen Roovers
2016-06-06  6:02 Hans de Graaff
2016-06-04  5:03 Markus Meier
2016-06-04  5:02 Markus Meier
2016-06-03  5:47 Jeroen Roovers
2016-06-03  4:41 Jeroen Roovers
2016-05-31  9:35 Agostino Sarubbo
2016-05-31  9:30 Agostino Sarubbo
2016-05-31  8:44 Tobias Klausmann
2016-05-31  7:48 Tobias Klausmann
2016-05-30 18:47 Hans de Graaff
2016-05-30 18:47 Hans de Graaff
2016-04-27 11:54 Hans de Graaff
2016-04-27 11:54 Hans de Graaff
2016-04-04  6:42 Hans de Graaff
2016-03-30 15:47 Hans de Graaff
2016-02-07 18:04 Hans de Graaff
2015-12-27  9:41 Hans de Graaff
2015-12-27  9:22 Hans de Graaff
2015-12-25 19:58 Mikle Kolyada
2015-12-20 19:44 Hans de Graaff
2015-12-20 19:44 Hans de Graaff
2015-12-17  8:07 Hans de Graaff
2015-11-29 10:58 Hans de Graaff
2015-11-24 20:35 Markus Meier
2015-11-24 20:34 Markus Meier
2015-11-23  9:37 Agostino Sarubbo
2015-11-16 14:23 Agostino Sarubbo
2015-11-12 10:15 Agostino Sarubbo
2015-11-11  9:40 Agostino Sarubbo
2015-11-11  4:50 Jeroen Roovers
2015-11-09 11:30 Agostino Sarubbo
2015-10-11  9:51 Hans de Graaff
2015-09-13  6:56 Hans de Graaff
2015-08-24  5:03 Jeroen Roovers
2015-08-19 18:27 Hans de Graaff
2015-08-16 14:20 Justin Lecher
2015-08-09 16:03 Mikle Kolyada

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1635062748.2e7dcbb185136614583f05167cdf7e82ced45144.graaff@gentoo \
    --to=graaff@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox