[packages/ruby/DEVEL-3.1] added missing changes in last commit

mis mis at pld-linux.org
Sun Oct 30 12:04:39 CET 2022


commit 930cc1f872f3f16cfcf6bb2aff303bda3c663a37
Author: mis <mis at pld-linux.org>
Date:   Sun Oct 30 12:03:26 2022 +0100

    added missing changes in last commit

 mkmf-verbose.patch |   4 +-
 ruby-version.patch |  87 +++++----
 ruby.spec          | 520 +++++++++++++++++++++++++----------------------------
 3 files changed, 290 insertions(+), 321 deletions(-)
---
diff --git a/ruby.spec b/ruby.spec
index ff22c4f..8cd4f91 100644
--- a/ruby.spec
+++ b/ruby.spec
@@ -1,5 +1,4 @@
 # TODO:
-# - FIX gems installation paths
 #	- include ext/ in docs
 #	- replace ri with fastri
 #	- patch ri to search multiple indexes (one per package), so RPMs can install ri docs
@@ -14,12 +13,12 @@
 %bcond_with	tests		# build without tests
 
 %define		rel		0.1
-%define		ruby_version	2.7
-%define		patchlevel	6
+%define		ruby_version	3.1
+%define		patchlevel	2
 %define		pkg_version	%{ruby_version}.%{patchlevel}
 %define		ruby_suffix	%{!?with_default_ruby:%{ruby_version}}
-%define		doc_version	2_7_6
-%define		unicode_ver	12.1.0
+%define		doc_version	3_1_2
+%define		unicode_version	12.1.0
 %define		oname	ruby
 Summary:	Ruby - interpreted scripting language
 Summary(ja.UTF-8):	オブジェクト指向言語Rubyインタプリタ
@@ -38,21 +37,21 @@ License:	(Ruby or BSD) and Public Domain and MIT and CC0 and zlib and UCD
 Group:		Development/Languages
 # https://www.ruby-lang.org/en/downloads/
 Source0:	https://cache.ruby-lang.org/pub/ruby/%{ruby_version}/%{oname}-%{pkg_version}.tar.xz
-# Source0-md5:	a426258d48bccd0178525f9dd57e5543
+# Source0-md5:	e2c35af69d1f94e8634f38c80e809c0d
 Source2:	https://ruby-doc.org/downloads/%{oname}_%{doc_version}_stdlib_rdocs.tgz
-# Source2-md5:	8ea8e657d972d6cb72baa296c985b668
+# Source2-md5:	d8b945c2da4f60d9ea2886e163f0203c
 Source3:	https://ruby-doc.org/downloads/%{oname}_%{doc_version}_core_rdocs.tgz
+# Source3-md5:	abc2819f7f161acb7be4774f86d3828c
 %if 0
-# Source3-md5:	6a1cb2191d10c7478dfc39a925ca235e
-Source50:	https://www.unicode.org/Public/%{unicode_ver}/ucd/CaseFolding.txt
+Source50:	https://www.unicode.org/Public/%{unicode_version}/ucd/CaseFolding.txt
 # Source50-md5:	e3fbf2f626f10070000fe66f3a2ff5ef
-Source51:	https://www.unicode.org/Public/%{unicode_ver}/ucd/CompositionExclusions.txt
+Source51:	https://www.unicode.org/Public/%{unicode_version}/ucd/CompositionExclusions.txt
 # Source51-md5:	263381d7b4b5e2d52a91e1bbbd4722d4
-Source52:	https://www.unicode.org/Public/%{unicode_ver}/ucd/NormalizationTest.txt
+Source52:	https://www.unicode.org/Public/%{unicode_version}/ucd/NormalizationTest.txt
 # Source52-md5:	aacb8a8acfc449d09136fe39f3f97cf1
-Source53:	https://www.unicode.org/Public/%{unicode_ver}/ucd/SpecialCasing.txt
+Source53:	https://www.unicode.org/Public/%{unicode_version}/ucd/SpecialCasing.txt
 # Source53-md5:	fea30f45a2f81ffa474fd984d297e2ea
-Source54:	https://www.unicode.org/Public/%{unicode_ver}/ucd/UnicodeData.txt
+Source54:	https://www.unicode.org/Public/%{unicode_version}/ucd/UnicodeData.txt
 # Source54-md5:	dde25b1cf9bbb4ba1140ac12e4128b0b
 %endif
 Source4:	rdoc.1
@@ -63,8 +62,8 @@ Patch3:		mkmf-verbose.patch
 Patch4:		strip-ccache.patch
 Patch5:		ruby-version.patch
 Patch6:		duplicated-paths.patch
-Patch7:		openssl3.patch
 Patch9:		custom-rubygems-location.patch
+Patch10:	ruby-3.2.0-build-extension-libraries-in-bundled-gems.patch
 Patch12:	archlibdir.patch
 URL:		http://www.ruby-lang.org/
 BuildRequires:	autoconf >= 2.67
@@ -107,73 +106,38 @@ BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 # hack: skip rubygem(ipaddr)
 %define	_noautoreq	ipaddr
 
-# separate modules
-%define	bigdecimal_ver		2.0.0
-%define	bundler_ver		2.1.4
-%define	did_you_mean_ver	1.4.0
-%define	io_console_ver		0.5.6
-%define	irb_ver			1.0.0
-%define	json_ver		2.3.0
-%define	minitest_ver		5.13.0
-%define	net_telnet_ver		0.2.0
-%define	power_assert_ver	1.1.7
-%define	psych_ver		3.1.0
-%define	rake_ver		13.0.1
-%define	rdoc_ver		6.2.1.1
-%define	rubygems_ver		3.1.6
-%define	test_unit_ver		3.3.4
-%define	xmlrpc_ver		0.3.0
-# default modules, separated
-%define	irb_ver			1.2.6
-# default modules packaged in main modules
-%define	cmath_ver		1.0.0
-%define	csv_ver			3.1.2
-%define	date_ver		3.0.3
-%define	dbm_ver			1.1.0
-%define	e2mmap_ver		0.1.0
-%define	etc_ver			1.1.0
-%define	fcntl_ver		1.0.0
-%define	fiddle_ver		1.0.0
-%define	fileutils_ver		1.4.1
-%define	forwardable_ver		1.3.1
-%define	gdbm_ver		2.1.0
-%define	ipaddr_ver		1.2.2
-%define	logger_ver		1.4.2
-%define	matrix_ver		0.2.0
-%define	mutex_m_ver		0.1.0
-%define	ostruct_ver		0.2.0
-%define	openssl_ver		2.1.3
-%define	prime_ver		0.1.1
-%define	rexml_ver		3.2.3.1
-%define	rss_ver			0.2.8
-%define	scanf_ver		1.0.0
-%define	sdbm_ver		1.0.0
-%define	shell_ver		0.7
-%define	stringio_ver		0.1.0
-%define	strscan_ver		1.0.3
-%define	sync_ver		0.5.0
-%define	thwait_ver		0.1.0
-%define	tracer_ver		0.1.0
-%define	webrick_ver		1.6.1
-%define	zlib_ver		1.1.0
-
-%define	benchmark_ver		0.1.0
-%define	cgi_ver			0.1.0.1
-%define	delegate_ver		0.1.0
-%define	getoptlong_ver		0.1.0
-%define	net_pop_ver		0.1.0
-%define	net_smtp_ver		0.1.0
-%define	observer_ver		0.1.0
-%define	open3_ver		0.1.0
-%define	pstore_ver		0.1.0
-%define	racc_ver		1.4.16
-%define	readline_ver		0.0.2
-%define	readline_ext_ver	0.1.0
-%define	reline_ver		0.1.5
-%define	singleton_ver		0.1.0
-%define	timeout_ver		0.1.0
-%define	uri_ver			0.1.0
-%define	yaml_ver		0.1.0
+# generated by extract-gem-versions.sh
+%define bigdecimal_ver	3.1.1
+%define bundler_ver	2.3.7
+%define erb_ver	2.2.3
+%define io_console_ver	0.5.11
+%define irb_ver	1.4.1
+%define json_ver	2.6.1
+%define etc_ver	1.3.0
+%define stringio_ver	3.0.1
+%define zlib_ver	2.1.1
+%define openssl_ver	3.0.0
+%define psych_ver	4.0.3
+%define racc_ver	1.6.0
+%define rdoc_ver	6.4.0
+%define readline_ver	0.1.4
+%define rubygems_ver	3.3.7
+# bundled
+%define debug_ver	1.4.0
+%define matrix_ver	0.4.2
+%define minitest_ver	5.15.0
+%define net_ftp_ver	0.1.3
+%define net_imap_ver	0.2.3
+%define net_pop_ver	0.1.1
+%define net_smtp_ver	0.3.1
+%define power_assert_ver	2.0.1
+%define prime_ver	0.1.2
+%define rake_ver	13.0.6
+%define rbs_ver	2.1.0
+%define rexml_ver	3.2.5
+%define rss_ver	0.2.9
+%define test_unit_ver	3.5.3
+%define typeprof_ver	0.21.2
 
 %define	ruby_ridir		%{_datadir}/ri/system
 %define	gem_dir			%{_datadir}/gems
