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
5 # - unpackaged /usr/share/gems/specifications/default/openssl-2.0.7.gemspec ?
8 %bcond_without doc # skip (time-consuming) docs generating; intended for speed up test builds
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
15 %define ruby_version 2.4
17 %define pkg_version %{ruby_version}.%{patchlevel}
18 %define ruby_suffix %{!?with_default_ruby:%{ruby_version}}
19 %define doc_version 2_4_3
21 Summary: Ruby - interpreted scripting language
22 Summary(ja.UTF-8): オブジェクト指向言語Rubyインタプリタ
23 Summary(pl.UTF-8): Ruby - interpretowany język skryptowy
24 Summary(pt_BR.UTF-8): Linguagem de script orientada a objeto
25 Summary(zh_CN.UTF-8): ruby - 一种快速高效的面向对象脚本编程语言
26 Name: ruby%{ruby_suffix}
27 Version: %{pkg_version}
30 # Public Domain for example for: include/ruby/st.h, strftime.c, missing/*, ...
32 # zlib: ext/digest/md5/md5.*, ext/nkf/nkf-utf8/nkf.c
33 # UCD: some of enc/trans/**/*.src
34 License: (Ruby or BSD) and Public Domain and MIT and CC0 and zlib and UCD
35 Group: Development/Languages
36 # https://www.ruby-lang.org/en/downloads/
37 Source0: https://cache.ruby-lang.org/pub/ruby/%{ruby_version}/%{oname}-%{pkg_version}.tar.xz
38 # Source0-md5: 4f30cefb7d50c6fa4d801f47ed9d82ca
39 Source2: http://www.ruby-doc.org/downloads/%{oname}_%{doc_version}_stdlib_rdocs.tgz
40 # Source2-md5: d21fb29009644bd174dbba0dad53f1f5
41 Source3: http://www.ruby-doc.org/downloads/%{oname}_%{doc_version}_core_rdocs.tgz
42 # Source3-md5: 3aef8f1b7fb3d140ac9ba8f3061c832e
43 Source50: http://www.unicode.org/Public/9.0.0/ucd/CaseFolding.txt
44 # Source50-md5: e3fbf2f626f10070000fe66f3a2ff5ef
45 Source51: http://www.unicode.org/Public/9.0.0/ucd/CompositionExclusions.txt
46 # Source51-md5: 263381d7b4b5e2d52a91e1bbbd4722d4
47 Source52: http://www.unicode.org/Public/9.0.0/ucd/NormalizationTest.txt
48 # Source52-md5: aacb8a8acfc449d09136fe39f3f97cf1
49 Source53: http://www.unicode.org/Public/9.0.0/ucd/SpecialCasing.txt
50 # Source53-md5: fea30f45a2f81ffa474fd984d297e2ea
51 Source54: http://www.unicode.org/Public/9.0.0/ucd/UnicodeData.txt
52 # Source54-md5: dde25b1cf9bbb4ba1140ac12e4128b0b
53 Source100: ftp://ftp.ruby-lang.org/pub/ruby/1.8/%{oname}-1.8.7-p330.tar.gz
54 # Source100-md5: 50a49edb787211598d08e756e733e42e
57 Source6: operating_system.rb
58 #Patch1: %{oname}-ffs.patch
59 Patch2: fix-bison-invocation.patch
60 Patch3: mkmf-verbose.patch
61 Patch4: strip-ccache.patch
62 Patch5: ruby-version.patch
63 Patch6: duplicated-paths.patch
65 Patch8: rubygems-2.0.0-binary-extensions.patch
66 Patch9: custom-rubygems-location.patch
67 Patch12: archlibdir.patch
68 URL: http://www.ruby-lang.org/
69 BuildRequires: autoconf >= 2.67
70 BuildRequires: automake
71 BuildRequires: bison >= 1.875
72 BuildRequires: db-devel
73 BuildRequires: gdbm-devel >= 1.8.3
74 BuildRequires: gmp-devel
75 BuildRequires: libffi-devel
76 BuildRequires: ncurses-devel
77 BuildRequires: openssl-devel >= 0.9.6
78 BuildRequires: pkgconfig
79 BuildRequires: readline-devel >= 4.2
80 BuildRequires: rpm-build >= 5.4.10-49
81 BuildRequires: sed >= 4.0
82 BuildRequires: systemtap-sdt-devel
83 BuildRequires: tar >= 1:1.22
85 BuildRequires: yaml-devel
86 BuildRequires: zlib-devel
87 %if %{without bootstrap}
88 # bootstrap needs ruby binary, erb module
89 BuildRequires: rpm-rubyprov
91 BuildRequires: ruby-modules
93 Requires(post,postun): /sbin/ldconfig
94 Obsoletes: ruby-REXML <= 2.4.0-2
95 Obsoletes: ruby-doc < 1.8.4
96 Obsoletes: ruby-fastthread <= 0.6.3
97 Conflicts: rpm-build-macros < 1.695
98 Conflicts: ruby-activesupport < 2.3.11-2
99 Conflicts: ruby-activesupport2 < 2.3.11-2
100 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
102 %define bigdecimal_ver 1.3.2
103 %define io_console_ver 0.4.6
104 %define irb_ver 0.9.6
105 %define json_ver 2.0.4
106 %define minitest_ver 5.10.1
107 %define psych_ver 2.2.2
108 %define rake_ver 12.0.0
109 %define rdoc_ver 5.0.0
110 %define rubygems_ver 2.6.14.1
111 %define test_unit_ver 3.2.3
112 %define power_assert_ver 0.4.1
113 %define did_you_mean_ver 1.1.0
114 %define net_telnet_ver 0.1.1
115 %define xmlrpc_ver 0.2.1
117 %define ruby_ridir %{_datadir}/ri/system
118 %define gem_dir %{_datadir}/gems
119 %define gem_libdir %{_libdir}/gems/%{oname}
121 # location where rubygems is installed
122 %define rubygems_dir %{ruby_libdir}
124 %define ruby_archdir %{_libdir}/%{oname}/%{ruby_version}
125 %define ruby_libarchdir %{_libdir}/%{oname}/%{ruby_version}
126 %define ruby_libdir %{_datadir}/%{oname}/%{ruby_version}
128 # This is the local lib/arch and should not be used for packaging.
129 %define sitedir site_ruby
130 %define ruby_sitearchdir %{_prefix}/local/%{_lib}/%{oname}/%{sitedir}/%{ruby_version}
131 %define ruby_sitelibdir %{_prefix}/local/share/%{oname}/%{sitedir}
133 # This is the general location for libs/archs compatible with all
134 # or most of the Ruby versions available in the PLD repositories.
135 %define vendordir vendor_ruby
136 %define ruby_vendorarchdir %{_libdir}/%{oname}/%{vendordir}/%{ruby_version}
137 %define ruby_vendorlibdir %{_datadir}/%{oname}/%{vendordir}
139 # bleh, some nasty (gcc or ruby) bug still not fixed
140 # (SEGV or "unexpected break" on miniruby run during build)
141 %define specflags_ia64 -O0
143 # ruby needs frame pointers for correct exception handling
144 %define specflags_ia32 -fno-omit-frame-pointer
147 Ruby is the interpreted scripting language for quick and easy
148 object-oriented programming. It has many features to process text
149 files and to do system management tasks (as in Perl). It is simple,
150 straight-forward, extensible, and portable.
152 This package contains only shared library and ruby interpreter. To get
153 full-functional ruby environment install ruby-modules package.
155 %description -l ja.UTF-8
156 Rubyはシンプルかつ強力なオブジェクト指向スクリプト言語です.Rubyは最初
157 から純粋なオブジェクト指向言語として設計されていますから,オブジェクト
158 指向プログラミングを手軽に行う事が出来ます.もちろん通常の手続き型のプ ログラミングも可能です.
160 %description -l pl.UTF-8
161 Ruby to interpretowany język skryptowy, w sam raz dla łatwego i
162 szybkiego pisania zorientowanych obiektowo programów. Ma wiele funkcji
163 ułatwiających przetwarzanie plików tekstowych i wykonywanie prac
164 związanych z zarządzaniem systemu (podobnie jak Perl). Jest prosty,
165 rozszerzalny i przenośny.
167 Ten pakiet zawiera tylko bibliotekę dzieloną i interpreter ruby.
168 Zainstaluj pakiet ruby-modules, jeżeli potrzebujesz w pełni
169 funkcjonalnego środowiska ruby.
171 %description -l pt_BR.UTF-8
172 Ruby é uma linguagem de script interpretada de programação orientada a
173 objeto. Possui diversas características para processamento de texto. É
174 simples, extensível e direta.
177 Summary: Ruby standard modules and utilities
178 Summary(pl.UTF-8): Standardowe moduły i narzędzia dla języka Ruby
179 Group: Development/Languages
180 Requires: %{name} = %{epoch}:%{version}-%{release}
181 Suggests: ruby-rubygems
182 # ruby-modules deprecated, rpm5 generates ruby(abi) itself
183 Provides: ruby-modules(ver) = %{ruby_version}
185 Provides: ruby(abi) = %{ruby_version}
186 %requires_ge_to openssl openssl-devel
189 Ruby standard modules and utilities:
191 - testrb - automatic runner for Test::Unit of Ruby
193 %description modules -l pl.UTF-8
194 Standardowe moduły i narzędzia Ruby:
196 - testrb - automatyczny runner dla Ruby Test::Unit
199 Summary: Ruby development libraries
200 Summary(pl.UTF-8): Biblioteki programistyczne interpretera języka Ruby
201 Group: Development/Languages
202 Requires: %{name}-modules = %{epoch}:%{version}-%{release}
204 Requires: glibc-devel
209 Ruby development libraries.
211 %description devel -l pl.UTF-8
212 Biblioteki programistyczne interpretera języka Ruby.
215 Summary: Ruby HTML documentation
216 Summary(pl.UTF-8): Dokumentacja HTML do Ruby
218 %if "%{_rpmversion}" >= "5"
223 Ruby HTML documentation: FAQ, guide, core and standard library.
225 %description doc -l pl.UTF-8
226 Dokumentacja HTML do Ruby: FAQ, przewodnik, dokumentacja dla core i
230 Summary: Ruby ri documentation
231 Summary(pl.UTF-8): Dokumentacja Ruby w formacie ri
233 Requires: %{name}-modules = %{epoch}:%{version}-%{release}
234 %if "%{_rpmversion}" >= "5"
239 Ruby ri documentation.
241 %description doc-ri -l pl.UTF-8
242 Dokumentacja Ruby w formacie ri.
245 Summary: Ruby examples
246 Summary(pl.UTF-8): Przykłady dla języka Ruby
247 Group: Development/Languages
248 %if "%{_rpmversion}" >= "5"
252 %description examples
255 %description examples -l pl.UTF-8
256 Przykłady programów w języku Ruby.
258 # IMPORTANT: keep irb, rdoc, rubygems, rake, json as last packages as we reset epoch/version/release
259 # and %{version},%{release} macros may not be used directly as they take last
260 # subpackage value not main package one what you intend to use
263 Summary: The Interactive Ruby
265 Release: %{pkg_version}.%{rel}
267 Group: Development/Languages
268 Requires: %{name}-modules = 1:%{pkg_version}-%{rel}
269 Provides: irb = %{version}-%{release}
270 Provides: ruby(irb) = %{version}-%{release}
271 %if "%{_rpmversion}" >= "5"
276 The irb is acronym for Interactive Ruby. It evaluates ruby expression
280 Summary: A tool to generate HTML and command-line documentation for Ruby projects
281 Summary(pl.UTF-8): Narzędzie do generowania dokumentacji HTML i linii poleceń dla projektów w Rubym
283 Release: %{pkg_version}.%{rel}
285 # SIL: lib/rdoc/generator/template/darkfish/css/fonts.css
286 License: GPLv2 and Ruby and MIT and SIL
287 Group: Development/Libraries
288 Requires: %{name}-irb >= %{irb_ver}
289 Requires: %{name}-json >= %{json_ver}
290 Requires: %{name}-modules = 1:%{pkg_version}-%{rel}
291 Obsoletes: rdoc <= 0.9.0
292 %if "%{_rpmversion}" >= "5"
297 RDoc produces HTML and command-line documentation for Ruby projects.
298 RDoc includes the 'rdoc' and 'ri' tools for generating and displaying
299 online documentation.
301 %description rdoc -l pl.UTF-8
302 RDoc tworzy dokumentację HTML i linii poleceń dla projektów w języku
303 Ruby. RDoc zawiera narzędzia 'rdoc' i 'ri' do generowania i
304 wyświetlania dokumentacji online.
307 Summary: RubyGems - the Ruby standard for packaging Ruby libraries
308 Summary(pl.UTF-8): RubyGems - standard Ruby'ego pakietowania bibliotek
309 Version: %{rubygems_ver}
310 Release: %{pkg_version}.%{rel}
313 Group: Development/Libraries
314 Requires: %{name}-bigdecimal = %{bigdecimal_ver}-%{pkg_version}.%{rel}
315 Requires: %{name}-io-console = %{io_console_ver}-%{pkg_version}.%{rel}
316 Requires: %{name}-modules = 1:%{pkg_version}-%{rel}
317 Requires: %{name}-psych = %{psych_ver}-%{pkg_version}.%{rel}
318 Requires: %{name}-rdoc >= %{rdoc_ver}
319 Suggests: %{name}-devel
320 Provides: rubygems = %{rubygems_ver}
321 %if "%{_rpmversion}" >= "5"
325 %description rubygems
326 RubyGems is the Ruby standard for publishing and managing third party
329 %description rubygems -l pl.UTF-8
330 RubyGems to standardowe narzędzie języka Ruby do publikowania i
331 zarządzania zewnętrznymi bibliotekami.
334 Summary: Rake is a Make-like program implemented in Ruby
335 Summary(pl.UTF-8): Program typu Make dla języka Ruby
337 Release: %{pkg_version}.%{rel}
340 Group: Development/Languages
341 Provides: rake = %{rake_ver}
342 Conflicts: ruby-modules < 1:1.9.3.429-2
343 %if "%{_rpmversion}" >= "5"
348 Rake is a simple Ruby build program with capabilities similar to make.
350 It has the following features:
351 - Rakefiles (rake's version of Makefiles) are completely defined in
352 standard Ruby syntax. No XML files to edit. No quirky Makefile syntax
353 to worry about (is that a tab or a space?)
354 - Users can specify tasks with prerequisites.
355 - Rake supports rule patterns to synthesize implicit tasks.
356 - Rake is lightweight. It can be distributed with other projects as a
357 single file. Projects that depend upon rake do not require that rake
358 be installed on target systems.
360 %description rake -l pl.UTF-8
361 Rake to prosty program do budowania w języku Ruby o możliwościach
364 Ma następujące cechy:
365 - Pliki Rakefile (rake'owa odmiana plików Makefile) są definiowane
366 całkowicie w standardowej składni języka Ruby. Nie trzeba modyfikować
367 plików XML. Nie trzeba martwić się kaprysami składni Makefile (czy to
368 tabulacja czy spacja?).
369 - Użytkownicy mogą określać zadania z ich zależnościami.
370 - Rake obsługuje wzorce reguł do tworzenia z nich wynikowych zadań.
371 - Rake jest lekki. Może być rozpowszechniany z innymi projektami jako
372 pojedynczy plik. Projekty używające rake'a nie wymagają go
373 zainstalowanego na systemach docelowych.
376 Summary: JSON library for Ruby
377 Summary(pl.UTF-8): Biblioteka JSON dla języka Ruby
379 Release: %{pkg_version}.%{rel}
381 # UCD: ext/json/generator/generator.c
382 License: (Ruby or GPLv2) and UCD
383 Group: Development/Languages
384 Obsoletes: ruby-json-rubyforge
385 Conflicts: ruby-modules < 1:1.9.3.429-3
388 This is a JSON implementation as a Ruby extension in C.
390 %description json -l pl.UTF-8
391 Biblioteka JSON dla języka Ruby.
394 Summary: Minitest provides a complete suite of testing facilities
395 Version: %{minitest_ver}
396 Release: %{pkg_version}.%{rel}
399 Group: Development/Libraries
400 %if "%{_rpmversion}" >= "5"
404 %description minitest
405 minitest/unit is a small and incredibly fast unit testing framework.
407 minitest/spec is a functionally complete spec engine.
409 minitest/benchmark is an awesome way to assert the performance of your
410 algorithms in a repeatable manner.
412 minitest/mock by Steven Baker, is a beautifully tiny mock object
415 minitest/pride shows pride in testing and adds coloring to your test
418 %package power_assert
419 # The Summary/Description fields are rather poor.
420 # https://github.com/k-tsj/power_assert/issues/3
421 Summary: Power Assert for Ruby
422 Version: %{power_assert_ver}
423 Release: %{pkg_version}.%{rel}
426 Group: Development/Libraries
427 %if "%{_rpmversion}" >= "5"
431 %description power_assert
432 Power Assert shows each value of variables and method calls in the
433 expression. It is useful for testing, providing which value wasn't
434 correct when the condition is not satisfied.
437 # The Summary/Description fields are rather poor.
438 # https://github.com/test-unit/test-unit/issues/73
439 Summary: Improved version of Test::Unit bundled in Ruby 1.8.x
440 Version: %{test_unit_ver}
441 Release: %{pkg_version}.%{rel}
443 Group: Development/Libraries
444 # lib/test/unit/diff.rb is a double license of the Ruby license and PSF license.
445 # lib/test-unit.rb is a dual license of the Ruby license and LGPLv2.1 or later.
446 License: (Ruby or BSD) and (Ruby or BSD or Python) and (Ruby or BSD or LGPLv2+)
447 %if "%{_rpmversion}" >= "5"
451 %description test-unit
452 Ruby 1.9.x bundles minitest not Test::Unit. Test::Unit bundled in Ruby
453 1.8.x had not been improved but unbundled Test::Unit (test-unit) is
456 %package did_you_mean
457 Summary: "Did you mean?" experience in Ruby
458 Version: %{did_you_mean_ver}
459 Release: %{pkg_version}.%{rel}
462 Group: Development/Libraries
463 %if "%{_rpmversion}" >= "5"
467 %description did_you_mean
468 "did you mean?" experience in Ruby: the error message will tell you
469 the right one when you misspelled something.
472 Summary: Provides telnet client functionality
473 Version: %{net_telnet_ver}
474 Release: %{pkg_version}.%{rel}
476 Group: Development/Libraries
477 %if "%{_rpmversion}" >= "5"
481 %description net-telnet
482 Provides telnet client functionality.
484 This class also has, through delegation, all the methods of a socket
485 object (by default, a TCPSocket, but can be set by the Proxy option to
486 new()). This provides methods such as close() to end the session and
487 sysread() to read data directly from the host, instead of via the
488 waitfor() mechanism. Note that if you do use sysread() directly when
489 in telnet mode, you should probably pass the output through
490 preprocess() to extract telnet command sequences.
493 Summary: BigDecimal provides arbitrary-precision floating point decimal arithmetic
494 Version: %{bigdecimal_ver}
495 Release: %{pkg_version}.%{rel}
497 License: GPL+ or Artistic
498 Group: Development/Libraries
500 %description bigdecimal
501 Ruby provides built-in support for arbitrary precision integer
502 arithmetic. For example:
504 42**13 -> 1265437718438866624512
506 BigDecimal provides similar support for very large or very accurate
507 floating point numbers. Decimal arithmetic is also useful for general
508 calculation, because it provides the correct answers people
509 expect–whereas normal binary floating point arithmetic often
510 introduces subtle errors because of the conversion between base 10 and
514 Summary: IO/Console is a simple console utilizing library
515 Version: %{io_console_ver}
516 Release: %{pkg_version}.%{rel}
518 Group: Development/Libraries
520 %description io-console
521 IO/Console provides very simple and portable access to console. It
522 doesn't provide higher layer features, such like curses and readline.
525 Summary: A libyaml wrapper for Ruby
526 Version: %{psych_ver}
527 Release: %{pkg_version}.%{rel}
530 Group: Development/Libraries
533 Psych is a YAML parser and emitter. Psych leverages libyaml for its
534 YAML parsing and emitting capabilities. In addition to wrapping
535 libyaml, Psych also knows how to serialize and de-serialize most Ruby
536 objects to and from the YAML format.
539 Summary: A xmlrpc wrapper for Ruby
540 Version: %{xmlrpc_ver}
541 Release: %{pkg_version}.%{rel}
544 Group: Development/Libraries
547 XMLRPC is a lightweight protocol that enables remote procedure calls
548 over HTTP. It is defined at http://www.xmlrpc.com.
550 XMLRPC allows you to create simple distributed computing solutions
551 that span computer languages. Its distinctive feature is its
552 simplicity compared to other approaches like SOAP and CORBA.
554 The Ruby standard library package 'xmlrpc' enables you to create a
555 server that implements remote procedures and a client that calls them.
556 Very little code is required to achieve either of these.
559 %setup -q -n %{oname}-%{pkg_version} -a2 -a3 %{?with_bootstrap:-a100}
570 install -d enc/unicode/data/9.0.0
571 cp -p %{SOURCE50} %{SOURCE51} %{SOURCE52} %{SOURCE53} %{SOURCE54} enc/unicode/data/9.0.0/
573 # must be regenerated with new bison
576 # Remove bundled libraries to be sure they are not used.
577 %{__rm} -r ext/psych/yaml
578 %{__rm} -r ext/fiddle/libffi*
580 # Install custom operating_system.rb.
581 install -d lib/rubygems/defaults
582 cp -p %{SOURCE6} lib/rubygems/defaults
584 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
586 find -type f '(' -name '*.rb' -o -name '*.cgi' -o -name '*.test' \
587 -o -name 'ruby.1' -o -name '*.html' -o -name '*.tcl' ')' \
588 | xargs %{__sed} -i 's,/usr/local/bin/,%{_bindir}/,'
591 rubygems_ver=$(awk '/VERSION =/ && $1 == "VERSION" {print $3}' lib/rubygems.rb | xargs)
592 if [ $rubygems_ver != %{rubygems_ver} ]; then
593 echo "Set %%define rubygems_ver to $rubygems_ver and re-run."
596 rdoc_ver=$(awk '/VERSION =/ && $1 == "VERSION" {print $3}' lib/rdoc.rb | xargs)
597 if [ $rdoc_ver != %{rdoc_ver} ]; then
598 echo "Set %%define rdoc_ver to $rdoc_ver and re-run."
602 cp -f /usr/share/automake/config.sub .
604 # build ruby-1.8.7 first
605 %if %{with bootstrap}
606 cd %{oname}-1.8.7-p330
614 %{?with_bootstrap:--with-baseruby=%{oname}-1.8.7-p330/miniruby} \
615 --program-suffix=%{ruby_suffix} \
616 --with-archlibdir=%{_libdir} \
617 --with-rubygemsdir=%{rubygems_dir} \
618 --with-rubylibprefix=%{ruby_libdir} \
619 --with-rubyarchprefix=%{ruby_archdir} \
620 --with-sitedir=%{ruby_sitelibdir} \
621 --with-sitearchdir=%{ruby_sitearchdir} \
622 --with-vendordir=%{ruby_vendorlibdir} \
623 --with-vendorarchdir=%{ruby_vendorarchdir} \
624 --with-rubyhdrdir=%{_includedir}/%{oname}-%{ruby_version} \
625 --with-rubyarchhdrdir=%{_includedir}/%{oname}-%{ruby_version} \
626 --with-sitearchhdrdir='$(sitehdrdir)/$(arch)' \
627 --with-vendorarchhdrdir='$(vendorhdrdir)/$(arch)' \
630 --disable-install-doc \
633 --with-ruby-version='' \
637 %{?with_bootstrap:BASERUBY="%{oname}-1.8.7-p330/miniruby -I./ruby-1.8.7-p330/lib"}
644 # unset these, as testsuite does "git commit" somewhere, which points to pld .spec repo. doh
645 unset GIT_DIR GIT_WORK_TREE
650 %ifarch armv7l armv7hl armv7hnl
651 # test_call_double(DL::TestDL) fails on ARM HardFP
652 # http://bugs.ruby-lang.org/issues/6592
653 DISABLE_TESTS="-x test_dl2.rb $DISABLE_TESTS"
656 # test_debug(TestRubyOptions) fails due to LoadError reported in debug mode,
657 # when abrt.rb cannot be required (seems to be easier way then customizing
661 # TestSignal#test_hup_me hangs up the test suite.
662 # http://bugs.ruby-lang.org/issues/8997
663 sed -i '/def test_hup_me/,/end if Process.respond_to/ s/^/#/' test/ruby/test_signal.rb
665 # Fix "Could not find 'minitest'" error.
666 # http://bugs.ruby-lang.org/issues/9259
667 sed -i "/^ gem 'minitest', '~> 4.0'/ s/^/#/" lib/rubygems/test_case.rb
669 # Segmentation fault.
670 # https://bugs.ruby-lang.org/issues/9198
671 sed -i '/^ def test_machine_stackoverflow/,/^ end/ s/^/#/' test/ruby/test_exception.rb
673 # Don't test wrap ciphers to prevent "OpenSSL::Cipher::CipherError: wrap mode
674 # not allowed" error.
675 # https://bugs.ruby-lang.org/issues/10229
676 sed -i '/assert(OpenSSL::Cipher::Cipher.new(name).is_a?(OpenSSL::Cipher::Cipher))/i \
677 next if /wrap/ =~ name' test/openssl/test_cipher.rb
679 # Test is broken due to SSLv3 disabled in Fedora.
680 # https://bugs.ruby-lang.org/issues/10046
681 sed -i '/def test_ctx_server_session_cb$/,/^ end$/ s/^/#/' test/openssl/test_ssl_session.rb
683 %{__make} check TESTS="-v $DISABLE_TESTS"
687 rm -rf $RPM_BUILD_ROOT
688 install -d $RPM_BUILD_ROOT{%{ruby_rdocdir},%{ruby_ridir}} \
689 $RPM_BUILD_ROOT%{ruby_vendorarchdir} \
690 $RPM_BUILD_ROOT%{ruby_vendorlibdir}/net \
691 $RPM_BUILD_ROOT%{ruby_vendorlibdir}/data \
693 %{__make} install %{?with_doc:install-doc -j1} \
694 DESTDIR=$RPM_BUILD_ROOT
696 # Version is empty if --with-ruby-version is specified.
697 # http://bugs.ruby-lang.org/issues/7807
698 sed -i -e 's/Version: \${ruby_version}/Version: %{ruby_version}/' $RPM_BUILD_ROOT%{_pkgconfigdir}/%{oname}-%{ruby_version}.pc
700 # Kill bundled certificates, as they should be part of ca-certificates.
702 AddTrustExternalCARoot.pem \
703 DigiCertHighAssuranceEVRootCA.pem \
704 GlobalSignRootCA.pem \
706 %{__rm} $RPM_BUILD_ROOT%{rubygems_dir}/rubygems/ssl_certs/*/$cert
709 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}
710 cp -Rf sample/* $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}
711 cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_mandir}/man1/rdoc%{ruby_suffix}.1
712 cp -p %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man1/testrb%{ruby_suffix}.1
714 %{__rm} -rf $RPM_BUILD_ROOT%{_docdir}/%{name}/html
716 # detect this runtime, "make install" is affected by operating_system.rb what is installed in system!
717 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')
719 # Move gems root into common directory, out of Ruby directory structure.
720 install -d $RPM_BUILD_ROOT%{gem_dir}
721 %{__mv} $RPM_BUILD_ROOT${gem_dir}/{gems,specifications} $RPM_BUILD_ROOT%{gem_dir}
723 # Move bundled rubygems to %gem_dir
724 # make symlinks for io-console and bigdecimal, which are considered to be part of stdlib by other Gems
725 # make symlinks for all packages, so they would work without rubygems
726 # NOTE: when making symlinks, do not symlink paths that could be directories,
727 # as there may came files from other packages as well. actually, unlikely as
728 # the links to got system dir and only ruby may package there (other distro
729 # packages should go to vendor dirs)
731 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/lib
732 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/rake* $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/lib
733 ln -s %{gem_dir}/gems/rake-%{rake_ver}/lib/rake $RPM_BUILD_ROOT%{ruby_libdir}
734 ln -s %{gem_dir}/gems/rake-%{rake_ver}/lib/rake.rb $RPM_BUILD_ROOT%{ruby_libdir}
735 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/rake-%{rake_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
738 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
739 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/rdoc* $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
740 ln -s %{gem_dir}/gems/rdoc-%{rdoc_ver}/lib/rdoc $RPM_BUILD_ROOT%{ruby_libdir}
741 ln -s %{gem_dir}/gems/rdoc-%{rdoc_ver}/lib/rdoc.rb $RPM_BUILD_ROOT%{ruby_libdir}
742 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/rdoc-%{rdoc_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
744 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib
745 install -d $RPM_BUILD_ROOT%{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
746 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/bigdecimal $RPM_BUILD_ROOT%{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib
747 %{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal.so $RPM_BUILD_ROOT%{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
748 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/bigdecimal-%{bigdecimal_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
749 ln -s %{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal $RPM_BUILD_ROOT%{ruby_libdir}/bigdecimal
750 ln -s %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal.so $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal.so
752 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/io-console-%{io_console_ver}/lib
753 install -d $RPM_BUILD_ROOT%{gem_libdir}/io-console-%{io_console_ver}/lib/io
754 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/io $RPM_BUILD_ROOT%{gem_dir}/gems/io-console-%{io_console_ver}/lib
755 %{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/io/console.so $RPM_BUILD_ROOT%{gem_libdir}/io-console-%{io_console_ver}/lib/io
756 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/io-console-%{io_console_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
757 ln -s %{gem_dir}/gems/io-console-%{io_console_ver}/lib/io $RPM_BUILD_ROOT%{ruby_libdir}/io
758 ln -s %{gem_libdir}/io-console-%{io_console_ver}/lib/io/console.so $RPM_BUILD_ROOT%{ruby_libarchdir}/io/console.so
760 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/json-%{json_ver}/lib
761 install -d $RPM_BUILD_ROOT%{gem_libdir}/json-%{json_ver}/lib
762 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/json* $RPM_BUILD_ROOT%{gem_dir}/gems/json-%{json_ver}/lib
763 %{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/json $RPM_BUILD_ROOT%{gem_libdir}/json-%{json_ver}/lib
764 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/json-%{json_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
765 ln -s %{gem_dir}/gems/json-%{json_ver}/lib/json $RPM_BUILD_ROOT%{ruby_libdir}/json
766 ln -s %{gem_dir}/gems/json-%{json_ver}/lib/json.rb $RPM_BUILD_ROOT%{ruby_libdir}/json.rb
767 install -d $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
768 ln -s %{gem_libdir}/json-%{json_ver}/lib/json/ext/parser.so $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
769 ln -s %{gem_libdir}/json-%{json_ver}/lib/json/ext/generator.so $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
771 ln -s %{gem_dir}/gems/minitest-%{minitest_ver}/lib/minitest $RPM_BUILD_ROOT%{ruby_libdir}
773 install -d $RPM_BUILD_ROOT%{ruby_libdir}/test
774 ln -s %{gem_dir}/gems/test-unit-%{test_unit_ver}/lib/unit $RPM_BUILD_ROOT%{ruby_libdir}/test
776 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/psych-%{psych_ver}/lib
777 install -d $RPM_BUILD_ROOT%{gem_libdir}/psych-%{psych_ver}/lib
778 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/psych* $RPM_BUILD_ROOT%{gem_dir}/gems/psych-%{psych_ver}/lib
779 %{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/psych.so $RPM_BUILD_ROOT%{gem_libdir}/psych-%{psych_ver}/lib/
780 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/psych-%{psych_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
781 ln -s %{gem_dir}/gems/psych-%{psych_ver}/lib/psych $RPM_BUILD_ROOT%{ruby_libdir}/psych
782 ln -s %{gem_dir}/gems/psych-%{psych_ver}/lib/psych.rb $RPM_BUILD_ROOT%{ruby_libdir}/psych.rb
783 ln -s %{gem_libdir}/psych-%{psych_ver}/lib/psych.so $RPM_BUILD_ROOT%{ruby_archdir}/psych.so
785 # Adjust the gemspec files so that the gems will load properly
787 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/rake-%{rake_ver}.gemspec
790 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/rdoc-%{rdoc_ver}.gemspec
793 s.require_paths = ["lib"]\
794 s.extensions = ["bigdecimal.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/bigdecimal-%{bigdecimal_ver}.gemspec
797 s.require_paths = ["lib"]\
798 s.extensions = ["io/console.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/io-console-%{io_console_ver}.gemspec
801 s.require_paths = ["lib"]\
802 s.extensions = ["json/ext/parser.so", "json/ext/generator.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/json-%{json_ver}.gemspec
805 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/minitest-%{minitest_ver}.gemspec
807 # Push the .gemspecs through the RubyGems to let them write the stub headers.
808 # This speeds up loading of libraries and avoids warnings in Spring:
809 # https://github.com/rubygems/rubygems/pull/694
810 for s in rake-%{rake_ver}.gemspec rdoc-%{rdoc_ver}.gemspec json-%{json_ver}.gemspec; do
811 s="$RPM_BUILD_ROOT%{gem_dir}/specifications/$s"
812 %{__make} runruby TESTRUN_SCRIPT="-rubygems \
813 -e \"spec = Gem::Specification.load('$s')\" \
814 -e \"File.write '$s', spec.to_ruby\""
817 ln -sf %{gem_dir}/gems/rake-%{rake_ver}/exe/rake $RPM_BUILD_ROOT%{_bindir}/rake%{ruby_suffix}
819 %{__sed} -i -e '1s,/usr/bin/env ruby,/usr/bin/ruby,' \
820 $RPM_BUILD_ROOT%{ruby_libdir}/abbrev.rb \
821 $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/bin/console \
822 $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/exe/rake \
823 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/{cal,test,time,uumerge}.rb \
824 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/{drb,logger,openssl,ripper,rss}/*.rb \
825 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/webrick/*.cgi
827 # gem non library files
828 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/minitest-%{minitest_ver}/test
829 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/test-unit-%{test_unit_ver}/{[A-Z]*,doc,sample,test}
830 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/power_assert-%{power_assert_ver}/{[A-Z]*,test}
831 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/{[A-Z]*,doc,test}
832 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/{[A-Z]*,doc}
833 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/net-telnet-%{net_telnet_ver}/{[A-Z]*,bin}
835 %if %{without batteries}
836 # packaged separately
837 %{__rm} -r $RPM_BUILD_ROOT%{ruby_libdir}/{rubygems,rake,json,minitest}
838 %{__rm} -r $RPM_BUILD_ROOT%{ruby_archdir}/json
839 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rake-*
840 %{__rm} $RPM_BUILD_ROOT%{ruby_libdir}/{rake,rubygems,json}.rb
841 %{__rm} $RPM_BUILD_ROOT%{_bindir}/{gem,rake}
842 #%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/rake*
843 %{__rm} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/{json,minitest,rake}-*.gemspec
844 %{?with_doc:%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/ri/%{ruby_version}/system/JSON}
849 %{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/cache.ri
850 %{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/created.rid
854 rm -rf $RPM_BUILD_ROOT
856 %post -p /sbin/ldconfig
857 %postun -p /sbin/ldconfig
860 %defattr(644,root,root,755)
861 %doc NEWS LEGAL BSDL README.md README.EXT ChangeLog
862 %attr(755,root,root) %{_bindir}/ruby%{ruby_suffix}
863 %attr(755,root,root) %{_libdir}/libruby.so.*.*.*
864 %attr(755,root,root) %ghost %{_libdir}/libruby.so.%{ruby_version}
865 %{_mandir}/man1/ruby%{ruby_suffix}.1*
867 %dir %{_libdir}/%{oname}
868 %dir %{_libdir}/%{oname}/%{vendordir}
869 %dir %{_datadir}/%{oname}
873 %dir %{ruby_vendorlibdir}
874 %dir %{ruby_vendorarchdir}
876 %dir %{dirname:%{ruby_ridir}}
880 # common dirs for ruby vendor modules
881 %dir %{ruby_vendorlibdir}/data
882 %dir %{ruby_vendorlibdir}/net
885 %defattr(644,root,root,755)
886 %attr(755,root,root) %{_libdir}/libruby.so
887 %{_includedir}/%{oname}-%{ruby_version}
888 %{_pkgconfigdir}/%{oname}-%{ruby_version}.pc
889 %{ruby_libdir}/mkmf.rb
892 %defattr(644,root,root,755)
893 %attr(755,root,root) %{_bindir}/irb%{ruby_suffix}
894 %{ruby_libdir}/irb.rb
896 %{_mandir}/man1/irb%{ruby_suffix}.1*
899 %defattr(644,root,root,755)
900 %attr(755,root,root) %{_bindir}/rdoc%{ruby_suffix}
901 %attr(755,root,root) %{_bindir}/ri%{ruby_suffix}
902 %{_mandir}/man1/rdoc%{ruby_suffix}.1*
904 %dir %{gem_dir}/gems/rdoc-%{rdoc_ver}
905 %{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
906 %{gem_dir}/specifications/rdoc-%{rdoc_ver}.gemspec
907 %dir %{gem_dir}/gems/rdoc-5.0.0/exe
908 %{gem_dir}/gems/rdoc-5.0.0/exe/rdoc
909 %{gem_dir}/gems/rdoc-5.0.0/exe/ri
911 %if %{with batteries}
913 %defattr(644,root,root,755)
914 %attr(755,root,root) %{_bindir}/gem%{ruby_suffix}
915 %{rubygems_dir}/rubygems
916 %{rubygems_dir}/rubygems.rb
917 %{rubygems_dir}/ubygems.rb
918 %{rubygems_dir}/rbconfig
921 %defattr(644,root,root,755)
922 %attr(755,root,root) %{_bindir}/rake%{ruby_suffix}
923 %dir %{gem_dir}/gems/rake-%{rake_ver}
924 %{gem_dir}/gems/rake-%{rake_ver}/lib
925 %dir %{gem_dir}/gems/rake-%{rake_ver}/bin
926 %attr(755,root,root) %{gem_dir}/gems/rake-%{rake_ver}/bin/console
927 %attr(755,root,root) %{gem_dir}/gems/rake-%{rake_ver}/bin/setup
928 %{gem_dir}/specifications/rake-%{rake_ver}.gemspec
929 %{gem_dir}/gems/rake-%{rake_ver}/appveyor.yml
930 %dir %{gem_dir}/gems/rake-%{rake_ver}/exe
931 %{gem_dir}/gems/rake-%{rake_ver}/exe/rake
934 %defattr(644,root,root,755)
936 %dir %{ruby_archdir}/json
937 %dir %{ruby_archdir}/json/ext
938 %attr(755,root,root) %{ruby_archdir}/json/ext/*.so
940 %dir %{gem_libdir}/json-%{json_ver}
941 %dir %{gem_libdir}/json-%{json_ver}/lib
942 %dir %{gem_libdir}/json-%{json_ver}/lib/json
943 %dir %{gem_libdir}/json-%{json_ver}/lib/json/ext
944 %attr(755,root,root) %{gem_libdir}/json-%{json_ver}/lib/json/ext/generator.so
945 %attr(755,root,root) %{gem_libdir}/json-%{json_ver}/lib/json/ext/parser.so
947 %{gem_dir}/gems/json-%{json_ver}
948 %{gem_dir}/specifications/json-%{json_ver}.gemspec
952 %defattr(644,root,root,755)
953 %dir %{gem_dir}/gems/power_assert-%{power_assert_ver}
954 %{gem_dir}/gems/power_assert-%{power_assert_ver}/lib
955 %{gem_dir}/specifications/power_assert-%{power_assert_ver}.gemspec
956 %dir %{gem_dir}/gems/power_assert-0.4.1/benchmarks
957 %{gem_dir}/gems/power_assert-0.4.1/benchmarks/bm_yhpg.rb
958 %{gem_dir}/gems/power_assert-0.4.1/benchmarks/helper.rb
961 %defattr(644,root,root,755)
962 %{ruby_libdir}/minitest
963 %{gem_dir}/gems/minitest-%{minitest_ver}
964 %{gem_dir}/specifications/minitest-%{minitest_ver}.gemspec
967 %defattr(644,root,root,755)
968 %dir %{gem_dir}/gems/test-unit-%{test_unit_ver}
969 %{gem_dir}/gems/test-unit-%{test_unit_ver}/lib
970 %{gem_dir}/specifications/test-unit-%{test_unit_ver}.gemspec
971 %{_mandir}/man1/testrb%{ruby_suffix}.1*
974 %defattr(644,root,root,755)
975 %dir %{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}
976 %{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/benchmark
977 %{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/evaluation
978 %{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/lib
979 %{gem_dir}/specifications/did_you_mean-%{did_you_mean_ver}.gemspec
982 %defattr(644,root,root,755)
983 %dir %{gem_dir}/gems/net-telnet-%{net_telnet_ver}
984 %{gem_dir}/gems/net-telnet-%{net_telnet_ver}/lib
985 %{gem_dir}/specifications/net-telnet-%{net_telnet_ver}.gemspec
988 %defattr(644,root,root,755)
989 %{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}
990 %dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}
991 %dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
992 %attr(755,root,root) %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal.so
993 %{ruby_libdir}/bigdecimal
994 %{gem_dir}/specifications/bigdecimal-%{bigdecimal_ver}.gemspec
997 %defattr(644,root,root,755)
998 %{gem_dir}/gems/io-console-%{io_console_ver}
999 %dir %{gem_libdir}/io-console-%{io_console_ver}
1000 %dir %{gem_libdir}/io-console-%{io_console_ver}/lib
1001 %dir %{gem_libdir}/io-console-%{io_console_ver}/lib/io
1002 %attr(755,root,root) %{gem_libdir}/io-console-%{io_console_ver}/lib/io/console.so
1003 %{gem_dir}/specifications/io-console-%{io_console_ver}.gemspec
1006 %defattr(644,root,root,755)
1007 %{ruby_libdir}/psych.rb
1008 %attr(755,root,root) %{ruby_archdir}/psych.so
1009 %{gem_dir}/gems/psych-%{psych_ver}
1010 %{ruby_libdir}/psych
1011 %dir %{gem_libdir}/psych-%{psych_ver}
1012 %dir %{gem_libdir}/psych-%{psych_ver}/lib
1013 %attr(755,root,root) %{gem_libdir}/psych-%{psych_ver}/lib/psych.so
1014 %{gem_dir}/specifications/psych-%{psych_ver}.gemspec
1017 %defattr(644,root,root,755)
1018 %{gem_dir}/gems/xmlrpc-%{xmlrpc_ver}
1019 %{gem_dir}/specifications/xmlrpc-%{xmlrpc_ver}.gemspec
1022 %defattr(644,root,root,755)
1023 %attr(755,root,root) %{_bindir}/erb%{ruby_suffix}
1025 %{ruby_libdir}/digest
1027 %{ruby_libdir}/fiddle
1029 %{ruby_libdir}/matrix
1031 %{ruby_libdir}/openssl
1032 %{ruby_libdir}/optparse
1034 %{ruby_libdir}/rbconfig
1035 %{ruby_libdir}/rexml
1036 %{ruby_libdir}/rinda
1037 %{ruby_libdir}/ripper
1039 %{ruby_libdir}/shell
1040 %{ruby_libdir}/syslog
1043 %{ruby_libdir}/webrick
1046 %{ruby_libdir}/English.rb
1047 %{ruby_libdir}/abbrev.rb
1048 %{ruby_libdir}/base64.rb
1049 %{ruby_libdir}/benchmark.rb
1050 %{ruby_libdir}/cgi.rb
1051 %{ruby_libdir}/cmath.rb
1052 %{ruby_libdir}/csv.rb
1053 %{ruby_libdir}/date.rb
1054 %{ruby_libdir}/debug.rb
1055 %{ruby_libdir}/delegate.rb
1056 %{ruby_libdir}/digest.rb
1057 %{ruby_libdir}/drb.rb
1058 %{ruby_libdir}/e2mmap.rb
1059 %{ruby_libdir}/erb.rb
1060 %{ruby_libdir}/expect.rb
1061 %{ruby_libdir}/fiddle.rb
1062 %{ruby_libdir}/fileutils.rb
1063 %{ruby_libdir}/find.rb
1064 %{ruby_libdir}/forwardable.rb
1065 %dir %{ruby_libdir}/forwardable
1066 %{ruby_libdir}/forwardable/impl.rb
1067 %{ruby_libdir}/getoptlong.rb
1068 %{ruby_libdir}/ipaddr.rb
1069 %{ruby_libdir}/json.rb
1070 %{ruby_libdir}/kconv.rb
1071 %{ruby_libdir}/logger.rb
1072 %{ruby_libdir}/mathn.rb
1073 %{ruby_libdir}/matrix.rb
1074 %{ruby_libdir}/monitor.rb
1075 %{ruby_libdir}/mutex_m.rb
1076 %{ruby_libdir}/observer.rb
1077 %{ruby_libdir}/open-uri.rb
1078 %{ruby_libdir}/open3.rb
1079 %{ruby_libdir}/openssl.rb
1080 %{ruby_libdir}/optionparser.rb
1081 %{ruby_libdir}/optparse.rb
1082 %{ruby_libdir}/ostruct.rb
1083 %{ruby_libdir}/pathname.rb
1084 %{ruby_libdir}/pp.rb
1085 %{ruby_libdir}/prettyprint.rb
1086 %{ruby_libdir}/prime.rb
1087 %{ruby_libdir}/profile.rb
1088 %{ruby_libdir}/profiler.rb
1089 %{ruby_libdir}/pstore.rb
1090 %{ruby_libdir}/rdoc.rb
1091 %{ruby_libdir}/resolv-replace.rb
1092 %{ruby_libdir}/resolv.rb
1093 %{ruby_libdir}/ripper.rb
1094 %{ruby_libdir}/rss.rb
1095 %{ruby_libdir}/scanf.rb
1096 %{ruby_libdir}/securerandom.rb
1097 %{ruby_libdir}/set.rb
1098 %{ruby_libdir}/shell.rb
1099 %{ruby_libdir}/shellwords.rb
1100 %{ruby_libdir}/singleton.rb
1101 %{ruby_libdir}/socket.rb
1102 %{ruby_libdir}/sync.rb
1103 %{ruby_libdir}/tempfile.rb
1104 %{ruby_libdir}/thwait.rb
1105 %{ruby_libdir}/time.rb
1106 %{ruby_libdir}/timeout.rb
1107 %{ruby_libdir}/tmpdir.rb
1108 %{ruby_libdir}/tracer.rb
1109 %{ruby_libdir}/tsort.rb
1110 %{ruby_libdir}/un.rb
1111 %{ruby_libdir}/unicode_normalize
1112 %{ruby_libdir}/unicode_normalize.rb
1113 %{ruby_libdir}/uri.rb
1114 %{ruby_libdir}/weakref.rb
1115 %{ruby_libdir}/webrick.rb
1116 %{ruby_libdir}/yaml.rb
1118 %if %{with batteries}
1119 %exclude %{ruby_libdir}/rubygems.rb
1120 %exclude %{ruby_libdir}/ubygems.rb
1121 %exclude %{ruby_libdir}/rbconfig/datadir.rb
1123 %exclude %{ruby_libdir}/irb.rb
1124 %exclude %{ruby_libdir}/mkmf.rb
1126 %{ruby_archdir}/rbconfig.rb
1127 %attr(755,root,root) %{ruby_archdir}/bigdecimal.so
1128 %attr(755,root,root) %{ruby_archdir}/continuation.so
1129 %attr(755,root,root) %{ruby_archdir}/coverage.so
1130 %attr(755,root,root) %{ruby_archdir}/date_core.so
1131 %attr(755,root,root) %{ruby_archdir}/dbm.so
1132 %attr(755,root,root) %{ruby_archdir}/digest.so
1133 %attr(755,root,root) %{ruby_archdir}/etc.so
1134 %attr(755,root,root) %{ruby_archdir}/fcntl.so
1135 %attr(755,root,root) %{ruby_archdir}/fiber.so
1136 %attr(755,root,root) %{ruby_archdir}/fiddle.so
1137 %attr(755,root,root) %{ruby_archdir}/gdbm.so
1138 %attr(755,root,root) %{ruby_archdir}/nkf.so
1139 %attr(755,root,root) %{ruby_archdir}/objspace.so
1140 %attr(755,root,root) %{ruby_archdir}/openssl.so
1141 %attr(755,root,root) %{ruby_archdir}/pathname.so
1142 %attr(755,root,root) %{ruby_archdir}/pty.so
1143 %attr(755,root,root) %{ruby_archdir}/readline.so
1144 %attr(755,root,root) %{ruby_archdir}/ripper.so
1145 %attr(755,root,root) %{ruby_archdir}/sdbm.so
1146 %attr(755,root,root) %{ruby_archdir}/socket.so
1147 %attr(755,root,root) %{ruby_archdir}/stringio.so
1148 %attr(755,root,root) %{ruby_archdir}/strscan.so
1149 %attr(755,root,root) %{ruby_archdir}/syslog.so
1150 %attr(755,root,root) %{ruby_archdir}/zlib.so
1152 %dir %{ruby_archdir}/cgi
1153 %attr(755,root,root) %{ruby_archdir}/cgi/escape.so
1154 %dir %{ruby_archdir}/digest
1155 %attr(755,root,root) %{ruby_archdir}/digest/*.so
1156 %dir %{ruby_archdir}/enc
1157 %attr(755,root,root) %{ruby_archdir}/enc/*.so
1158 %dir %{ruby_archdir}/enc/trans
1159 %attr(755,root,root) %{ruby_archdir}/enc/trans/*.so
1160 %dir %{ruby_archdir}/io
1161 %attr(755,root,root) %{ruby_archdir}/io/*.so
1162 %dir %{ruby_archdir}/mathn
1163 %attr(755,root,root) %{ruby_archdir}/mathn/*.so
1164 %dir %{ruby_archdir}/racc
1165 %attr(755,root,root) %{ruby_archdir}/racc/*.so
1166 %dir %{ruby_archdir}/rbconfig
1167 %attr(755,root,root) %{ruby_archdir}/rbconfig/sizeof.so
1169 %dir %{_libdir}/gems
1170 %dir %{_libdir}/gems/%{oname}
1173 %dir %{gem_dir}/gems
1174 %dir %{gem_dir}/specifications
1175 %dir %{gem_dir}/specifications/default
1176 %{_mandir}/man1/erb%{ruby_suffix}.1*
1177 %{_mandir}/man1/ri%{ruby_suffix}.1*
1181 %defattr(644,root,root,755)
1182 %doc ruby_%{doc_version}_stdlib
1183 %doc ruby_%{doc_version}_core
1186 %defattr(644,root,root,755)
1191 %defattr(644,root,root,755)
1192 %{_examplesdir}/%{oname}-%{pkg_version}