]> git.pld-linux.org Git - packages/ruby.git/blame - ruby.spec
- completed packaging
[packages/ruby.git] / ruby.spec
CommitLineData
198b2d1a 1# TODO:
198b2d1a
JR
2# - include ext/ in docs
3# - replace ri with fastri
97b7914a 4# - patch ri to search multiple indexes (one per package), so RPMs can install ri docs
2798ed3c 5# - gemify irb (?)
198b2d1a 6#
2acc5f17 7# Conditional build:
bc991d5a 8%bcond_without doc # skip (time-consuming) docs generating; intended for speed up test builds
05f75f09 9%bcond_without batteries # Don't include rubygems, json, rake, minitest
9c41e51a 10%bcond_without default_ruby # use this Ruby as default system Ruby
92ff5331 11%bcond_with bootstrap # build bootstrap version
69ccc084 12%bcond_with tests # build without tests
fa311386 13
d2dd9b6d 14%define rel 1
2798ed3c 15%define ruby_version 2.6
16%define patchlevel 5
505dcb97 17%define pkg_version %{ruby_version}.%{patchlevel}
99934935 18%define ruby_suffix %{!?with_default_ruby:%{ruby_version}}
2798ed3c 19%define doc_version 2_6_5
9c41e51a 20%define oname ruby
6e2f9b3c 21Summary: Ruby - interpreted scripting language
3c3949cf
ER
22Summary(ja.UTF-8): オブジェクト指向言語Rubyインタプリタ
23Summary(pl.UTF-8): Ruby - interpretowany język skryptowy
24Summary(pt_BR.UTF-8): Linguagem de script orientada a objeto
25Summary(zh_CN.UTF-8): ruby - 一种快速高效的面向对象脚本编程语言
9c41e51a 26Name: ruby%{ruby_suffix}
7cb22c75 27Version: %{pkg_version}
116a558f 28Release: %{rel}
01204e8f 29Epoch: 1
3112d6a6
ER
30# Public Domain for example for: include/ruby/st.h, strftime.c, missing/*, ...
31# MIT and CCO: ccan/*
32# zlib: ext/digest/md5/md5.*, ext/nkf/nkf-utf8/nkf.c
33# UCD: some of enc/trans/**/*.src
34License: (Ruby or BSD) and Public Domain and MIT and CC0 and zlib and UCD
6eb17ef6 35Group: Development/Languages
14b99482 36# https://www.ruby-lang.org/en/downloads/
a7469680 37Source0: https://cache.ruby-lang.org/pub/ruby/%{ruby_version}/%{oname}-%{pkg_version}.tar.xz
2798ed3c 38# Source0-md5: b8a4e2bdbb76485c3d6690e57be67750
9c41e51a 39Source2: http://www.ruby-doc.org/downloads/%{oname}_%{doc_version}_stdlib_rdocs.tgz
2798ed3c 40# Source2-md5: bd93bce0a482dada63ac238f2e4596cf
9c41e51a 41Source3: http://www.ruby-doc.org/downloads/%{oname}_%{doc_version}_core_rdocs.tgz
2798ed3c 42# Source3-md5: 86322c0f335e8ecc9008f740807362dd
28a41f4c
JR
43Source50: http://www.unicode.org/Public/9.0.0/ucd/CaseFolding.txt
44# Source50-md5: e3fbf2f626f10070000fe66f3a2ff5ef
45Source51: http://www.unicode.org/Public/9.0.0/ucd/CompositionExclusions.txt
46# Source51-md5: 263381d7b4b5e2d52a91e1bbbd4722d4
47Source52: http://www.unicode.org/Public/9.0.0/ucd/NormalizationTest.txt
48# Source52-md5: aacb8a8acfc449d09136fe39f3f97cf1
49Source53: http://www.unicode.org/Public/9.0.0/ucd/SpecialCasing.txt
50# Source53-md5: fea30f45a2f81ffa474fd984d297e2ea
51Source54: http://www.unicode.org/Public/9.0.0/ucd/UnicodeData.txt
52# Source54-md5: dde25b1cf9bbb4ba1140ac12e4128b0b
af4f9d38 53Source4: rdoc.1
af4f9d38 54Source5: testrb.1
a6d548c5 55Source6: operating_system.rb
360c41c0 56Patch2: fix-bison-invocation.patch
313c55d4
ER
57Patch3: mkmf-verbose.patch
58Patch4: strip-ccache.patch
1c3d4237 59Patch5: ruby-version.patch
60Patch6: duplicated-paths.patch
7cb22c75 61# obsolete?
313c55d4
ER
62Patch8: rubygems-2.0.0-binary-extensions.patch
63Patch9: custom-rubygems-location.patch
a319cc02 64Patch12: archlibdir.patch
7c36cd5d 65URL: http://www.ruby-lang.org/
7cb22c75 66BuildRequires: autoconf >= 2.67
53c95475 67BuildRequires: automake
f2e66748 68BuildRequires: bison >= 1.875
f0eb2dd9 69BuildRequires: db-devel
e9f2c6fe 70BuildRequires: gdbm-devel >= 1.8.3
7cb22c75 71BuildRequires: gmp-devel
9ae7df75 72BuildRequires: libffi-devel
1968db6d 73BuildRequires: ncurses-devel
7cb22c75 74BuildRequires: openssl-devel >= 0.9.6
74c8af09 75BuildRequires: pkgconfig
933aeb0e 76BuildRequires: readline-devel >= 4.2
d25d71f0 77BuildRequires: rpm-build >= 5.4.10-49
6f1b01e4
JB
78# which version is minimum now? 1.8.7 is not enough, fails with:
79# ./tool/generic_erb.rb:31: syntax error, unexpected ':', expecting ')'
fbf8028b 80# ...O.popen("tput smso", "r", err: IO::NULL, &:read) rescue nil)
6f1b01e4 81BuildRequires: ruby >= 1:1.9
7911cce0 82BuildRequires: sed >= 4.0
7cb22c75 83BuildRequires: systemtap-sdt-devel
14b99482
ER
84BuildRequires: tar >= 1:1.22
85BuildRequires: xz
92ff5331 86BuildRequires: yaml-devel
7cb22c75 87BuildRequires: zlib-devel
14b99482
ER
88%if %{without bootstrap}
89# bootstrap needs ruby binary, erb module
90BuildRequires: rpm-rubyprov
14b99482
ER
91BuildRequires: ruby-modules
92%endif
f0eb2dd9 93Requires(post,postun): /sbin/ldconfig
ee1edb11 94Obsoletes: ruby-REXML <= 2.4.0-2
bb5582fa 95Obsoletes: ruby-doc < 1.8.4
ee1edb11 96Obsoletes: ruby-fastthread <= 0.6.3
9556e036 97Conflicts: rpm-build-macros < 1.695
a2963aa1
JR
98Conflicts: ruby-activesupport < 2.3.11-2
99Conflicts: ruby-activesupport2 < 2.3.11-2
584b8bcb 100BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
4ab119cd 101
2798ed3c 102# hack: skip rubygem(ipaddr)
103%define _noautoreq ipaddr
104
b417ade5 105# separate modules
2798ed3c 106%define bigdecimal_ver 1.4.1
107%define bundler_ver 1.17.2
108%define did_you_mean_ver 1.3.0
109%define io_console_ver 0.4.7
110%define irb_ver 1.0.0
111%define json_ver 2.1.0
112%define minitest_ver 5.11.3
113%define net_telnet_ver 0.2.0
2798ed3c 114%define power_assert_ver 1.1.3
115%define psych_ver 3.1.0
116%define rake_ver 12.3.2
117%define rdoc_ver 6.1.2
118%define rubygems_ver 3.0.3
119%define test_unit_ver 3.2.9
120%define xmlrpc_ver 0.3.0
b417ade5
JB
121# default modules, separated
122%define irb_ver 1.0.0
123# default modules packaged in main modules
124%define cmath_ver 1.0.0
125%define csv_ver 3.0.9
126%define date_ver 2.0.0
127%define dbm_ver 1.0.0
128%define e2mmap_ver 0.1.0
129%define etc_ver 1.0.1
130%define fcntl_ver 1.0.0
131%define fiddle_ver 1.0.0
132%define fileutils_ver 1.1.0
133%define forwardable_ver 1.2.0
134%define gdbm_ver 2.0.0
135%define ipaddr_ver 1.2.2
136%define logger_ver 1.3.0
137%define matrix_ver 0.1.0
138%define mutex_m_ver 0.1.0
139%define ostruct_ver 0.1.0
140%define openssl_ver 2.1.2
141%define prime_ver 0.1.0
142%define rexml_ver 3.1.9
143%define rss_ver 0.2.7
144%define scanf_ver 1.0.0
145%define sdbm_ver 1.0.0
146%define shell_ver 0.7
147%define stringio_ver 0.0.2
148%define strscan_ver 1.0.0
149%define sync_ver 0.5.0
150%define thwait_ver 0.1.0
151%define tracer_ver 0.1.0
152%define webrick_ver 1.4.2
153%define zlib_ver 1.0.0
505dcb97 154
df9a7ee8 155%define ruby_ridir %{_datadir}/ri/system
a6d548c5
ER
156%define gem_dir %{_datadir}/gems
157%define gem_libdir %{_libdir}/gems/%{oname}
d78ec589 158
f493239c
ER
159# location where rubygems is installed
160%define rubygems_dir %{ruby_libdir}
d78ec589 161
9c41e51a 162%define ruby_archdir %{_libdir}/%{oname}/%{ruby_version}
45f22c60 163%define ruby_libarchdir %{_libdir}/%{oname}/%{ruby_version}
9c41e51a 164%define ruby_libdir %{_datadir}/%{oname}/%{ruby_version}
d78ec589
ER
165
166# This is the local lib/arch and should not be used for packaging.
5c3d5a0e 167%define sitedir site_ruby
9c41e51a 168%define ruby_sitearchdir %{_prefix}/local/%{_lib}/%{oname}/%{sitedir}/%{ruby_version}
08c2f6e5 169%define ruby_sitelibdir %{_prefix}/local/share/%{oname}/%{sitedir}
d78ec589
ER
170
171# This is the general location for libs/archs compatible with all
172# or most of the Ruby versions available in the PLD repositories.
5c3d5a0e 173%define vendordir vendor_ruby
9c41e51a 174%define ruby_vendorarchdir %{_libdir}/%{oname}/%{vendordir}/%{ruby_version}
08c2f6e5 175%define ruby_vendorlibdir %{_datadir}/%{oname}/%{vendordir}
d78ec589 176
8ea447c1 177# bleh, some nasty (gcc or ruby) bug still not fixed
cc2dcaa2 178# (SEGV or "unexpected break" on miniruby run during build)
505dcb97 179%define specflags_ia64 -O0
8ea447c1 180
88546731 181# ruby needs frame pointers for correct exception handling
505dcb97 182%define specflags_ia32 -fno-omit-frame-pointer
88546731 183
4ab119cd 184%description
185Ruby is the interpreted scripting language for quick and easy
186object-oriented programming. It has many features to process text
187files and to do system management tasks (as in Perl). It is simple,
188straight-forward, extensible, and portable.
189
9fd96af7 190This package contains only shared library and ruby interpreter. To get
191full-functional ruby environment install ruby-modules package.
192
a0a47c48
JR
193%description -l ja.UTF-8
194Rubyはシンプルかつ強力なオブジェクト指向スクリプト言語です.Rubyは最初
195から純粋なオブジェクト指向言語として設計されていますから,オブジェクト
15467dc7 196指向プログラミングを手軽に行う事が出来ます.もちろん通常の手続き型のプ ログラミングも可能です.
7c36cd5d 197
a0a47c48
JR
198%description -l pl.UTF-8
199Ruby to interpretowany język skryptowy, w sam raz dla łatwego i
200szybkiego pisania zorientowanych obiektowo programów. Ma wiele funkcji
201ułatwiających przetwarzanie plików tekstowych i wykonywanie prac
202związanych z zarządzaniem systemu (podobnie jak Perl). Jest prosty,
203rozszerzalny i przenośny.
6e2f9b3c 204
a0a47c48
JR
205Ten pakiet zawiera tylko bibliotekę dzieloną i interpreter ruby.
206Zainstaluj pakiet ruby-modules, jeżeli potrzebujesz w pełni
207funkcjonalnego środowiska ruby.
9fd96af7 208
a0a47c48
JR
209%description -l pt_BR.UTF-8
210Ruby é uma linguagem de script interpretada de programação orientada a
211objeto. Possui diversas características para processamento de texto. É
212simples, extensível e direta.
7c36cd5d 213
9fd96af7 214%package modules
215Summary: Ruby standard modules and utilities
3c3949cf 216Summary(pl.UTF-8): Standardowe moduły i narzędzia dla języka Ruby
9fd96af7 217Group: Development/Languages
218Requires: %{name} = %{epoch}:%{version}-%{release}
b688e9a5 219Suggests: ruby-rubygems
05f75f09
ER
220# ruby-modules deprecated, rpm5 generates ruby(abi) itself
221Provides: ruby-modules(ver) = %{ruby_version}
29a18971
ER
222# FIXME later
223Provides: ruby(abi) = %{ruby_version}
c8ae95d0 224%requires_ge_to openssl openssl-devel
9fd96af7 225
226%description modules
227Ruby standard modules and utilities:
228- erb - Tiny eRuby
7911cce0 229- testrb - automatic runner for Test::Unit of Ruby
9fd96af7 230
a0a47c48
JR
231%description modules -l pl.UTF-8
232Standardowe moduły i narzędzia Ruby:
233- erb - mały eRuby
7911cce0 234- testrb - automatyczny runner dla Ruby Test::Unit
9fd96af7 235
e14a2f74 236%package devel
e14a2f74 237Summary: Ruby development libraries
3c3949cf 238Summary(pl.UTF-8): Biblioteki programistyczne interpretera języka Ruby
9434194f 239Group: Development/Languages
9fd96af7 240Requires: %{name}-modules = %{epoch}:%{version}-%{release}
92f362b7
ER
241Requires: gcc
242Requires: glibc-devel
68055c68 243Requires: gmp-devel
b5465d0c 244Requires: pkgconfig
a48b0cfb 245Obsoletes: ruby-static < 1:2.4
e14a2f74 246
247%description devel
9434194f
JB
248Ruby development libraries.
249
a0a47c48
JR
250%description devel -l pl.UTF-8
251Biblioteki programistyczne interpretera języka Ruby.
e14a2f74 252
754b419a 253%package doc
9fd96af7 254Summary: Ruby HTML documentation
3c3949cf 255Summary(pl.UTF-8): Dokumentacja HTML do Ruby
9fd96af7 256Group: Documentation
00595cdb
ER
257%if "%{_rpmversion}" >= "5"
258BuildArch: noarch
259%endif
9fd96af7 260
261%description doc
262Ruby HTML documentation: FAQ, guide, core and standard library.
263
a0a47c48 264%description doc -l pl.UTF-8
d99a4382 265Dokumentacja HTML do Ruby: FAQ, przewodnik, dokumentacja dla core i
266stdlib.
69b51dc9 267
9fd96af7 268%package doc-ri
269Summary: Ruby ri documentation
3c3949cf 270Summary(pl.UTF-8): Dokumentacja Ruby w formacie ri
9fd96af7 271Group: Documentation
69b51dc9 272Requires: %{name}-modules = %{epoch}:%{version}-%{release}
00595cdb
ER
273%if "%{_rpmversion}" >= "5"
274BuildArch: noarch
275%endif
9fd96af7 276
277%description doc-ri
278Ruby ri documentation.
279
a0a47c48 280%description doc-ri -l pl.UTF-8
9fd96af7 281Dokumentacja Ruby w formacie ri.
282
283%package examples
284Summary: Ruby examples
3c3949cf 285Summary(pl.UTF-8): Przykłady dla języka Ruby
9fd96af7 286Group: Development/Languages
00595cdb
ER
287%if "%{_rpmversion}" >= "5"
288BuildArch: noarch
289%endif
9fd96af7 290
291%description examples
292Ruby examples.
293
a0a47c48
JR
294%description examples -l pl.UTF-8
295Przykłady programów w języku Ruby.
9fd96af7 296
d8228776 297# IMPORTANT: keep irb, rdoc, rubygems, rake, json as last packages as we reset epoch/version/release
116a558f
ER
298# and %{version},%{release} macros may not be used directly as they take last
299# subpackage value not main package one what you intend to use
63b8d212 300
d8228776
ER
301%package irb
302Summary: The Interactive Ruby
a48b0cfb 303Summary(pl.UTF-8): Interaktywny Ruby
d8228776 304Version: %{irb_ver}
7cb22c75 305Release: %{pkg_version}.%{rel}
d8228776 306Epoch: 0
c659b270 307Group: Development/Languages
7cb22c75 308Requires: %{name}-modules = 1:%{pkg_version}-%{rel}
d8228776
ER
309Provides: irb = %{version}-%{release}
310Provides: ruby(irb) = %{version}-%{release}
311%if "%{_rpmversion}" >= "5"
312BuildArch: noarch
313%endif
314
315%description irb
316The irb is acronym for Interactive Ruby. It evaluates ruby expression
317from the terminal.
318
a48b0cfb
JB
319%description irb -l pl.UTF-8
320Nazwa irb to skrót od Interactive Ruby (interaktywny Ruby). Wyznacza
321wartości wyrażeń języka ruby podane z terminala.
322
2db0575e
ER
323%package rdoc
324Summary: A tool to generate HTML and command-line documentation for Ruby projects
3349e6ba 325Summary(pl.UTF-8): Narzędzie do generowania dokumentacji HTML i linii poleceń dla projektów w Rubym
2db0575e 326Version: %{rdoc_ver}
7cb22c75 327Release: %{pkg_version}.%{rel}
2db0575e 328Epoch: 0
3112d6a6
ER
329# SIL: lib/rdoc/generator/template/darkfish/css/fonts.css
330License: GPLv2 and Ruby and MIT and SIL
2db0575e 331Group: Development/Libraries
1a82b364
JR
332Requires: %{name}-irb >= %{irb_ver}
333Requires: %{name}-json >= %{json_ver}
7cb22c75 334Requires: %{name}-modules = 1:%{pkg_version}-%{rel}
ee1edb11 335Obsoletes: rdoc <= 0.9.0
00595cdb
ER
336%if "%{_rpmversion}" >= "5"
337BuildArch: noarch
338%endif
2db0575e
ER
339
340%description rdoc
341RDoc produces HTML and command-line documentation for Ruby projects.
342RDoc includes the 'rdoc' and 'ri' tools for generating and displaying
343online documentation.
344
3349e6ba
JB
345%description rdoc -l pl.UTF-8
346RDoc tworzy dokumentację HTML i linii poleceń dla projektów w języku
347Ruby. RDoc zawiera narzędzia 'rdoc' i 'ri' do generowania i
348wyświetlania dokumentacji online.
349
44802bd7 350%package rubygems
3349e6ba
JB
351Summary: RubyGems - the Ruby standard for packaging Ruby libraries
352Summary(pl.UTF-8): RubyGems - standard Ruby'ego pakietowania bibliotek
941981c7 353Version: %{rubygems_ver}
7cb22c75 354Release: %{pkg_version}.%{rel}
bd4c2526 355Epoch: 0
941981c7
ER
356License: Ruby or MIT
357Group: Development/Libraries
73a515e6 358Requires: %{name}-bigdecimal = %{bigdecimal_ver}-%{pkg_version}.%{rel}
90070d51 359Requires: %{name}-io-console = %{io_console_ver}-%{pkg_version}.%{rel}
7cb22c75 360Requires: %{name}-modules = 1:%{pkg_version}-%{rel}
73a515e6 361Requires: %{name}-psych = %{psych_ver}-%{pkg_version}.%{rel}
941981c7 362Requires: %{name}-rdoc >= %{rdoc_ver}
92f362b7 363Suggests: %{name}-devel
44802bd7
ER
364Provides: rubygems = %{rubygems_ver}
365%if "%{_rpmversion}" >= "5"
366BuildArch: noarch
367%endif
368
369%description rubygems
370RubyGems is the Ruby standard for publishing and managing third party
371libraries.
372
3349e6ba
JB
373%description rubygems -l pl.UTF-8
374RubyGems to standardowe narzędzie języka Ruby do publikowania i
375zarządzania zewnętrznymi bibliotekami.
376
2798ed3c 377%package bundler
8ff43ce7
JB
378Summary: Library and utilities to manage a Ruby application's gem dependencies
379Summary(pl.UTF-8): Biblioteka i narzędzia do zarządzania zależnościami gem aplikacji w języku Ruby
2798ed3c 380Version: %{bundler_ver}
381Release: %{pkg_version}.%{rel}
382Epoch: 0
383License: MIT
384Group: Development/Languages
385Provides: bundler = %{bundler_ver}
386%if "%{_rpmversion}" >= "5"
387BuildArch: noarch
388%endif
389
390%description bundler
8ff43ce7
JB
391Bundler manages an application's dependencies through its entire life,
392across many machines, systematically and repeatably.
393
394%description bundler -l pl.UTF-8
395Bundler zarządza zależnościami aplikacji przez cały czas jej życia,
396między wiloma maszynami - systematycznie i powtarzalnie.
2798ed3c 397
63b8d212
ER
398%package rake
399Summary: Rake is a Make-like program implemented in Ruby
400Summary(pl.UTF-8): Program typu Make dla języka Ruby
401Version: %{rake_ver}
7cb22c75 402Release: %{pkg_version}.%{rel}
63b8d212
ER
403Epoch: 0
404License: MIT
405Group: Development/Languages
406Provides: rake = %{rake_ver}
2531db89 407Conflicts: ruby-modules < 1:1.9.3.429-2
63b8d212
ER
408%if "%{_rpmversion}" >= "5"
409BuildArch: noarch
410%endif
411
412%description rake
413Rake is a simple Ruby build program with capabilities similar to make.
414
415It has the following features:
416- Rakefiles (rake's version of Makefiles) are completely defined in
417 standard Ruby syntax. No XML files to edit. No quirky Makefile syntax
418 to worry about (is that a tab or a space?)
419- Users can specify tasks with prerequisites.
420- Rake supports rule patterns to synthesize implicit tasks.
421- Rake is lightweight. It can be distributed with other projects as a
422 single file. Projects that depend upon rake do not require that rake
423 be installed on target systems.
424
425%description rake -l pl.UTF-8
426Rake to prosty program do budowania w języku Ruby o możliwościach
427podobnych do make.
428
429Ma następujące cechy:
430- Pliki Rakefile (rake'owa odmiana plików Makefile) są definiowane
431 całkowicie w standardowej składni języka Ruby. Nie trzeba modyfikować
432 plików XML. Nie trzeba martwić się kaprysami składni Makefile (czy to
433 tabulacja czy spacja?).
434- Użytkownicy mogą określać zadania z ich zależnościami.
435- Rake obsługuje wzorce reguł do tworzenia z nich wynikowych zadań.
436- Rake jest lekki. Może być rozpowszechniany z innymi projektami jako
437 pojedynczy plik. Projekty używające rake'a nie wymagają go
438 zainstalowanego na systemach docelowych.
439
7e87bcc1
ER
440%package json
441Summary: JSON library for Ruby
442Summary(pl.UTF-8): Biblioteka JSON dla języka Ruby
443Version: %{json_ver}
7cb22c75 444Release: %{pkg_version}.%{rel}
7e87bcc1 445Epoch: 0
3112d6a6 446# UCD: ext/json/generator/generator.c
a48b0cfb 447License: (Ruby or GPL v2) and UCD
7e87bcc1
ER
448Group: Development/Languages
449Obsoletes: ruby-json-rubyforge
2531db89 450Conflicts: ruby-modules < 1:1.9.3.429-3
7e87bcc1
ER
451
452%description json
453This is a JSON implementation as a Ruby extension in C.
454
455%description json -l pl.UTF-8
456Biblioteka JSON dla języka Ruby.
457
cac72f51 458%package minitest
a48b0cfb
JB
459Summary: Minitest - a complete suite of testing facilities
460Summary(pl.UTF-8): Minitest - kompletny szkielet do testowania
cac72f51
ER
461Version: %{minitest_ver}
462Release: %{pkg_version}.%{rel}
463Epoch: 0
464License: MIT
465Group: Development/Libraries
466%if "%{_rpmversion}" >= "5"
467BuildArch: noarch
468%endif
469
470%description minitest
471minitest/unit is a small and incredibly fast unit testing framework.
472
473minitest/spec is a functionally complete spec engine.
474
475minitest/benchmark is an awesome way to assert the performance of your
476algorithms in a repeatable manner.
477
478minitest/mock by Steven Baker, is a beautifully tiny mock object
479framework.
480
481minitest/pride shows pride in testing and adds coloring to your test
482output.
483
a48b0cfb
JB
484%description minitest -l pl.UTF-8
485minitest/unit to mały i bardzo szybki szkielet testów jednostkowych.
486
487minitest/spec to funkcjonalnie kompletny silnik specyfikacji.
488
489minitest/benchmark to wspaniały sposób zapewnienia wydajności
490algorytmów w powtarzalny sposób.
491
492minitest/mock autorstwa Stevena Bakera to mały szkielet obiektów
493atrap.
494
495minitest/pride ukazuje dumę z testowania i dodaje kolorowanie do
496wyjścia testów.
497
3112d6a6 498%package power_assert
3112d6a6 499Summary: Power Assert for Ruby
a48b0cfb 500Summary(pl.UTF-8): Power Assert dla języka Ruby
3112d6a6
ER
501Version: %{power_assert_ver}
502Release: %{pkg_version}.%{rel}
503Epoch: 0
504License: Ruby or BSD
505Group: Development/Libraries
506%if "%{_rpmversion}" >= "5"
507BuildArch: noarch
508%endif
509
510%description power_assert
ac937700
ER
511Power Assert shows each value of variables and method calls in the
512expression. It is useful for testing, providing which value wasn't
513correct when the condition is not satisfied.
3112d6a6 514
a48b0cfb
JB
515%description power_assert -l pl.UTF-8
516Power Assert pokazuje każdą wartość zmiennych i wywołań metod w
517wyrażeniu. Jest przydatny do testowania, ukazując, która wartość nie
518była poprawna, kiedy warunek nie był spełniony.
519
3112d6a6 520%package test-unit
a48b0cfb
JB
521Summary: An xUnit family unit testing framework for Ruby
522Summary(pl.UTF-8): Szkielet testów z rodziny xUnit dla języka Ruby
3112d6a6
ER
523Version: %{test_unit_ver}
524Release: %{pkg_version}.%{rel}
525Epoch: 0
3112d6a6
ER
526# lib/test/unit/diff.rb is a double license of the Ruby license and PSF license.
527# lib/test-unit.rb is a dual license of the Ruby license and LGPLv2.1 or later.
a48b0cfb 528License: (Ruby or BSD) and (Ruby or BSD or Python) and (Ruby or BSD or LGPL v2+)
50c9bd0e
JB
529Group: Development/Libraries
530Requires: ruby-power_assert = %{power_assert_ver}-%{pkg_version}.%{rel}
3112d6a6
ER
531%if "%{_rpmversion}" >= "5"
532BuildArch: noarch
533%endif
534
535%description test-unit
a48b0cfb
JB
536test-unit (Test::Unit) is unit testing framework for Ruby, based on
537xUnit principles. These were originally designed by Kent Beck, creator
538of extreme programming software development methodology, for
539Smalltalk's SUnit. It allows writing tests, checking results and
540automated testing in Ruby.
541
542%description test-unit -l pl.UTF-8
543test-unit (Test::Unit) to szkielet testów jednostkowych dla języka
544Ruby oparty na zasadach xUnit. Te były pierwotnie zaprojektowane przez
545Kenta Becka, twórcy metodyki tworzenia oprogramowania zwanej
546programowaniem ekstremalnym, dla szkieletu SUnit dla Smalltalka.
547Szkielet pozwala na pisanie testów, sprawdzanie wyników i automatyczne
548testowanie w Rubym.
3112d6a6 549
ac937700
ER
550%package did_you_mean
551Summary: "Did you mean?" experience in Ruby
a48b0cfb 552Summary(pl.UTF-8): Zachowanie "czy miałeś na myśli?" w języku Ruby
ac937700
ER
553Version: %{did_you_mean_ver}
554Release: %{pkg_version}.%{rel}
555Epoch: 0
556License: MIT
557Group: Development/Libraries
558%if "%{_rpmversion}" >= "5"
559BuildArch: noarch
560%endif
561
562%description did_you_mean
a48b0cfb 563"Did you mean?" experience in Ruby: the error message will tell you
ac937700
ER
564the right one when you misspelled something.
565
a48b0cfb
JB
566%description did_you_mean -l pl.UTF-8
567Zachowanie "czy miałeś na myśli" w języku ruby: komunikat błędu
568podpowie właściwą pisownię w przypadku literówki.
569
0ab77745
ER
570%package net-telnet
571Summary: Provides telnet client functionality
a48b0cfb 572Summary(pl.UTF-8): Funkcjonalność klienta usługi telnet
0ab77745
ER
573Version: %{net_telnet_ver}
574Release: %{pkg_version}.%{rel}
575Epoch: 0
576Group: Development/Libraries
577%if "%{_rpmversion}" >= "5"
578BuildArch: noarch
579%endif
580
581%description net-telnet
582Provides telnet client functionality.
583
584This class also has, through delegation, all the methods of a socket
585object (by default, a TCPSocket, but can be set by the Proxy option to
586new()). This provides methods such as close() to end the session and
587sysread() to read data directly from the host, instead of via the
a48b0cfb
JB
588waitfor() mechanism.
589
590%description net-telnet -l pl.UTF-8
591Ten pakiet dostarcza funkcjonalność klienta usługi telnet.
592
593Ta klasa ma, poprzez delegację, wszystkie metody obiektu gniazda
594(domyślnie TCPSocket, ale może być ustawiona przez opcję Proxy dla
595new()). Udostępnia metody takie jak: close() do zakończenia sesji czy
596sysread() do odczytu danych bezpośrednio z hosta zamiast poprzez
597mechanizm waitfor().
0ab77745 598
f6f2f07f 599%package bigdecimal
a48b0cfb
JB
600Summary: BigDecimal - arbitrary-precision floating point decimal arithmetic
601Summary(pl.UTF-8): BigDecimal - dziesiętna arytmetyka zmiennoprzecinkowa o dowolnej dokładności
f6f2f07f
ER
602Version: %{bigdecimal_ver}
603Release: %{pkg_version}.%{rel}
604Epoch: 0
605License: GPL+ or Artistic
606Group: Development/Libraries
f6f2f07f
ER
607
608%description bigdecimal
609Ruby provides built-in support for arbitrary precision integer
610arithmetic. For example:
611
61242**13 -> 1265437718438866624512
613
614BigDecimal provides similar support for very large or very accurate
615floating point numbers. Decimal arithmetic is also useful for general
a48b0cfb
JB
616calculation, because it provides the correct answers people expect -
617whereas normal binary floating point arithmetic often introduces
618subtle errors because of the conversion between base 10 and base 2.
619
620%description bigdecimal -l pl.UTF-8
621Ruby zapewnia wbudowaną obsługę arytmetyki całkowitej dowolnej
622dokładności, np.:
623
62442**13 -> 1265437718438866624512
625
626BigDecimal zapewnia podobną obsługę bardzo dużych lub bardzo
627dokładnych liczb zmiennoprzecinkowych. Arytmetyka dziesiętna jest
628przydatna także do ogólnych obliczeń, ponieważ zapewnia poprawne
629odpowiedzi oczekiwane przez ludzi - podczas gdy normalna binarna
630arytmetyka zmiennoprzecinkowa wprowadza minimalne błędy spowodowane
631zmianą podstawy między 10 a 2.
f6f2f07f
ER
632
633%package io-console
a48b0cfb
JB
634Summary: IO/Console - a simple console utilizing library
635Summary(pl.UTF-8): IO/Console - prosta biblioteka wykorzystująca konsolę
f6f2f07f
ER
636Version: %{io_console_ver}
637Release: %{pkg_version}.%{rel}
638Epoch: 0
639Group: Development/Libraries
f6f2f07f
ER
640
641%description io-console
642IO/Console provides very simple and portable access to console. It
643doesn't provide higher layer features, such like curses and readline.
644
a48b0cfb
JB
645%description io-console -l pl.UTF-8
646IO/Console zapewnia bardzo prosty i przenośny dostęp do konsoli. Nie
647udostępnia funkcji wyższego poziomu, takich jak curses czy readline.
648
162eb983
ER
649%package psych
650Summary: A libyaml wrapper for Ruby
a48b0cfb 651Summary(pl.UTF-8): Obudowanie libyaml dla języka Ruby
162eb983
ER
652Version: %{psych_ver}
653Release: %{pkg_version}.%{rel}
654Epoch: 0
655License: MIT
656Group: Development/Libraries
657
658%description psych
659Psych is a YAML parser and emitter. Psych leverages libyaml for its
660YAML parsing and emitting capabilities. In addition to wrapping
661libyaml, Psych also knows how to serialize and de-serialize most Ruby
662objects to and from the YAML format.
663
a48b0cfb
JB
664%description psych -l pl.UTF-8
665Psych to parser i emiter YAML. Wykorzystuje libyaml do analizy i
666emitowania YAML-a. Poza obudowaniem libyaml, wie także jak
667serializować i deserializować większość obiektów języka Ruby do/z
668formatu YAML.
669
67f26735
JR
670%package xmlrpc
671Summary: A xmlrpc wrapper for Ruby
a48b0cfb 672Summary(pl.UTF-8): Obudowanie xmlrpc dla języka Ruby
67f26735
JR
673Version: %{xmlrpc_ver}
674Release: %{pkg_version}.%{rel}
675Epoch: 0
676License: MIT
677Group: Development/Libraries
678
679%description xmlrpc
680XMLRPC is a lightweight protocol that enables remote procedure calls
a48b0cfb 681over HTTP. It is defined at <http://www.xmlrpc.com/>.
67f26735
JR
682
683XMLRPC allows you to create simple distributed computing solutions
a48b0cfb 684that span computer languages. Its distinctive feature is its
67f26735
JR
685simplicity compared to other approaches like SOAP and CORBA.
686
687The Ruby standard library package 'xmlrpc' enables you to create a
688server that implements remote procedures and a client that calls them.
689Very little code is required to achieve either of these.
690
a48b0cfb
JB
691%description xmlrpc -l pl.UTF-8
692XMLRPC to lekki protokół pozwalający na wywołania zdalnych procedur
693poprzez HTTP. Jest zdefiniowany na <http://www.xmlrpc.com/>.
694
695XMLRPC pozwala na tworzenie prostych, rozproszonych systemów
696komputerowych dla wielu języków. Wyróżniającą cechą jest prostota w
697porównaniu do innych rozwiązań, takich jak SOAP czy CORBA.
698
699Pakiet biblioteki standardowej języka Ruby 'xmlrpc' pozwala na
700stworzenie serwera implementującego procedury zdalne oraz klienta
701wywołującego je. Aby to osiągnąć wystarczy bardzo mało kodu.
702
4ab119cd 703%prep
6f1b01e4 704%setup -q -n %{oname}-%{pkg_version} -a2 -a3
360c41c0 705%patch2 -p1
313c55d4
ER
706%patch3 -p1
707%patch4 -p1
708%patch5 -p1
1c3d4237 709%patch6 -p1
5a5c66dc 710#%patch8 -p1
45f22c60 711%patch9 -p1
a319cc02 712%patch12 -p1
360c41c0 713
0e33fc0c
JR
714install -d enc/unicode/data/9.0.0
715cp -p %{SOURCE50} %{SOURCE51} %{SOURCE52} %{SOURCE53} %{SOURCE54} enc/unicode/data/9.0.0/
716
360c41c0
JR
717# must be regenerated with new bison
718%{__rm} parse.{c,h}
4ab119cd 719
3112d6a6
ER
720# Remove bundled libraries to be sure they are not used.
721%{__rm} -r ext/psych/yaml
722%{__rm} -r ext/fiddle/libffi*
723
f52a91a3
ER
724# Install custom operating_system.rb.
725install -d lib/rubygems/defaults
726cp -p %{SOURCE6} lib/rubygems/defaults
727
b2f04116
JR
728find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
729
730find -type f '(' -name '*.rb' -o -name '*.cgi' -o -name '*.test' \
731 -o -name 'ruby.1' -o -name '*.html' -o -name '*.tcl' ')' \
bb5582fa 732 | xargs %{__sed} -i 's,/usr/local/bin/,%{_bindir}/,'
e7754311 733
6f1b01e4
JB
734%if %{with bootstrap}
735# avoid regeneration, needs iostring module
736touch enc/unicode/9.0.0/*.h
737%endif
738
4ab119cd 739%build
2798ed3c 740rubygems_ver=$(awk '/VERSION =/ && $1 == "VERSION" {print $3}' lib/rubygems.rb | sed 's/\.freeze//g' | xargs)
de9418ad
ER
741if [ $rubygems_ver != %{rubygems_ver} ]; then
742 echo "Set %%define rubygems_ver to $rubygems_ver and re-run."
743 exit 1
744fi
593ae364
ER
745rdoc_ver=$(awk '/VERSION =/ && $1 == "VERSION" {print $3}' lib/rdoc.rb | xargs)
746if [ $rdoc_ver != %{rdoc_ver} ]; then
747 echo "Set %%define rdoc_ver to $rdoc_ver and re-run."
748 exit 1
749fi
de9418ad 750
8ea447c1 751cp -f /usr/share/automake/config.sub .
a5f9b7ff 752
8ea447c1 753%{__autoconf}
ecde9c47 754%configure \
6f1b01e4 755 %{?with_bootstrap:--with-baseruby="%{_bindir}/ruby -I$(pwd)/lib"} \
9c41e51a 756 --program-suffix=%{ruby_suffix} \
a319cc02 757 --with-archlibdir=%{_libdir} \
45f22c60
ER
758 --with-rubygemsdir=%{rubygems_dir} \
759 --with-rubylibprefix=%{ruby_libdir} \
760 --with-rubyarchprefix=%{ruby_archdir} \
761 --with-sitedir=%{ruby_sitelibdir} \
44d1acb8 762 --with-sitearchdir=%{ruby_sitearchdir} \
45f22c60 763 --with-vendordir=%{ruby_vendorlibdir} \
44d1acb8 764 --with-vendorarchdir=%{ruby_vendorarchdir} \
45f22c60
ER
765 --with-rubyhdrdir=%{_includedir}/%{oname}-%{ruby_version} \
766 --with-rubyarchhdrdir=%{_includedir}/%{oname}-%{ruby_version} \
767 --with-sitearchhdrdir='$(sitehdrdir)/$(arch)' \
768 --with-vendorarchhdrdir='$(vendorhdrdir)/$(arch)' \
45f22c60 769 --enable-multiarch \
7cb22c75 770 --enable-shared \
96c2e1a4 771 --disable-install-doc \
cb08a5f5 772 --disable-rpath \
7cb22c75 773 --disable-rubygems \
1a83bc11 774 --with-ruby-version='' \
4ab119cd 775
dbf8f91d 776%{__make} -j1 main \
6f1b01e4
JB
777 COPY="cp -p" \
778 V=1
aa58dbf5 779
d0f5536d 780%if %{with doc}
98757242 781%{__make} -j1 rdoc
d0f5536d 782%endif
53830491 783
c588a52c 784%if %{with tests}
fff139e1
ER
785# unset these, as testsuite does "git commit" somewhere, which points to pld .spec repo. doh
786unset GIT_DIR GIT_WORK_TREE
787
788unset GIT
c588a52c
ER
789DISABLE_TESTS=""
790
791%ifarch armv7l armv7hl armv7hnl
792# test_call_double(DL::TestDL) fails on ARM HardFP
793# http://bugs.ruby-lang.org/issues/6592
794DISABLE_TESTS="-x test_dl2.rb $DISABLE_TESTS"
795%endif
796
797# test_debug(TestRubyOptions) fails due to LoadError reported in debug mode,
798# when abrt.rb cannot be required (seems to be easier way then customizing
799# the test suite).
800touch abrt.rb
801
802# TestSignal#test_hup_me hangs up the test suite.
803# http://bugs.ruby-lang.org/issues/8997
804sed -i '/def test_hup_me/,/end if Process.respond_to/ s/^/#/' test/ruby/test_signal.rb
805
806# Fix "Could not find 'minitest'" error.
807# http://bugs.ruby-lang.org/issues/9259
808sed -i "/^ gem 'minitest', '~> 4.0'/ s/^/#/" lib/rubygems/test_case.rb
809
810# Segmentation fault.
811# https://bugs.ruby-lang.org/issues/9198
812sed -i '/^ def test_machine_stackoverflow/,/^ end/ s/^/#/' test/ruby/test_exception.rb
813
814# Don't test wrap ciphers to prevent "OpenSSL::Cipher::CipherError: wrap mode
815# not allowed" error.
816# https://bugs.ruby-lang.org/issues/10229
817sed -i '/assert(OpenSSL::Cipher::Cipher.new(name).is_a?(OpenSSL::Cipher::Cipher))/i \
818 next if /wrap/ =~ name' test/openssl/test_cipher.rb
819
820# Test is broken due to SSLv3 disabled in Fedora.
821# https://bugs.ruby-lang.org/issues/10046
822sed -i '/def test_ctx_server_session_cb$/,/^ end$/ s/^/#/' test/openssl/test_ssl_session.rb
823
824%{__make} check TESTS="-v $DISABLE_TESTS"
825%endif
826
4ab119cd 827%install
828rm -rf $RPM_BUILD_ROOT
413a1967 829install -d $RPM_BUILD_ROOT{%{ruby_rdocdir},%{ruby_ridir}} \
bf0e52e2 830 $RPM_BUILD_ROOT%{ruby_vendorarchdir} \
f1a7abab 831 $RPM_BUILD_ROOT%{ruby_vendorlibdir}/net \
08c2f6e5 832 $RPM_BUILD_ROOT%{ruby_vendorlibdir}/data \
1968db6d 833
df9a7ee8 834%{__make} install %{?with_doc:install-doc -j1} \
ecde9c47 835 DESTDIR=$RPM_BUILD_ROOT
d041de24 836
c24d5840
ER
837# Version is empty if --with-ruby-version is specified.
838# http://bugs.ruby-lang.org/issues/7807
839sed -i -e 's/Version: \${ruby_version}/Version: %{ruby_version}/' $RPM_BUILD_ROOT%{_pkgconfigdir}/%{oname}-%{ruby_version}.pc
840
c588a52c
ER
841# Kill bundled certificates, as they should be part of ca-certificates.
842for cert in \
3112d6a6 843 AddTrustExternalCARoot.pem \
67f26735
JR
844 DigiCertHighAssuranceEVRootCA.pem \
845 GlobalSignRootCA.pem \
90c8123f 846; do
67f26735 847 %{__rm} $RPM_BUILD_ROOT%{rubygems_dir}/rubygems/ssl_certs/*/$cert
c588a52c
ER
848done
849
7cb22c75
JB
850install -d $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}
851cp -Rf sample/* $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}
9c41e51a
ER
852cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_mandir}/man1/rdoc%{ruby_suffix}.1
853cp -p %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man1/testrb%{ruby_suffix}.1
18e966a7 854
5c3d5a0e 855%{__rm} -rf $RPM_BUILD_ROOT%{_docdir}/%{name}/html
698147c7 856
a6d548c5 857# detect this runtime, "make install" is affected by operating_system.rb what is installed in system!
f144cce6 858gem_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')
a6d548c5
ER
859
860# Move gems root into common directory, out of Ruby directory structure.
861install -d $RPM_BUILD_ROOT%{gem_dir}
7cb22c75 862%{__mv} $RPM_BUILD_ROOT${gem_dir}/{gems,specifications} $RPM_BUILD_ROOT%{gem_dir}
a6d548c5
ER
863
864# Move bundled rubygems to %gem_dir
865# make symlinks for io-console and bigdecimal, which are considered to be part of stdlib by other Gems
866# make symlinks for all packages, so they would work without rubygems
867# NOTE: when making symlinks, do not symlink paths that could be directories,
868# as there may came files from other packages as well. actually, unlikely as
869# the links to got system dir and only ruby may package there (other distro
c24d5840 870# packages should go to vendor dirs)
1083418a 871%if 0
a6d548c5 872install -d $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/lib
7cb22c75 873%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/rake* $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/lib
a6d548c5
ER
874ln -s %{gem_dir}/gems/rake-%{rake_ver}/lib/rake $RPM_BUILD_ROOT%{ruby_libdir}
875ln -s %{gem_dir}/gems/rake-%{rake_ver}/lib/rake.rb $RPM_BUILD_ROOT%{ruby_libdir}
7cb22c75 876%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/rake-%{rake_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
1083418a 877%endif
a6d548c5
ER
878
879install -d $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
7cb22c75 880%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/rdoc* $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
a6d548c5
ER
881ln -s %{gem_dir}/gems/rdoc-%{rdoc_ver}/lib/rdoc $RPM_BUILD_ROOT%{ruby_libdir}
882ln -s %{gem_dir}/gems/rdoc-%{rdoc_ver}/lib/rdoc.rb $RPM_BUILD_ROOT%{ruby_libdir}
7cb22c75 883%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/rdoc-%{rdoc_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
884
885install -d $RPM_BUILD_ROOT%{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib
2798ed3c 886install -d $RPM_BUILD_ROOT%{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal
7cb22c75
JB
887%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/bigdecimal $RPM_BUILD_ROOT%{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib
888%{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal.so $RPM_BUILD_ROOT%{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
2798ed3c 889%{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal/util.so $RPM_BUILD_ROOT%{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal/
7cb22c75 890%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/bigdecimal-%{bigdecimal_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
891ln -s %{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal $RPM_BUILD_ROOT%{ruby_libdir}/bigdecimal
892ln -s %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal.so $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal.so
2798ed3c 893install -d $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal
894ln -s %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal/util.so $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal/util.so
a6d548c5
ER
895
896install -d $RPM_BUILD_ROOT%{gem_dir}/gems/io-console-%{io_console_ver}/lib
897install -d $RPM_BUILD_ROOT%{gem_libdir}/io-console-%{io_console_ver}/lib/io
7cb22c75
JB
898%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/io $RPM_BUILD_ROOT%{gem_dir}/gems/io-console-%{io_console_ver}/lib
899%{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/io/console.so $RPM_BUILD_ROOT%{gem_libdir}/io-console-%{io_console_ver}/lib/io
900%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/io-console-%{io_console_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
901ln -s %{gem_dir}/gems/io-console-%{io_console_ver}/lib/io $RPM_BUILD_ROOT%{ruby_libdir}/io
902ln -s %{gem_libdir}/io-console-%{io_console_ver}/lib/io/console.so $RPM_BUILD_ROOT%{ruby_libarchdir}/io/console.so
903
904install -d $RPM_BUILD_ROOT%{gem_dir}/gems/json-%{json_ver}/lib
905install -d $RPM_BUILD_ROOT%{gem_libdir}/json-%{json_ver}/lib
7cb22c75
JB
906%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/json* $RPM_BUILD_ROOT%{gem_dir}/gems/json-%{json_ver}/lib
907%{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/json $RPM_BUILD_ROOT%{gem_libdir}/json-%{json_ver}/lib
908%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/json-%{json_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
909ln -s %{gem_dir}/gems/json-%{json_ver}/lib/json $RPM_BUILD_ROOT%{ruby_libdir}/json
910ln -s %{gem_dir}/gems/json-%{json_ver}/lib/json.rb $RPM_BUILD_ROOT%{ruby_libdir}/json.rb
911install -d $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
912ln -s %{gem_libdir}/json-%{json_ver}/lib/json/ext/parser.so $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
913ln -s %{gem_libdir}/json-%{json_ver}/lib/json/ext/generator.so $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
914
a6d548c5 915ln -s %{gem_dir}/gems/minitest-%{minitest_ver}/lib/minitest $RPM_BUILD_ROOT%{ruby_libdir}
a6d548c5 916
a6d548c5 917install -d $RPM_BUILD_ROOT%{ruby_libdir}/test
50c9bd0e 918ln -s %{gem_dir}/gems/test-unit-%{test_unit_ver}/lib/test/unit $RPM_BUILD_ROOT%{ruby_libdir}/test
a6d548c5
ER
919
920install -d $RPM_BUILD_ROOT%{gem_dir}/gems/psych-%{psych_ver}/lib
921install -d $RPM_BUILD_ROOT%{gem_libdir}/psych-%{psych_ver}/lib
7cb22c75
JB
922%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/psych* $RPM_BUILD_ROOT%{gem_dir}/gems/psych-%{psych_ver}/lib
923%{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/psych.so $RPM_BUILD_ROOT%{gem_libdir}/psych-%{psych_ver}/lib/
924%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/psych-%{psych_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
925ln -s %{gem_dir}/gems/psych-%{psych_ver}/lib/psych $RPM_BUILD_ROOT%{ruby_libdir}/psych
926ln -s %{gem_dir}/gems/psych-%{psych_ver}/lib/psych.rb $RPM_BUILD_ROOT%{ruby_libdir}/psych.rb
927ln -s %{gem_libdir}/psych-%{psych_ver}/lib/psych.so $RPM_BUILD_ROOT%{ruby_archdir}/psych.so
928
2798ed3c 929install -d $RPM_BUILD_ROOT%{gem_dir}/gems/bundler-%{bundler_ver}/lib
930install -d $RPM_BUILD_ROOT%{gem_libdir}/bundler-%{bundler_ver}/lib
931%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/bundler* $RPM_BUILD_ROOT%{gem_dir}/gems/bundler-%{bundler_ver}/lib
932%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/bundler-%{bundler_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
933ln -s %{gem_dir}/gems/bundler-%{bundler_ver}/lib/bundler $RPM_BUILD_ROOT%{ruby_libdir}/bundler
934ln -s %{gem_dir}/gems/bundler-%{bundler_ver}/lib/bundler.rb $RPM_BUILD_ROOT%{ruby_libdir}/bundler.rb
935
936# replace default irb with its not gemified version
937%{__mv} $RPM_BUILD_ROOT%{gem_dir}/gems/irb-%{irb_ver}/exe/irb $RPM_BUILD_ROOT%{_bindir}/irb%{ruby_suffix}
938
a6d548c5
ER
939# Adjust the gemspec files so that the gems will load properly
940sed -i '/^end$/ i\
941 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/rake-%{rake_ver}.gemspec
942
943sed -i '/^end$/ i\
944 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/rdoc-%{rdoc_ver}.gemspec
945
946sed -i '/^end$/ i\
947 s.require_paths = ["lib"]\
948 s.extensions = ["bigdecimal.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/bigdecimal-%{bigdecimal_ver}.gemspec
949
950sed -i '/^end$/ i\
951 s.require_paths = ["lib"]\
952 s.extensions = ["io/console.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/io-console-%{io_console_ver}.gemspec
953
954sed -i '/^end$/ i\
955 s.require_paths = ["lib"]\
956 s.extensions = ["json/ext/parser.so", "json/ext/generator.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/json-%{json_ver}.gemspec
957
958sed -i '/^end$/ i\
959 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/minitest-%{minitest_ver}.gemspec
960
3112d6a6
ER
961# Push the .gemspecs through the RubyGems to let them write the stub headers.
962# This speeds up loading of libraries and avoids warnings in Spring:
963# https://github.com/rubygems/rubygems/pull/694
964for s in rake-%{rake_ver}.gemspec rdoc-%{rdoc_ver}.gemspec json-%{json_ver}.gemspec; do
965 s="$RPM_BUILD_ROOT%{gem_dir}/specifications/$s"
2798ed3c 966 %{__make} runruby TESTRUN_SCRIPT="-rrubygems \
3112d6a6
ER
967 -e \"spec = Gem::Specification.load('$s')\" \
968 -e \"File.write '$s', spec.to_ruby\""
969done
970
7cb22c75 971%{__sed} -i -e '1s,/usr/bin/env ruby,/usr/bin/ruby,' \
2798ed3c 972 $RPM_BUILD_ROOT%{_bindir}/irb \
7cb22c75 973 $RPM_BUILD_ROOT%{ruby_libdir}/abbrev.rb \
67f26735 974 $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/exe/rake \
498ccbb5 975 $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/exe/{rdoc,ri} \
2798ed3c 976 $RPM_BUILD_ROOT%{gem_dir}/gems/bundler-%{bundler_ver}/exe/{bundle,bundler} \
7cb22c75
JB
977 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/{cal,test,time,uumerge}.rb \
978 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/{drb,logger,openssl,ripper,rss}/*.rb \
979 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/webrick/*.cgi
980
87437a24 981# gem non library files
b417ade5
JB
982%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/{[A-Z]*,benchmark,doc,test,tmp,did_you_mean.gemspec,.*}
983%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/minitest-%{minitest_ver}/{[A-Z]*,test,.autotest}
984%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/net-telnet-%{net_telnet_ver}/{[A-Z]*,bin,net-telnet.gemspec,.*}
985%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/power_assert-%{power_assert_ver}/{[A-Z]*,bin,power_assert.gemspec,.*}
986%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/{[A-Z]*,bin,doc,rake.gemspec,.*}
e236ea00 987%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/test-unit-%{test_unit_ver}/{[A-Z]*,doc,sample,test}
b417ade5 988%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/xmlrpc-%{xmlrpc_ver}/{[A-Z]*,bin,xmlrpc.gemspec,.*}
76a22994 989
15467dc7 990%if %{without batteries}
b2f04116 991# packaged separately
05f75f09 992%{__rm} -r $RPM_BUILD_ROOT%{ruby_libdir}/{rubygems,rake,json,minitest}
0b1956f4 993%{__rm} -r $RPM_BUILD_ROOT%{ruby_archdir}/json
7179288b 994%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rake-*
0b1956f4 995%{__rm} $RPM_BUILD_ROOT%{ruby_libdir}/{rake,rubygems,json}.rb
92ff5331 996%{__rm} $RPM_BUILD_ROOT%{_bindir}/{gem,rake}
1083418a 997#%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/rake*
45f22c60 998%{__rm} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/{json,minitest,rake}-*.gemspec
7179288b 999%{?with_doc:%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/ri/%{ruby_version}/system/JSON}
15467dc7 1000%endif
1968db6d 1001
44802bd7 1002%if %{with doc}
d78ec589 1003# too much .ri
2db0575e 1004%{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/cache.ri
b417ade5 1005%{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/win32/page-*.ri
15467dc7 1006%endif
1968db6d 1007
4ab119cd 1008%clean
1009rm -rf $RPM_BUILD_ROOT
1010
d041de24
JR
1011%post -p /sbin/ldconfig
1012%postun -p /sbin/ldconfig
4ab119cd 1013
1014%files
1015%defattr(644,root,root,755)
3112d6a6 1016%doc NEWS LEGAL BSDL README.md README.EXT ChangeLog
9c41e51a 1017%attr(755,root,root) %{_bindir}/ruby%{ruby_suffix}
529ff870 1018%attr(755,root,root) %{_libdir}/libruby.so.*.*.*
eee72344 1019%attr(755,root,root) %ghost %{_libdir}/libruby.so.%{ruby_version}
9c41e51a 1020%{_mandir}/man1/ruby%{ruby_suffix}.1*
05f75f09 1021
9c41e51a
ER
1022%dir %{_libdir}/%{oname}
1023%dir %{_libdir}/%{oname}/%{vendordir}
1024%dir %{_datadir}/%{oname}
0b1956f4 1025
be8e7b24 1026%dir %{ruby_libdir}
5c3d5a0e 1027%dir %{ruby_archdir}
be8e7b24 1028%dir %{ruby_vendorlibdir}
be8e7b24 1029%dir %{ruby_vendorarchdir}
31058abe 1030
df9a7ee8 1031%dir %{dirname:%{ruby_ridir}}
2db0575e 1032%dir %{ruby_ridir}
a43d66d8 1033%dir %{ruby_rdocdir}
9fd96af7 1034
f1a7abab 1035# common dirs for ruby vendor modules
08c2f6e5 1036%dir %{ruby_vendorlibdir}/data
f1a7abab
ER
1037%dir %{ruby_vendorlibdir}/net
1038
9fd96af7 1039%files devel
1040%defattr(644,root,root,755)
529ff870 1041%attr(755,root,root) %{_libdir}/libruby.so
9c41e51a 1042%{_includedir}/%{oname}-%{ruby_version}
c24d5840 1043%{_pkgconfigdir}/%{oname}-%{ruby_version}.pc
b5465d0c 1044%{ruby_libdir}/mkmf.rb
9fd96af7 1045
d8228776
ER
1046%files irb
1047%defattr(644,root,root,755)
9c41e51a 1048%attr(755,root,root) %{_bindir}/irb%{ruby_suffix}
d8228776
ER
1049%{ruby_libdir}/irb.rb
1050%{ruby_libdir}/irb
b417ade5 1051%{gem_dir}/specifications/default/irb-%{irb_ver}.gemspec
9c41e51a 1052%{_mandir}/man1/irb%{ruby_suffix}.1*
d8228776 1053
2db0575e 1054%files rdoc
9fd96af7 1055%defattr(644,root,root,755)
9c41e51a
ER
1056%attr(755,root,root) %{_bindir}/rdoc%{ruby_suffix}
1057%attr(755,root,root) %{_bindir}/ri%{ruby_suffix}
1058%{_mandir}/man1/rdoc%{ruby_suffix}.1*
2db0575e
ER
1059%{ruby_libdir}/rdoc
1060%dir %{gem_dir}/gems/rdoc-%{rdoc_ver}
a6d548c5 1061%{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
2db0575e 1062%{gem_dir}/specifications/rdoc-%{rdoc_ver}.gemspec
d2dd9b6d 1063%dir %{gem_dir}/gems/rdoc-%{rdoc_ver}/exe
1064%{gem_dir}/gems/rdoc-%{rdoc_ver}/exe/rdoc
1065%{gem_dir}/gems/rdoc-%{rdoc_ver}/exe/ri
2db0575e 1066
44802bd7
ER
1067%if %{with batteries}
1068%files rubygems
941981c7 1069%defattr(644,root,root,755)
9c41e51a 1070%attr(755,root,root) %{_bindir}/gem%{ruby_suffix}
f493239c
ER
1071%{rubygems_dir}/rubygems
1072%{rubygems_dir}/rubygems.rb
2798ed3c 1073
1074%files bundler
1075%defattr(644,root,root,755)
1076%attr(755,root,root) %{_bindir}/bundler%{ruby_suffix}
1077%attr(755,root,root) %{_bindir}/bundle%{ruby_suffix}
1078%{gem_dir}/gems/bundler-%{bundler_ver}
1079%{gem_dir}/specifications/bundler-%{bundler_ver}.gemspec
1080%{_mandir}/man1/bundle*.1*
1081%{_mandir}/man5/gemfile.5*
63b8d212
ER
1082
1083%files rake
1084%defattr(644,root,root,755)
9c41e51a 1085%attr(755,root,root) %{_bindir}/rake%{ruby_suffix}
63b8d212 1086%dir %{gem_dir}/gems/rake-%{rake_ver}
a6d548c5 1087%{gem_dir}/gems/rake-%{rake_ver}/lib
63b8d212 1088%{gem_dir}/specifications/rake-%{rake_ver}.gemspec
67f26735 1089%dir %{gem_dir}/gems/rake-%{rake_ver}/exe
0de43f1f 1090%attr(755,root,root) %{gem_dir}/gems/rake-%{rake_ver}/exe/rake
7e87bcc1
ER
1091
1092%files json
1093%defattr(644,root,root,755)
1094%{ruby_libdir}/json
1095%dir %{ruby_archdir}/json
1096%dir %{ruby_archdir}/json/ext
1097%attr(755,root,root) %{ruby_archdir}/json/ext/*.so
a6d548c5
ER
1098
1099%dir %{gem_libdir}/json-%{json_ver}
1100%dir %{gem_libdir}/json-%{json_ver}/lib
1101%dir %{gem_libdir}/json-%{json_ver}/lib/json
1102%dir %{gem_libdir}/json-%{json_ver}/lib/json/ext
1103%attr(755,root,root) %{gem_libdir}/json-%{json_ver}/lib/json/ext/generator.so
1104%attr(755,root,root) %{gem_libdir}/json-%{json_ver}/lib/json/ext/parser.so
1105
1106%{gem_dir}/gems/json-%{json_ver}
7e87bcc1 1107%{gem_dir}/specifications/json-%{json_ver}.gemspec
44802bd7
ER
1108%endif
1109
74ff0589
ER
1110%files power_assert
1111%defattr(644,root,root,755)
87437a24
ER
1112%dir %{gem_dir}/gems/power_assert-%{power_assert_ver}
1113%{gem_dir}/gems/power_assert-%{power_assert_ver}/lib
74ff0589
ER
1114%{gem_dir}/specifications/power_assert-%{power_assert_ver}.gemspec
1115
cac72f51
ER
1116%files minitest
1117%defattr(644,root,root,755)
1118%{ruby_libdir}/minitest
1119%{gem_dir}/gems/minitest-%{minitest_ver}
cac72f51
ER
1120%{gem_dir}/specifications/minitest-%{minitest_ver}.gemspec
1121
76a22994
ER
1122%files test-unit
1123%defattr(644,root,root,755)
1124%dir %{gem_dir}/gems/test-unit-%{test_unit_ver}
1125%{gem_dir}/gems/test-unit-%{test_unit_ver}/lib
1126%{gem_dir}/specifications/test-unit-%{test_unit_ver}.gemspec
1127%{_mandir}/man1/testrb%{ruby_suffix}.1*
1128
ac937700 1129%files did_you_mean
e236ea00 1130%defattr(644,root,root,755)
ac937700 1131%dir %{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}
ac937700
ER
1132%{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/lib
1133%{gem_dir}/specifications/did_you_mean-%{did_you_mean_ver}.gemspec
1134
0ab77745
ER
1135%files net-telnet
1136%defattr(644,root,root,755)
1137%dir %{gem_dir}/gems/net-telnet-%{net_telnet_ver}
1138%{gem_dir}/gems/net-telnet-%{net_telnet_ver}/lib
1139%{gem_dir}/specifications/net-telnet-%{net_telnet_ver}.gemspec
1140
f6f2f07f
ER
1141%files bigdecimal
1142%defattr(644,root,root,755)
1143%{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}
1144%dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}
1145%dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
1146%attr(755,root,root) %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal.so
2798ed3c 1147%dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal
1148%attr(755,root,root) %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal/util.so
1149%{ruby_libdir}/bigdecimal.rb
f6f2f07f
ER
1150%{ruby_libdir}/bigdecimal
1151%{gem_dir}/specifications/bigdecimal-%{bigdecimal_ver}.gemspec
1152
1153%files io-console
1154%defattr(644,root,root,755)
1155%{gem_dir}/gems/io-console-%{io_console_ver}
1156%dir %{gem_libdir}/io-console-%{io_console_ver}
1157%dir %{gem_libdir}/io-console-%{io_console_ver}/lib
1158%dir %{gem_libdir}/io-console-%{io_console_ver}/lib/io
1159%attr(755,root,root) %{gem_libdir}/io-console-%{io_console_ver}/lib/io/console.so
1160%{gem_dir}/specifications/io-console-%{io_console_ver}.gemspec
1161
162eb983
ER
1162%files psych
1163%defattr(644,root,root,755)
1164%{ruby_libdir}/psych.rb
1165%attr(755,root,root) %{ruby_archdir}/psych.so
1166%{gem_dir}/gems/psych-%{psych_ver}
1167%{ruby_libdir}/psych
1168%dir %{gem_libdir}/psych-%{psych_ver}
1169%dir %{gem_libdir}/psych-%{psych_ver}/lib
1170%attr(755,root,root) %{gem_libdir}/psych-%{psych_ver}/lib/psych.so
1171%{gem_dir}/specifications/psych-%{psych_ver}.gemspec
1172
67f26735
JR
1173%files xmlrpc
1174%defattr(644,root,root,755)
e4822432
JR
1175%{gem_dir}/gems/xmlrpc-%{xmlrpc_ver}
1176%{gem_dir}/specifications/xmlrpc-%{xmlrpc_ver}.gemspec
67f26735 1177
9fd96af7 1178%files modules
1179%defattr(644,root,root,755)
9c41e51a 1180%attr(755,root,root) %{_bindir}/erb%{ruby_suffix}
0b1956f4 1181%{ruby_libdir}/cgi
0b1956f4 1182%{ruby_libdir}/digest
0b1956f4
ER
1183%{ruby_libdir}/drb
1184%{ruby_libdir}/fiddle
1185%{ruby_libdir}/io
0b1956f4 1186%{ruby_libdir}/matrix
0b1956f4
ER
1187%{ruby_libdir}/net
1188%{ruby_libdir}/openssl
1189%{ruby_libdir}/optparse
0b1956f4 1190%{ruby_libdir}/racc
0b1956f4
ER
1191%{ruby_libdir}/rexml
1192%{ruby_libdir}/rinda
1193%{ruby_libdir}/ripper
1194%{ruby_libdir}/rss
1195%{ruby_libdir}/shell
45f22c60 1196%{ruby_libdir}/syslog
0b1956f4
ER
1197%{ruby_libdir}/test
1198%{ruby_libdir}/uri
1199%{ruby_libdir}/webrick
0b1956f4 1200%{ruby_libdir}/yaml
ba0bcd1d
ER
1201
1202%{ruby_libdir}/English.rb
1203%{ruby_libdir}/abbrev.rb
1204%{ruby_libdir}/base64.rb
1205%{ruby_libdir}/benchmark.rb
2798ed3c 1206%{ruby_libdir}/bundler
1207%{ruby_libdir}/bundler.rb
ba0bcd1d
ER
1208%{ruby_libdir}/cgi.rb
1209%{ruby_libdir}/cmath.rb
ba0bcd1d 1210%{ruby_libdir}/csv.rb
2798ed3c 1211%{ruby_libdir}/csv
1212%{ruby_libdir}/coverage.rb
ba0bcd1d
ER
1213%{ruby_libdir}/date.rb
1214%{ruby_libdir}/debug.rb
1215%{ruby_libdir}/delegate.rb
1216%{ruby_libdir}/digest.rb
ba0bcd1d
ER
1217%{ruby_libdir}/drb.rb
1218%{ruby_libdir}/e2mmap.rb
2798ed3c 1219%{ruby_libdir}/e2mmap
ba0bcd1d
ER
1220%{ruby_libdir}/erb.rb
1221%{ruby_libdir}/expect.rb
1222%{ruby_libdir}/fiddle.rb
1223%{ruby_libdir}/fileutils.rb
2798ed3c 1224%{ruby_libdir}/fileutils
ba0bcd1d
ER
1225%{ruby_libdir}/find.rb
1226%{ruby_libdir}/forwardable.rb
67f26735
JR
1227%dir %{ruby_libdir}/forwardable
1228%{ruby_libdir}/forwardable/impl.rb
ba0bcd1d 1229%{ruby_libdir}/getoptlong.rb
ba0bcd1d
ER
1230%{ruby_libdir}/ipaddr.rb
1231%{ruby_libdir}/json.rb
1232%{ruby_libdir}/kconv.rb
1233%{ruby_libdir}/logger.rb
ba0bcd1d
ER
1234%{ruby_libdir}/matrix.rb
1235%{ruby_libdir}/monitor.rb
1236%{ruby_libdir}/mutex_m.rb
1237%{ruby_libdir}/observer.rb
1238%{ruby_libdir}/open-uri.rb
1239%{ruby_libdir}/open3.rb
1240%{ruby_libdir}/openssl.rb
94592386 1241%{ruby_libdir}/optionparser.rb
ba0bcd1d
ER
1242%{ruby_libdir}/optparse.rb
1243%{ruby_libdir}/ostruct.rb
1244%{ruby_libdir}/pathname.rb
1245%{ruby_libdir}/pp.rb
1246%{ruby_libdir}/prettyprint.rb
1247%{ruby_libdir}/prime.rb
1248%{ruby_libdir}/profile.rb
1249%{ruby_libdir}/profiler.rb
1250%{ruby_libdir}/pstore.rb
ba0bcd1d
ER
1251%{ruby_libdir}/rdoc.rb
1252%{ruby_libdir}/resolv-replace.rb
1253%{ruby_libdir}/resolv.rb
1254%{ruby_libdir}/ripper.rb
1255%{ruby_libdir}/rss.rb
1256%{ruby_libdir}/scanf.rb
1257%{ruby_libdir}/securerandom.rb
1258%{ruby_libdir}/set.rb
1259%{ruby_libdir}/shell.rb
1260%{ruby_libdir}/shellwords.rb
1261%{ruby_libdir}/singleton.rb
1262%{ruby_libdir}/socket.rb
1263%{ruby_libdir}/sync.rb
0b1956f4 1264%{ruby_libdir}/tempfile.rb
0b1956f4 1265%{ruby_libdir}/thwait.rb
2798ed3c 1266%{ruby_libdir}/thwait
0b1956f4
ER
1267%{ruby_libdir}/time.rb
1268%{ruby_libdir}/timeout.rb
1269%{ruby_libdir}/tmpdir.rb
1270%{ruby_libdir}/tracer.rb
2798ed3c 1271%{ruby_libdir}/tracer
0b1956f4 1272%{ruby_libdir}/tsort.rb
05bcc29a 1273%{ruby_libdir}/un.rb
94592386 1274%{ruby_libdir}/unicode_normalize
05bcc29a
ER
1275%{ruby_libdir}/uri.rb
1276%{ruby_libdir}/weakref.rb
1277%{ruby_libdir}/webrick.rb
05bcc29a 1278%{ruby_libdir}/yaml.rb
ba0bcd1d 1279
7179288b 1280%if %{with batteries}
44802bd7 1281%exclude %{ruby_libdir}/rubygems.rb
7179288b 1282%endif
d8228776 1283%exclude %{ruby_libdir}/irb.rb
b5465d0c 1284%exclude %{ruby_libdir}/mkmf.rb
05bcc29a
ER
1285
1286%{ruby_archdir}/rbconfig.rb
1287%attr(755,root,root) %{ruby_archdir}/bigdecimal.so
2798ed3c 1288%dir %{ruby_archdir}/bigdecimal
1289%attr(755,root,root) %{ruby_archdir}/bigdecimal/util.so
05bcc29a
ER
1290%attr(755,root,root) %{ruby_archdir}/continuation.so
1291%attr(755,root,root) %{ruby_archdir}/coverage.so
05bcc29a
ER
1292%attr(755,root,root) %{ruby_archdir}/date_core.so
1293%attr(755,root,root) %{ruby_archdir}/dbm.so
1294%attr(755,root,root) %{ruby_archdir}/digest.so
05bcc29a
ER
1295%attr(755,root,root) %{ruby_archdir}/etc.so
1296%attr(755,root,root) %{ruby_archdir}/fcntl.so
1297%attr(755,root,root) %{ruby_archdir}/fiber.so
1298%attr(755,root,root) %{ruby_archdir}/fiddle.so
1299%attr(755,root,root) %{ruby_archdir}/gdbm.so
1300%attr(755,root,root) %{ruby_archdir}/nkf.so
1301%attr(755,root,root) %{ruby_archdir}/objspace.so
1302%attr(755,root,root) %{ruby_archdir}/openssl.so
1303%attr(755,root,root) %{ruby_archdir}/pathname.so
05bcc29a
ER
1304%attr(755,root,root) %{ruby_archdir}/pty.so
1305%attr(755,root,root) %{ruby_archdir}/readline.so
1306%attr(755,root,root) %{ruby_archdir}/ripper.so
1307%attr(755,root,root) %{ruby_archdir}/sdbm.so
1308%attr(755,root,root) %{ruby_archdir}/socket.so
1309%attr(755,root,root) %{ruby_archdir}/stringio.so
1310%attr(755,root,root) %{ruby_archdir}/strscan.so
1311%attr(755,root,root) %{ruby_archdir}/syslog.so
1312%attr(755,root,root) %{ruby_archdir}/zlib.so
1313
5e50fb86
ER
1314%dir %{ruby_archdir}/cgi
1315%attr(755,root,root) %{ruby_archdir}/cgi/escape.so
0b1956f4
ER
1316%dir %{ruby_archdir}/digest
1317%attr(755,root,root) %{ruby_archdir}/digest/*.so
0b1956f4
ER
1318%dir %{ruby_archdir}/enc
1319%attr(755,root,root) %{ruby_archdir}/enc/*.so
1320%dir %{ruby_archdir}/enc/trans
1321%attr(755,root,root) %{ruby_archdir}/enc/trans/*.so
1322%dir %{ruby_archdir}/io
1323%attr(755,root,root) %{ruby_archdir}/io/*.so
0b1956f4
ER
1324%dir %{ruby_archdir}/racc
1325%attr(755,root,root) %{ruby_archdir}/racc/*.so
a319cc02
ER
1326%dir %{ruby_archdir}/rbconfig
1327%attr(755,root,root) %{ruby_archdir}/rbconfig/sizeof.so
31058abe 1328
a6d548c5
ER
1329%dir %{_libdir}/gems
1330%dir %{_libdir}/gems/%{oname}
1331
d78ec589 1332%dir %{gem_dir}
a6d548c5 1333%dir %{gem_dir}/gems
d78ec589 1334%dir %{gem_dir}/specifications
45f22c60 1335%dir %{gem_dir}/specifications/default
b417ade5
JB
1336%{gem_dir}/specifications/default/cmath-%{cmath_ver}.gemspec
1337%{gem_dir}/specifications/default/csv-%{csv_ver}.gemspec
1338%{gem_dir}/specifications/default/date-%{date_ver}.gemspec
1339%{gem_dir}/specifications/default/dbm-%{dbm_ver}.gemspec
1340%{gem_dir}/specifications/default/e2mmap-%{e2mmap_ver}.gemspec
1341%{gem_dir}/specifications/default/etc-%{etc_ver}.gemspec
1342%{gem_dir}/specifications/default/fcntl-%{fcntl_ver}.gemspec
1343%{gem_dir}/specifications/default/fiddle-%{fiddle_ver}.gemspec
1344%{gem_dir}/specifications/default/fileutils-%{fileutils_ver}.gemspec
1345%{gem_dir}/specifications/default/forwardable-%{forwardable_ver}.gemspec
1346%{gem_dir}/specifications/default/gdbm-%{gdbm_ver}.gemspec
1347%{gem_dir}/specifications/default/ipaddr-%{ipaddr_ver}.gemspec
1348%{gem_dir}/specifications/default/logger-%{logger_ver}.gemspec
1349%{gem_dir}/specifications/default/matrix-%{matrix_ver}.gemspec
1350%{gem_dir}/specifications/default/mutex_m-%{mutex_m_ver}.gemspec
1351%{gem_dir}/specifications/default/ostruct-%{ostruct_ver}.gemspec
a48b0cfb 1352%{gem_dir}/specifications/default/openssl-%{openssl_ver}.gemspec
b417ade5
JB
1353%{gem_dir}/specifications/default/prime-%{prime_ver}.gemspec
1354%{gem_dir}/specifications/default/rexml-%{rexml_ver}.gemspec
1355%{gem_dir}/specifications/default/rss-%{rss_ver}.gemspec
1356%{gem_dir}/specifications/default/scanf-%{scanf_ver}.gemspec
1357%{gem_dir}/specifications/default/sdbm-%{sdbm_ver}.gemspec
1358%{gem_dir}/specifications/default/shell-%{shell_ver}.gemspec
1359%{gem_dir}/specifications/default/stringio-%{stringio_ver}.gemspec
1360%{gem_dir}/specifications/default/strscan-%{strscan_ver}.gemspec
1361%{gem_dir}/specifications/default/sync-%{sync_ver}.gemspec
1362%{gem_dir}/specifications/default/thwait-%{thwait_ver}.gemspec
1363%{gem_dir}/specifications/default/tracer-%{tracer_ver}.gemspec
1364%{gem_dir}/specifications/default/webrick-%{webrick_ver}.gemspec
1365%{gem_dir}/specifications/default/zlib-%{zlib_ver}.gemspec
a48b0cfb 1366
9c41e51a
ER
1367%{_mandir}/man1/erb%{ruby_suffix}.1*
1368%{_mandir}/man1/ri%{ruby_suffix}.1*
15467dc7 1369
40cd40d7 1370%if %{with doc}
9fd96af7 1371%files doc
9434194f 1372%defattr(644,root,root,755)
40cd40d7
ER
1373%doc ruby_%{doc_version}_stdlib
1374%doc ruby_%{doc_version}_core
87b9c30a 1375
9fd96af7 1376%files doc-ri
e40bfe06 1377%defattr(644,root,root,755)
a48b0cfb
JB
1378%{ruby_ridir}/ACL
1379%{ruby_ridir}/ARGF
1380%{ruby_ridir}/Abbrev
1381%{ruby_ridir}/Addrinfo
1382%{ruby_ridir}/ArgumentError
1383%{ruby_ridir}/Array
1384%{ruby_ridir}/Base64
1385%{ruby_ridir}/BasicObject
1386%{ruby_ridir}/BasicSocket
1387%{ruby_ridir}/Benchmark
1388%{ruby_ridir}/BigDecimal
1389%{ruby_ridir}/BigMath
1390%{ruby_ridir}/Binding
2798ed3c 1391%{ruby_ridir}/Bundler
a48b0cfb
JB
1392%{ruby_ridir}/CGI
1393%{ruby_ridir}/CMath
1394%{ruby_ridir}/CSV
1395%{ruby_ridir}/Class
1396%{ruby_ridir}/ClosedQueueError
1397%{ruby_ridir}/Comparable
1398%{ruby_ridir}/Complex
1399%{ruby_ridir}/ConditionVariable
1400%{ruby_ridir}/Continuation
1401%{ruby_ridir}/Coverage
1402%{ruby_ridir}/DBM
1403%{ruby_ridir}/DBMError
1404%{ruby_ridir}/DEBUGGER__
1405%{ruby_ridir}/DRb
1406%{ruby_ridir}/Data
1407%{ruby_ridir}/Date
1408%{ruby_ridir}/DateTime
1409%{ruby_ridir}/Delegator
1410%{ruby_ridir}/Digest
1411%{ruby_ridir}/Dir
1412%{ruby_ridir}/ENV
1413%{ruby_ridir}/EOFError
1414%{ruby_ridir}/ERB
1415%{ruby_ridir}/EXCEPTION_TYPE
1416%{ruby_ridir}/Encoding
1417%{ruby_ridir}/EncodingError
1418%{ruby_ridir}/English
1419%{ruby_ridir}/Enumerable
1420%{ruby_ridir}/Enumerator
1421%{ruby_ridir}/Errno
1422%{ruby_ridir}/Etc
1423%{ruby_ridir}/Exception
1424%{ruby_ridir}/Exception2MessageMapper
1425%{ruby_ridir}/FalseClass
1426%{ruby_ridir}/Fcntl
1427%{ruby_ridir}/Fiber
1428%{ruby_ridir}/FiberError
1429%{ruby_ridir}/Fiddle
1430%{ruby_ridir}/File
1431%{ruby_ridir}/FileTest
1432%{ruby_ridir}/FileUtils
1433%{ruby_ridir}/Find
1434%{ruby_ridir}/Float
1435%{ruby_ridir}/FloatDomainError
1436%{ruby_ridir}/Forwardable
2798ed3c 1437%{ruby_ridir}/FrozenError
a48b0cfb
JB
1438%{ruby_ridir}/GC
1439%{ruby_ridir}/GDBM
1440%{ruby_ridir}/GDBMError
1441%{ruby_ridir}/GDBMFatalError
1442%{ruby_ridir}/Gem
1443%{ruby_ridir}/GetoptLong
2798ed3c 1444%{ruby_ridir}/HTTPClientException
1445%{ruby_ridir}/HTTPGatewayTimeOut
a48b0cfb
JB
1446%{ruby_ridir}/HTTPMovedTemporarily
1447%{ruby_ridir}/HTTPMultipleChoice
2798ed3c 1448%{ruby_ridir}/HTTPRequestEntityTooLarge
1449%{ruby_ridir}/HTTPRequestTimeOut
a48b0cfb 1450%{ruby_ridir}/HTTPRequestURITooLarge
2798ed3c 1451%{ruby_ridir}/HTTPRequestURITooLong
1452%{ruby_ridir}/HTTPRequestedRangeNotSatisfiable
a48b0cfb
JB
1453%{ruby_ridir}/Hash
1454%{ruby_ridir}/IO
1455%{ruby_ridir}/IOError
1456%{ruby_ridir}/IPAddr
1457%{ruby_ridir}/IPSocket
1458%{ruby_ridir}/IRB
1459%{ruby_ridir}/IndexError
1460%{ruby_ridir}/Integer
1461%{ruby_ridir}/Interrupt
1462%{ruby_ridir}/JSON
1463%{ruby_ridir}/Jacobian
1464%{ruby_ridir}/Kconv
1465%{ruby_ridir}/Kernel
1466%{ruby_ridir}/KeyError
1467%{ruby_ridir}/LUSolve
1468%{ruby_ridir}/LoadError
1469%{ruby_ridir}/LocalJumpError
1470%{ruby_ridir}/Logger
1471%{ruby_ridir}/MakeMakefile
1472%{ruby_ridir}/Marshal
1473%{ruby_ridir}/MatchData
1474%{ruby_ridir}/Math
1475%{ruby_ridir}/Matrix
1476%{ruby_ridir}/Method
1477%{ruby_ridir}/Module
1478%{ruby_ridir}/Monitor
1479%{ruby_ridir}/MonitorMixin
2798ed3c 1480%{ruby_ridir}/Mutex
a48b0cfb
JB
1481%{ruby_ridir}/Mutex_m
1482%{ruby_ridir}/NKF
1483%{ruby_ridir}/NameError
1484%{ruby_ridir}/Net
1485%{ruby_ridir}/Newton
1486%{ruby_ridir}/NilClass
1487%{ruby_ridir}/NoMemoryError
1488%{ruby_ridir}/NoMethodError
1489%{ruby_ridir}/NotImplementedError
1490%{ruby_ridir}/Numeric
1491%{ruby_ridir}/OLEProperty
1492%{ruby_ridir}/Object
1493%{ruby_ridir}/ObjectSpace
1494%{ruby_ridir}/Observable
1495%{ruby_ridir}/Open3
1496%{ruby_ridir}/OpenSSL
1497%{ruby_ridir}/OpenStruct
1498%{ruby_ridir}/OpenURI
1499%{ruby_ridir}/OptionParser
1500%{ruby_ridir}/PP
1501%{ruby_ridir}/PStore
1502%{ruby_ridir}/PTY
1503%{ruby_ridir}/Pathname
1504%{ruby_ridir}/PrettyPrint
1505%{ruby_ridir}/Prime
1506%{ruby_ridir}/Proc
1507%{ruby_ridir}/Process
1508%{ruby_ridir}/Profiler__
1509%{ruby_ridir}/Psych
1510%{ruby_ridir}/Queue
1511%{ruby_ridir}/RDoc
1512%{ruby_ridir}/RDocTask
1513%{ruby_ridir}/REXML
1514%{ruby_ridir}/RSS
1515%{ruby_ridir}/Racc
1516%{ruby_ridir}/Rake
1517%{ruby_ridir}/Random
1518%{ruby_ridir}/Range
1519%{ruby_ridir}/RangeError
1520%{ruby_ridir}/Rational
1521%{ruby_ridir}/RbConfig
1522%{ruby_ridir}/Readline
1523%{ruby_ridir}/Regexp
1524%{ruby_ridir}/RegexpError
1525%{ruby_ridir}/Resolv
1526%{ruby_ridir}/Rinda
1527%{ruby_ridir}/Ripper
1528%{ruby_ridir}/RubyLex
1529%{ruby_ridir}/RubyToken
1530%{ruby_ridir}/RubyVM
1531%{ruby_ridir}/RuntimeError
1532%{ruby_ridir}/SDBM
1533%{ruby_ridir}/SDBMError
1534%{ruby_ridir}/SOCKSSocket
1535%{ruby_ridir}/Scanf
1536%{ruby_ridir}/ScriptError
1537%{ruby_ridir}/SecureRandom
1538%{ruby_ridir}/SecurityError
1539%{ruby_ridir}/Set
1540%{ruby_ridir}/Shell
1541%{ruby_ridir}/Shellwords
1542%{ruby_ridir}/Signal
1543%{ruby_ridir}/SignalException
1544%{ruby_ridir}/SimpleDelegator
1545%{ruby_ridir}/SingleForwardable
1546%{ruby_ridir}/Singleton
1547%{ruby_ridir}/SizedQueue
1548%{ruby_ridir}/Socket
1549%{ruby_ridir}/SocketError
1550%{ruby_ridir}/SortedSet
1551%{ruby_ridir}/StandardError
1552%{ruby_ridir}/StopIteration
1553%{ruby_ridir}/String
1554%{ruby_ridir}/StringIO
1555%{ruby_ridir}/StringScanner
1556%{ruby_ridir}/Struct
1557%{ruby_ridir}/Symbol
1558%{ruby_ridir}/Sync
1559%{ruby_ridir}/Sync_m
1560%{ruby_ridir}/Synchronizer
1561%{ruby_ridir}/Synchronizer_m
1562%{ruby_ridir}/SyntaxError
1563%{ruby_ridir}/Syslog
1564%{ruby_ridir}/SystemCallError
1565%{ruby_ridir}/SystemExit
1566%{ruby_ridir}/SystemStackError
1567%{ruby_ridir}/TCPServer
1568%{ruby_ridir}/TCPSocket
1569%{ruby_ridir}/TSort
1570%{ruby_ridir}/TempIO
1571%{ruby_ridir}/Tempfile
a48b0cfb
JB
1572%{ruby_ridir}/ThWait
1573%{ruby_ridir}/Thread
1574%{ruby_ridir}/ThreadError
1575%{ruby_ridir}/ThreadGroup
1576%{ruby_ridir}/ThreadsWait
1577%{ruby_ridir}/Time
1578%{ruby_ridir}/Timeout
1579%{ruby_ridir}/TracePoint
1580%{ruby_ridir}/Tracer
1581%{ruby_ridir}/TrueClass
1582%{ruby_ridir}/TypeError
1583%{ruby_ridir}/UDPSocket
1584%{ruby_ridir}/UNIXServer
1585%{ruby_ridir}/UNIXSocket
1586%{ruby_ridir}/URI
1587%{ruby_ridir}/UnboundMethod
1588%{ruby_ridir}/UncaughtThrowError
1589%{ruby_ridir}/UnicodeNormalize
1590%{ruby_ridir}/Vector
1591%{ruby_ridir}/WEBrick
1592%{ruby_ridir}/WIN32OLE
1593%{ruby_ridir}/WIN32OLERuntimeError
2798ed3c 1594%{ruby_ridir}/WIN32OLEQueryInterfaceError
a48b0cfb
JB
1595%{ruby_ridir}/WIN32OLE_EVENT
1596%{ruby_ridir}/WIN32OLE_METHOD
1597%{ruby_ridir}/WIN32OLE_PARAM
1598%{ruby_ridir}/WIN32OLE_RECORD
1599%{ruby_ridir}/WIN32OLE_TYPE
1600%{ruby_ridir}/WIN32OLE_TYPELIB
1601%{ruby_ridir}/WIN32OLE_VARIABLE
1602%{ruby_ridir}/WIN32OLE_VARIANT
1603%{ruby_ridir}/Warning
1604%{ruby_ridir}/WeakRef
1605%{ruby_ridir}/XML
1606%{ruby_ridir}/XMLEncoding_ja
1607%{ruby_ridir}/XMP
1608%{ruby_ridir}/YAML
1609%{ruby_ridir}/ZeroDivisionError
1610%{ruby_ridir}/Zlib
1611%{ruby_ridir}/fatal
1612%{ruby_ridir}/lib
1613%{ruby_ridir}/syntax
b417ade5
JB
1614%{ruby_ridir}/page-CONTRIBUTING_md.ri
1615%{ruby_ridir}/page-COPYING.ri
1616%lang(ja) %{ruby_ridir}/page-COPYING_ja.ri
1617%{ruby_ridir}/page-LEGAL.ri
a48b0cfb
JB
1618%{ruby_ridir}/page-NEWS*.ri
1619%{ruby_ridir}/page-README_md.ri
b417ade5 1620%lang(ja) %{ruby_ridir}/page-README_ja_md.ri
a48b0cfb 1621%{ruby_ridir}/page-*_rdoc.ri
d0f5536d 1622%endif
265d0efe 1623
9fd96af7 1624%files examples
616a12d8 1625%defattr(644,root,root,755)
7cb22c75 1626%{_examplesdir}/%{oname}-%{pkg_version}
This page took 0.47214 seconds and 4 git commands to generate.