@@ -312,7 +276,7 @@ Ruby examples.
 Przykłady programów w języku Ruby.
 
 # IMPORTANT: keep irb, rdoc, rubygems, rake, json as last packages as we reset epoch/version/release
-# and %{version},%{release} macros may not be used directly as they take last
+# and version, release macros may not be used directly as they take last
 # subpackage value not main package one what you intend to use
 
 %package irb
@@ -548,50 +512,32 @@ programowaniem ekstremalnym, dla szkieletu SUnit dla Smalltalka.
 Szkielet pozwala na pisanie testów, sprawdzanie wyników i automatyczne
 testowanie w Rubym.
 
-%package did_you_mean
-Summary:	"Did you mean?" experience in Ruby
-Summary(pl.UTF-8):	Zachowanie "czy miałeś na myśli?" w języku Ruby
-Version:	%{did_you_mean_ver}
+%package rbs
+Summary:	Type signature for Ruby
+Version:	%{rbs_ver}
 Release:	%{pkg_version}.%{rel}
-Epoch:		0
 License:	MIT
 Group:		Development/Libraries
 BuildArch:	noarch
 
-%description did_you_mean
-"Did you mean?" experience in Ruby: the error message will tell you
-the right one when you misspelled something.
-
-%description did_you_mean -l pl.UTF-8
-Zachowanie "czy miałeś na myśli" w języku ruby: komunikat błędu
-podpowie właściwą pisownię w przypadku literówki.
+%description rbs
+RBS is the language for type signatures for Ruby and standard library
+definitions.
 
-%package net-telnet
-Summary:	Provides telnet client functionality
-Summary(pl.UTF-8):	Funkcjonalność klienta usługi telnet
-Version:	%{net_telnet_ver}
+%package typeprof
+Summary:	TypeProf is a type analysis tool for Ruby code based on abstract interpretation
+Version:	%{typeprof_ver}
 Release:	%{pkg_version}.%{rel}
-Epoch:		0
-Group:		Development/Libraries
+License:	MIT
+URL:		https://github.com/ruby/typeprof
 BuildArch:	noarch
 
-%description net-telnet
-Provides telnet client functionality.
-
-This class also has, through delegation, all the methods of a socket
-object (by default, a TCPSocket, but can be set by the Proxy option to
-new()). This provides methods such as close() to end the session and
-sysread() to read data directly from the host, instead of via the
-waitfor() mechanism.
-
-%description net-telnet -l pl.UTF-8
-Ten pakiet dostarcza funkcjonalność klienta usługi telnet.
-
-Ta klasa ma, poprzez delegację, wszystkie metody obiektu gniazda
-(domyślnie TCPSocket, ale może być ustawiona przez opcję Proxy dla
-new()). Udostępnia metody takie jak: close() do zakończenia sesji czy
-sysread() do odczytu danych bezpośrednio z hosta zamiast poprzez
-mechanizm waitfor().
+%description typeprof
+TypeProf performs a type analysis of non-annotated Ruby code. It
+abstractly executes input Ruby code in a level of types instead of
+values, gathers what types are passed to and returned by methods, and
+prints the analysis result in RBS format, a standard type description
+format for Ruby 3.x
 
 %package bigdecimal
 Summary:	BigDecimal - arbitrary-precision floating point decimal arithmetic
@@ -664,38 +610,55 @@ emitowania YAML-a. Poza obudowaniem libyaml, wie także jak
 serializować i deserializować większość obiektów języka Ruby do/z
 formatu YAML.
 
-%package xmlrpc
-Summary:	A xmlrpc wrapper for Ruby
-Summary(pl.UTF-8):	Obudowanie xmlrpc dla języka Ruby
-Version:	%{xmlrpc_ver}
+%package rexml
+Summary:	An XML toolkit for Ruby
+Version:	%{rexml_ver}
 Release:	%{pkg_version}.%{rel}
-Epoch:		0
-License:	MIT
-Group:		Development/Libraries
-
-%description xmlrpc
-XMLRPC is a lightweight protocol that enables remote procedure calls
-over HTTP. It is defined at <http://www.xmlrpc.com/>.
-
-XMLRPC allows you to create simple distributed computing solutions
-that span computer languages. Its distinctive feature is its
-simplicity compared to other approaches like SOAP and CORBA.
-
-The Ruby standard library package 'xmlrpc' enables you to create a
-server that implements remote procedures and a client that calls them.
-Very little code is required to achieve either of these.
-
-%description xmlrpc -l pl.UTF-8
-XMLRPC to lekki protokół pozwalający na wywołania zdalnych procedur
-poprzez HTTP. Jest zdefiniowany na <http://www.xmlrpc.com/>.
+License:	BSD
+URL:		https://github.com/ruby/rexml
+BuildArch:	noarch
 
-XMLRPC pozwala na tworzenie prostych, rozproszonych systemów
-komputerowych dla wielu języków. Wyróżniającą cechą jest prostota w
-porównaniu do innych rozwiązań, takich jak SOAP czy CORBA.
+%description rexml
+REXML was inspired by the Electric XML library for Java, which
+features an easy-to-use API, small size, and speed. Hopefully, REXML,
+designed with the same philosophy, has these same features. I've tried
+to keep the API as intuitive as possible, and have followed the Ruby
+methodology for method naming and code flow, rather than mirroring the
+Java API.
+
+REXML supports both tree and stream document parsing. Stream parsing
+is faster (about 1.5 times as fast). However, with stream parsing, you
+don't get access to features such as XPath.
+
+%package rss
+Summary:	Family of libraries that support various formats of XML "feeds"
+Version:	%{rss_ver}
+License:	BSD
+URL:		https://github.com/ruby/rss
+BuildArch:	noarch
 
