2 # - include ext/ in docs
3 # - replace ri with fastri
4 # - patch ri to search multiple indexes (one per package), so RPMs can install ri docs
7 %bcond_without doc # skip (time-consuming) docs generating; intended for speed up test builds
8 %bcond_with tk # Tk bindings
9 %bcond_without batteries # Don't include rubygems, json, rake, minitest
10 %bcond_without default_ruby # use this Ruby as default system Ruby
11 %bcond_with bootstrap # build bootstrap version
12 %bcond_with tests # build without tests
14 # prevent some weird build error:
15 # readlink: unrecognized option '--library=pthread'
17 # $ chrpath -l /home/users/glen/tmp/ruby-2.3.3-root-glen/usr/lib64/ruby/2.3/enc/encdb.so
18 # /home/users/glen/tmp/ruby-2.3.3-root-glen/usr/lib64/ruby/2.3/enc/encdb.so: RPATH=--library=pthread
22 %define ruby_version 2.3
25 %define pkg_version %{basever}.%{patchlevel}
27 %define ruby_suffix %{!?with_default_ruby:%{ruby_version}}
28 %define doc_version 2_2_5
30 %define bigdecimal_ver 1.2.8
31 %define io_console_ver 0.4.5
33 %define json_ver 1.8.3
34 %define minitest_ver 5.8.5
35 %define psych_ver 2.1.0
36 %define rake_ver 10.4.2
37 %define rdoc_ver 4.2.1
38 %define rubygems_ver 2.5.2
39 %define test_unit_ver 3.1.5
40 %define power_assert_ver 0.2.6
41 %define did_you_mean_ver 1.0.0
42 %define net_telnet_ver 0.1.1
45 Summary: Ruby - interpreted scripting language
46 Summary(ja.UTF-8): オブジェクト指向言語Rubyインタプリタ
47 Summary(pl.UTF-8): Ruby - interpretowany język skryptowy
48 Summary(pt_BR.UTF-8): Linguagem de script orientada a objeto
49 Summary(zh_CN.UTF-8): ruby - 一种快速高效的面向对象脚本编程语言
50 Name: ruby%{ruby_suffix}
51 Version: %{pkg_version}
54 # Public Domain for example for: include/ruby/st.h, strftime.c, missing/*, ...
56 # zlib: ext/digest/md5/md5.*, ext/nkf/nkf-utf8/nkf.c
57 # UCD: some of enc/trans/**/*.src
58 License: (Ruby or BSD) and Public Domain and MIT and CC0 and zlib and UCD
59 Group: Development/Languages
60 # https://www.ruby-lang.org/en/downloads/
61 Source0: https://ftp.ruby-lang.org/pub/ruby/2.2/%{oname}-%{pkg_version}.tar.xz
62 # Source0-md5: 0cba3d1b677d2695236ace62ca6d2255
63 Source1: http://www.ruby-doc.org/download/%{oname}-doc-bundle.tar.gz
64 # Source1-md5: ad1af0043be98ba1a4f6d0185df63876
65 Source2: http://www.ruby-doc.org/downloads/%{oname}_%{doc_version}_stdlib_rdocs.tgz
66 # Source2-md5: ac3d547e5ea9ef5a89be161cd967a5e8
67 Source3: http://www.ruby-doc.org/downloads/%{oname}_%{doc_version}_core_rdocs.tgz
68 # Source3-md5: 12f6b7a5e923fbae0f768d3cf760e88e
69 Source100: ftp://ftp.ruby-lang.org/pub/ruby/1.8/%{oname}-1.8.7-p330.tar.gz
70 # Source100-md5: 50a49edb787211598d08e756e733e42e
73 Source6: operating_system.rb
74 Patch0: %{oname}-lib64.patch
75 #Patch1: %{oname}-ffs.patch
76 Patch2: fix-bison-invocation.patch
77 Patch3: mkmf-verbose.patch
78 Patch4: strip-ccache.patch
79 Patch5: ruby-version.patch
80 Patch6: duplicated-paths.patch
82 Patch8: rubygems-2.0.0-binary-extensions.patch
83 Patch9: custom-rubygems-location.patch
84 Patch12: archlibdir.patch
85 URL: http://www.ruby-lang.org/
86 BuildRequires: autoconf >= 2.67
87 BuildRequires: automake
88 BuildRequires: bison >= 1.875
89 BuildRequires: db-devel
90 BuildRequires: gdbm-devel >= 1.8.3
91 BuildRequires: gmp-devel
92 BuildRequires: libffi-devel
93 BuildRequires: ncurses-devel
94 BuildRequires: openssl-devel >= 0.9.6
95 BuildRequires: pkgconfig
96 BuildRequires: readline-devel >= 4.2
97 BuildRequires: rpm-build >= 5.4.10-49
98 BuildRequires: sed >= 4.0
99 BuildRequires: systemtap-sdt-devel
100 BuildRequires: tar >= 1:1.22
102 BuildRequires: yaml-devel
103 BuildRequires: zlib-devel
104 %if %{without bootstrap}
105 # bootstrap needs ruby binary, erb module
106 BuildRequires: rpm-rubyprov
108 BuildRequires: ruby-modules
111 BuildRequires: tk-devel < 8.7
112 BuildRequires: tk-devel >= 8.4
114 Requires(post,postun): /sbin/ldconfig
115 Obsoletes: ruby-REXML <= 2.4.0-2
116 Obsoletes: ruby-doc < 1.8.4
117 Obsoletes: ruby-fastthread <= 0.6.3
118 Conflicts: rpm-build-macros < 1.695
119 Conflicts: ruby-activesupport < 2.3.11-2
120 Conflicts: ruby-activesupport2 < 2.3.11-2
121 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
123 %define ruby_ridir %{_datadir}/ri/system
124 %define gem_dir %{_datadir}/gems
125 %define gem_libdir %{_libdir}/gems/%{oname}
127 # location where rubygems is installed
128 %define rubygems_dir %{ruby_libdir}
130 %define ruby_archdir %{_libdir}/%{oname}/%{ruby_version}
131 %define ruby_libarchdir %{_libdir}/%{oname}/%{ruby_version}
132 %define ruby_libdir %{_datadir}/%{oname}/%{ruby_version}
134 # This is the local lib/arch and should not be used for packaging.
135 %define sitedir site_ruby
136 %define ruby_sitearchdir %{_prefix}/local/%{_lib}/%{oname}/%{sitedir}/%{ruby_version}
137 %define ruby_sitelibdir %{_prefix}/local/share/%{oname}/%{sitedir}
139 # This is the general location for libs/archs compatible with all
140 # or most of the Ruby versions available in the PLD repositories.
141 %define vendordir vendor_ruby
142 %define ruby_vendorarchdir %{_libdir}/%{oname}/%{vendordir}/%{ruby_version}
143 %define ruby_vendorlibdir %{_datadir}/%{oname}/%{vendordir}
145 # bleh, some nasty (gcc or ruby) bug still not fixed
146 # (SEGV or "unexpected break" on miniruby run during build)
147 %define specflags_ia64 -O0
149 # ruby needs frame pointers for correct exception handling
150 %define specflags_ia32 -fno-omit-frame-pointer
153 Ruby is the interpreted scripting language for quick and easy
154 object-oriented programming. It has many features to process text
155 files and to do system management tasks (as in Perl). It is simple,
156 straight-forward, extensible, and portable.
158 This package contains only shared library and ruby interpreter. To get
159 full-functional ruby environment install ruby-modules package.
161 %description -l ja.UTF-8
162 Rubyはシンプルかつ強力なオブジェクト指向スクリプト言語です.Rubyは最初
163 から純粋なオブジェクト指向言語として設計されていますから,オブジェクト
164 指向プログラミングを手軽に行う事が出来ます.もちろん通常の手続き型のプ ログラミングも可能です.
166 %description -l pl.UTF-8
167 Ruby to interpretowany język skryptowy, w sam raz dla łatwego i
168 szybkiego pisania zorientowanych obiektowo programów. Ma wiele funkcji
169 ułatwiających przetwarzanie plików tekstowych i wykonywanie prac
170 związanych z zarządzaniem systemu (podobnie jak Perl). Jest prosty,
171 rozszerzalny i przenośny.
173 Ten pakiet zawiera tylko bibliotekę dzieloną i interpreter ruby.
174 Zainstaluj pakiet ruby-modules, jeżeli potrzebujesz w pełni
175 funkcjonalnego środowiska ruby.
177 %description -l pt_BR.UTF-8
178 Ruby é uma linguagem de script interpretada de programação orientada a
179 objeto. Possui diversas características para processamento de texto. É
180 simples, extensível e direta.
183 Summary: Ruby standard modules and utilities
184 Summary(pl.UTF-8): Standardowe moduły i narzędzia dla języka Ruby
185 Group: Development/Languages
186 Requires: %{name} = %{epoch}:%{version}-%{release}
187 Suggests: ruby-rubygems
188 Provides: ruby-bigdecimal = %{bigdecimal_ver}
189 Provides: ruby-io-console = %{io_console_ver}
190 # ruby-modules deprecated, rpm5 generates ruby(abi) itself
191 Provides: ruby-modules(ver) = %{ruby_version}
193 Provides: ruby(abi) = %{ruby_version}
194 %requires_ge_to openssl openssl-devel
197 Ruby standard modules and utilities:
199 - testrb - automatic runner for Test::Unit of Ruby
201 %description modules -l pl.UTF-8
202 Standardowe moduły i narzędzia Ruby:
204 - testrb - automatyczny runner dla Ruby Test::Unit
207 Summary: Ruby/Tk bindings
208 Summary(pl.UTF-8): Wiązania Ruby/Tk
209 Group: Development/Languages
210 Requires: %{name}-modules = %{epoch}:%{version}-%{release}
213 This package contains Ruby/Tk bindings.
215 %description tk -l pl.UTF-8
216 Ten pakiet zawiera wiązania Ruby/Tk.
219 Summary: Ruby development libraries
220 Summary(pl.UTF-8): Biblioteki programistyczne interpretera języka Ruby
221 Group: Development/Languages
222 Requires: %{name}-modules = %{epoch}:%{version}-%{release}
224 Requires: glibc-devel
228 Ruby development libraries.
230 %description devel -l pl.UTF-8
231 Biblioteki programistyczne interpretera języka Ruby.
234 Summary: Ruby static libraries
235 Summary(pl.UTF-8): Biblioteki statyczne Ruby
236 Group: Development/Languages
237 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
240 Ruby static libraries.
242 %description static -l pl.UTF-8
243 Biblioteki statyczne Ruby.
246 Summary: Ruby HTML documentation
247 Summary(pl.UTF-8): Dokumentacja HTML do Ruby
249 %if "%{_rpmversion}" >= "5"
254 Ruby HTML documentation: FAQ, guide, core and standard library.
256 %description doc -l pl.UTF-8
257 Dokumentacja HTML do Ruby: FAQ, przewodnik, dokumentacja dla core i
261 Summary: Ruby ri documentation
262 Summary(pl.UTF-8): Dokumentacja Ruby w formacie ri
264 Requires: %{name}-modules = %{epoch}:%{version}-%{release}
265 %if "%{_rpmversion}" >= "5"
270 Ruby ri documentation.
272 %description doc-ri -l pl.UTF-8
273 Dokumentacja Ruby w formacie ri.
276 Summary: Ruby examples
277 Summary(pl.UTF-8): Przykłady dla języka Ruby
278 Group: Development/Languages
279 %if "%{_rpmversion}" >= "5"
283 %description examples
286 %description examples -l pl.UTF-8
287 Przykłady programów w języku Ruby.
289 # IMPORTANT: keep irb, rdoc, rubygems, rake, json as last packages as we reset epoch/version/release
290 # and %{version},%{release} macros may not be used directly as they take last
291 # subpackage value not main package one what you intend to use
294 Summary: The Interactive Ruby
296 Release: %{pkg_version}.%{rel}
298 Group: Development/Languages
299 Requires: %{name}-modules = 1:%{pkg_version}-%{rel}
300 Provides: irb = %{version}-%{release}
301 Provides: ruby(irb) = %{version}-%{release}
302 %if "%{_rpmversion}" >= "5"
307 The irb is acronym for Interactive Ruby. It evaluates ruby expression
311 Summary: A tool to generate HTML and command-line documentation for Ruby projects
312 Summary(pl.UTF-8): Narzędzie do generowania dokumentacji HTML i linii poleceń dla projektów w Rubym
314 Release: %{pkg_version}.%{rel}
316 # SIL: lib/rdoc/generator/template/darkfish/css/fonts.css
317 License: GPLv2 and Ruby and MIT and SIL
318 Group: Development/Libraries
319 Requires: %{name}-irb >= %{irb_ver}
320 Requires: %{name}-json >= %{json_ver}
321 Requires: %{name}-modules = 1:%{pkg_version}-%{rel}
322 Obsoletes: rdoc <= 0.9.0
323 %if "%{_rpmversion}" >= "5"
328 RDoc produces HTML and command-line documentation for Ruby projects.
329 RDoc includes the 'rdoc' and 'ri' tools for generating and displaying
330 online documentation.
332 %description rdoc -l pl.UTF-8
333 RDoc tworzy dokumentację HTML i linii poleceń dla projektów w języku
334 Ruby. RDoc zawiera narzędzia 'rdoc' i 'ri' do generowania i
335 wyświetlania dokumentacji online.
338 Summary: RubyGems - the Ruby standard for packaging Ruby libraries
339 Summary(pl.UTF-8): RubyGems - standard Ruby'ego pakietowania bibliotek
340 Version: %{rubygems_ver}
341 Release: %{pkg_version}.%{rel}
344 Group: Development/Libraries
345 Requires: %{name}-modules = 1:%{pkg_version}-%{rel}
346 Requires: %{name}-rdoc >= %{rdoc_ver}
347 Suggests: %{name}-devel
348 Provides: rubygems = %{rubygems_ver}
349 %if "%{_rpmversion}" >= "5"
353 %description rubygems
354 RubyGems is the Ruby standard for publishing and managing third party
357 %description rubygems -l pl.UTF-8
358 RubyGems to standardowe narzędzie języka Ruby do publikowania i
359 zarządzania zewnętrznymi bibliotekami.
362 Summary: Rake is a Make-like program implemented in Ruby
363 Summary(pl.UTF-8): Program typu Make dla języka Ruby
365 Release: %{pkg_version}.%{rel}
368 Group: Development/Languages
369 Provides: rake = %{rake_ver}
370 Conflicts: ruby-modules < 1:1.9.3.429-2
371 %if "%{_rpmversion}" >= "5"
376 Rake is a simple Ruby build program with capabilities similar to make.
378 It has the following features:
379 - Rakefiles (rake's version of Makefiles) are completely defined in
380 standard Ruby syntax. No XML files to edit. No quirky Makefile syntax
381 to worry about (is that a tab or a space?)
382 - Users can specify tasks with prerequisites.
383 - Rake supports rule patterns to synthesize implicit tasks.
384 - Rake is lightweight. It can be distributed with other projects as a
385 single file. Projects that depend upon rake do not require that rake
386 be installed on target systems.
388 %description rake -l pl.UTF-8
389 Rake to prosty program do budowania w języku Ruby o możliwościach
392 Ma następujące cechy:
393 - Pliki Rakefile (rake'owa odmiana plików Makefile) są definiowane
394 całkowicie w standardowej składni języka Ruby. Nie trzeba modyfikować
395 plików XML. Nie trzeba martwić się kaprysami składni Makefile (czy to
396 tabulacja czy spacja?).
397 - Użytkownicy mogą określać zadania z ich zależnościami.
398 - Rake obsługuje wzorce reguł do tworzenia z nich wynikowych zadań.
399 - Rake jest lekki. Może być rozpowszechniany z innymi projektami jako
400 pojedynczy plik. Projekty używające rake'a nie wymagają go
401 zainstalowanego na systemach docelowych.
404 Summary: JSON library for Ruby
405 Summary(pl.UTF-8): Biblioteka JSON dla języka Ruby
407 Release: %{pkg_version}.%{rel}
409 # UCD: ext/json/generator/generator.c
410 License: (Ruby or GPLv2) and UCD
411 Group: Development/Languages
412 Obsoletes: ruby-json-rubyforge
413 Conflicts: ruby-modules < 1:1.9.3.429-3
416 This is a JSON implementation as a Ruby extension in C.
418 %description json -l pl.UTF-8
419 Biblioteka JSON dla języka Ruby.
422 Summary: Minitest provides a complete suite of testing facilities
423 Version: %{minitest_ver}
424 Release: %{pkg_version}.%{rel}
427 Group: Development/Libraries
428 %if "%{_rpmversion}" >= "5"
432 %description minitest
433 minitest/unit is a small and incredibly fast unit testing framework.
435 minitest/spec is a functionally complete spec engine.
437 minitest/benchmark is an awesome way to assert the performance of your
438 algorithms in a repeatable manner.
440 minitest/mock by Steven Baker, is a beautifully tiny mock object
443 minitest/pride shows pride in testing and adds coloring to your test
446 %package power_assert
447 # The Summary/Description fields are rather poor.
448 # https://github.com/k-tsj/power_assert/issues/3
449 Summary: Power Assert for Ruby
450 Version: %{power_assert_ver}
451 Release: %{pkg_version}.%{rel}
454 Group: Development/Libraries
455 %if "%{_rpmversion}" >= "5"
459 %description power_assert
460 Power Assert shows each value of variables and method calls in the
461 expression. It is useful for testing, providing which value wasn't
462 correct when the condition is not satisfied.
465 # The Summary/Description fields are rather poor.
466 # https://github.com/test-unit/test-unit/issues/73
467 Summary: Improved version of Test::Unit bundled in Ruby 1.8.x
468 Version: %{test_unit_ver}
469 Release: %{pkg_version}.%{rel}
471 Group: Development/Libraries
472 # lib/test/unit/diff.rb is a double license of the Ruby license and PSF license.
473 # lib/test-unit.rb is a dual license of the Ruby license and LGPLv2.1 or later.
474 License: (Ruby or BSD) and (Ruby or BSD or Python) and (Ruby or BSD or LGPLv2+)
475 %if "%{_rpmversion}" >= "5"
479 %description test-unit
480 Ruby 1.9.x bundles minitest not Test::Unit. Test::Unit bundled in Ruby
481 1.8.x had not been improved but unbundled Test::Unit (test-unit) is
484 %package did_you_mean
485 Summary: "Did you mean?" experience in Ruby
486 Version: %{did_you_mean_ver}
487 Release: %{pkg_version}.%{rel}
490 Group: Development/Libraries
491 %if "%{_rpmversion}" >= "5"
495 %description did_you_mean
496 "did you mean?" experience in Ruby: the error message will tell you
497 the right one when you misspelled something.
500 Summary: Provides telnet client functionality
501 Version: %{net_telnet_ver}
502 Release: %{pkg_version}.%{rel}
504 Group: Development/Libraries
505 %if "%{_rpmversion}" >= "5"
509 %description net-telnet
510 Provides telnet client functionality.
512 This class also has, through delegation, all the methods of a socket
513 object (by default, a TCPSocket, but can be set by the Proxy option to
514 new()). This provides methods such as close() to end the session and
515 sysread() to read data directly from the host, instead of via the
516 waitfor() mechanism. Note that if you do use sysread() directly when
517 in telnet mode, you should probably pass the output through
518 preprocess() to extract telnet command sequences.
521 %setup -q -n %{oname}-%{pkg_version} -a1 -a2 -a3 %{?with_bootstrap:-a100}
533 # must be regenerated with new bison
536 # Remove bundled libraries to be sure they are not used.
537 %{__rm} -r ext/psych/yaml
538 %{__rm} -r ext/fiddle/libffi*
540 # Install custom operating_system.rb.
541 install -d lib/rubygems/defaults
542 cp -p %{SOURCE6} lib/rubygems/defaults
544 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
546 find -type f '(' -name '*.rb' -o -name '*.cgi' -o -name '*.test' \
547 -o -name 'ruby.1' -o -name '*.html' -o -name '*.tcl' ')' \
548 | xargs %{__sed} -i 's,/usr/local/bin/,%{_bindir}/,'
550 # no configure option to disable, so just rm
551 %{!?with_tk:rm -rf ext/tk}
554 rubygems_ver=$(awk '/VERSION =/ && $1 == "VERSION" {print $3}' lib/rubygems.rb | xargs)
555 if [ $rubygems_ver != %{rubygems_ver} ]; then
556 echo "Set %%define rubygems_ver to $rubygems_ver and re-run."
559 rdoc_ver=$(awk '/VERSION =/ && $1 == "VERSION" {print $3}' lib/rdoc.rb | xargs)
560 if [ $rdoc_ver != %{rdoc_ver} ]; then
561 echo "Set %%define rdoc_ver to $rdoc_ver and re-run."
565 cp -f /usr/share/automake/config.sub .
567 # build ruby-1.8.7 first
568 %if %{with bootstrap}
569 cd %{oname}-1.8.7-p330
577 %{?with_bootstrap:--with-baseruby=%{oname}-1.8.7-p330/miniruby} \
578 --program-suffix=%{ruby_suffix} \
579 --with-archlibdir=%{_libdir} \
580 --with-rubygemsdir=%{rubygems_dir} \
581 --with-rubylibprefix=%{ruby_libdir} \
582 --with-rubyarchprefix=%{ruby_archdir} \
583 --with-sitedir=%{ruby_sitelibdir} \
584 --with-sitearchdir=%{ruby_sitearchdir} \
585 --with-vendordir=%{ruby_vendorlibdir} \
586 --with-vendorarchdir=%{ruby_vendorarchdir} \
587 --with-rubyhdrdir=%{_includedir}/%{oname}-%{ruby_version} \
588 --with-rubyarchhdrdir=%{_includedir}/%{oname}-%{ruby_version} \
589 --with-sitearchhdrdir='$(sitehdrdir)/$(arch)' \
590 --with-vendorarchhdrdir='$(vendorhdrdir)/$(arch)' \
593 --disable-install-doc \
595 --with-ruby-version='' \
599 %{?with_bootstrap:BASERUBY="%{oname}-1.8.7-p330/miniruby -I./ruby-1.8.7-p330/lib"}
606 # unset these, as testsuite does "git commit" somewhere, which points to pld .spec repo. doh
607 unset GIT_DIR GIT_WORK_TREE
612 %ifarch armv7l armv7hl armv7hnl
613 # test_call_double(DL::TestDL) fails on ARM HardFP
614 # http://bugs.ruby-lang.org/issues/6592
615 DISABLE_TESTS="-x test_dl2.rb $DISABLE_TESTS"
618 # test_debug(TestRubyOptions) fails due to LoadError reported in debug mode,
619 # when abrt.rb cannot be required (seems to be easier way then customizing
623 # TestSignal#test_hup_me hangs up the test suite.
624 # http://bugs.ruby-lang.org/issues/8997
625 sed -i '/def test_hup_me/,/end if Process.respond_to/ s/^/#/' test/ruby/test_signal.rb
627 # Fix "Could not find 'minitest'" error.
628 # http://bugs.ruby-lang.org/issues/9259
629 sed -i "/^ gem 'minitest', '~> 4.0'/ s/^/#/" lib/rubygems/test_case.rb
631 # Segmentation fault.
632 # https://bugs.ruby-lang.org/issues/9198
633 sed -i '/^ def test_machine_stackoverflow/,/^ end/ s/^/#/' test/ruby/test_exception.rb
635 # Don't test wrap ciphers to prevent "OpenSSL::Cipher::CipherError: wrap mode
636 # not allowed" error.
637 # https://bugs.ruby-lang.org/issues/10229
638 sed -i '/assert(OpenSSL::Cipher::Cipher.new(name).is_a?(OpenSSL::Cipher::Cipher))/i \
639 next if /wrap/ =~ name' test/openssl/test_cipher.rb
641 # Test is broken due to SSLv3 disabled in Fedora.
642 # https://bugs.ruby-lang.org/issues/10046
643 sed -i '/def test_ctx_server_session_cb$/,/^ end$/ s/^/#/' test/openssl/test_ssl_session.rb
645 %{__make} check TESTS="-v $DISABLE_TESTS"
649 rm -rf $RPM_BUILD_ROOT
650 install -d $RPM_BUILD_ROOT{%{ruby_rdocdir},%{ruby_ridir}} \
651 $RPM_BUILD_ROOT%{ruby_vendorarchdir} \
652 $RPM_BUILD_ROOT%{ruby_vendorlibdir}/net \
653 $RPM_BUILD_ROOT%{ruby_vendorlibdir}/data \
655 %{__make} install %{?with_doc:install-doc -j1} \
656 DESTDIR=$RPM_BUILD_ROOT
658 # Version is empty if --with-ruby-version is specified.
659 # http://bugs.ruby-lang.org/issues/7807
660 sed -i -e 's/Version: \${ruby_version}/Version: %{ruby_version}/' $RPM_BUILD_ROOT%{_pkgconfigdir}/%{oname}-%{ruby_version}.pc
662 # Kill bundled certificates, as they should be part of ca-certificates.
664 Class3PublicPrimaryCertificationAuthority.pem \
665 DigiCertHighAssuranceEVRootCA.pem \
666 EntrustnetSecureServerCertificationAuthority.pem \
667 GeoTrustGlobalCA.pem \
668 AddTrustExternalCARoot.pem \
669 AddTrustExternalCARoot-2048.pem \
671 %{__rm} $RPM_BUILD_ROOT%{rubygems_dir}/rubygems/ssl_certs/$cert
674 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}
675 cp -Rf sample/* $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}
676 cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_mandir}/man1/rdoc%{ruby_suffix}.1
677 cp -p %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man1/testrb%{ruby_suffix}.1
679 %{__rm} -rf $RPM_BUILD_ROOT%{_docdir}/%{name}/html
681 # detect this runtime, "make install" is affected by operating_system.rb what is installed in system!
682 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')
684 # Move gems root into common directory, out of Ruby directory structure.
685 install -d $RPM_BUILD_ROOT%{gem_dir}
686 %{__mv} $RPM_BUILD_ROOT${gem_dir}/{gems,specifications} $RPM_BUILD_ROOT%{gem_dir}
688 # Move bundled rubygems to %gem_dir
689 # make symlinks for io-console and bigdecimal, which are considered to be part of stdlib by other Gems
690 # make symlinks for all packages, so they would work without rubygems
691 # NOTE: when making symlinks, do not symlink paths that could be directories,
692 # as there may came files from other packages as well. actually, unlikely as
693 # the links to got system dir and only ruby may package there (other distro
694 # packages should go to vendor dirs)
696 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/lib
697 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/rake* $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/lib
698 ln -s %{gem_dir}/gems/rake-%{rake_ver}/lib/rake $RPM_BUILD_ROOT%{ruby_libdir}
699 ln -s %{gem_dir}/gems/rake-%{rake_ver}/lib/rake.rb $RPM_BUILD_ROOT%{ruby_libdir}
700 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/rake-%{rake_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
703 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
704 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/rdoc* $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
705 ln -s %{gem_dir}/gems/rdoc-%{rdoc_ver}/lib/rdoc $RPM_BUILD_ROOT%{ruby_libdir}
706 ln -s %{gem_dir}/gems/rdoc-%{rdoc_ver}/lib/rdoc.rb $RPM_BUILD_ROOT%{ruby_libdir}
707 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/rdoc-%{rdoc_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
709 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib
710 install -d $RPM_BUILD_ROOT%{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
711 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/bigdecimal $RPM_BUILD_ROOT%{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib
712 %{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal.so $RPM_BUILD_ROOT%{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
713 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/bigdecimal-%{bigdecimal_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
714 ln -s %{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal $RPM_BUILD_ROOT%{ruby_libdir}/bigdecimal
715 ln -s %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal.so $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal.so
717 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/io-console-%{io_console_ver}/lib
718 install -d $RPM_BUILD_ROOT%{gem_libdir}/io-console-%{io_console_ver}/lib/io
719 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/io $RPM_BUILD_ROOT%{gem_dir}/gems/io-console-%{io_console_ver}/lib
720 %{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/io/console.so $RPM_BUILD_ROOT%{gem_libdir}/io-console-%{io_console_ver}/lib/io
721 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/io-console-%{io_console_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
722 ln -s %{gem_dir}/gems/io-console-%{io_console_ver}/lib/io $RPM_BUILD_ROOT%{ruby_libdir}/io
723 ln -s %{gem_libdir}/io-console-%{io_console_ver}/lib/io/console.so $RPM_BUILD_ROOT%{ruby_libarchdir}/io/console.so
725 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/json-%{json_ver}/lib
726 install -d $RPM_BUILD_ROOT%{gem_libdir}/json-%{json_ver}/lib
727 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/json* $RPM_BUILD_ROOT%{gem_dir}/gems/json-%{json_ver}/lib
728 %{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/json $RPM_BUILD_ROOT%{gem_libdir}/json-%{json_ver}/lib
729 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/json-%{json_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
730 ln -s %{gem_dir}/gems/json-%{json_ver}/lib/json $RPM_BUILD_ROOT%{ruby_libdir}/json
731 ln -s %{gem_dir}/gems/json-%{json_ver}/lib/json.rb $RPM_BUILD_ROOT%{ruby_libdir}/json.rb
732 install -d $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
733 ln -s %{gem_libdir}/json-%{json_ver}/lib/json/ext/parser.so $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
734 ln -s %{gem_libdir}/json-%{json_ver}/lib/json/ext/generator.so $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
736 ln -s %{gem_dir}/gems/minitest-%{minitest_ver}/lib/minitest $RPM_BUILD_ROOT%{ruby_libdir}
738 install -d $RPM_BUILD_ROOT%{ruby_libdir}/test
739 ln -s %{gem_dir}/gems/test-unit-%{test_unit_ver}/lib/unit $RPM_BUILD_ROOT%{ruby_libdir}/test
741 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/psych-%{psych_ver}/lib
742 install -d $RPM_BUILD_ROOT%{gem_libdir}/psych-%{psych_ver}/lib
743 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/psych* $RPM_BUILD_ROOT%{gem_dir}/gems/psych-%{psych_ver}/lib
744 %{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/psych.so $RPM_BUILD_ROOT%{gem_libdir}/psych-%{psych_ver}/lib/
745 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/psych-%{psych_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
746 ln -s %{gem_dir}/gems/psych-%{psych_ver}/lib/psych $RPM_BUILD_ROOT%{ruby_libdir}/psych
747 ln -s %{gem_dir}/gems/psych-%{psych_ver}/lib/psych.rb $RPM_BUILD_ROOT%{ruby_libdir}/psych.rb
748 ln -s %{gem_libdir}/psych-%{psych_ver}/lib/psych.so $RPM_BUILD_ROOT%{ruby_archdir}/psych.so
750 # Adjust the gemspec files so that the gems will load properly
752 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/rake-%{rake_ver}.gemspec
755 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/rdoc-%{rdoc_ver}.gemspec
758 s.require_paths = ["lib"]\
759 s.extensions = ["bigdecimal.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/bigdecimal-%{bigdecimal_ver}.gemspec
762 s.require_paths = ["lib"]\
763 s.extensions = ["io/console.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/io-console-%{io_console_ver}.gemspec
766 s.require_paths = ["lib"]\
767 s.extensions = ["json/ext/parser.so", "json/ext/generator.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/json-%{json_ver}.gemspec
770 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/minitest-%{minitest_ver}.gemspec
772 # Push the .gemspecs through the RubyGems to let them write the stub headers.
773 # This speeds up loading of libraries and avoids warnings in Spring:
774 # https://github.com/rubygems/rubygems/pull/694
775 for s in rake-%{rake_ver}.gemspec rdoc-%{rdoc_ver}.gemspec json-%{json_ver}.gemspec; do
776 s="$RPM_BUILD_ROOT%{gem_dir}/specifications/$s"
777 %{__make} runruby TESTRUN_SCRIPT="-rubygems \
778 -e \"spec = Gem::Specification.load('$s')\" \
779 -e \"File.write '$s', spec.to_ruby\""
782 ln -sf %{gem_dir}/gems/rake-%{rake_ver}/bin/rake $RPM_BUILD_ROOT%{_bindir}/rake%{ruby_suffix}
784 %{__sed} -i -e '1s,/usr/bin/env ruby,/usr/bin/ruby,' \
785 $RPM_BUILD_ROOT%{ruby_libdir}/abbrev.rb \
786 $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/bin/rake \
787 $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/bin/rdoc \
788 $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/bin/ri \
789 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/{cal,test,time,uumerge}.rb \
790 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/{drb,logger,openssl,ripper,rss}/*.rb \
791 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/webrick/*.cgi
793 # gem non library files
794 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/minitest-%{minitest_ver}/test
795 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/test-unit-%{test_unit_ver}/{[A-Z]*,doc,sample,test}
796 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/power_assert-%{power_assert_ver}/{[A-Z]*,test}
797 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/{[A-Z]*,doc,test}
798 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/{[A-Z]*,doc,test}
799 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/net-telnet-%{net_telnet_ver}/{[A-Z]*,bin}
801 %if %{without batteries}
802 # packaged separately
803 %{__rm} -r $RPM_BUILD_ROOT%{ruby_libdir}/{rubygems,rake,json,minitest}
804 %{__rm} -r $RPM_BUILD_ROOT%{ruby_archdir}/json
805 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rake-*
806 %{__rm} $RPM_BUILD_ROOT%{ruby_libdir}/{rake,rubygems,json}.rb
807 %{__rm} $RPM_BUILD_ROOT%{_bindir}/{gem,rake}
808 #%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/rake*
809 %{__rm} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/{json,minitest,rake}-*.gemspec
810 %{?with_doc:%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/ri/%{ruby_version}/system/JSON}
815 %{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/cache.ri
816 %{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/created.rid
820 rm -rf $RPM_BUILD_ROOT
822 %post -p /sbin/ldconfig
823 %postun -p /sbin/ldconfig
826 %defattr(644,root,root,755)
827 %doc NEWS LEGAL BSDL README.md README.EXT ChangeLog
828 %attr(755,root,root) %{_bindir}/ruby%{ruby_suffix}
829 %attr(755,root,root) %{_libdir}/libruby.so.*.*.*
830 %attr(755,root,root) %ghost %{_libdir}/libruby.so.%{ruby_version}
831 %{_mandir}/man1/ruby%{ruby_suffix}.1*
833 %dir %{_libdir}/%{oname}
834 %dir %{_libdir}/%{oname}/%{vendordir}
835 %dir %{_datadir}/%{oname}
839 %dir %{ruby_vendorlibdir}
840 %dir %{ruby_vendorarchdir}
842 %dir %{dirname:%{ruby_ridir}}
846 # common dirs for ruby vendor modules
847 %dir %{ruby_vendorlibdir}/data
848 %dir %{ruby_vendorlibdir}/net
851 %defattr(644,root,root,755)
852 %attr(755,root,root) %{_libdir}/libruby.so
853 %{_includedir}/%{oname}-%{ruby_version}
854 %{_pkgconfigdir}/%{oname}-%{ruby_version}.pc
855 %{ruby_libdir}/mkmf.rb
858 %defattr(644,root,root,755)
859 %{_libdir}/libruby-static.a
863 %defattr(644,root,root,755)
864 %doc ext/tk/{ChangeLog.tkextlib,MANUAL_tcltklib.eng,README.fork}
865 %lang(ja) %doc ext/tk/MANUAL_tcltklib.ja
866 %{ruby_libdir}/multi-tk.rb
867 %{ruby_libdir}/remote-tk.rb
868 %{ruby_libdir}/tcltk.rb
869 %{ruby_libdir}/tk*.rb
871 %{ruby_libdir}/tkextlib
872 %attr(755,root,root) %{ruby_archdir}/tcltklib.so
873 %attr(755,root,root) %{ruby_archdir}/tkutil.so
877 %defattr(644,root,root,755)
878 %attr(755,root,root) %{_bindir}/irb%{ruby_suffix}
879 %{ruby_libdir}/irb.rb
881 %{_mandir}/man1/irb%{ruby_suffix}.1*
884 %defattr(644,root,root,755)
885 %attr(755,root,root) %{_bindir}/rdoc%{ruby_suffix}
886 %attr(755,root,root) %{_bindir}/ri%{ruby_suffix}
887 %{_mandir}/man1/rdoc%{ruby_suffix}.1*
889 %dir %{gem_dir}/gems/rdoc-%{rdoc_ver}
890 %{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
891 %dir %{gem_dir}/gems/rdoc-%{rdoc_ver}/bin
892 %attr(755,root,root) %{gem_dir}/gems/rdoc-%{rdoc_ver}/bin/rdoc
893 %{gem_dir}/specifications/rdoc-%{rdoc_ver}.gemspec
894 %attr(755,root,root) %{gem_dir}/gems/rdoc-%{rdoc_ver}/bin/ri
896 %if %{with batteries}
898 %defattr(644,root,root,755)
899 %attr(755,root,root) %{_bindir}/gem%{ruby_suffix}
900 %{rubygems_dir}/rubygems
901 %{rubygems_dir}/rubygems.rb
902 %{rubygems_dir}/ubygems.rb
903 %{rubygems_dir}/rbconfig
906 %defattr(644,root,root,755)
907 %attr(755,root,root) %{_bindir}/rake%{ruby_suffix}
908 #%{_mandir}/man1/rake%{ruby_suffix}.1*
910 #%{ruby_libdir}/rake.rb
911 %dir %{gem_dir}/gems/rake-%{rake_ver}
912 %{gem_dir}/gems/rake-%{rake_ver}/lib
913 %{gem_dir}/gems/rake-%{rake_ver}/rakelib
914 %dir %{gem_dir}/gems/rake-%{rake_ver}/bin
915 %attr(755,root,root) %{gem_dir}/gems/rake-%{rake_ver}/bin/rake
916 %{gem_dir}/specifications/rake-%{rake_ver}.gemspec
919 %defattr(644,root,root,755)
921 %dir %{ruby_archdir}/json
922 %dir %{ruby_archdir}/json/ext
923 %attr(755,root,root) %{ruby_archdir}/json/ext/*.so
925 %dir %{gem_libdir}/json-%{json_ver}
926 %dir %{gem_libdir}/json-%{json_ver}/lib
927 %dir %{gem_libdir}/json-%{json_ver}/lib/json
928 %dir %{gem_libdir}/json-%{json_ver}/lib/json/ext
929 %attr(755,root,root) %{gem_libdir}/json-%{json_ver}/lib/json/ext/generator.so
930 %attr(755,root,root) %{gem_libdir}/json-%{json_ver}/lib/json/ext/parser.so
932 %{gem_dir}/gems/json-%{json_ver}
933 %{gem_dir}/specifications/json-%{json_ver}.gemspec
937 %defattr(644,root,root,755)
938 %dir %{gem_dir}/gems/power_assert-%{power_assert_ver}
939 %{gem_dir}/gems/power_assert-%{power_assert_ver}/lib
940 %{gem_dir}/specifications/power_assert-%{power_assert_ver}.gemspec
943 %defattr(644,root,root,755)
944 %{ruby_libdir}/minitest
945 %{gem_dir}/gems/minitest-%{minitest_ver}
946 %{gem_dir}/specifications/minitest-%{minitest_ver}.gemspec
949 %defattr(644,root,root,755)
950 %dir %{gem_dir}/gems/test-unit-%{test_unit_ver}
951 %{gem_dir}/gems/test-unit-%{test_unit_ver}/lib
952 %{gem_dir}/specifications/test-unit-%{test_unit_ver}.gemspec
953 %{_mandir}/man1/testrb%{ruby_suffix}.1*
956 %defattr(644,root,root,755)
957 %dir %{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}
958 %{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/benchmark
959 %{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/evaluation
960 %{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/lib
961 %{gem_dir}/specifications/did_you_mean-%{did_you_mean_ver}.gemspec
964 %defattr(644,root,root,755)
965 %dir %{gem_dir}/gems/net-telnet-%{net_telnet_ver}
966 %{gem_dir}/gems/net-telnet-%{net_telnet_ver}/lib
967 %{gem_dir}/specifications/net-telnet-%{net_telnet_ver}.gemspec
970 %defattr(644,root,root,755)
971 %attr(755,root,root) %{_bindir}/erb%{ruby_suffix}
974 %{ruby_libdir}/digest
977 %{ruby_libdir}/fiddle
979 %{ruby_libdir}/matrix
981 %{ruby_libdir}/openssl
982 %{ruby_libdir}/optparse
984 %{ruby_libdir}/rbconfig
987 %{ruby_libdir}/ripper
990 %{ruby_libdir}/syslog
993 %{ruby_libdir}/webrick
994 %{ruby_libdir}/xmlrpc
997 %{ruby_libdir}/English.rb
998 %{ruby_libdir}/abbrev.rb
999 %{ruby_libdir}/base64.rb
1000 %{ruby_libdir}/benchmark.rb
1001 %{ruby_libdir}/cgi.rb
1002 %{ruby_libdir}/cmath.rb
1003 #%{ruby_libdir}/complex.rb
1004 %{ruby_libdir}/csv.rb
1005 %{ruby_libdir}/date.rb
1006 %{ruby_libdir}/debug.rb
1007 %{ruby_libdir}/delegate.rb
1008 %{ruby_libdir}/digest.rb
1009 #%{ruby_libdir}/dl.rb
1010 %{ruby_libdir}/drb.rb
1011 %{ruby_libdir}/e2mmap.rb
1012 %{ruby_libdir}/erb.rb
1013 %{ruby_libdir}/expect.rb
1014 %{ruby_libdir}/fiddle.rb
1015 %{ruby_libdir}/fileutils.rb
1016 %{ruby_libdir}/find.rb
1017 %{ruby_libdir}/forwardable.rb
1018 %{ruby_libdir}/getoptlong.rb
1019 #%{ruby_libdir}/gserver.rb
1020 %{ruby_libdir}/ipaddr.rb
1021 %{ruby_libdir}/json.rb
1022 %{ruby_libdir}/kconv.rb
1023 %{ruby_libdir}/logger.rb
1024 %{ruby_libdir}/mathn.rb
1025 %{ruby_libdir}/matrix.rb
1026 %{ruby_libdir}/monitor.rb
1027 %{ruby_libdir}/mutex_m.rb
1028 %{ruby_libdir}/observer.rb
1029 %{ruby_libdir}/open-uri.rb
1030 %{ruby_libdir}/open3.rb
1031 %{ruby_libdir}/openssl.rb
1032 %{ruby_libdir}/optionparser.rb
1033 %{ruby_libdir}/optparse.rb
1034 %{ruby_libdir}/ostruct.rb
1035 %{ruby_libdir}/pathname.rb
1036 %{ruby_libdir}/pp.rb
1037 %{ruby_libdir}/prettyprint.rb
1038 %{ruby_libdir}/prime.rb
1039 %{ruby_libdir}/profile.rb
1040 %{ruby_libdir}/profiler.rb
1041 %{ruby_libdir}/pstore.rb
1042 %{ruby_libdir}/psych.rb
1043 #%{ruby_libdir}/rational.rb
1044 %{ruby_libdir}/rdoc.rb
1045 %{ruby_libdir}/resolv-replace.rb
1046 %{ruby_libdir}/resolv.rb
1047 %{ruby_libdir}/ripper.rb
1048 %{ruby_libdir}/rss.rb
1049 %{ruby_libdir}/scanf.rb
1050 %{ruby_libdir}/securerandom.rb
1051 %{ruby_libdir}/set.rb
1052 %{ruby_libdir}/shell.rb
1053 %{ruby_libdir}/shellwords.rb
1054 %{ruby_libdir}/singleton.rb
1055 %{ruby_libdir}/socket.rb
1056 %{ruby_libdir}/sync.rb
1057 %{ruby_libdir}/tempfile.rb
1058 %{ruby_libdir}/thwait.rb
1059 %{ruby_libdir}/time.rb
1060 %{ruby_libdir}/timeout.rb
1061 %{ruby_libdir}/tmpdir.rb
1062 %{ruby_libdir}/tracer.rb
1063 %{ruby_libdir}/tsort.rb
1064 %{ruby_libdir}/un.rb
1065 %{ruby_libdir}/unicode_normalize
1066 %{ruby_libdir}/unicode_normalize.rb
1067 %{ruby_libdir}/uri.rb
1068 %{ruby_libdir}/weakref.rb
1069 %{ruby_libdir}/webrick.rb
1070 %{ruby_libdir}/xmlrpc.rb
1071 %{ruby_libdir}/yaml.rb
1073 %if %{with batteries}
1074 %exclude %{ruby_libdir}/rubygems.rb
1075 %exclude %{ruby_libdir}/ubygems.rb
1076 %exclude %{ruby_libdir}/rbconfig/datadir.rb
1077 #%exclude %{ruby_libdir}/rbconfig/obsolete.rb
1079 %exclude %{ruby_libdir}/irb.rb
1080 %exclude %{ruby_libdir}/mkmf.rb
1081 #%exclude %{ruby_libdir}/rake.rb
1083 %{ruby_archdir}/rbconfig.rb
1084 %attr(755,root,root) %{ruby_archdir}/bigdecimal.so
1085 %attr(755,root,root) %{ruby_archdir}/continuation.so
1086 %attr(755,root,root) %{ruby_archdir}/coverage.so
1087 %attr(755,root,root) %{ruby_archdir}/date_core.so
1088 %attr(755,root,root) %{ruby_archdir}/dbm.so
1089 %attr(755,root,root) %{ruby_archdir}/digest.so
1090 #%attr(755,root,root) %{ruby_archdir}/dl.so
1091 %attr(755,root,root) %{ruby_archdir}/etc.so
1092 %attr(755,root,root) %{ruby_archdir}/fcntl.so
1093 %attr(755,root,root) %{ruby_archdir}/fiber.so
1094 %attr(755,root,root) %{ruby_archdir}/fiddle.so
1095 %attr(755,root,root) %{ruby_archdir}/gdbm.so
1096 %attr(755,root,root) %{ruby_archdir}/nkf.so
1097 %attr(755,root,root) %{ruby_archdir}/objspace.so
1098 %attr(755,root,root) %{ruby_archdir}/openssl.so
1099 %attr(755,root,root) %{ruby_archdir}/pathname.so
1100 %attr(755,root,root) %{ruby_archdir}/psych.so
1101 %attr(755,root,root) %{ruby_archdir}/pty.so
1102 %attr(755,root,root) %{ruby_archdir}/readline.so
1103 %attr(755,root,root) %{ruby_archdir}/ripper.so
1104 %attr(755,root,root) %{ruby_archdir}/thread.so
1105 %attr(755,root,root) %{ruby_archdir}/sdbm.so
1106 %attr(755,root,root) %{ruby_archdir}/socket.so
1107 %attr(755,root,root) %{ruby_archdir}/stringio.so
1108 %attr(755,root,root) %{ruby_archdir}/strscan.so
1109 %attr(755,root,root) %{ruby_archdir}/syslog.so
1110 %attr(755,root,root) %{ruby_archdir}/zlib.so
1112 %dir %{ruby_archdir}/cgi
1113 %attr(755,root,root) %{ruby_archdir}/cgi/escape.so
1114 %dir %{ruby_archdir}/digest
1115 %attr(755,root,root) %{ruby_archdir}/digest/*.so
1116 #%dir %{ruby_archdir}/dl
1117 #%attr(755,root,root) %{ruby_archdir}/dl/callback.so
1118 %dir %{ruby_archdir}/enc
1119 %attr(755,root,root) %{ruby_archdir}/enc/*.so
1120 %dir %{ruby_archdir}/enc/trans
1121 %attr(755,root,root) %{ruby_archdir}/enc/trans/*.so
1122 %dir %{ruby_archdir}/io
1123 %attr(755,root,root) %{ruby_archdir}/io/*.so
1124 %dir %{ruby_archdir}/mathn
1125 %attr(755,root,root) %{ruby_archdir}/mathn/*.so
1126 %dir %{ruby_archdir}/racc
1127 %attr(755,root,root) %{ruby_archdir}/racc/*.so
1128 %dir %{ruby_archdir}/rbconfig
1129 %attr(755,root,root) %{ruby_archdir}/rbconfig/sizeof.so
1132 %{gem_dir}/specifications/bigdecimal-%{bigdecimal_ver}.gemspec
1133 %{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}
1134 %dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}
1135 %dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
1136 %attr(755,root,root) %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal.so
1137 %{ruby_libdir}/bigdecimal
1139 %dir %{_libdir}/gems
1140 %dir %{_libdir}/gems/%{oname}
1143 %{gem_dir}/specifications/io-console-%{io_console_ver}.gemspec
1144 %{gem_dir}/gems/io-console-%{io_console_ver}
1145 %dir %{gem_libdir}/io-console-%{io_console_ver}
1146 %dir %{gem_libdir}/io-console-%{io_console_ver}/lib
1147 %dir %{gem_libdir}/io-console-%{io_console_ver}/lib/io
1148 %attr(755,root,root) %{gem_libdir}/io-console-%{io_console_ver}/lib/io/console.so
1150 %{gem_dir}/specifications/psych-%{psych_ver}.gemspec
1151 %{gem_dir}/gems/psych-%{psych_ver}
1152 %{ruby_libdir}/psych
1153 %dir %{gem_libdir}/psych-%{psych_ver}
1154 %dir %{gem_libdir}/psych-%{psych_ver}/lib
1155 %attr(755,root,root) %{gem_libdir}/psych-%{psych_ver}/lib/psych.so
1158 %dir %{gem_dir}/gems
1159 %dir %{gem_dir}/specifications
1160 %dir %{gem_dir}/specifications/default
1161 %{_mandir}/man1/erb%{ruby_suffix}.1*
1162 %{_mandir}/man1/ri%{ruby_suffix}.1*
1165 %defattr(644,root,root,755)
1166 %doc ruby-doc-bundle/*
1167 %{?with_doc:%doc ruby_%{doc_version}_stdlib}
1168 %{?with_doc:%doc ruby_%{doc_version}_core}
1172 %defattr(644,root,root,755)
1177 %defattr(644,root,root,755)
1178 %{_examplesdir}/%{oname}-%{pkg_version}