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_without batteries # Don't include rubygems, json, rake, minitest
9 %bcond_without default_ruby # use this Ruby as default system Ruby
10 %bcond_with bootstrap # build bootstrap version
11 %bcond_with tests # build without tests
14 %define ruby_version 2.4
16 %define pkg_version %{ruby_version}.%{patchlevel}
17 %define ruby_suffix %{!?with_default_ruby:%{ruby_version}}
18 %define doc_version 2_4_3
20 Summary: Ruby - interpreted scripting language
21 Summary(ja.UTF-8): オブジェクト指向言語Rubyインタプリタ
22 Summary(pl.UTF-8): Ruby - interpretowany język skryptowy
23 Summary(pt_BR.UTF-8): Linguagem de script orientada a objeto
24 Summary(zh_CN.UTF-8): ruby - 一种快速高效的面向对象脚本编程语言
25 Name: ruby%{ruby_suffix}
26 Version: %{pkg_version}
29 # Public Domain for example for: include/ruby/st.h, strftime.c, missing/*, ...
31 # zlib: ext/digest/md5/md5.*, ext/nkf/nkf-utf8/nkf.c
32 # UCD: some of enc/trans/**/*.src
33 License: (Ruby or BSD) and Public Domain and MIT and CC0 and zlib and UCD
34 Group: Development/Languages
35 # https://www.ruby-lang.org/en/downloads/
36 Source0: https://cache.ruby-lang.org/pub/ruby/%{ruby_version}/%{oname}-%{pkg_version}.tar.xz
37 # Source0-md5: 4f30cefb7d50c6fa4d801f47ed9d82ca
38 Source2: http://www.ruby-doc.org/downloads/%{oname}_%{doc_version}_stdlib_rdocs.tgz
39 # Source2-md5: d21fb29009644bd174dbba0dad53f1f5
40 Source3: http://www.ruby-doc.org/downloads/%{oname}_%{doc_version}_core_rdocs.tgz
41 # Source3-md5: 3aef8f1b7fb3d140ac9ba8f3061c832e
42 Source50: http://www.unicode.org/Public/9.0.0/ucd/CaseFolding.txt
43 # Source50-md5: e3fbf2f626f10070000fe66f3a2ff5ef
44 Source51: http://www.unicode.org/Public/9.0.0/ucd/CompositionExclusions.txt
45 # Source51-md5: 263381d7b4b5e2d52a91e1bbbd4722d4
46 Source52: http://www.unicode.org/Public/9.0.0/ucd/NormalizationTest.txt
47 # Source52-md5: aacb8a8acfc449d09136fe39f3f97cf1
48 Source53: http://www.unicode.org/Public/9.0.0/ucd/SpecialCasing.txt
49 # Source53-md5: fea30f45a2f81ffa474fd984d297e2ea
50 Source54: http://www.unicode.org/Public/9.0.0/ucd/UnicodeData.txt
51 # Source54-md5: dde25b1cf9bbb4ba1140ac12e4128b0b
52 Source100: ftp://ftp.ruby-lang.org/pub/ruby/1.8/%{oname}-1.8.7-p330.tar.gz
53 # Source100-md5: 50a49edb787211598d08e756e733e42e
56 Source6: operating_system.rb
57 #Patch1: %{oname}-ffs.patch
58 Patch2: fix-bison-invocation.patch
59 Patch3: mkmf-verbose.patch
60 Patch4: strip-ccache.patch
61 Patch5: ruby-version.patch
62 Patch6: duplicated-paths.patch
64 Patch8: rubygems-2.0.0-binary-extensions.patch
65 Patch9: custom-rubygems-location.patch
66 Patch12: archlibdir.patch
67 URL: http://www.ruby-lang.org/
68 BuildRequires: autoconf >= 2.67
69 BuildRequires: automake
70 BuildRequires: bison >= 1.875
71 BuildRequires: db-devel
72 BuildRequires: gdbm-devel >= 1.8.3
73 BuildRequires: gmp-devel
74 BuildRequires: libffi-devel
75 BuildRequires: ncurses-devel
76 BuildRequires: openssl-devel >= 0.9.6
77 BuildRequires: pkgconfig
78 BuildRequires: readline-devel >= 4.2
79 BuildRequires: rpm-build >= 5.4.10-49
80 BuildRequires: sed >= 4.0
81 BuildRequires: systemtap-sdt-devel
82 BuildRequires: tar >= 1:1.22
84 BuildRequires: yaml-devel
85 BuildRequires: zlib-devel
86 %if %{without bootstrap}
87 # bootstrap needs ruby binary, erb module
88 BuildRequires: rpm-rubyprov
90 BuildRequires: ruby-modules
92 Requires(post,postun): /sbin/ldconfig
93 Obsoletes: ruby-REXML <= 2.4.0-2
94 Obsoletes: ruby-doc < 1.8.4
95 Obsoletes: ruby-fastthread <= 0.6.3
96 Conflicts: rpm-build-macros < 1.695
97 Conflicts: ruby-activesupport < 2.3.11-2
98 Conflicts: ruby-activesupport2 < 2.3.11-2
99 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
101 %define bigdecimal_ver 1.3.2
102 %define did_you_mean_ver 1.1.0
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 net_telnet_ver 0.1.1
108 %define openssl_ver 2.0.7
109 %define power_assert_ver 0.4.1
110 %define psych_ver 2.2.2
111 %define rake_ver 12.0.0
112 %define rdoc_ver 5.0.0
113 %define rubygems_ver 2.6.14.1
114 %define test_unit_ver 3.2.3
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
207 Obsoletes: ruby-static < 1:2.4
210 Ruby development libraries.
212 %description devel -l pl.UTF-8
213 Biblioteki programistyczne interpretera języka Ruby.
216 Summary: Ruby HTML documentation
217 Summary(pl.UTF-8): Dokumentacja HTML do Ruby
219 %if "%{_rpmversion}" >= "5"
224 Ruby HTML documentation: FAQ, guide, core and standard library.
226 %description doc -l pl.UTF-8
227 Dokumentacja HTML do Ruby: FAQ, przewodnik, dokumentacja dla core i
231 Summary: Ruby ri documentation
232 Summary(pl.UTF-8): Dokumentacja Ruby w formacie ri
234 Requires: %{name}-modules = %{epoch}:%{version}-%{release}
235 %if "%{_rpmversion}" >= "5"
240 Ruby ri documentation.
242 %description doc-ri -l pl.UTF-8
243 Dokumentacja Ruby w formacie ri.
246 Summary: Ruby examples
247 Summary(pl.UTF-8): Przykłady dla języka Ruby
248 Group: Development/Languages
249 %if "%{_rpmversion}" >= "5"
253 %description examples
256 %description examples -l pl.UTF-8
257 Przykłady programów w języku Ruby.
259 # IMPORTANT: keep irb, rdoc, rubygems, rake, json as last packages as we reset epoch/version/release
260 # and %{version},%{release} macros may not be used directly as they take last
261 # subpackage value not main package one what you intend to use
264 Summary: The Interactive Ruby
265 Summary(pl.UTF-8): Interaktywny Ruby
267 Release: %{pkg_version}.%{rel}
269 Group: Development/Languages
270 Requires: %{name}-modules = 1:%{pkg_version}-%{rel}
271 Provides: irb = %{version}-%{release}
272 Provides: ruby(irb) = %{version}-%{release}
273 %if "%{_rpmversion}" >= "5"
278 The irb is acronym for Interactive Ruby. It evaluates ruby expression
281 %description irb -l pl.UTF-8
282 Nazwa irb to skrót od Interactive Ruby (interaktywny Ruby). Wyznacza
283 wartości wyrażeń języka ruby podane z terminala.
286 Summary: A tool to generate HTML and command-line documentation for Ruby projects
287 Summary(pl.UTF-8): Narzędzie do generowania dokumentacji HTML i linii poleceń dla projektów w Rubym
289 Release: %{pkg_version}.%{rel}
291 # SIL: lib/rdoc/generator/template/darkfish/css/fonts.css
292 License: GPLv2 and Ruby and MIT and SIL
293 Group: Development/Libraries
294 Requires: %{name}-irb >= %{irb_ver}
295 Requires: %{name}-json >= %{json_ver}
296 Requires: %{name}-modules = 1:%{pkg_version}-%{rel}
297 Obsoletes: rdoc <= 0.9.0
298 %if "%{_rpmversion}" >= "5"
303 RDoc produces HTML and command-line documentation for Ruby projects.
304 RDoc includes the 'rdoc' and 'ri' tools for generating and displaying
305 online documentation.
307 %description rdoc -l pl.UTF-8
308 RDoc tworzy dokumentację HTML i linii poleceń dla projektów w języku
309 Ruby. RDoc zawiera narzędzia 'rdoc' i 'ri' do generowania i
310 wyświetlania dokumentacji online.
313 Summary: RubyGems - the Ruby standard for packaging Ruby libraries
314 Summary(pl.UTF-8): RubyGems - standard Ruby'ego pakietowania bibliotek
315 Version: %{rubygems_ver}
316 Release: %{pkg_version}.%{rel}
319 Group: Development/Libraries
320 Requires: %{name}-bigdecimal = %{bigdecimal_ver}-%{pkg_version}.%{rel}
321 Requires: %{name}-io-console = %{io_console_ver}-%{pkg_version}.%{rel}
322 Requires: %{name}-modules = 1:%{pkg_version}-%{rel}
323 Requires: %{name}-psych = %{psych_ver}-%{pkg_version}.%{rel}
324 Requires: %{name}-rdoc >= %{rdoc_ver}
325 Suggests: %{name}-devel
326 Provides: rubygems = %{rubygems_ver}
327 %if "%{_rpmversion}" >= "5"
331 %description rubygems
332 RubyGems is the Ruby standard for publishing and managing third party
335 %description rubygems -l pl.UTF-8
336 RubyGems to standardowe narzędzie języka Ruby do publikowania i
337 zarządzania zewnętrznymi bibliotekami.
340 Summary: Rake is a Make-like program implemented in Ruby
341 Summary(pl.UTF-8): Program typu Make dla języka Ruby
343 Release: %{pkg_version}.%{rel}
346 Group: Development/Languages
347 Provides: rake = %{rake_ver}
348 Conflicts: ruby-modules < 1:1.9.3.429-2
349 %if "%{_rpmversion}" >= "5"
354 Rake is a simple Ruby build program with capabilities similar to make.
356 It has the following features:
357 - Rakefiles (rake's version of Makefiles) are completely defined in
358 standard Ruby syntax. No XML files to edit. No quirky Makefile syntax
359 to worry about (is that a tab or a space?)
360 - Users can specify tasks with prerequisites.
361 - Rake supports rule patterns to synthesize implicit tasks.
362 - Rake is lightweight. It can be distributed with other projects as a
363 single file. Projects that depend upon rake do not require that rake
364 be installed on target systems.
366 %description rake -l pl.UTF-8
367 Rake to prosty program do budowania w języku Ruby o możliwościach
370 Ma następujące cechy:
371 - Pliki Rakefile (rake'owa odmiana plików Makefile) są definiowane
372 całkowicie w standardowej składni języka Ruby. Nie trzeba modyfikować
373 plików XML. Nie trzeba martwić się kaprysami składni Makefile (czy to
374 tabulacja czy spacja?).
375 - Użytkownicy mogą określać zadania z ich zależnościami.
376 - Rake obsługuje wzorce reguł do tworzenia z nich wynikowych zadań.
377 - Rake jest lekki. Może być rozpowszechniany z innymi projektami jako
378 pojedynczy plik. Projekty używające rake'a nie wymagają go
379 zainstalowanego na systemach docelowych.
382 Summary: JSON library for Ruby
383 Summary(pl.UTF-8): Biblioteka JSON dla języka Ruby
385 Release: %{pkg_version}.%{rel}
387 # UCD: ext/json/generator/generator.c
388 License: (Ruby or GPL v2) and UCD
389 Group: Development/Languages
390 Obsoletes: ruby-json-rubyforge
391 Conflicts: ruby-modules < 1:1.9.3.429-3
394 This is a JSON implementation as a Ruby extension in C.
396 %description json -l pl.UTF-8
397 Biblioteka JSON dla języka Ruby.
400 Summary: Minitest - a complete suite of testing facilities
401 Summary(pl.UTF-8): Minitest - kompletny szkielet do testowania
402 Version: %{minitest_ver}
403 Release: %{pkg_version}.%{rel}
406 Group: Development/Libraries
407 %if "%{_rpmversion}" >= "5"
411 %description minitest
412 minitest/unit is a small and incredibly fast unit testing framework.
414 minitest/spec is a functionally complete spec engine.
416 minitest/benchmark is an awesome way to assert the performance of your
417 algorithms in a repeatable manner.
419 minitest/mock by Steven Baker, is a beautifully tiny mock object
422 minitest/pride shows pride in testing and adds coloring to your test
425 %description minitest -l pl.UTF-8
426 minitest/unit to mały i bardzo szybki szkielet testów jednostkowych.
428 minitest/spec to funkcjonalnie kompletny silnik specyfikacji.
430 minitest/benchmark to wspaniały sposób zapewnienia wydajności
431 algorytmów w powtarzalny sposób.
433 minitest/mock autorstwa Stevena Bakera to mały szkielet obiektów
436 minitest/pride ukazuje dumę z testowania i dodaje kolorowanie do
439 %package power_assert
440 Summary: Power Assert for Ruby
441 Summary(pl.UTF-8): Power Assert dla języka Ruby
442 Version: %{power_assert_ver}
443 Release: %{pkg_version}.%{rel}
446 Group: Development/Libraries
447 %if "%{_rpmversion}" >= "5"
451 %description power_assert
452 Power Assert shows each value of variables and method calls in the
453 expression. It is useful for testing, providing which value wasn't
454 correct when the condition is not satisfied.
456 %description power_assert -l pl.UTF-8
457 Power Assert pokazuje każdą wartość zmiennych i wywołań metod w
458 wyrażeniu. Jest przydatny do testowania, ukazując, która wartość nie
459 była poprawna, kiedy warunek nie był spełniony.
462 Summary: An xUnit family unit testing framework for Ruby
463 Summary(pl.UTF-8): Szkielet testów z rodziny xUnit dla języka Ruby
464 Version: %{test_unit_ver}
465 Release: %{pkg_version}.%{rel}
467 # lib/test/unit/diff.rb is a double license of the Ruby license and PSF license.
468 # lib/test-unit.rb is a dual license of the Ruby license and LGPLv2.1 or later.
469 License: (Ruby or BSD) and (Ruby or BSD or Python) and (Ruby or BSD or LGPL v2+)
470 Group: Development/Libraries
471 Requires: ruby-power_assert = %{power_assert_ver}-%{pkg_version}.%{rel}
472 %if "%{_rpmversion}" >= "5"
476 %description test-unit
477 test-unit (Test::Unit) is unit testing framework for Ruby, based on
478 xUnit principles. These were originally designed by Kent Beck, creator
479 of extreme programming software development methodology, for
480 Smalltalk's SUnit. It allows writing tests, checking results and
481 automated testing in Ruby.
483 %description test-unit -l pl.UTF-8
484 test-unit (Test::Unit) to szkielet testów jednostkowych dla języka
485 Ruby oparty na zasadach xUnit. Te były pierwotnie zaprojektowane przez
486 Kenta Becka, twórcy metodyki tworzenia oprogramowania zwanej
487 programowaniem ekstremalnym, dla szkieletu SUnit dla Smalltalka.
488 Szkielet pozwala na pisanie testów, sprawdzanie wyników i automatyczne
491 %package did_you_mean
492 Summary: "Did you mean?" experience in Ruby
493 Summary(pl.UTF-8): Zachowanie "czy miałeś na myśli?" w języku Ruby
494 Version: %{did_you_mean_ver}
495 Release: %{pkg_version}.%{rel}
498 Group: Development/Libraries
499 %if "%{_rpmversion}" >= "5"
503 %description did_you_mean
504 "Did you mean?" experience in Ruby: the error message will tell you
505 the right one when you misspelled something.
507 %description did_you_mean -l pl.UTF-8
508 Zachowanie "czy miałeś na myśli" w języku ruby: komunikat błędu
509 podpowie właściwą pisownię w przypadku literówki.
512 Summary: Provides telnet client functionality
513 Summary(pl.UTF-8): Funkcjonalność klienta usługi telnet
514 Version: %{net_telnet_ver}
515 Release: %{pkg_version}.%{rel}
517 Group: Development/Libraries
518 %if "%{_rpmversion}" >= "5"
522 %description net-telnet
523 Provides telnet client functionality.
525 This class also has, through delegation, all the methods of a socket
526 object (by default, a TCPSocket, but can be set by the Proxy option to
527 new()). This provides methods such as close() to end the session and
528 sysread() to read data directly from the host, instead of via the
531 %description net-telnet -l pl.UTF-8
532 Ten pakiet dostarcza funkcjonalność klienta usługi telnet.
534 Ta klasa ma, poprzez delegację, wszystkie metody obiektu gniazda
535 (domyślnie TCPSocket, ale może być ustawiona przez opcję Proxy dla
536 new()). Udostępnia metody takie jak: close() do zakończenia sesji czy
537 sysread() do odczytu danych bezpośrednio z hosta zamiast poprzez
541 Summary: BigDecimal - arbitrary-precision floating point decimal arithmetic
542 Summary(pl.UTF-8): BigDecimal - dziesiętna arytmetyka zmiennoprzecinkowa o dowolnej dokładności
543 Version: %{bigdecimal_ver}
544 Release: %{pkg_version}.%{rel}
546 License: GPL+ or Artistic
547 Group: Development/Libraries
549 %description bigdecimal
550 Ruby provides built-in support for arbitrary precision integer
551 arithmetic. For example:
553 42**13 -> 1265437718438866624512
555 BigDecimal provides similar support for very large or very accurate
556 floating point numbers. Decimal arithmetic is also useful for general
557 calculation, because it provides the correct answers people expect -
558 whereas normal binary floating point arithmetic often introduces
559 subtle errors because of the conversion between base 10 and base 2.
561 %description bigdecimal -l pl.UTF-8
562 Ruby zapewnia wbudowaną obsługę arytmetyki całkowitej dowolnej
565 42**13 -> 1265437718438866624512
567 BigDecimal zapewnia podobną obsługę bardzo dużych lub bardzo
568 dokładnych liczb zmiennoprzecinkowych. Arytmetyka dziesiętna jest
569 przydatna także do ogólnych obliczeń, ponieważ zapewnia poprawne
570 odpowiedzi oczekiwane przez ludzi - podczas gdy normalna binarna
571 arytmetyka zmiennoprzecinkowa wprowadza minimalne błędy spowodowane
572 zmianą podstawy między 10 a 2.
575 Summary: IO/Console - a simple console utilizing library
576 Summary(pl.UTF-8): IO/Console - prosta biblioteka wykorzystująca konsolę
577 Version: %{io_console_ver}
578 Release: %{pkg_version}.%{rel}
580 Group: Development/Libraries
582 %description io-console
583 IO/Console provides very simple and portable access to console. It
584 doesn't provide higher layer features, such like curses and readline.
586 %description io-console -l pl.UTF-8
587 IO/Console zapewnia bardzo prosty i przenośny dostęp do konsoli. Nie
588 udostępnia funkcji wyższego poziomu, takich jak curses czy readline.
591 Summary: A libyaml wrapper for Ruby
592 Summary(pl.UTF-8): Obudowanie libyaml dla języka Ruby
593 Version: %{psych_ver}
594 Release: %{pkg_version}.%{rel}
597 Group: Development/Libraries
600 Psych is a YAML parser and emitter. Psych leverages libyaml for its
601 YAML parsing and emitting capabilities. In addition to wrapping
602 libyaml, Psych also knows how to serialize and de-serialize most Ruby
603 objects to and from the YAML format.
605 %description psych -l pl.UTF-8
606 Psych to parser i emiter YAML. Wykorzystuje libyaml do analizy i
607 emitowania YAML-a. Poza obudowaniem libyaml, wie także jak
608 serializować i deserializować większość obiektów języka Ruby do/z
612 Summary: A xmlrpc wrapper for Ruby
613 Summary(pl.UTF-8): Obudowanie xmlrpc dla języka Ruby
614 Version: %{xmlrpc_ver}
615 Release: %{pkg_version}.%{rel}
618 Group: Development/Libraries
621 XMLRPC is a lightweight protocol that enables remote procedure calls
622 over HTTP. It is defined at <http://www.xmlrpc.com/>.
624 XMLRPC allows you to create simple distributed computing solutions
625 that span computer languages. Its distinctive feature is its
626 simplicity compared to other approaches like SOAP and CORBA.
628 The Ruby standard library package 'xmlrpc' enables you to create a
629 server that implements remote procedures and a client that calls them.
630 Very little code is required to achieve either of these.
632 %description xmlrpc -l pl.UTF-8
633 XMLRPC to lekki protokół pozwalający na wywołania zdalnych procedur
634 poprzez HTTP. Jest zdefiniowany na <http://www.xmlrpc.com/>.
636 XMLRPC pozwala na tworzenie prostych, rozproszonych systemów
637 komputerowych dla wielu języków. Wyróżniającą cechą jest prostota w
638 porównaniu do innych rozwiązań, takich jak SOAP czy CORBA.
640 Pakiet biblioteki standardowej języka Ruby 'xmlrpc' pozwala na
641 stworzenie serwera implementującego procedury zdalne oraz klienta
642 wywołującego je. Aby to osiągnąć wystarczy bardzo mało kodu.
645 %setup -q -n %{oname}-%{pkg_version} -a2 -a3 %{?with_bootstrap:-a100}
656 install -d enc/unicode/data/9.0.0
657 cp -p %{SOURCE50} %{SOURCE51} %{SOURCE52} %{SOURCE53} %{SOURCE54} enc/unicode/data/9.0.0/
659 # must be regenerated with new bison
662 # Remove bundled libraries to be sure they are not used.
663 %{__rm} -r ext/psych/yaml
664 %{__rm} -r ext/fiddle/libffi*
666 # Install custom operating_system.rb.
667 install -d lib/rubygems/defaults
668 cp -p %{SOURCE6} lib/rubygems/defaults
670 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
672 find -type f '(' -name '*.rb' -o -name '*.cgi' -o -name '*.test' \
673 -o -name 'ruby.1' -o -name '*.html' -o -name '*.tcl' ')' \
674 | xargs %{__sed} -i 's,/usr/local/bin/,%{_bindir}/,'
677 rubygems_ver=$(awk '/VERSION =/ && $1 == "VERSION" {print $3}' lib/rubygems.rb | xargs)
678 if [ $rubygems_ver != %{rubygems_ver} ]; then
679 echo "Set %%define rubygems_ver to $rubygems_ver and re-run."
682 rdoc_ver=$(awk '/VERSION =/ && $1 == "VERSION" {print $3}' lib/rdoc.rb | xargs)
683 if [ $rdoc_ver != %{rdoc_ver} ]; then
684 echo "Set %%define rdoc_ver to $rdoc_ver and re-run."
688 cp -f /usr/share/automake/config.sub .
690 # build ruby-1.8.7 first
691 %if %{with bootstrap}
692 cd %{oname}-1.8.7-p330
700 %{?with_bootstrap:--with-baseruby=%{oname}-1.8.7-p330/miniruby} \
701 --program-suffix=%{ruby_suffix} \
702 --with-archlibdir=%{_libdir} \
703 --with-rubygemsdir=%{rubygems_dir} \
704 --with-rubylibprefix=%{ruby_libdir} \
705 --with-rubyarchprefix=%{ruby_archdir} \
706 --with-sitedir=%{ruby_sitelibdir} \
707 --with-sitearchdir=%{ruby_sitearchdir} \
708 --with-vendordir=%{ruby_vendorlibdir} \
709 --with-vendorarchdir=%{ruby_vendorarchdir} \
710 --with-rubyhdrdir=%{_includedir}/%{oname}-%{ruby_version} \
711 --with-rubyarchhdrdir=%{_includedir}/%{oname}-%{ruby_version} \
712 --with-sitearchhdrdir='$(sitehdrdir)/$(arch)' \
713 --with-vendorarchhdrdir='$(vendorhdrdir)/$(arch)' \
716 --disable-install-doc \
719 --with-ruby-version='' \
723 %{?with_bootstrap:BASERUBY="%{oname}-1.8.7-p330/miniruby -I./ruby-1.8.7-p330/lib"}
730 # unset these, as testsuite does "git commit" somewhere, which points to pld .spec repo. doh
731 unset GIT_DIR GIT_WORK_TREE
736 %ifarch armv7l armv7hl armv7hnl
737 # test_call_double(DL::TestDL) fails on ARM HardFP
738 # http://bugs.ruby-lang.org/issues/6592
739 DISABLE_TESTS="-x test_dl2.rb $DISABLE_TESTS"
742 # test_debug(TestRubyOptions) fails due to LoadError reported in debug mode,
743 # when abrt.rb cannot be required (seems to be easier way then customizing
747 # TestSignal#test_hup_me hangs up the test suite.
748 # http://bugs.ruby-lang.org/issues/8997
749 sed -i '/def test_hup_me/,/end if Process.respond_to/ s/^/#/' test/ruby/test_signal.rb
751 # Fix "Could not find 'minitest'" error.
752 # http://bugs.ruby-lang.org/issues/9259
753 sed -i "/^ gem 'minitest', '~> 4.0'/ s/^/#/" lib/rubygems/test_case.rb
755 # Segmentation fault.
756 # https://bugs.ruby-lang.org/issues/9198
757 sed -i '/^ def test_machine_stackoverflow/,/^ end/ s/^/#/' test/ruby/test_exception.rb
759 # Don't test wrap ciphers to prevent "OpenSSL::Cipher::CipherError: wrap mode
760 # not allowed" error.
761 # https://bugs.ruby-lang.org/issues/10229
762 sed -i '/assert(OpenSSL::Cipher::Cipher.new(name).is_a?(OpenSSL::Cipher::Cipher))/i \
763 next if /wrap/ =~ name' test/openssl/test_cipher.rb
765 # Test is broken due to SSLv3 disabled in Fedora.
766 # https://bugs.ruby-lang.org/issues/10046
767 sed -i '/def test_ctx_server_session_cb$/,/^ end$/ s/^/#/' test/openssl/test_ssl_session.rb
769 %{__make} check TESTS="-v $DISABLE_TESTS"
773 rm -rf $RPM_BUILD_ROOT
774 install -d $RPM_BUILD_ROOT{%{ruby_rdocdir},%{ruby_ridir}} \
775 $RPM_BUILD_ROOT%{ruby_vendorarchdir} \
776 $RPM_BUILD_ROOT%{ruby_vendorlibdir}/net \
777 $RPM_BUILD_ROOT%{ruby_vendorlibdir}/data \
779 %{__make} install %{?with_doc:install-doc -j1} \
780 DESTDIR=$RPM_BUILD_ROOT
782 # Version is empty if --with-ruby-version is specified.
783 # http://bugs.ruby-lang.org/issues/7807
784 sed -i -e 's/Version: \${ruby_version}/Version: %{ruby_version}/' $RPM_BUILD_ROOT%{_pkgconfigdir}/%{oname}-%{ruby_version}.pc
786 # Kill bundled certificates, as they should be part of ca-certificates.
788 AddTrustExternalCARoot.pem \
789 DigiCertHighAssuranceEVRootCA.pem \
790 GlobalSignRootCA.pem \
792 %{__rm} $RPM_BUILD_ROOT%{rubygems_dir}/rubygems/ssl_certs/*/$cert
795 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}
796 cp -Rf sample/* $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}
797 cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_mandir}/man1/rdoc%{ruby_suffix}.1
798 cp -p %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man1/testrb%{ruby_suffix}.1
800 %{__rm} -rf $RPM_BUILD_ROOT%{_docdir}/%{name}/html
802 # detect this runtime, "make install" is affected by operating_system.rb what is installed in system!
803 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')
805 # Move gems root into common directory, out of Ruby directory structure.
806 install -d $RPM_BUILD_ROOT%{gem_dir}
807 %{__mv} $RPM_BUILD_ROOT${gem_dir}/{gems,specifications} $RPM_BUILD_ROOT%{gem_dir}
809 # Move bundled rubygems to %gem_dir
810 # make symlinks for io-console and bigdecimal, which are considered to be part of stdlib by other Gems
811 # make symlinks for all packages, so they would work without rubygems
812 # NOTE: when making symlinks, do not symlink paths that could be directories,
813 # as there may came files from other packages as well. actually, unlikely as
814 # the links to got system dir and only ruby may package there (other distro
815 # packages should go to vendor dirs)
817 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/lib
818 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/rake* $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/lib
819 ln -s %{gem_dir}/gems/rake-%{rake_ver}/lib/rake $RPM_BUILD_ROOT%{ruby_libdir}
820 ln -s %{gem_dir}/gems/rake-%{rake_ver}/lib/rake.rb $RPM_BUILD_ROOT%{ruby_libdir}
821 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/rake-%{rake_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
824 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
825 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/rdoc* $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
826 ln -s %{gem_dir}/gems/rdoc-%{rdoc_ver}/lib/rdoc $RPM_BUILD_ROOT%{ruby_libdir}
827 ln -s %{gem_dir}/gems/rdoc-%{rdoc_ver}/lib/rdoc.rb $RPM_BUILD_ROOT%{ruby_libdir}
828 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/rdoc-%{rdoc_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
830 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib
831 install -d $RPM_BUILD_ROOT%{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
832 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/bigdecimal $RPM_BUILD_ROOT%{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib
833 %{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal.so $RPM_BUILD_ROOT%{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
834 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/bigdecimal-%{bigdecimal_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
835 ln -s %{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal $RPM_BUILD_ROOT%{ruby_libdir}/bigdecimal
836 ln -s %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal.so $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal.so
838 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/io-console-%{io_console_ver}/lib
839 install -d $RPM_BUILD_ROOT%{gem_libdir}/io-console-%{io_console_ver}/lib/io
840 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/io $RPM_BUILD_ROOT%{gem_dir}/gems/io-console-%{io_console_ver}/lib
841 %{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/io/console.so $RPM_BUILD_ROOT%{gem_libdir}/io-console-%{io_console_ver}/lib/io
842 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/io-console-%{io_console_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
843 ln -s %{gem_dir}/gems/io-console-%{io_console_ver}/lib/io $RPM_BUILD_ROOT%{ruby_libdir}/io
844 ln -s %{gem_libdir}/io-console-%{io_console_ver}/lib/io/console.so $RPM_BUILD_ROOT%{ruby_libarchdir}/io/console.so
846 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/json-%{json_ver}/lib
847 install -d $RPM_BUILD_ROOT%{gem_libdir}/json-%{json_ver}/lib
848 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/json* $RPM_BUILD_ROOT%{gem_dir}/gems/json-%{json_ver}/lib
849 %{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/json $RPM_BUILD_ROOT%{gem_libdir}/json-%{json_ver}/lib
850 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/json-%{json_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
851 ln -s %{gem_dir}/gems/json-%{json_ver}/lib/json $RPM_BUILD_ROOT%{ruby_libdir}/json
852 ln -s %{gem_dir}/gems/json-%{json_ver}/lib/json.rb $RPM_BUILD_ROOT%{ruby_libdir}/json.rb
853 install -d $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
854 ln -s %{gem_libdir}/json-%{json_ver}/lib/json/ext/parser.so $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
855 ln -s %{gem_libdir}/json-%{json_ver}/lib/json/ext/generator.so $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
857 ln -s %{gem_dir}/gems/minitest-%{minitest_ver}/lib/minitest $RPM_BUILD_ROOT%{ruby_libdir}
859 install -d $RPM_BUILD_ROOT%{ruby_libdir}/test
860 ln -s %{gem_dir}/gems/test-unit-%{test_unit_ver}/lib/test/unit $RPM_BUILD_ROOT%{ruby_libdir}/test
862 install -d $RPM_BUILD_ROOT%{gem_dir}/gems/psych-%{psych_ver}/lib
863 install -d $RPM_BUILD_ROOT%{gem_libdir}/psych-%{psych_ver}/lib
864 %{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/psych* $RPM_BUILD_ROOT%{gem_dir}/gems/psych-%{psych_ver}/lib
865 %{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/psych.so $RPM_BUILD_ROOT%{gem_libdir}/psych-%{psych_ver}/lib/
866 %{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/psych-%{psych_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
867 ln -s %{gem_dir}/gems/psych-%{psych_ver}/lib/psych $RPM_BUILD_ROOT%{ruby_libdir}/psych
868 ln -s %{gem_dir}/gems/psych-%{psych_ver}/lib/psych.rb $RPM_BUILD_ROOT%{ruby_libdir}/psych.rb
869 ln -s %{gem_libdir}/psych-%{psych_ver}/lib/psych.so $RPM_BUILD_ROOT%{ruby_archdir}/psych.so
871 # Adjust the gemspec files so that the gems will load properly
873 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/rake-%{rake_ver}.gemspec
876 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/rdoc-%{rdoc_ver}.gemspec
879 s.require_paths = ["lib"]\
880 s.extensions = ["bigdecimal.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/bigdecimal-%{bigdecimal_ver}.gemspec
883 s.require_paths = ["lib"]\
884 s.extensions = ["io/console.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/io-console-%{io_console_ver}.gemspec
887 s.require_paths = ["lib"]\
888 s.extensions = ["json/ext/parser.so", "json/ext/generator.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/json-%{json_ver}.gemspec
891 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/minitest-%{minitest_ver}.gemspec
893 # Push the .gemspecs through the RubyGems to let them write the stub headers.
894 # This speeds up loading of libraries and avoids warnings in Spring:
895 # https://github.com/rubygems/rubygems/pull/694
896 for s in rake-%{rake_ver}.gemspec rdoc-%{rdoc_ver}.gemspec json-%{json_ver}.gemspec; do
897 s="$RPM_BUILD_ROOT%{gem_dir}/specifications/$s"
898 %{__make} runruby TESTRUN_SCRIPT="-rubygems \
899 -e \"spec = Gem::Specification.load('$s')\" \
900 -e \"File.write '$s', spec.to_ruby\""
903 %{__sed} -i -e '1s,/usr/bin/env ruby,/usr/bin/ruby,' \
904 $RPM_BUILD_ROOT%{ruby_libdir}/abbrev.rb \
905 $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/bin/console \
906 $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/exe/rake \
907 $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/exe/{rdoc,ri} \
908 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/{cal,test,time,uumerge}.rb \
909 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/{drb,logger,openssl,ripper,rss}/*.rb \
910 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/webrick/*.cgi
912 # gem non library files
913 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/minitest-%{minitest_ver}/test
914 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/test-unit-%{test_unit_ver}/{[A-Z]*,doc,sample,test}
915 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/power_assert-%{power_assert_ver}/{[A-Z]*,test}
916 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/{[A-Z]*,doc,test}
917 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/{[A-Z]*,doc}
918 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/net-telnet-%{net_telnet_ver}/{[A-Z]*,bin}
920 %if %{without batteries}
921 # packaged separately
922 %{__rm} -r $RPM_BUILD_ROOT%{ruby_libdir}/{rubygems,rake,json,minitest}
923 %{__rm} -r $RPM_BUILD_ROOT%{ruby_archdir}/json
924 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rake-*
925 %{__rm} $RPM_BUILD_ROOT%{ruby_libdir}/{rake,rubygems,json}.rb
926 %{__rm} $RPM_BUILD_ROOT%{_bindir}/{gem,rake}
927 #%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/rake*
928 %{__rm} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/{json,minitest,rake}-*.gemspec
929 %{?with_doc:%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/ri/%{ruby_version}/system/JSON}
934 %{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/cache.ri
935 %{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/created.rid
939 rm -rf $RPM_BUILD_ROOT
941 %post -p /sbin/ldconfig
942 %postun -p /sbin/ldconfig
945 %defattr(644,root,root,755)
946 %doc NEWS LEGAL BSDL README.md README.EXT ChangeLog
947 %attr(755,root,root) %{_bindir}/ruby%{ruby_suffix}
948 %attr(755,root,root) %{_libdir}/libruby.so.*.*.*
949 %attr(755,root,root) %ghost %{_libdir}/libruby.so.%{ruby_version}
950 %{_mandir}/man1/ruby%{ruby_suffix}.1*
952 %dir %{_libdir}/%{oname}
953 %dir %{_libdir}/%{oname}/%{vendordir}
954 %dir %{_datadir}/%{oname}
958 %dir %{ruby_vendorlibdir}
959 %dir %{ruby_vendorarchdir}
961 %dir %{dirname:%{ruby_ridir}}
965 # common dirs for ruby vendor modules
966 %dir %{ruby_vendorlibdir}/data
967 %dir %{ruby_vendorlibdir}/net
970 %defattr(644,root,root,755)
971 %attr(755,root,root) %{_libdir}/libruby.so
972 %{_includedir}/%{oname}-%{ruby_version}
973 %{_pkgconfigdir}/%{oname}-%{ruby_version}.pc
974 %{ruby_libdir}/mkmf.rb
977 %defattr(644,root,root,755)
978 %attr(755,root,root) %{_bindir}/irb%{ruby_suffix}
979 %{ruby_libdir}/irb.rb
981 %{_mandir}/man1/irb%{ruby_suffix}.1*
984 %defattr(644,root,root,755)
985 %attr(755,root,root) %{_bindir}/rdoc%{ruby_suffix}
986 %attr(755,root,root) %{_bindir}/ri%{ruby_suffix}
987 %{_mandir}/man1/rdoc%{ruby_suffix}.1*
989 %dir %{gem_dir}/gems/rdoc-%{rdoc_ver}
990 %{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
991 %{gem_dir}/specifications/rdoc-%{rdoc_ver}.gemspec
992 %dir %{gem_dir}/gems/rdoc-5.0.0/exe
993 %{gem_dir}/gems/rdoc-5.0.0/exe/rdoc
994 %{gem_dir}/gems/rdoc-5.0.0/exe/ri
996 %if %{with batteries}
998 %defattr(644,root,root,755)
999 %attr(755,root,root) %{_bindir}/gem%{ruby_suffix}
1000 %{rubygems_dir}/rubygems
1001 %{rubygems_dir}/rubygems.rb
1002 %{rubygems_dir}/ubygems.rb
1003 %{rubygems_dir}/rbconfig
1006 %defattr(644,root,root,755)
1007 %attr(755,root,root) %{_bindir}/rake%{ruby_suffix}
1008 %dir %{gem_dir}/gems/rake-%{rake_ver}
1009 %{gem_dir}/gems/rake-%{rake_ver}/lib
1010 %dir %{gem_dir}/gems/rake-%{rake_ver}/bin
1011 %attr(755,root,root) %{gem_dir}/gems/rake-%{rake_ver}/bin/console
1012 %attr(755,root,root) %{gem_dir}/gems/rake-%{rake_ver}/bin/setup
1013 %{gem_dir}/specifications/rake-%{rake_ver}.gemspec
1014 %{gem_dir}/gems/rake-%{rake_ver}/appveyor.yml
1015 %dir %{gem_dir}/gems/rake-%{rake_ver}/exe
1016 %attr(755,root,root) %{gem_dir}/gems/rake-%{rake_ver}/exe/rake
1019 %defattr(644,root,root,755)
1021 %dir %{ruby_archdir}/json
1022 %dir %{ruby_archdir}/json/ext
1023 %attr(755,root,root) %{ruby_archdir}/json/ext/*.so
1025 %dir %{gem_libdir}/json-%{json_ver}
1026 %dir %{gem_libdir}/json-%{json_ver}/lib
1027 %dir %{gem_libdir}/json-%{json_ver}/lib/json
1028 %dir %{gem_libdir}/json-%{json_ver}/lib/json/ext
1029 %attr(755,root,root) %{gem_libdir}/json-%{json_ver}/lib/json/ext/generator.so
1030 %attr(755,root,root) %{gem_libdir}/json-%{json_ver}/lib/json/ext/parser.so
1032 %{gem_dir}/gems/json-%{json_ver}
1033 %{gem_dir}/specifications/json-%{json_ver}.gemspec
1037 %defattr(644,root,root,755)
1038 %dir %{gem_dir}/gems/power_assert-%{power_assert_ver}
1039 %{gem_dir}/gems/power_assert-%{power_assert_ver}/lib
1040 %{gem_dir}/specifications/power_assert-%{power_assert_ver}.gemspec
1041 %dir %{gem_dir}/gems/power_assert-0.4.1/benchmarks
1042 %{gem_dir}/gems/power_assert-0.4.1/benchmarks/bm_yhpg.rb
1043 %{gem_dir}/gems/power_assert-0.4.1/benchmarks/helper.rb
1046 %defattr(644,root,root,755)
1047 %{ruby_libdir}/minitest
1048 %{gem_dir}/gems/minitest-%{minitest_ver}
1049 %{gem_dir}/specifications/minitest-%{minitest_ver}.gemspec
1052 %defattr(644,root,root,755)
1053 %dir %{gem_dir}/gems/test-unit-%{test_unit_ver}
1054 %{gem_dir}/gems/test-unit-%{test_unit_ver}/lib
1055 %{gem_dir}/specifications/test-unit-%{test_unit_ver}.gemspec
1056 %{_mandir}/man1/testrb%{ruby_suffix}.1*
1059 %defattr(644,root,root,755)
1060 %dir %{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}
1061 %{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/benchmark
1062 %{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/evaluation
1063 %{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/lib
1064 %{gem_dir}/specifications/did_you_mean-%{did_you_mean_ver}.gemspec
1067 %defattr(644,root,root,755)
1068 %dir %{gem_dir}/gems/net-telnet-%{net_telnet_ver}
1069 %{gem_dir}/gems/net-telnet-%{net_telnet_ver}/lib
1070 %{gem_dir}/specifications/net-telnet-%{net_telnet_ver}.gemspec
1073 %defattr(644,root,root,755)
1074 %{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}
1075 %dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}
1076 %dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
1077 %attr(755,root,root) %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal.so
1078 %{ruby_libdir}/bigdecimal
1079 %{gem_dir}/specifications/bigdecimal-%{bigdecimal_ver}.gemspec
1082 %defattr(644,root,root,755)
1083 %{gem_dir}/gems/io-console-%{io_console_ver}
1084 %dir %{gem_libdir}/io-console-%{io_console_ver}
1085 %dir %{gem_libdir}/io-console-%{io_console_ver}/lib
1086 %dir %{gem_libdir}/io-console-%{io_console_ver}/lib/io
1087 %attr(755,root,root) %{gem_libdir}/io-console-%{io_console_ver}/lib/io/console.so
1088 %{gem_dir}/specifications/io-console-%{io_console_ver}.gemspec
1091 %defattr(644,root,root,755)
1092 %{ruby_libdir}/psych.rb
1093 %attr(755,root,root) %{ruby_archdir}/psych.so
1094 %{gem_dir}/gems/psych-%{psych_ver}
1095 %{ruby_libdir}/psych
1096 %dir %{gem_libdir}/psych-%{psych_ver}
1097 %dir %{gem_libdir}/psych-%{psych_ver}/lib
1098 %attr(755,root,root) %{gem_libdir}/psych-%{psych_ver}/lib/psych.so
1099 %{gem_dir}/specifications/psych-%{psych_ver}.gemspec
1102 %defattr(644,root,root,755)
1103 %{gem_dir}/gems/xmlrpc-%{xmlrpc_ver}
1104 %{gem_dir}/specifications/xmlrpc-%{xmlrpc_ver}.gemspec
1107 %defattr(644,root,root,755)
1108 %attr(755,root,root) %{_bindir}/erb%{ruby_suffix}
1110 %{ruby_libdir}/digest
1112 %{ruby_libdir}/fiddle
1114 %{ruby_libdir}/matrix
1116 %{ruby_libdir}/openssl
1117 %{ruby_libdir}/optparse
1119 %{ruby_libdir}/rbconfig
1120 %{ruby_libdir}/rexml
1121 %{ruby_libdir}/rinda
1122 %{ruby_libdir}/ripper
1124 %{ruby_libdir}/shell
1125 %{ruby_libdir}/syslog
1128 %{ruby_libdir}/webrick
1131 %{ruby_libdir}/English.rb
1132 %{ruby_libdir}/abbrev.rb
1133 %{ruby_libdir}/base64.rb
1134 %{ruby_libdir}/benchmark.rb
1135 %{ruby_libdir}/cgi.rb
1136 %{ruby_libdir}/cmath.rb
1137 %{ruby_libdir}/csv.rb
1138 %{ruby_libdir}/date.rb
1139 %{ruby_libdir}/debug.rb
1140 %{ruby_libdir}/delegate.rb
1141 %{ruby_libdir}/digest.rb
1142 %{ruby_libdir}/drb.rb
1143 %{ruby_libdir}/e2mmap.rb
1144 %{ruby_libdir}/erb.rb
1145 %{ruby_libdir}/expect.rb
1146 %{ruby_libdir}/fiddle.rb
1147 %{ruby_libdir}/fileutils.rb
1148 %{ruby_libdir}/find.rb
1149 %{ruby_libdir}/forwardable.rb
1150 %dir %{ruby_libdir}/forwardable
1151 %{ruby_libdir}/forwardable/impl.rb
1152 %{ruby_libdir}/getoptlong.rb
1153 %{ruby_libdir}/ipaddr.rb
1154 %{ruby_libdir}/json.rb
1155 %{ruby_libdir}/kconv.rb
1156 %{ruby_libdir}/logger.rb
1157 %{ruby_libdir}/mathn.rb
1158 %{ruby_libdir}/matrix.rb
1159 %{ruby_libdir}/monitor.rb
1160 %{ruby_libdir}/mutex_m.rb
1161 %{ruby_libdir}/observer.rb
1162 %{ruby_libdir}/open-uri.rb
1163 %{ruby_libdir}/open3.rb
1164 %{ruby_libdir}/openssl.rb
1165 %{ruby_libdir}/optionparser.rb
1166 %{ruby_libdir}/optparse.rb
1167 %{ruby_libdir}/ostruct.rb
1168 %{ruby_libdir}/pathname.rb
1169 %{ruby_libdir}/pp.rb
1170 %{ruby_libdir}/prettyprint.rb
1171 %{ruby_libdir}/prime.rb
1172 %{ruby_libdir}/profile.rb
1173 %{ruby_libdir}/profiler.rb
1174 %{ruby_libdir}/pstore.rb
1175 %{ruby_libdir}/rdoc.rb
1176 %{ruby_libdir}/resolv-replace.rb
1177 %{ruby_libdir}/resolv.rb
1178 %{ruby_libdir}/ripper.rb
1179 %{ruby_libdir}/rss.rb
1180 %{ruby_libdir}/scanf.rb
1181 %{ruby_libdir}/securerandom.rb
1182 %{ruby_libdir}/set.rb
1183 %{ruby_libdir}/shell.rb
1184 %{ruby_libdir}/shellwords.rb
1185 %{ruby_libdir}/singleton.rb
1186 %{ruby_libdir}/socket.rb
1187 %{ruby_libdir}/sync.rb
1188 %{ruby_libdir}/tempfile.rb
1189 %{ruby_libdir}/thwait.rb
1190 %{ruby_libdir}/time.rb
1191 %{ruby_libdir}/timeout.rb
1192 %{ruby_libdir}/tmpdir.rb
1193 %{ruby_libdir}/tracer.rb
1194 %{ruby_libdir}/tsort.rb
1195 %{ruby_libdir}/un.rb
1196 %{ruby_libdir}/unicode_normalize
1197 %{ruby_libdir}/unicode_normalize.rb
1198 %{ruby_libdir}/uri.rb
1199 %{ruby_libdir}/weakref.rb
1200 %{ruby_libdir}/webrick.rb
1201 %{ruby_libdir}/yaml.rb
1203 %if %{with batteries}
1204 %exclude %{ruby_libdir}/rubygems.rb
1205 %exclude %{ruby_libdir}/ubygems.rb
1206 %exclude %{ruby_libdir}/rbconfig/datadir.rb
1208 %exclude %{ruby_libdir}/irb.rb
1209 %exclude %{ruby_libdir}/mkmf.rb
1211 %{ruby_archdir}/rbconfig.rb
1212 %attr(755,root,root) %{ruby_archdir}/bigdecimal.so
1213 %attr(755,root,root) %{ruby_archdir}/continuation.so
1214 %attr(755,root,root) %{ruby_archdir}/coverage.so
1215 %attr(755,root,root) %{ruby_archdir}/date_core.so
1216 %attr(755,root,root) %{ruby_archdir}/dbm.so
1217 %attr(755,root,root) %{ruby_archdir}/digest.so
1218 %attr(755,root,root) %{ruby_archdir}/etc.so
1219 %attr(755,root,root) %{ruby_archdir}/fcntl.so
1220 %attr(755,root,root) %{ruby_archdir}/fiber.so
1221 %attr(755,root,root) %{ruby_archdir}/fiddle.so
1222 %attr(755,root,root) %{ruby_archdir}/gdbm.so
1223 %attr(755,root,root) %{ruby_archdir}/nkf.so
1224 %attr(755,root,root) %{ruby_archdir}/objspace.so
1225 %attr(755,root,root) %{ruby_archdir}/openssl.so
1226 %attr(755,root,root) %{ruby_archdir}/pathname.so
1227 %attr(755,root,root) %{ruby_archdir}/pty.so
1228 %attr(755,root,root) %{ruby_archdir}/readline.so
1229 %attr(755,root,root) %{ruby_archdir}/ripper.so
1230 %attr(755,root,root) %{ruby_archdir}/sdbm.so
1231 %attr(755,root,root) %{ruby_archdir}/socket.so
1232 %attr(755,root,root) %{ruby_archdir}/stringio.so
1233 %attr(755,root,root) %{ruby_archdir}/strscan.so
1234 %attr(755,root,root) %{ruby_archdir}/syslog.so
1235 %attr(755,root,root) %{ruby_archdir}/zlib.so
1237 %dir %{ruby_archdir}/cgi
1238 %attr(755,root,root) %{ruby_archdir}/cgi/escape.so
1239 %dir %{ruby_archdir}/digest
1240 %attr(755,root,root) %{ruby_archdir}/digest/*.so
1241 %dir %{ruby_archdir}/enc
1242 %attr(755,root,root) %{ruby_archdir}/enc/*.so
1243 %dir %{ruby_archdir}/enc/trans
1244 %attr(755,root,root) %{ruby_archdir}/enc/trans/*.so
1245 %dir %{ruby_archdir}/io
1246 %attr(755,root,root) %{ruby_archdir}/io/*.so
1247 %dir %{ruby_archdir}/mathn
1248 %attr(755,root,root) %{ruby_archdir}/mathn/*.so
1249 %dir %{ruby_archdir}/racc
1250 %attr(755,root,root) %{ruby_archdir}/racc/*.so
1251 %dir %{ruby_archdir}/rbconfig
1252 %attr(755,root,root) %{ruby_archdir}/rbconfig/sizeof.so
1254 %dir %{_libdir}/gems
1255 %dir %{_libdir}/gems/%{oname}
1258 %dir %{gem_dir}/gems
1259 %dir %{gem_dir}/specifications
1260 %dir %{gem_dir}/specifications/default
1261 %{gem_dir}/specifications/default/openssl-%{openssl_ver}.gemspec
1263 %{_mandir}/man1/erb%{ruby_suffix}.1*
1264 %{_mandir}/man1/ri%{ruby_suffix}.1*
1268 %defattr(644,root,root,755)
1269 %doc ruby_%{doc_version}_stdlib
1270 %doc ruby_%{doc_version}_core
1273 %defattr(644,root,root,755)
1276 %{ruby_ridir}/Abbrev
1277 %{ruby_ridir}/Addrinfo
1278 %{ruby_ridir}/ArgumentError
1280 %{ruby_ridir}/Base64
1281 %{ruby_ridir}/BasicObject
1282 %{ruby_ridir}/BasicSocket
1283 %{ruby_ridir}/Benchmark
1284 %{ruby_ridir}/BigDecimal
1285 %{ruby_ridir}/BigMath
1286 %{ruby_ridir}/Binding
1291 %{ruby_ridir}/ClosedQueueError
1292 %{ruby_ridir}/Comparable
1293 %{ruby_ridir}/Complex
1294 %{ruby_ridir}/ConditionVariable
1295 %{ruby_ridir}/Continuation
1296 %{ruby_ridir}/Coverage
1298 %{ruby_ridir}/DBMError
1299 %{ruby_ridir}/DEBUGGER__
1303 %{ruby_ridir}/DateTime
1304 %{ruby_ridir}/Delegator
1305 %{ruby_ridir}/Digest
1308 %{ruby_ridir}/EOFError
1310 %{ruby_ridir}/EXCEPTION_TYPE
1311 %{ruby_ridir}/Encoding
1312 %{ruby_ridir}/EncodingError
1313 %{ruby_ridir}/English
1314 %{ruby_ridir}/Enumerable
1315 %{ruby_ridir}/Enumerator
1318 %{ruby_ridir}/Exception
1319 %{ruby_ridir}/Exception2MessageMapper
1320 %{ruby_ridir}/FalseClass
1323 %{ruby_ridir}/FiberError
1324 %{ruby_ridir}/Fiddle
1326 %{ruby_ridir}/FileTest
1327 %{ruby_ridir}/FileUtils
1330 %{ruby_ridir}/FloatDomainError
1331 %{ruby_ridir}/Forwardable
1334 %{ruby_ridir}/GDBMError
1335 %{ruby_ridir}/GDBMFatalError
1337 %{ruby_ridir}/GetoptLong
1338 %{ruby_ridir}/HTTPMovedTemporarily
1339 %{ruby_ridir}/HTTPMultipleChoice
1340 %{ruby_ridir}/HTTPRequestURITooLarge
1343 %{ruby_ridir}/IOError
1344 %{ruby_ridir}/IPAddr
1345 %{ruby_ridir}/IPSocket
1347 %{ruby_ridir}/IndexError
1348 %{ruby_ridir}/Integer
1349 %{ruby_ridir}/Interrupt
1351 %{ruby_ridir}/Jacobian
1353 %{ruby_ridir}/Kernel
1354 %{ruby_ridir}/KeyError
1355 %{ruby_ridir}/LUSolve
1356 %{ruby_ridir}/LoadError
1357 %{ruby_ridir}/LocalJumpError
1358 %{ruby_ridir}/Logger
1359 %{ruby_ridir}/MakeMakefile
1360 %{ruby_ridir}/Marshal
1361 %{ruby_ridir}/MatchData
1363 %{ruby_ridir}/Matrix
1364 %{ruby_ridir}/Method
1365 %{ruby_ridir}/Module
1366 %{ruby_ridir}/Monitor
1367 %{ruby_ridir}/MonitorMixin
1368 %{ruby_ridir}/Mutex_m
1370 %{ruby_ridir}/NameError
1372 %{ruby_ridir}/Newton
1373 %{ruby_ridir}/NilClass
1374 %{ruby_ridir}/NoMemoryError
1375 %{ruby_ridir}/NoMethodError
1376 %{ruby_ridir}/NotImplementedError
1377 %{ruby_ridir}/Numeric
1378 %{ruby_ridir}/OLEProperty
1379 %{ruby_ridir}/Object
1380 %{ruby_ridir}/ObjectSpace
1381 %{ruby_ridir}/Observable
1383 %{ruby_ridir}/OpenSSL
1384 %{ruby_ridir}/OpenStruct
1385 %{ruby_ridir}/OpenURI
1386 %{ruby_ridir}/OptionParser
1388 %{ruby_ridir}/PStore
1390 %{ruby_ridir}/Pathname
1391 %{ruby_ridir}/PrettyPrint
1394 %{ruby_ridir}/Process
1395 %{ruby_ridir}/Profiler__
1399 %{ruby_ridir}/RDocTask
1404 %{ruby_ridir}/Random
1406 %{ruby_ridir}/RangeError
1407 %{ruby_ridir}/Rational
1408 %{ruby_ridir}/RbConfig
1409 %{ruby_ridir}/Readline
1410 %{ruby_ridir}/Regexp
1411 %{ruby_ridir}/RegexpError
1412 %{ruby_ridir}/Resolv
1414 %{ruby_ridir}/Ripper
1415 %{ruby_ridir}/RubyLex
1416 %{ruby_ridir}/RubyToken
1417 %{ruby_ridir}/RubyVM
1418 %{ruby_ridir}/RuntimeError
1420 %{ruby_ridir}/SDBMError
1421 %{ruby_ridir}/SOCKSSocket
1423 %{ruby_ridir}/ScriptError
1424 %{ruby_ridir}/SecureRandom
1425 %{ruby_ridir}/SecurityError
1428 %{ruby_ridir}/Shellwords
1429 %{ruby_ridir}/Signal
1430 %{ruby_ridir}/SignalException
1431 %{ruby_ridir}/SimpleDelegator
1432 %{ruby_ridir}/SingleForwardable
1433 %{ruby_ridir}/Singleton
1434 %{ruby_ridir}/SizedQueue
1435 %{ruby_ridir}/Socket
1436 %{ruby_ridir}/SocketError
1437 %{ruby_ridir}/SortedSet
1438 %{ruby_ridir}/StandardError
1439 %{ruby_ridir}/StopIteration
1440 %{ruby_ridir}/String
1441 %{ruby_ridir}/StringIO
1442 %{ruby_ridir}/StringScanner
1443 %{ruby_ridir}/Struct
1444 %{ruby_ridir}/Symbol
1446 %{ruby_ridir}/Sync_m
1447 %{ruby_ridir}/Synchronizer
1448 %{ruby_ridir}/Synchronizer_m
1449 %{ruby_ridir}/SyntaxError
1450 %{ruby_ridir}/Syslog
1451 %{ruby_ridir}/SystemCallError
1452 %{ruby_ridir}/SystemExit
1453 %{ruby_ridir}/SystemStackError
1454 %{ruby_ridir}/TCPServer
1455 %{ruby_ridir}/TCPSocket
1457 %{ruby_ridir}/TempIO
1458 %{ruby_ridir}/Tempfile
1460 %{ruby_ridir}/ThWait
1461 %{ruby_ridir}/Thread
1462 %{ruby_ridir}/ThreadError
1463 %{ruby_ridir}/ThreadGroup
1464 %{ruby_ridir}/ThreadsWait
1466 %{ruby_ridir}/Timeout
1467 %{ruby_ridir}/TracePoint
1468 %{ruby_ridir}/Tracer
1469 %{ruby_ridir}/TrueClass
1470 %{ruby_ridir}/TypeError
1471 %{ruby_ridir}/UDPSocket
1472 %{ruby_ridir}/UNIXServer
1473 %{ruby_ridir}/UNIXSocket
1475 %{ruby_ridir}/UnboundMethod
1476 %{ruby_ridir}/UncaughtThrowError
1477 %{ruby_ridir}/UnicodeNormalize
1478 %{ruby_ridir}/Vector
1479 %{ruby_ridir}/WEBrick
1480 %{ruby_ridir}/WIN32OLE
1481 %{ruby_ridir}/WIN32OLERuntimeError
1482 %{ruby_ridir}/WIN32OLE_EVENT
1483 %{ruby_ridir}/WIN32OLE_METHOD
1484 %{ruby_ridir}/WIN32OLE_PARAM
1485 %{ruby_ridir}/WIN32OLE_RECORD
1486 %{ruby_ridir}/WIN32OLE_TYPE
1487 %{ruby_ridir}/WIN32OLE_TYPELIB
1488 %{ruby_ridir}/WIN32OLE_VARIABLE
1489 %{ruby_ridir}/WIN32OLE_VARIANT
1490 %{ruby_ridir}/Warning
1491 %{ruby_ridir}/WeakRef
1493 %{ruby_ridir}/XMLEncoding_ja
1496 %{ruby_ridir}/ZeroDivisionError
1500 %{ruby_ridir}/syntax
1501 %{ruby_ridir}/unknown
1502 %{ruby_ridir}/page-ChangeLog*.ri
1503 %{ruby_ridir}/page-NEWS*.ri
1504 %{ruby_ridir}/page-README_md.ri
1505 %{ruby_ridir}/page-*_rdoc.ri
1509 %defattr(644,root,root,755)
1510 %{_examplesdir}/%{oname}-%{pkg_version}