-Pakiet biblioteki standardowej języka Ruby 'xmlrpc' pozwala na
-stworzenie serwera implementującego procedury zdalne oraz klienta
-wywołującego je. Aby to osiągnąć wystarczy bardzo mało kodu.
+%description rss
+Really Simple Syndication (RSS) is a family of formats that describe
+'feeds', specially constructed XML documents that allow an interested
+person to subscribe and receive updates from a particular web service.
+This library provides tooling to read and create these feeds.
+
+%package gems
+Summary:	Bundled gems which are part of Ruby StdLib
+Requires:	ruby(rubygems) >= %{rubygems_ver}
+# Runtime dependency of rubygem(debug).
+Recommends:	rubygem(irb) >= %{irb_ver}
+Provides:	rubygem(debug) = %{debug_ver}
+Provides:	rubygem(matrix) = %{matrix_ver}
+Provides:	rubygem(net-ftp) = %{net_ftp_ver}
+Provides:	rubygem(net-imap) = %{net_imap_ver}
+Provides:	rubygem(net-pop) = %{net_pop_ver}
+Provides:	rubygem(net-smtp) = %{net_smtp_ver}
+Provides:	rubygem(prime) = %{prime_ver}
+
+%description gems
+Bundled gems which are part of Ruby StdLib. While being part of Ruby,
+these needs to be listed in Gemfile to be used by Bundler.
 
 %prep
 %setup -q -n %{oname}-%{pkg_version} -a2 -a3
@@ -704,13 +667,13 @@ wywołującego je. Aby to osiągnąć wystarczy bardzo mało kodu.
 %patch4 -p1
 %patch5 -p1
 %patch6 -p1
-%patch7 -p1
 %patch9 -p1
+%patch10 -p1
 %patch12 -p1
 
 %if 0
-install -d enc/unicode/data/%{unicode_ver}
-cp -p %{SOURCE50} %{SOURCE51} %{SOURCE52} %{SOURCE53} %{SOURCE54} enc/unicode/data/%{unicode_ver}
+install -d enc/unicode/data/%{unicode_version}
+cp -p %{SOURCE50} %{SOURCE51} %{SOURCE52} %{SOURCE53} %{SOURCE54} enc/unicode/data/%{unicode_version}
 %endif
 
 # must be regenerated with new bison
@@ -732,7 +695,7 @@ find -type f '(' -name '*.rb' -o -name '*.cgi' -o -name '*.test' \
 
 %if %{with bootstrap}
 # avoid regeneration, needs iostring module
-touch enc/unicode/%{unicode_ver}/*.h
+touch enc/unicode/%{unicode_version}/*.h
 %endif
 
 %build
@@ -822,6 +785,10 @@ sed -i '/assert(OpenSSL::Cipher::Cipher.new(name).is_a?(OpenSSL::Cipher::Cipher)
 # https://bugs.ruby-lang.org/issues/10046
 sed -i '/def test_ctx_server_session_cb$/,/^  end$/ s/^/#/' test/openssl/test_ssl_session.rb
 
+#find .bundle -name extconf.rb -exec sed -i \
+#     -e '/create_makefile/i \$arch_hdrdir = "$(hdrdir)/../.ext/include/$(arch)"' \
+#     -e '/create_makefile/i \$DLDFLAGS << " -L#{$top_srcdir}"' {} \;
+
 %{__make} check TESTS="-v $DISABLE_TESTS"
 %endif
 
@@ -830,7 +797,8 @@ rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT{%{ruby_rdocdir},%{ruby_ridir}} \
 	$RPM_BUILD_ROOT%{ruby_vendorarchdir} \
 	$RPM_BUILD_ROOT%{ruby_vendorlibdir}/net \
-	$RPM_BUILD_ROOT%{ruby_vendorlibdir}/data \
+	$RPM_BUILD_ROOT%{ruby_vendorlibdir}/data
+
 
 %{__make} install %{?with_doc:install-doc -j1} \
 	DESTDIR=$RPM_BUILD_ROOT
@@ -855,7 +823,6 @@ cp -p %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man1/testrb%{ruby_suffix}.1
 
 # detect this runtime, "make install" is affected by operating_system.rb what is installed in system!
 gem_dir=$(./miniruby -Ilib -I. -I.ext/common ./tool/runruby.rb -- --disable-gems -r$(basename *-linux*-fake.rb .rb) -r rubygems -e 'puts Gem.default_dir')
-
 # Move gems root into common directory, out of Ruby directory structure.
 install -d $RPM_BUILD_ROOT%{gem_dir}
 %{__mv} $RPM_BUILD_ROOT${gem_dir}/{gems,specifications} $RPM_BUILD_ROOT%{gem_dir}
@@ -890,7 +857,7 @@ install -d $RPM_BUILD_ROOT%{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdeci
 ln -s %{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal $RPM_BUILD_ROOT%{ruby_libdir}/bigdecimal
 ln -s %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal.so $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal.so
 install -d $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal
-ln -s %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal/util.so $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal/util.so
+#ln -s %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal/util.so $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal/util.so
 
 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/io-console-%{io_console_ver}/lib
 install -d $RPM_BUILD_ROOT%{gem_libdir}/io-console-%{io_console_ver}/lib/io
@@ -972,18 +939,30 @@ done
 	$RPM_BUILD_ROOT%{ruby_libdir}/abbrev.rb \
 	$RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/exe/rake \
 	$RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/exe/{rdoc,ri} \
+        $RPM_BUILD_ROOT%{gem_dir}/gems/bundler-%{bundler_ver}/libexec/{bundle,bundler} \
+        $RPM_BUILD_ROOT%{gem_dir}/gems/debug-%{debug_ver}/exe/rdbg \
+        $RPM_BUILD_ROOT%{gem_dir}/gems/rbs-%{rbs_ver}/exe/rbs \
+        $RPM_BUILD_ROOT%{gem_dir}/gems/erb-%{erb_ver}/libexec/erb \
+        $RPM_BUILD_ROOT%{gem_dir}/gems/typeprof-%{typeprof_ver}/exe/typeprof \
 	$RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/{cal,test,time,uumerge}.rb \
-	$RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/{drb,logger,openssl,ripper,rss}/*.rb \
-	$RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/webrick/*.cgi
+	$RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/{drb,logger,openssl,ripper}/*.rb
 
 # gem non library files
-%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/{[A-Z]*,benchmark,doc,test,tmp,did_you_mean.gemspec,.*}
+# maybe use %exclude instead?
+%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/matrix-%{matrix_ver}/{[A-Z]*,*.gemspec}
 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/minitest-%{minitest_ver}/{[A-Z]*,test,.autotest}
-%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/net-telnet-%{net_telnet_ver}/{[A-Z]*,bin,net-telnet.gemspec,.*}
-%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/power_assert-%{power_assert_ver}/{[A-Z]*,bin,power_assert.gemspec,.*}
-%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/{[A-Z]*,bin,doc,rake.gemspec,azure-pipelines.yml}
-%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/test-unit-%{test_unit_ver}/{[A-Z]*,doc,sample,test}
-%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/xmlrpc-%{xmlrpc_ver}/{[A-Z]*,bin,xmlrpc.gemspec,.*}
+%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/net-ftp-%{net_ftp_ver}/{[A-Z]*,bin,*.gemspec,.*}
+%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/net-pop-%{net_pop_ver}/{[A-Z]*,bin,*.gemspec,.*}
+%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/net-imap-%{net_imap_ver}/{[A-Z]*,*.gemspec,.*}
+%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/net-smtp-%{net_smtp_ver}/{[A-Z]*,*.gemspec}
+%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/prime-%{prime_ver}/{[A-Z]*,bin,*.gemspec,.*}
+%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/debug-%{debug_ver}/{[A-Z]*,bin,*.gemspec,.*,misc,ext}
+%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/power_assert-%{power_assert_ver}/{[A-Z]*,power_assert.gemspec,.*}
+%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/{[A-Z]*,doc,rake.gemspec}
+%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/test-unit-%{test_unit_ver}/{[A-Z]*,doc,sample}
+%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/racc-%{racc_ver}/bin $RPM_BUILD_ROOT%{_bindir}/racc # racc binary can be installed from ruby-racc package
+%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rexml-%{rexml_ver}/{[A-Z]*,doc}
+%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rss-%{rss_ver}/{[A-Z]*,test,*.gemspec}
 
 %if %{without batteries}
 # packaged separately
@@ -1003,15 +982,19 @@ done
 %{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/win32/page-*.ri
 %endif
 
+#%if %{without doc}
+#%{__rm} -r $RPM_BUILD_ROOT%{ruby_ridir}
+#%endif
+
 %clean
-rm -rf $RPM_BUILD_ROOT
+#rm -rf $RPM_BUILD_ROOT
 
 %post	-p /sbin/ldconfig
 %postun	-p /sbin/ldconfig
 
 %files
 %defattr(644,root,root,755)
-%doc NEWS LEGAL BSDL README.md README.EXT ChangeLog
+%doc NEWS.md LEGAL BSDL README.md README.EXT ChangeLog
 %attr(755,root,root) %{_bindir}/ruby%{ruby_suffix}
 %attr(755,root,root) %{_libdir}/libruby.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libruby.so.%{ruby_version}
@@ -1075,8 +1058,6 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/bundle%{ruby_suffix}
 %{gem_dir}/gems/bundler-%{bundler_ver}
 %{gem_dir}/specifications/bundler-%{bundler_ver}.gemspec
-%{_mandir}/man1/bundle*.1*
-%{_mandir}/man5/gemfile.5*
 
 %files rake
 %defattr(644,root,root,755)
@@ -1124,17 +1105,19 @@ rm -rf $RPM_BUILD_ROOT
 %{gem_dir}/specifications/test-unit-%{test_unit_ver}.gemspec
 %{_mandir}/man1/testrb%{ruby_suffix}.1*
 
-%files did_you_mean
+%files rbs
 %defattr(644,root,root,755)
-%dir %{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}
-%{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/lib
-%{gem_dir}/specifications/did_you_mean-%{did_you_mean_ver}.gemspec
+%attr(755,root,root) %{_bindir}/rbs
+%{gem_dir}/gems/rbs-%{rbs_ver}
+%exclude %{gem_dir}/gems/rbs-%{rbs_ver}/.*
+%{gem_dir}/specifications/rbs-%{rbs_ver}.gemspec
 
-%files net-telnet
+%files typeprof
 %defattr(644,root,root,755)
-%dir %{gem_dir}/gems/net-telnet-%{net_telnet_ver}
-%{gem_dir}/gems/net-telnet-%{net_telnet_ver}/lib
-%{gem_dir}/specifications/net-telnet-%{net_telnet_ver}.gemspec
+%attr(755,root,root) %{_bindir}/typeprof
+%{gem_dir}/gems/typeprof-%{typeprof_ver}
+%exclude %{gem_dir}/gems/typeprof-%{typeprof_ver}/.*
+%{gem_dir}/specifications/typeprof-%{typeprof_ver}.gemspec
 
 %files bigdecimal
 %defattr(644,root,root,755)
@@ -1142,8 +1125,6 @@ rm -rf $RPM_BUILD_ROOT
 %dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}
 %dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
 %attr(755,root,root) %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal.so
-%dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal
-%attr(755,root,root) %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal/util.so
 %{ruby_libdir}/bigdecimal.rb
 %{ruby_libdir}/bigdecimal
 %{gem_dir}/specifications/bigdecimal-%{bigdecimal_ver}.gemspec
@@ -1168,10 +1149,51 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{gem_libdir}/psych-%{psych_ver}/lib/psych.so
 %{gem_dir}/specifications/psych-%{psych_ver}.gemspec
 
-%files xmlrpc
+%files rexml
 %defattr(644,root,root,755)
-%{gem_dir}/gems/xmlrpc-%{xmlrpc_ver}
-%{gem_dir}/specifications/xmlrpc-%{xmlrpc_ver}.gemspec
+%dir %{gem_dir}/gems/rexml-%{rexml_ver}
+%{gem_dir}/gems/rexml-%{rexml_ver}/lib
+%{gem_dir}/specifications/rexml-%{rexml_ver}.gemspec
+
+%files rss
+%defattr(644,root,root,755)
+%dir %{gem_dir}/gems/rss-%{rss_ver}
+%{gem_dir}/gems/rss-%{rss_ver}/lib
+%{gem_dir}/specifications/rss-%{rss_ver}.gemspec
+
+%files gems
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/rdbg
+%dir %{gem_dir}/gems/debug-%{debug_ver}
+%exclude %{gem_dir}/gems/debug-%{debug_ver}/.*
+%{gem_dir}/gems/debug-%{debug_ver}/exe
+%{gem_dir}/gems/debug-%{debug_ver}/lib
+%{gem_dir}/specifications/debug-%{debug_ver}.gemspec
+
+%dir %{gem_dir}/gems/net-ftp-%{net_ftp_ver}
+%{gem_dir}/gems/net-ftp-%{net_ftp_ver}/lib
+%{gem_dir}/specifications/net-ftp-%{net_ftp_ver}.gemspec
+
+%dir %{gem_dir}/gems/net-imap-%{net_imap_ver}
+%{gem_dir}/gems/net-imap-%{net_imap_ver}/lib
+%{gem_dir}/specifications/net-imap-%{net_imap_ver}.gemspec
+
+%dir %{gem_dir}/gems/net-pop-%{net_pop_ver}
+%{gem_dir}/gems/net-pop-%{net_pop_ver}/lib
+%{gem_dir}/specifications/net-pop-%{net_pop_ver}.gemspec
+
+%dir %{gem_dir}/gems/net-smtp-%{net_smtp_ver}
+%{gem_dir}/gems/net-smtp-%{net_smtp_ver}/lib
+%{gem_dir}/specifications/net-smtp-%{net_smtp_ver}.gemspec
+
+%dir %{gem_dir}/gems/matrix-%{matrix_ver}
+%{gem_dir}/gems/matrix-%{matrix_ver}/lib
+%{gem_dir}/specifications/matrix-%{matrix_ver}.gemspec
+
+%dir %{gem_dir}/gems/prime-%{prime_ver}
+%{gem_dir}/gems/prime-%{prime_ver}/lib
+%{gem_dir}/specifications/prime-%{prime_ver}.gemspec
+
 
 %files modules
 %defattr(644,root,root,755)
@@ -1181,45 +1203,44 @@ rm -rf $RPM_BUILD_ROOT
 %{ruby_libdir}/drb
 %{ruby_libdir}/fiddle
 %{ruby_libdir}/io
-%{ruby_libdir}/matrix
 %{ruby_libdir}/net
 %{ruby_libdir}/openssl
 %{ruby_libdir}/optparse
 %{ruby_libdir}/racc
-%{ruby_libdir}/rexml
 %{ruby_libdir}/rinda
 %{ruby_libdir}/ripper
-%{ruby_libdir}/rss
-%{ruby_libdir}/shell
 %{ruby_libdir}/syslog
 %{ruby_libdir}/test
 %{ruby_libdir}/uri
-%{ruby_libdir}/webrick
 %{ruby_libdir}/yaml
 
 %{ruby_libdir}/English.rb
 %{ruby_libdir}/abbrev.rb
 %{ruby_libdir}/base64.rb
 %{ruby_libdir}/benchmark.rb
+%dir %{ruby_libdir}/benchmark
+%{ruby_libdir}/benchmark/version.rb
 %{ruby_libdir}/bundler
 %{ruby_libdir}/bundler.rb
 %{ruby_libdir}/cgi.rb
-%{ruby_libdir}/cmath.rb
 %{ruby_libdir}/csv.rb
 %{ruby_libdir}/csv
 %{ruby_libdir}/coverage.rb
 %{ruby_libdir}/date.rb
-%{ruby_libdir}/debug.rb
 %{ruby_libdir}/delegate.rb
+%{ruby_libdir}/did_you_mean.rb
+%{ruby_libdir}/did_you_mean
 %{ruby_libdir}/digest.rb
 %{ruby_libdir}/drb.rb
-%{ruby_libdir}/e2mmap.rb
-%{ruby_libdir}/e2mmap
+%{ruby_libdir}/error_highlight.rb
+%dir %{ruby_libdir}/error_highlight
+%{ruby_libdir}/error_highlight/*.rb
 %{ruby_libdir}/erb.rb
+%dir %{ruby_libdir}/erb
+%{ruby_libdir}/erb/version.rb
 %{ruby_libdir}/expect.rb
 %{ruby_libdir}/fiddle.rb
 %{ruby_libdir}/fileutils.rb
-%{ruby_libdir}/fileutils
 %{ruby_libdir}/find.rb
 %{ruby_libdir}/forwardable.rb
 %dir %{ruby_libdir}/forwardable
@@ -1229,12 +1250,18 @@ rm -rf $RPM_BUILD_ROOT
 %{ruby_libdir}/json.rb
 %{ruby_libdir}/kconv.rb
 %{ruby_libdir}/logger.rb
-%{ruby_libdir}/matrix.rb
+%dir %{ruby_libdir}/logger
+%{ruby_libdir}/logger/*.rb
 %{ruby_libdir}/monitor.rb
 %{ruby_libdir}/mutex_m.rb
+%{ruby_libdir}/objspace.rb
+%dir %{ruby_libdir}/objspace
+%{ruby_libdir}/objspace/*.rb
 %{ruby_libdir}/observer.rb
 %{ruby_libdir}/open-uri.rb
 %{ruby_libdir}/open3.rb
+%dir %{ruby_libdir}/open3
+%{ruby_libdir}/open3/version.rb
 %{ruby_libdir}/openssl.rb
 %{ruby_libdir}/optionparser.rb
 %{ruby_libdir}/optparse.rb
@@ -1242,37 +1269,38 @@ rm -rf $RPM_BUILD_ROOT
 %{ruby_libdir}/pathname.rb
 %{ruby_libdir}/pp.rb
 %{ruby_libdir}/prettyprint.rb
-%{ruby_libdir}/prime.rb
-%{ruby_libdir}/profile.rb
-%{ruby_libdir}/profiler.rb
 %{ruby_libdir}/pstore.rb
+%{ruby_libdir}/racc.rb
+%dir %{ruby_libdir}/random
+%{ruby_libdir}/random/*.rb
 %{ruby_libdir}/rdoc.rb
+%{ruby_libdir}/readline.rb
+%{ruby_libdir}/reline.rb
+%dir %{ruby_libdir}/reline
+%{ruby_libdir}/reline/*.rb
+%dir %{ruby_libdir}/reline/key_actor
+%{ruby_libdir}/reline/key_actor/*.rb
+%dir %{ruby_libdir}/reline/unicode
+%{ruby_libdir}/reline/unicode/*.rb
 %{ruby_libdir}/resolv-replace.rb
 %{ruby_libdir}/resolv.rb
 %{ruby_libdir}/ripper.rb
-%{ruby_libdir}/rss.rb
-%{ruby_libdir}/scanf.rb
 %{ruby_libdir}/securerandom.rb
 %{ruby_libdir}/set.rb
-%{ruby_libdir}/shell.rb
+%dir %{ruby_libdir}/set
+%{ruby_libdir}/set/*.rb
 %{ruby_libdir}/shellwords.rb
 %{ruby_libdir}/singleton.rb
 %{ruby_libdir}/socket.rb
-%{ruby_libdir}/sync.rb
 %{ruby_libdir}/tempfile.rb
-%{ruby_libdir}/thwait.rb
-%{ruby_libdir}/thwait
 %{ruby_libdir}/time.rb
 %{ruby_libdir}/timeout.rb
 %{ruby_libdir}/tmpdir.rb
-%{ruby_libdir}/tracer.rb
-%{ruby_libdir}/tracer
 %{ruby_libdir}/tsort.rb
 %{ruby_libdir}/un.rb
 %{ruby_libdir}/unicode_normalize
 %{ruby_libdir}/uri.rb
 %{ruby_libdir}/weakref.rb
-%{ruby_libdir}/webrick.rb
 %{ruby_libdir}/yaml.rb
 
 %if %{with batteries}
@@ -1284,17 +1312,14 @@ rm -rf $RPM_BUILD_ROOT
 %{ruby_archdir}/rbconfig.rb
 %attr(755,root,root) %{ruby_archdir}/bigdecimal.so
 %dir %{ruby_archdir}/bigdecimal
-%attr(755,root,root) %{ruby_archdir}/bigdecimal/util.so
 %attr(755,root,root) %{ruby_archdir}/continuation.so
 %attr(755,root,root) %{ruby_archdir}/coverage.so
 %attr(755,root,root) %{ruby_archdir}/date_core.so
-%attr(755,root,root) %{ruby_archdir}/dbm.so
 %attr(755,root,root) %{ruby_archdir}/digest.so
 %attr(755,root,root) %{ruby_archdir}/etc.so
 %attr(755,root,root) %{ruby_archdir}/fcntl.so
-%attr(755,root,root) %{ruby_archdir}/fiber.so
 %attr(755,root,root) %{ruby_archdir}/fiddle.so
-%attr(755,root,root) %{ruby_archdir}/gdbm.so
+%attr(755,root,root) %{ruby_archdir}/monitor.so
 %attr(755,root,root) %{ruby_archdir}/nkf.so
 %attr(755,root,root) %{ruby_archdir}/objspace.so
 %attr(755,root,root) %{ruby_archdir}/openssl.so
@@ -1302,7 +1327,6 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{ruby_archdir}/pty.so
 %attr(755,root,root) %{ruby_archdir}/readline.so
 %attr(755,root,root) %{ruby_archdir}/ripper.so
-%attr(755,root,root) %{ruby_archdir}/sdbm.so
 %attr(755,root,root) %{ruby_archdir}/socket.so
 %attr(755,root,root) %{ruby_archdir}/stringio.so
 %attr(755,root,root) %{ruby_archdir}/strscan.so
@@ -1329,38 +1353,12 @@ rm -rf $RPM_BUILD_ROOT
 
 %dir %{gem_dir}
 %dir %{gem_dir}/gems
+# for libexec/erb
+%{gem_dir}/gems/erb-%{erb_ver}
+
 %dir %{gem_dir}/specifications
 %dir %{gem_dir}/specifications/default
-%{gem_dir}/specifications/default/cmath-%{cmath_ver}.gemspec
-%{gem_dir}/specifications/default/csv-%{csv_ver}.gemspec
-%{gem_dir}/specifications/default/date-%{date_ver}.gemspec
-%{gem_dir}/specifications/default/dbm-%{dbm_ver}.gemspec
-%{gem_dir}/specifications/default/e2mmap-%{e2mmap_ver}.gemspec
-%{gem_dir}/specifications/default/etc-%{etc_ver}.gemspec
-%{gem_dir}/specifications/default/fcntl-%{fcntl_ver}.gemspec
-%{gem_dir}/specifications/default/fiddle-%{fiddle_ver}.gemspec
-%{gem_dir}/specifications/default/fileutils-%{fileutils_ver}.gemspec
-%{gem_dir}/specifications/default/forwardable-%{forwardable_ver}.gemspec
-%{gem_dir}/specifications/default/gdbm-%{gdbm_ver}.gemspec
-%{gem_dir}/specifications/default/ipaddr-%{ipaddr_ver}.gemspec
-%{gem_dir}/specifications/default/logger-%{logger_ver}.gemspec
-%{gem_dir}/specifications/default/matrix-%{matrix_ver}.gemspec
-%{gem_dir}/specifications/default/mutex_m-%{mutex_m_ver}.gemspec
-%{gem_dir}/specifications/default/ostruct-%{ostruct_ver}.gemspec
-%{gem_dir}/specifications/default/openssl-%{openssl_ver}.gemspec
-%{gem_dir}/specifications/default/prime-%{prime_ver}.gemspec
-%{gem_dir}/specifications/default/rexml-%{rexml_ver}.gemspec
-%{gem_dir}/specifications/default/rss-%{rss_ver}.gemspec
-%{gem_dir}/specifications/default/scanf-%{scanf_ver}.gemspec
-%{gem_dir}/specifications/default/sdbm-%{sdbm_ver}.gemspec
-%{gem_dir}/specifications/default/shell-%{shell_ver}.gemspec
-%{gem_dir}/specifications/default/stringio-%{stringio_ver}.gemspec
-%{gem_dir}/specifications/default/strscan-%{strscan_ver}.gemspec
-%{gem_dir}/specifications/default/sync-%{sync_ver}.gemspec
-%{gem_dir}/specifications/default/thwait-%{thwait_ver}.gemspec
-%{gem_dir}/specifications/default/tracer-%{tracer_ver}.gemspec
-%{gem_dir}/specifications/default/webrick-%{webrick_ver}.gemspec
-%{gem_dir}/specifications/default/zlib-%{zlib_ver}.gemspec
+%{gem_dir}/specifications/default/*.gemspec
 
 %{_mandir}/man1/erb%{ruby_suffix}.1*
 %{_mandir}/man1/ri%{ruby_suffix}.1*
@@ -1388,23 +1386,19 @@ rm -rf $RPM_BUILD_ROOT
 %{ruby_ridir}/Binding
 %{ruby_ridir}/Bundler
 %{ruby_ridir}/CGI
-%{ruby_ridir}/CMath
 %{ruby_ridir}/CSV
 %{ruby_ridir}/Class
 %{ruby_ridir}/ClosedQueueError
 %{ruby_ridir}/Comparable
 %{ruby_ridir}/Complex
-%{ruby_ridir}/ConditionVariable
 %{ruby_ridir}/Continuation
+%{ruby_ridir}/CoreExtensions
 %{ruby_ridir}/Coverage
-%{ruby_ridir}/DBM
-%{ruby_ridir}/DBMError
-%{ruby_ridir}/DEBUGGER__
 %{ruby_ridir}/DRb
-%{ruby_ridir}/Data
 %{ruby_ridir}/Date
 %{ruby_ridir}/DateTime
 %{ruby_ridir}/Delegator
+%{ruby_ridir}/DidYouMean
 %{ruby_ridir}/Digest
 %{ruby_ridir}/Dir
 %{ruby_ridir}/ENV
@@ -1417,9 +1411,9 @@ rm -rf $RPM_BUILD_ROOT
 %{ruby_ridir}/Enumerable
 %{ruby_ridir}/Enumerator
 %{ruby_ridir}/Errno
+%{ruby_ridir}/ErrorHighlight
 %{ruby_ridir}/Etc
 %{ruby_ridir}/Exception
-%{ruby_ridir}/Exception2MessageMapper
 %{ruby_ridir}/FalseClass
 %{ruby_ridir}/Fcntl
 %{ruby_ridir}/Fiber
@@ -1434,9 +1428,6 @@ rm -rf $RPM_BUILD_ROOT
 %{ruby_ridir}/Forwardable
 %{ruby_ridir}/FrozenError
 %{ruby_ridir}/GC
-%{ruby_ridir}/GDBM
-%{ruby_ridir}/GDBMError
-%{ruby_ridir}/GDBMFatalError
 %{ruby_ridir}/Gem
 %{ruby_ridir}/GetoptLong
 %{ruby_ridir}/HTTPClientException
@@ -1470,18 +1461,18 @@ rm -rf $RPM_BUILD_ROOT
 %{ruby_ridir}/Marshal
 %{ruby_ridir}/MatchData
 %{ruby_ridir}/Math
-%{ruby_ridir}/Matrix
 %{ruby_ridir}/Method
 %{ruby_ridir}/Module
 %{ruby_ridir}/Monitor
 %{ruby_ridir}/MonitorMixin
-%{ruby_ridir}/Mutex
 %{ruby_ridir}/Mutex_m
 %{ruby_ridir}/NKF
 %{ruby_ridir}/NameError
 %{ruby_ridir}/Net
 %{ruby_ridir}/Newton
 %{ruby_ridir}/NilClass
+%{ruby_ridir}/NoMatchingPatternError
+%{ruby_ridir}/NoMatchingPatternKeyError
 %{ruby_ridir}/NoMemoryError
 %{ruby_ridir}/NoMethodError
 %{ruby_ridir}/NotImplementedError
@@ -1499,18 +1490,15 @@ rm -rf $RPM_BUILD_ROOT
 %{ruby_ridir}/PStore
 %{ruby_ridir}/PTY
 %{ruby_ridir}/Pathname
+%{ruby_ridir}/Pool
 %{ruby_ridir}/PrettyPrint
-%{ruby_ridir}/Prime
 %{ruby_ridir}/Proc
 %{ruby_ridir}/Process
-%{ruby_ridir}/Profiler__
 %{ruby_ridir}/Psych
-%{ruby_ridir}/Queue
 %{ruby_ridir}/RDoc
 %{ruby_ridir}/RDocTask
-%{ruby_ridir}/REXML
-%{ruby_ridir}/RSS
 %{ruby_ridir}/Racc
+%{ruby_ridir}/Ractor
 %{ruby_ridir}/Rake
 %{ruby_ridir}/Random
 %{ruby_ridir}/Range
@@ -1518,34 +1506,29 @@ rm -rf $RPM_BUILD_ROOT
 %{ruby_ridir}/Rational
 %{ruby_ridir}/RbConfig
 %{ruby_ridir}/Readline
+%{ruby_ridir}/Refinement
 %{ruby_ridir}/Regexp
 %{ruby_ridir}/RegexpError
+%{ruby_ridir}/Reline
 %{ruby_ridir}/Resolv
 %{ruby_ridir}/Rinda
 %{ruby_ridir}/Ripper
 %{ruby_ridir}/RubyLex
-%{ruby_ridir}/RubyToken
 %{ruby_ridir}/RubyVM
 %{ruby_ridir}/RuntimeError
-%{ruby_ridir}/SDBM
-%{ruby_ridir}/SDBMError
 %{ruby_ridir}/SOCKSSocket
-%{ruby_ridir}/Scanf
 %{ruby_ridir}/ScriptError
 %{ruby_ridir}/SecureRandom
 %{ruby_ridir}/SecurityError
 %{ruby_ridir}/Set
-%{ruby_ridir}/Shell
 %{ruby_ridir}/Shellwords
 %{ruby_ridir}/Signal
 %{ruby_ridir}/SignalException
 %{ruby_ridir}/SimpleDelegator
 %{ruby_ridir}/SingleForwardable
 %{ruby_ridir}/Singleton
-%{ruby_ridir}/SizedQueue
 %{ruby_ridir}/Socket
 %{ruby_ridir}/SocketError
-%{ruby_ridir}/SortedSet
 %{ruby_ridir}/StandardError
 %{ruby_ridir}/StopIteration
 %{ruby_ridir}/String
@@ -1553,10 +1536,6 @@ rm -rf $RPM_BUILD_ROOT
 %{ruby_ridir}/StringScanner
 %{ruby_ridir}/Struct
 %{ruby_ridir}/Symbol
-%{ruby_ridir}/Sync
-%{ruby_ridir}/Sync_m
-%{ruby_ridir}/Synchronizer
-%{ruby_ridir}/Synchronizer_m
 %{ruby_ridir}/SyntaxError
 %{ruby_ridir}/Syslog
 %{ruby_ridir}/SystemCallError
@@ -1565,17 +1544,13 @@ rm -rf $RPM_BUILD_ROOT
 %{ruby_ridir}/TCPServer
 %{ruby_ridir}/TCPSocket
 %{ruby_ridir}/TSort
-%{ruby_ridir}/TempIO
 %{ruby_ridir}/Tempfile
-%{ruby_ridir}/ThWait
 %{ruby_ridir}/Thread
 %{ruby_ridir}/ThreadError
 %{ruby_ridir}/ThreadGroup
-%{ruby_ridir}/ThreadsWait
 %{ruby_ridir}/Time
 %{ruby_ridir}/Timeout
 %{ruby_ridir}/TracePoint
-%{ruby_ridir}/Tracer
 %{ruby_ridir}/TrueClass
 %{ruby_ridir}/TypeError
 %{ruby_ridir}/UDPSocket
@@ -1585,11 +1560,9 @@ rm -rf $RPM_BUILD_ROOT
 %{ruby_ridir}/UnboundMethod
 %{ruby_ridir}/UncaughtThrowError
 %{ruby_ridir}/UnicodeNormalize
-%{ruby_ridir}/Vector
-%{ruby_ridir}/WEBrick
 %{ruby_ridir}/WIN32OLE
-%{ruby_ridir}/WIN32OLERuntimeError
 %{ruby_ridir}/WIN32OLEQueryInterfaceError
+%{ruby_ridir}/WIN32OLERuntimeError
 %{ruby_ridir}/WIN32OLE_EVENT
 %{ruby_ridir}/WIN32OLE_METHOD
 %{ruby_ridir}/WIN32OLE_PARAM
@@ -1600,15 +1573,14 @@ rm -rf $RPM_BUILD_ROOT
 %{ruby_ridir}/WIN32OLE_VARIANT
 %{ruby_ridir}/Warning
 %{ruby_ridir}/WeakRef
-%{ruby_ridir}/XML
-%{ruby_ridir}/XMLEncoding_ja
+%{ruby_ridir}/Win32
 %{ruby_ridir}/XMP
 %{ruby_ridir}/YAML
 %{ruby_ridir}/ZeroDivisionError
 %{ruby_ridir}/Zlib
 %{ruby_ridir}/fatal
-%{ruby_ridir}/lib
 %{ruby_ridir}/syntax
+%{ruby_ridir}/win32
 %{ruby_ridir}/page-CONTRIBUTING_md.ri
 %{ruby_ridir}/page-COPYING.ri
 %lang(ja) %{ruby_ridir}/page-COPYING_ja.ri
diff --git a/mkmf-verbose.patch b/mkmf-verbose.patch
index eb9145c..2113bea 100644
--- a/mkmf-verbose.patch
+++ b/mkmf-verbose.patch
@@ -11,15 +11,15 @@ diff --git a/lib/mkmf.rb b/lib/mkmf.rb
 index 682eb46..e6b1445 100644
 --- a/lib/mkmf.rb
 +++ b/lib/mkmf.rb
-@@ -1892,7 +1892,7 @@ def configuration(srcdir)
+@@ -1974,7 +1974,7 @@ def configuration(srcdir)
  SHELL = /bin/sh
  
  # V=0 quiet, V=1 verbose.  other values don't work.
 -V = 0
 +V = 1
+ V0 = $(V:0=)
  Q1 = $(V:1=)
  Q = $(Q1:0=@)
- ECHO1 = $(V:1=@ #{CONFIG['NULLCMD']})
 -- 
 1.8.3.1
 
diff --git a/ruby-version.patch b/ruby-version.patch
index a962e1a..1f42472 100644
--- a/ruby-version.patch
+++ b/ruby-version.patch
@@ -17,10 +17,10 @@ string.
  2 files changed, 35 insertions(+), 30 deletions(-)
 
 diff --git a/configure.ac b/configure.ac
-index 8ea969412f..a00f2b6776 100644
+index 80b137e380..63cd3b4f8b 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -3661,9 +3661,6 @@ AS_CASE(["$target_os"],
+@@ -3977,9 +3977,6 @@ AS_CASE(["$target_os"],
      rubyw_install_name='$(RUBYW_INSTALL_NAME)'
      ])
  
@@ -30,7 +30,7 @@ index 8ea969412f..a00f2b6776 100644
  rubyarchprefix=${multiarch+'${archlibdir}/${RUBY_BASE_NAME}'}${multiarch-'${rubylibprefix}/${arch}'}
  AC_ARG_WITH(rubyarchprefix,
  	    AS_HELP_STRING([--with-rubyarchprefix=DIR],
-@@ -3686,56 +3683,62 @@ AC_ARG_WITH(ridir,
+@@ -4002,56 +3999,62 @@ AC_ARG_WITH(ridir,
  AC_SUBST(ridir)
  AC_SUBST(RI_BASE_NAME)
  
@@ -58,7 +58,7 @@ index 8ea969412f..a00f2b6776 100644
 -], [
 -    RUBY_LIB_VERSION="${ruby_version}"
 -])
-+RUBY_LIB_VERSION_STYLE='2	/* minor */'
++RUBY_LIB_VERSION_STYLE='3	/* full */'
 +{
 +echo "#define RUBY_LIB_VERSION_STYLE $RUBY_LIB_VERSION_STYLE"
 +echo '#define STRINGIZE(x) x'
@@ -120,7 +120,7 @@ index 8ea969412f..a00f2b6776 100644
  
  AS_IF([test "${LOAD_RELATIVE+set}"], [
      AC_DEFINE_UNQUOTED(LOAD_RELATIVE, $LOAD_RELATIVE)
-@@ -3752,6 +3755,7 @@ AC_SUBST(sitearchincludedir)dnl
+@@ -4068,6 +4071,7 @@ AC_SUBST(sitearchincludedir)dnl
  AC_SUBST(arch)dnl
  AC_SUBST(sitearch)dnl
  AC_SUBST(ruby_version)dnl
@@ -132,14 +132,14 @@ diff --git a/template/ruby.pc.in b/template/ruby.pc.in
 index 8a2c066..c81b211 100644
 --- a/template/ruby.pc.in
 +++ b/template/ruby.pc.in
-@@ -9,6 +9,7 @@ MAJOR=@MAJOR@
+@@ -2,6 +2,7 @@ MAJOR=@MAJOR@
  MINOR=@MINOR@
  TEENY=@TEENY@
  ruby_version=@ruby_version@
 +ruby_version_dir_name=@ruby_version_dir_name@
  RUBY_API_VERSION=@RUBY_API_VERSION@
  RUBY_PROGRAM_VERSION=@RUBY_PROGRAM_VERSION@
- RUBY_BASE_NAME=@RUBY_BASE_NAME@
+ arch=@arch@
 -- 
 2.1.0
 
@@ -165,13 +165,13 @@ index 970cb91..5bf8230 100644
 -  version = RbConfig::CONFIG['ruby_version']
 +  version = RbConfig::CONFIG['ruby_version_dir_name'] || RbConfig::CONFIG['ruby_version']
  
-   BASE    = if RbConfig::CONFIG.key? 'ridir' then
-               File.join RbConfig::CONFIG['ridir'], version
+   BASE    = File.join RbConfig::CONFIG['ridir'], version
+ 
 diff --git a/tool/rbinstall.rb b/tool/rbinstall.rb
 index d4c110e..d39c9a6 100755
 --- a/tool/rbinstall.rb
 +++ b/tool/rbinstall.rb
-@@ -424,7 +424,7 @@ def CONFIG.[](name, mandatory = false)
+@@ -448,7 +448,7 @@ def CONFIG.[](name, mandatory = false)
  
  install?(:doc, :rdoc) do
    if $rdocdir
@@ -181,48 +181,43 @@ index d4c110e..d39c9a6 100755
      install_recursive($rdocdir, ridatadir, :no_install => rdoc_noinst, :mode => $data_mode)
    end
 -- 
-2.1.0
+2.23.0
 
 
-From f8d136f9a46d1fe87eba622ab9665935d05e981b Mon Sep 17 00:00:00 2001
+From 9f0ec0233f618cbb862629816b22491c3df79578 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch at redhat.com>
 Date: Tue, 31 Mar 2015 16:37:44 +0200
 Subject: [PATCH 3/4] Add ruby_version_dir_name support for RubyGems.
 
 ---
- lib/rubygems/defaults.rb  | 11 ++++++-----
- test/rubygems/test_gem.rb |  5 +++--
- 2 files changed, 9 insertions(+), 7 deletions(-)
+ lib/rubygems/defaults.rb  | 7 ++++---
+ test/rubygems/test_gem.rb | 5 +++--
+ 2 files changed, 7 insertions(+), 5 deletions(-)
 
---- ruby-2.7.6/lib/rubygems/defaults.rb.orig	2022-04-12 13:25:48.000000000 +0200
-+++ ruby-2.7.6/lib/rubygems/defaults.rb	2022-09-08 19:29:57.011900694 +0200
-@@ -32,13 +32,13 @@ module Gem
-              [
-                File.dirname(RbConfig::CONFIG['sitedir']),
-                'Gems',
--               RbConfig::CONFIG['ruby_version']
-+               RbConfig::CONFIG['ruby_version_dir_name'] || RbConfig::CONFIG['ruby_version']
-              ]
-            else
-              [
-                RbConfig::CONFIG['rubylibprefix'],
-                'gems',
--               RbConfig::CONFIG['ruby_version']
-+               RbConfig::CONFIG['ruby_version_dir_name'] || RbConfig::CONFIG['ruby_version']
-              ]
-            end
+diff --git a/lib/rubygems/defaults.rb b/lib/rubygems/defaults.rb
+index d4ff4a262c..3f9a5bf590 100644
+--- a/lib/rubygems/defaults.rb
++++ b/lib/rubygems/defaults.rb
+@@ -34,7 +34,7 @@ def self.default_spec_cache_dir
+   # specified in the environment
  
-@@ -75,7 +75,8 @@ module Gem
+   def self.default_dir
+-    @default_dir ||= File.join(RbConfig::CONFIG['rubylibprefix'], 'gems', RbConfig::CONFIG['ruby_version'])
++    @default_dir ||= File.join(RbConfig::CONFIG['rubylibprefix'], 'gems', RbConfig::CONFIG['ruby_version_dir_name'] || RbConfig::CONFIG['ruby_version'])
+   end
  
-   def self.user_dir
-     parts = [Gem.user_home, '.gem', ruby_engine]
+   ##
+@@ -103,7 +103,8 @@ def self.user_dir
+     gem_dir = File.join(Gem.user_home, ".gem")
+     gem_dir = File.join(Gem.data_home, "gem") unless File.exist?(gem_dir)
+     parts = [gem_dir, ruby_engine]
 -    parts << RbConfig::CONFIG['ruby_version'] unless RbConfig::CONFIG['ruby_version'].empty?
 +    ruby_version_dir_name = RbConfig::CONFIG['ruby_version_dir_name'] || RbConfig::CONFIG['ruby_version']
 +    parts << ruby_version_dir_name unless ruby_version_dir_name.empty?
      File.join parts
    end
  
-@@ -158,7 +159,7 @@ module Gem
+@@ -234,7 +235,7 @@ def self.vendor_dir # :nodoc:
      return nil unless RbConfig::CONFIG.key? 'vendordir'
  
      File.join RbConfig::CONFIG['vendordir'], 'gems',
@@ -231,9 +226,11 @@ Subject: [PATCH 3/4] Add ruby_version_dir_name support for RubyGems.
    end
  
    ##
---- ruby-2.7.6/test/rubygems/test_gem.rb.orig	2022-04-12 13:25:48.000000000 +0200
-+++ ruby-2.7.6/test/rubygems/test_gem.rb	2022-09-08 19:32:06.067868205 +0200
-@@ -1378,7 +1378,8 @@ class TestGem < Gem::TestCase
+diff --git a/test/rubygems/test_gem.rb b/test/rubygems/test_gem.rb
+index b25068405d..e9fef4a311 100644
+--- a/test/rubygems/test_gem.rb
++++ b/test/rubygems/test_gem.rb
+@@ -1410,7 +1410,8 @@ def test_self_use_paths
  
    def test_self_user_dir
      parts = [@userhome, '.gem', Gem.ruby_engine]
@@ -241,9 +238,9 @@ Subject: [PATCH 3/4] Add ruby_version_dir_name support for RubyGems.
 +    ruby_version_dir_name = RbConfig::CONFIG['ruby_version_dir_name'] || RbConfig::CONFIG['ruby_version']
 +    parts << ruby_version_dir_name unless ruby_version_dir_name.empty?
  
-     assert_equal File.join(parts), Gem.user_dir
-   end
-@@ -1454,7 +1455,7 @@ class TestGem < Gem::TestCase
+     FileUtils.mkdir_p File.join(parts)
+ 
+@@ -1486,7 +1487,7 @@ def test_self_vendor_dir
      vendordir(File.join(@tempdir, 'vendor')) do
        expected =
          File.join RbConfig::CONFIG['vendordir'], 'gems',
@@ -270,15 +267,15 @@ diff --git a/configure.ac b/configure.ac
 index a00f2b6776..999e2d6d5d 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -101,7 +101,7 @@ RUBY_BASE_NAME=`echo ruby | sed "$program_transform_name"`
+@@ -108,7 +108,7 @@ RUBY_BASE_NAME=`echo ruby | sed "$program_transform_name"`
  RUBYW_BASE_NAME=`echo rubyw | sed "$program_transform_name"`
  AC_SUBST(RUBY_BASE_NAME)
  AC_SUBST(RUBYW_BASE_NAME)
 -AC_SUBST(RUBY_VERSION_NAME, '${RUBY_BASE_NAME}-${ruby_version}')
 +AC_SUBST(RUBY_VERSION_NAME, '${RUBY_BASE_NAME}-${ruby_version_dir_name}')
  
- AC_CANONICAL_TARGET
- test x"$target_alias" = x &&
+ dnl checks for alternative programs
+ AC_CANONICAL_BUILD
 -- 
 2.1.0
 
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/ruby.git/commitdiff/930cc1f872f3f16cfcf6bb2aff303bda3c663a37




More information about the pld-cvs-commit mailing list