]> git.pld-linux.org Git - packages/ruby.git/blame - ruby.spec
drop no longer used ruby(ver)
[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
198b2d1a 5#
2acc5f17 6# Conditional build:
bc991d5a 7%bcond_without doc # skip (time-consuming) docs generating; intended for speed up test builds
a3083723 8%bcond_with tk # Tk bindings
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
dab7ea69
ER
14# prevent some weird build error:
15# readlink: unrecognized option '--library=pthread'
1c3d4237 16%define debug 1
17
94592386 18%define rel 0.2
1c3d4237 19%define ruby_version 2.2
20%define basever 2.2
21%define patchlevel 5
7cb22c75 22%define pkg_version %{basever}.%{patchlevel}
9c41e51a 23
99934935 24%define ruby_suffix %{!?with_default_ruby:%{ruby_version}}
92a20577 25%define doc_version 2_2_5
45f22c60 26
1c3d4237 27%define bigdecimal_ver 1.2.6
52c1faed 28%define io_console_ver 0.4.3
d8228776 29%define irb_ver 0.9.6
52c1faed 30%define json_ver 1.8.1
1c3d4237 31%define minitest_ver 5.4.3
32%define psych_ver 2.0.8
33%define rake_ver 10.4.2
34%define rdoc_ver 4.2.0
35%define rubygems_ver 2.4.5.1
36%define test_unit_ver 3.0.8
3112d6a6 37%define power_assert_ver 0.2.2
45f22c60 38
9c41e51a 39%define oname ruby
6e2f9b3c 40Summary: Ruby - interpreted scripting language
3c3949cf
ER
41Summary(ja.UTF-8): オブジェクト指向言語Rubyインタプリタ
42Summary(pl.UTF-8): Ruby - interpretowany język skryptowy
43Summary(pt_BR.UTF-8): Linguagem de script orientada a objeto
44Summary(zh_CN.UTF-8): ruby - 一种快速高效的面向对象脚本编程语言
9c41e51a 45Name: ruby%{ruby_suffix}
7cb22c75 46Version: %{pkg_version}
116a558f 47Release: %{rel}
01204e8f 48Epoch: 1
3112d6a6
ER
49# Public Domain for example for: include/ruby/st.h, strftime.c, missing/*, ...
50# MIT and CCO: ccan/*
51# zlib: ext/digest/md5/md5.*, ext/nkf/nkf-utf8/nkf.c
52# UCD: some of enc/trans/**/*.src
53License: (Ruby or BSD) and Public Domain and MIT and CC0 and zlib and UCD
6eb17ef6 54Group: Development/Languages
14b99482 55# https://www.ruby-lang.org/en/downloads/
1c3d4237 56Source0: https://ftp.ruby-lang.org/pub/ruby/2.2/%{oname}-%{pkg_version}.tar.xz
57# Source0-md5: 4b9506c37e908b5b17215b66b2760438
9c41e51a 58Source1: http://www.ruby-doc.org/download/%{oname}-doc-bundle.tar.gz
775b0723 59# Source1-md5: ad1af0043be98ba1a4f6d0185df63876
9c41e51a 60Source2: http://www.ruby-doc.org/downloads/%{oname}_%{doc_version}_stdlib_rdocs.tgz
92a20577 61# Source2-md5: ac3d547e5ea9ef5a89be161cd967a5e8
9c41e51a 62Source3: http://www.ruby-doc.org/downloads/%{oname}_%{doc_version}_core_rdocs.tgz
92a20577 63# Source3-md5: 12f6b7a5e923fbae0f768d3cf760e88e
9c41e51a 64Source100: ftp://ftp.ruby-lang.org/pub/ruby/1.8/%{oname}-1.8.7-p330.tar.gz
92ff5331 65# Source100-md5: 50a49edb787211598d08e756e733e42e
af4f9d38 66Source4: rdoc.1
af4f9d38 67Source5: testrb.1
a6d548c5 68Source6: operating_system.rb
9c41e51a 69Patch0: %{oname}-lib64.patch
1c3d4237 70#Patch1: %{oname}-ffs.patch
360c41c0 71Patch2: fix-bison-invocation.patch
313c55d4
ER
72Patch3: mkmf-verbose.patch
73Patch4: strip-ccache.patch
1c3d4237 74Patch5: ruby-version.patch
75Patch6: duplicated-paths.patch
7cb22c75 76# obsolete?
313c55d4
ER
77Patch8: rubygems-2.0.0-binary-extensions.patch
78Patch9: custom-rubygems-location.patch
a319cc02 79Patch12: archlibdir.patch
7c36cd5d 80URL: http://www.ruby-lang.org/
7cb22c75 81BuildRequires: autoconf >= 2.67
53c95475 82BuildRequires: automake
f2e66748 83BuildRequires: bison >= 1.875
f0eb2dd9 84BuildRequires: db-devel
e9f2c6fe 85BuildRequires: gdbm-devel >= 1.8.3
7cb22c75 86BuildRequires: gmp-devel
9ae7df75 87BuildRequires: libffi-devel
1968db6d 88BuildRequires: ncurses-devel
7cb22c75 89BuildRequires: openssl-devel >= 0.9.6
74c8af09 90BuildRequires: pkgconfig
933aeb0e 91BuildRequires: readline-devel >= 4.2
d25d71f0 92BuildRequires: rpm-build >= 5.4.10-49
7911cce0 93BuildRequires: sed >= 4.0
7cb22c75 94BuildRequires: systemtap-sdt-devel
14b99482
ER
95BuildRequires: tar >= 1:1.22
96BuildRequires: xz
92ff5331 97BuildRequires: yaml-devel
7cb22c75 98BuildRequires: zlib-devel
14b99482
ER
99%if %{without bootstrap}
100# bootstrap needs ruby binary, erb module
101BuildRequires: rpm-rubyprov
102BuildRequires: ruby
103BuildRequires: ruby-modules
104%endif
15ecb21e 105%if %{with tk}
7cb22c75 106BuildRequires: tk-devel < 8.7
3112d6a6 107BuildRequires: tk-devel >= 8.4
15ecb21e 108%endif
f0eb2dd9 109Requires(post,postun): /sbin/ldconfig
ee1edb11 110Obsoletes: ruby-REXML <= 2.4.0-2
bb5582fa 111Obsoletes: ruby-doc < 1.8.4
ee1edb11 112Obsoletes: ruby-fastthread <= 0.6.3
9556e036 113Conflicts: rpm-build-macros < 1.695
a2963aa1
JR
114Conflicts: ruby-activesupport < 2.3.11-2
115Conflicts: ruby-activesupport2 < 2.3.11-2
584b8bcb 116BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
4ab119cd 117
df9a7ee8 118%define ruby_ridir %{_datadir}/ri/system
a6d548c5
ER
119%define gem_dir %{_datadir}/gems
120%define gem_libdir %{_libdir}/gems/%{oname}
d78ec589 121
f493239c
ER
122# location where rubygems is installed
123%define rubygems_dir %{ruby_libdir}
d78ec589 124
9c41e51a 125%define ruby_archdir %{_libdir}/%{oname}/%{ruby_version}
45f22c60 126%define ruby_libarchdir %{_libdir}/%{oname}/%{ruby_version}
9c41e51a 127%define ruby_libdir %{_datadir}/%{oname}/%{ruby_version}
d78ec589
ER
128
129# This is the local lib/arch and should not be used for packaging.
5c3d5a0e 130%define sitedir site_ruby
9c41e51a 131%define ruby_sitearchdir %{_prefix}/local/%{_lib}/%{oname}/%{sitedir}/%{ruby_version}
08c2f6e5 132%define ruby_sitelibdir %{_prefix}/local/share/%{oname}/%{sitedir}
d78ec589
ER
133
134# This is the general location for libs/archs compatible with all
135# or most of the Ruby versions available in the PLD repositories.
5c3d5a0e 136%define vendordir vendor_ruby
9c41e51a 137%define ruby_vendorarchdir %{_libdir}/%{oname}/%{vendordir}/%{ruby_version}
08c2f6e5 138%define ruby_vendorlibdir %{_datadir}/%{oname}/%{vendordir}
d78ec589 139
8ea447c1 140# bleh, some nasty (gcc or ruby) bug still not fixed
cc2dcaa2 141# (SEGV or "unexpected break" on miniruby run during build)
8ea447c1
JB
142%define specflags_ia64 -O0
143
88546731 144# ruby needs frame pointers for correct exception handling
b66203d6 145%define specflags_ia32 -fno-omit-frame-pointer
88546731 146
4ab119cd 147%description
148Ruby is the interpreted scripting language for quick and easy
149object-oriented programming. It has many features to process text
150files and to do system management tasks (as in Perl). It is simple,
151straight-forward, extensible, and portable.
152
9fd96af7 153This package contains only shared library and ruby interpreter. To get
154full-functional ruby environment install ruby-modules package.
155
a0a47c48
JR
156%description -l ja.UTF-8
157Rubyはシンプルかつ強力なオブジェクト指向スクリプト言語です.Rubyは最初
158から純粋なオブジェクト指向言語として設計されていますから,オブジェクト
15467dc7 159指向プログラミングを手軽に行う事が出来ます.もちろん通常の手続き型のプ ログラミングも可能です.
7c36cd5d 160
a0a47c48
JR
161%description -l pl.UTF-8
162Ruby to interpretowany język skryptowy, w sam raz dla łatwego i
163szybkiego pisania zorientowanych obiektowo programów. Ma wiele funkcji
164ułatwiających przetwarzanie plików tekstowych i wykonywanie prac
165związanych z zarządzaniem systemu (podobnie jak Perl). Jest prosty,
166rozszerzalny i przenośny.
6e2f9b3c 167
a0a47c48
JR
168Ten pakiet zawiera tylko bibliotekę dzieloną i interpreter ruby.
169Zainstaluj pakiet ruby-modules, jeżeli potrzebujesz w pełni
170funkcjonalnego środowiska ruby.
9fd96af7 171
a0a47c48
JR
172%description -l pt_BR.UTF-8
173Ruby é uma linguagem de script interpretada de programação orientada a
174objeto. Possui diversas características para processamento de texto. É
175simples, extensível e direta.
7c36cd5d 176
9fd96af7 177%package modules
178Summary: Ruby standard modules and utilities
3c3949cf 179Summary(pl.UTF-8): Standardowe moduły i narzędzia dla języka Ruby
9fd96af7 180Group: Development/Languages
181Requires: %{name} = %{epoch}:%{version}-%{release}
b688e9a5 182Suggests: ruby-rubygems
ee1edb11
ER
183Provides: ruby-bigdecimal = %{bigdecimal_ver}
184Provides: ruby-io-console = %{io_console_ver}
05f75f09
ER
185# ruby-modules deprecated, rpm5 generates ruby(abi) itself
186Provides: ruby-modules(ver) = %{ruby_version}
29a18971
ER
187# FIXME later
188Provides: ruby(abi) = %{ruby_version}
c8ae95d0 189%requires_ge_to openssl openssl-devel
9fd96af7 190
191%description modules
192Ruby standard modules and utilities:
193- erb - Tiny eRuby
7911cce0 194- testrb - automatic runner for Test::Unit of Ruby
9fd96af7 195
a0a47c48
JR
196%description modules -l pl.UTF-8
197Standardowe moduły i narzędzia Ruby:
198- erb - mały eRuby
7911cce0 199- testrb - automatyczny runner dla Ruby Test::Unit
9fd96af7 200
265d0efe 201%package tk
202Summary: Ruby/Tk bindings
3c3949cf 203Summary(pl.UTF-8): Wiązania Ruby/Tk
e65aac33 204Group: Development/Languages
69b51dc9 205Requires: %{name}-modules = %{epoch}:%{version}-%{release}
265d0efe 206
207%description tk
c659b270 208This package contains Ruby/Tk bindings.
e65aac33 209
a0a47c48
JR
210%description tk -l pl.UTF-8
211Ten pakiet zawiera wiązania Ruby/Tk.
265d0efe 212
e14a2f74 213%package devel
e14a2f74 214Summary: Ruby development libraries
3c3949cf 215Summary(pl.UTF-8): Biblioteki programistyczne interpretera języka Ruby
9434194f 216Group: Development/Languages
9fd96af7 217Requires: %{name}-modules = %{epoch}:%{version}-%{release}
92f362b7
ER
218Requires: gcc
219Requires: glibc-devel
b5465d0c 220Requires: pkgconfig
e14a2f74 221
222%description devel
9434194f
JB
223Ruby development libraries.
224
a0a47c48
JR
225%description devel -l pl.UTF-8
226Biblioteki programistyczne interpretera języka Ruby.
e14a2f74 227
87b9c30a 228%package static
229Summary: Ruby static libraries
3c3949cf 230Summary(pl.UTF-8): Biblioteki statyczne Ruby
87b9c30a 231Group: Development/Languages
f89d855e 232Requires: %{name}-devel = %{epoch}:%{version}-%{release}
87b9c30a 233
234%description static
235Ruby static libraries.
236
a0a47c48 237%description static -l pl.UTF-8
87b9c30a 238Biblioteki statyczne Ruby.
239
754b419a 240%package doc
9fd96af7 241Summary: Ruby HTML documentation
3c3949cf 242Summary(pl.UTF-8): Dokumentacja HTML do Ruby
9fd96af7 243Group: Documentation
00595cdb
ER
244%if "%{_rpmversion}" >= "5"
245BuildArch: noarch
246%endif
9fd96af7 247
248%description doc
249Ruby HTML documentation: FAQ, guide, core and standard library.
250
a0a47c48 251%description doc -l pl.UTF-8
d99a4382 252Dokumentacja HTML do Ruby: FAQ, przewodnik, dokumentacja dla core i
253stdlib.
69b51dc9 254
9fd96af7 255%package doc-ri
256Summary: Ruby ri documentation
3c3949cf 257Summary(pl.UTF-8): Dokumentacja Ruby w formacie ri
9fd96af7 258Group: Documentation
69b51dc9 259Requires: %{name}-modules = %{epoch}:%{version}-%{release}
00595cdb
ER
260%if "%{_rpmversion}" >= "5"
261BuildArch: noarch
262%endif
9fd96af7 263
264%description doc-ri
265Ruby ri documentation.
266
a0a47c48 267%description doc-ri -l pl.UTF-8
9fd96af7 268Dokumentacja Ruby w formacie ri.
269
270%package examples
271Summary: Ruby examples
3c3949cf 272Summary(pl.UTF-8): Przykłady dla języka Ruby
9fd96af7 273Group: Development/Languages
00595cdb
ER
274%if "%{_rpmversion}" >= "5"
275BuildArch: noarch
276%endif
9fd96af7 277
278%description examples
279Ruby examples.
280
a0a47c48
JR
281%description examples -l pl.UTF-8
282Przykłady programów w języku Ruby.
9fd96af7 283
d8228776 284# IMPORTANT: keep irb, rdoc, rubygems, rake, json as last packages as we reset epoch/version/release
116a558f
ER
285# and %{version},%{release} macros may not be used directly as they take last
286# subpackage value not main package one what you intend to use
63b8d212 287
d8228776
ER
288%package irb
289Summary: The Interactive Ruby
290Version: %{irb_ver}
7cb22c75 291Release: %{pkg_version}.%{rel}
d8228776 292Epoch: 0
c659b270 293Group: Development/Languages
7cb22c75 294Requires: %{name}-modules = 1:%{pkg_version}-%{rel}
d8228776
ER
295Provides: irb = %{version}-%{release}
296Provides: ruby(irb) = %{version}-%{release}
297%if "%{_rpmversion}" >= "5"
298BuildArch: noarch
299%endif
300
301%description irb
302The irb is acronym for Interactive Ruby. It evaluates ruby expression
303from the terminal.
304
2db0575e
ER
305%package rdoc
306Summary: A tool to generate HTML and command-line documentation for Ruby projects
3349e6ba 307Summary(pl.UTF-8): Narzędzie do generowania dokumentacji HTML i linii poleceń dla projektów w Rubym
2db0575e 308Version: %{rdoc_ver}
7cb22c75 309Release: %{pkg_version}.%{rel}
2db0575e 310Epoch: 0
3112d6a6
ER
311# SIL: lib/rdoc/generator/template/darkfish/css/fonts.css
312License: GPLv2 and Ruby and MIT and SIL
2db0575e 313Group: Development/Libraries
1a82b364
JR
314Requires: %{name}-irb >= %{irb_ver}
315Requires: %{name}-json >= %{json_ver}
7cb22c75 316Requires: %{name}-modules = 1:%{pkg_version}-%{rel}
ee1edb11 317Obsoletes: rdoc <= 0.9.0
00595cdb
ER
318%if "%{_rpmversion}" >= "5"
319BuildArch: noarch
320%endif
2db0575e
ER
321
322%description rdoc
323RDoc produces HTML and command-line documentation for Ruby projects.
324RDoc includes the 'rdoc' and 'ri' tools for generating and displaying
325online documentation.
326
3349e6ba
JB
327%description rdoc -l pl.UTF-8
328RDoc tworzy dokumentację HTML i linii poleceń dla projektów w języku
329Ruby. RDoc zawiera narzędzia 'rdoc' i 'ri' do generowania i
330wyświetlania dokumentacji online.
331
44802bd7 332%package rubygems
3349e6ba
JB
333Summary: RubyGems - the Ruby standard for packaging Ruby libraries
334Summary(pl.UTF-8): RubyGems - standard Ruby'ego pakietowania bibliotek
941981c7 335Version: %{rubygems_ver}
7cb22c75 336Release: %{pkg_version}.%{rel}
bd4c2526 337Epoch: 0
941981c7
ER
338License: Ruby or MIT
339Group: Development/Libraries
7cb22c75 340Requires: %{name}-modules = 1:%{pkg_version}-%{rel}
941981c7 341Requires: %{name}-rdoc >= %{rdoc_ver}
92f362b7 342Suggests: %{name}-devel
44802bd7
ER
343Provides: rubygems = %{rubygems_ver}
344%if "%{_rpmversion}" >= "5"
345BuildArch: noarch
346%endif
347
348%description rubygems
349RubyGems is the Ruby standard for publishing and managing third party
350libraries.
351
3349e6ba
JB
352%description rubygems -l pl.UTF-8
353RubyGems to standardowe narzędzie języka Ruby do publikowania i
354zarządzania zewnętrznymi bibliotekami.
355
63b8d212
ER
356%package rake
357Summary: Rake is a Make-like program implemented in Ruby
358Summary(pl.UTF-8): Program typu Make dla języka Ruby
359Version: %{rake_ver}
7cb22c75 360Release: %{pkg_version}.%{rel}
63b8d212
ER
361Epoch: 0
362License: MIT
363Group: Development/Languages
364Provides: rake = %{rake_ver}
2531db89 365Conflicts: ruby-modules < 1:1.9.3.429-2
63b8d212
ER
366%if "%{_rpmversion}" >= "5"
367BuildArch: noarch
368%endif
369
370%description rake
371Rake is a simple Ruby build program with capabilities similar to make.
372
373It has the following features:
374- Rakefiles (rake's version of Makefiles) are completely defined in
375 standard Ruby syntax. No XML files to edit. No quirky Makefile syntax
376 to worry about (is that a tab or a space?)
377- Users can specify tasks with prerequisites.
378- Rake supports rule patterns to synthesize implicit tasks.
379- Rake is lightweight. It can be distributed with other projects as a
380 single file. Projects that depend upon rake do not require that rake
381 be installed on target systems.
382
383%description rake -l pl.UTF-8
384Rake to prosty program do budowania w języku Ruby o możliwościach
385podobnych do make.
386
387Ma następujące cechy:
388- Pliki Rakefile (rake'owa odmiana plików Makefile) są definiowane
389 całkowicie w standardowej składni języka Ruby. Nie trzeba modyfikować
390 plików XML. Nie trzeba martwić się kaprysami składni Makefile (czy to
391 tabulacja czy spacja?).
392- Użytkownicy mogą określać zadania z ich zależnościami.
393- Rake obsługuje wzorce reguł do tworzenia z nich wynikowych zadań.
394- Rake jest lekki. Może być rozpowszechniany z innymi projektami jako
395 pojedynczy plik. Projekty używające rake'a nie wymagają go
396 zainstalowanego na systemach docelowych.
397
7e87bcc1
ER
398%package json
399Summary: JSON library for Ruby
400Summary(pl.UTF-8): Biblioteka JSON dla języka Ruby
401Version: %{json_ver}
7cb22c75 402Release: %{pkg_version}.%{rel}
7e87bcc1 403Epoch: 0
3112d6a6
ER
404# UCD: ext/json/generator/generator.c
405License: (Ruby or GPLv2) and UCD
7e87bcc1
ER
406Group: Development/Languages
407Obsoletes: ruby-json-rubyforge
2531db89 408Conflicts: ruby-modules < 1:1.9.3.429-3
7e87bcc1
ER
409
410%description json
411This is a JSON implementation as a Ruby extension in C.
412
413%description json -l pl.UTF-8
414Biblioteka JSON dla języka Ruby.
415
cac72f51
ER
416%package minitest
417Summary: Minitest provides a complete suite of testing facilities
418Version: %{minitest_ver}
419Release: %{pkg_version}.%{rel}
420Epoch: 0
421License: MIT
422Group: Development/Libraries
423%if "%{_rpmversion}" >= "5"
424BuildArch: noarch
425%endif
426
427%description minitest
428minitest/unit is a small and incredibly fast unit testing framework.
429
430minitest/spec is a functionally complete spec engine.
431
432minitest/benchmark is an awesome way to assert the performance of your
433algorithms in a repeatable manner.
434
435minitest/mock by Steven Baker, is a beautifully tiny mock object
436framework.
437
438minitest/pride shows pride in testing and adds coloring to your test
439output.
440
3112d6a6
ER
441%package power_assert
442# The Summary/Description fields are rather poor.
443# https://github.com/k-tsj/power_assert/issues/3
444Summary: Power Assert for Ruby
445Version: %{power_assert_ver}
446Release: %{pkg_version}.%{rel}
447Epoch: 0
448License: Ruby or BSD
449Group: Development/Libraries
450%if "%{_rpmversion}" >= "5"
451BuildArch: noarch
452%endif
453
454%description power_assert
455Power Assert for Ruby.
456
457%package test-unit
458# The Summary/Description fields are rather poor.
459# https://github.com/test-unit/test-unit/issues/73
460Summary: Improved version of Test::Unit bundled in Ruby 1.8.x
461Version: %{test_unit_ver}
462Release: %{pkg_version}.%{rel}
463Epoch: 0
464Group: Development/Libraries
465# lib/test/unit/diff.rb is a double license of the Ruby license and PSF license.
466# lib/test-unit.rb is a dual license of the Ruby license and LGPLv2.1 or later.
467License: (Ruby or BSD) and (Ruby or BSD or Python) and (Ruby or BSD or LGPLv2+)
468%if "%{_rpmversion}" >= "5"
469BuildArch: noarch
470%endif
471
472%description test-unit
473Ruby 1.9.x bundles minitest not Test::Unit. Test::Unit bundled in Ruby
4741.8.x had not been improved but unbundled Test::Unit (test-unit) is
475improved actively.
476
4ab119cd 477%prep
7cb22c75 478%setup -q -n %{oname}-%{pkg_version} -a1 -a2 -a3 %{?with_bootstrap:-a100}
933aeb0e 479%patch0 -p1
1c3d4237 480#%patch1 -p1
360c41c0 481%patch2 -p1
313c55d4
ER
482%patch3 -p1
483%patch4 -p1
3112d6a6 484#%patch5 -p1
1c3d4237 485%patch6 -p1
5a5c66dc 486#%patch8 -p1
45f22c60 487%patch9 -p1
a319cc02 488%patch12 -p1
360c41c0
JR
489
490# must be regenerated with new bison
491%{__rm} parse.{c,h}
4ab119cd 492
3112d6a6
ER
493# Remove bundled libraries to be sure they are not used.
494%{__rm} -r ext/psych/yaml
495%{__rm} -r ext/fiddle/libffi*
496
f52a91a3
ER
497# Install custom operating_system.rb.
498install -d lib/rubygems/defaults
499cp -p %{SOURCE6} lib/rubygems/defaults
500
b2f04116
JR
501find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
502
503find -type f '(' -name '*.rb' -o -name '*.cgi' -o -name '*.test' \
504 -o -name 'ruby.1' -o -name '*.html' -o -name '*.tcl' ')' \
bb5582fa 505 | xargs %{__sed} -i 's,/usr/local/bin/,%{_bindir}/,'
e7754311 506
4730786e
ER
507# no configure option to disable, so just rm
508%{!?with_tk:rm -rf ext/tk}
509
4ab119cd 510%build
de9418ad
ER
511rubygems_ver=$(awk '/VERSION =/ && $1 == "VERSION" {print $3}' lib/rubygems.rb | xargs)
512if [ $rubygems_ver != %{rubygems_ver} ]; then
513 echo "Set %%define rubygems_ver to $rubygems_ver and re-run."
514 exit 1
515fi
593ae364
ER
516rdoc_ver=$(awk '/VERSION =/ && $1 == "VERSION" {print $3}' lib/rdoc.rb | xargs)
517if [ $rdoc_ver != %{rdoc_ver} ]; then
518 echo "Set %%define rdoc_ver to $rdoc_ver and re-run."
519 exit 1
520fi
de9418ad 521
8ea447c1 522cp -f /usr/share/automake/config.sub .
a5f9b7ff 523
92ff5331 524# build ruby-1.8.7 first
525%if %{with bootstrap}
9c41e51a 526cd %{oname}-1.8.7-p330
92ff5331 527%configure
528%{__make}
529cd ..
530%endif
531
8ea447c1 532%{__autoconf}
ecde9c47 533%configure \
9c41e51a
ER
534 %{?with_bootstrap:--with-baseruby=%{oname}-1.8.7-p330/miniruby} \
535 --program-suffix=%{ruby_suffix} \
a319cc02 536 --with-archlibdir=%{_libdir} \
45f22c60
ER
537 --with-rubygemsdir=%{rubygems_dir} \
538 --with-rubylibprefix=%{ruby_libdir} \
539 --with-rubyarchprefix=%{ruby_archdir} \
540 --with-sitedir=%{ruby_sitelibdir} \
44d1acb8 541 --with-sitearchdir=%{ruby_sitearchdir} \
45f22c60 542 --with-vendordir=%{ruby_vendorlibdir} \
44d1acb8 543 --with-vendorarchdir=%{ruby_vendorarchdir} \
45f22c60
ER
544 --with-rubyhdrdir=%{_includedir}/%{oname}-%{ruby_version} \
545 --with-rubyarchhdrdir=%{_includedir}/%{oname}-%{ruby_version} \
546 --with-sitearchhdrdir='$(sitehdrdir)/$(arch)' \
547 --with-vendorarchhdrdir='$(vendorhdrdir)/$(arch)' \
45f22c60 548 --enable-multiarch \
7cb22c75
JB
549 --enable-pthread \
550 --enable-shared \
96c2e1a4 551 --disable-install-doc \
7cb22c75 552 --disable-rubygems \
1a83bc11 553 --with-ruby-version='' \
4ab119cd 554
dbf8f91d 555%{__make} -j1 main \
2690877c 556 COPY="cp -p" Q= \
9c41e51a 557 %{?with_bootstrap:BASERUBY="%{oname}-1.8.7-p330/miniruby -I./ruby-1.8.7-p330/lib"}
aa58dbf5 558
d0f5536d 559%if %{with doc}
98757242 560%{__make} -j1 rdoc
d0f5536d 561%endif
53830491 562
c588a52c 563%if %{with tests}
fff139e1
ER
564# unset these, as testsuite does "git commit" somewhere, which points to pld .spec repo. doh
565unset GIT_DIR GIT_WORK_TREE
566
567unset GIT
c588a52c
ER
568DISABLE_TESTS=""
569
570%ifarch armv7l armv7hl armv7hnl
571# test_call_double(DL::TestDL) fails on ARM HardFP
572# http://bugs.ruby-lang.org/issues/6592
573DISABLE_TESTS="-x test_dl2.rb $DISABLE_TESTS"
574%endif
575
576# test_debug(TestRubyOptions) fails due to LoadError reported in debug mode,
577# when abrt.rb cannot be required (seems to be easier way then customizing
578# the test suite).
579touch abrt.rb
580
581# TestSignal#test_hup_me hangs up the test suite.
582# http://bugs.ruby-lang.org/issues/8997
583sed -i '/def test_hup_me/,/end if Process.respond_to/ s/^/#/' test/ruby/test_signal.rb
584
585# Fix "Could not find 'minitest'" error.
586# http://bugs.ruby-lang.org/issues/9259
587sed -i "/^ gem 'minitest', '~> 4.0'/ s/^/#/" lib/rubygems/test_case.rb
588
589# Segmentation fault.
590# https://bugs.ruby-lang.org/issues/9198
591sed -i '/^ def test_machine_stackoverflow/,/^ end/ s/^/#/' test/ruby/test_exception.rb
592
593# Don't test wrap ciphers to prevent "OpenSSL::Cipher::CipherError: wrap mode
594# not allowed" error.
595# https://bugs.ruby-lang.org/issues/10229
596sed -i '/assert(OpenSSL::Cipher::Cipher.new(name).is_a?(OpenSSL::Cipher::Cipher))/i \
597 next if /wrap/ =~ name' test/openssl/test_cipher.rb
598
599# Test is broken due to SSLv3 disabled in Fedora.
600# https://bugs.ruby-lang.org/issues/10046
601sed -i '/def test_ctx_server_session_cb$/,/^ end$/ s/^/#/' test/openssl/test_ssl_session.rb
602
603%{__make} check TESTS="-v $DISABLE_TESTS"
604%endif
605
4ab119cd 606%install
607rm -rf $RPM_BUILD_ROOT
413a1967 608install -d $RPM_BUILD_ROOT{%{ruby_rdocdir},%{ruby_ridir}} \
bf0e52e2 609 $RPM_BUILD_ROOT%{ruby_vendorarchdir} \
f1a7abab 610 $RPM_BUILD_ROOT%{ruby_vendorlibdir}/net \
08c2f6e5 611 $RPM_BUILD_ROOT%{ruby_vendorlibdir}/data \
1968db6d 612
df9a7ee8 613%{__make} install %{?with_doc:install-doc -j1} \
ecde9c47 614 DESTDIR=$RPM_BUILD_ROOT
d041de24 615
c24d5840
ER
616# Version is empty if --with-ruby-version is specified.
617# http://bugs.ruby-lang.org/issues/7807
618sed -i -e 's/Version: \${ruby_version}/Version: %{ruby_version}/' $RPM_BUILD_ROOT%{_pkgconfigdir}/%{oname}-%{ruby_version}.pc
619
c588a52c
ER
620# Kill bundled certificates, as they should be part of ca-certificates.
621for cert in \
622 Class3PublicPrimaryCertificationAuthority.pem \
623 DigiCertHighAssuranceEVRootCA.pem \
624 EntrustnetSecureServerCertificationAuthority.pem \
625 GeoTrustGlobalCA.pem \
3112d6a6
ER
626 AddTrustExternalCARoot.pem \
627 AddTrustExternalCARoot-2048.pem \
90c8123f 628; do
c588a52c
ER
629 %{__rm} $RPM_BUILD_ROOT%{rubygems_dir}/rubygems/ssl_certs/$cert
630done
631
7cb22c75
JB
632install -d $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}
633cp -Rf sample/* $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}
9c41e51a
ER
634cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_mandir}/man1/rdoc%{ruby_suffix}.1
635cp -p %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man1/testrb%{ruby_suffix}.1
18e966a7 636
5c3d5a0e 637%{__rm} -rf $RPM_BUILD_ROOT%{_docdir}/%{name}/html
698147c7 638
a6d548c5 639# detect this runtime, "make install" is affected by operating_system.rb what is installed in system!
f144cce6 640gem_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
641
642# Move gems root into common directory, out of Ruby directory structure.
643install -d $RPM_BUILD_ROOT%{gem_dir}
7cb22c75 644%{__mv} $RPM_BUILD_ROOT${gem_dir}/{gems,specifications} $RPM_BUILD_ROOT%{gem_dir}
a6d548c5
ER
645
646# Move bundled rubygems to %gem_dir
647# make symlinks for io-console and bigdecimal, which are considered to be part of stdlib by other Gems
648# make symlinks for all packages, so they would work without rubygems
649# NOTE: when making symlinks, do not symlink paths that could be directories,
650# as there may came files from other packages as well. actually, unlikely as
651# the links to got system dir and only ruby may package there (other distro
c24d5840 652# packages should go to vendor dirs)
a6d548c5 653install -d $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/lib
7cb22c75 654%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/rake* $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/lib
a6d548c5
ER
655ln -s %{gem_dir}/gems/rake-%{rake_ver}/lib/rake $RPM_BUILD_ROOT%{ruby_libdir}
656ln -s %{gem_dir}/gems/rake-%{rake_ver}/lib/rake.rb $RPM_BUILD_ROOT%{ruby_libdir}
7cb22c75 657%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/rake-%{rake_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
658
659install -d $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
7cb22c75 660%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/rdoc* $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
a6d548c5
ER
661ln -s %{gem_dir}/gems/rdoc-%{rdoc_ver}/lib/rdoc $RPM_BUILD_ROOT%{ruby_libdir}
662ln -s %{gem_dir}/gems/rdoc-%{rdoc_ver}/lib/rdoc.rb $RPM_BUILD_ROOT%{ruby_libdir}
7cb22c75 663%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/rdoc-%{rdoc_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
664
665install -d $RPM_BUILD_ROOT%{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib
666install -d $RPM_BUILD_ROOT%{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
7cb22c75
JB
667%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/bigdecimal $RPM_BUILD_ROOT%{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib
668%{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal.so $RPM_BUILD_ROOT%{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
669%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/bigdecimal-%{bigdecimal_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
670ln -s %{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal $RPM_BUILD_ROOT%{ruby_libdir}/bigdecimal
671ln -s %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal.so $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal.so
672
673install -d $RPM_BUILD_ROOT%{gem_dir}/gems/io-console-%{io_console_ver}/lib
674install -d $RPM_BUILD_ROOT%{gem_libdir}/io-console-%{io_console_ver}/lib/io
7cb22c75
JB
675%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/io $RPM_BUILD_ROOT%{gem_dir}/gems/io-console-%{io_console_ver}/lib
676%{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/io/console.so $RPM_BUILD_ROOT%{gem_libdir}/io-console-%{io_console_ver}/lib/io
677%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/io-console-%{io_console_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
678ln -s %{gem_dir}/gems/io-console-%{io_console_ver}/lib/io $RPM_BUILD_ROOT%{ruby_libdir}/io
679ln -s %{gem_libdir}/io-console-%{io_console_ver}/lib/io/console.so $RPM_BUILD_ROOT%{ruby_libarchdir}/io/console.so
680
681install -d $RPM_BUILD_ROOT%{gem_dir}/gems/json-%{json_ver}/lib
682install -d $RPM_BUILD_ROOT%{gem_libdir}/json-%{json_ver}/lib
7cb22c75
JB
683%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/json* $RPM_BUILD_ROOT%{gem_dir}/gems/json-%{json_ver}/lib
684%{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/json $RPM_BUILD_ROOT%{gem_libdir}/json-%{json_ver}/lib
685%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/json-%{json_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
686ln -s %{gem_dir}/gems/json-%{json_ver}/lib/json $RPM_BUILD_ROOT%{ruby_libdir}/json
687ln -s %{gem_dir}/gems/json-%{json_ver}/lib/json.rb $RPM_BUILD_ROOT%{ruby_libdir}/json.rb
688install -d $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
689ln -s %{gem_libdir}/json-%{json_ver}/lib/json/ext/parser.so $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
690ln -s %{gem_libdir}/json-%{json_ver}/lib/json/ext/generator.so $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
691
a6d548c5 692ln -s %{gem_dir}/gems/minitest-%{minitest_ver}/lib/minitest $RPM_BUILD_ROOT%{ruby_libdir}
a6d548c5 693
a6d548c5 694install -d $RPM_BUILD_ROOT%{ruby_libdir}/test
a6d548c5 695ln -s %{gem_dir}/gems/test-unit-%{test_unit_ver}/lib/unit $RPM_BUILD_ROOT%{ruby_libdir}/test
a6d548c5
ER
696
697install -d $RPM_BUILD_ROOT%{gem_dir}/gems/psych-%{psych_ver}/lib
698install -d $RPM_BUILD_ROOT%{gem_libdir}/psych-%{psych_ver}/lib
7cb22c75
JB
699%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/psych* $RPM_BUILD_ROOT%{gem_dir}/gems/psych-%{psych_ver}/lib
700%{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/psych.so $RPM_BUILD_ROOT%{gem_libdir}/psych-%{psych_ver}/lib/
701%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/psych-%{psych_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
702ln -s %{gem_dir}/gems/psych-%{psych_ver}/lib/psych $RPM_BUILD_ROOT%{ruby_libdir}/psych
703ln -s %{gem_dir}/gems/psych-%{psych_ver}/lib/psych.rb $RPM_BUILD_ROOT%{ruby_libdir}/psych.rb
704ln -s %{gem_libdir}/psych-%{psych_ver}/lib/psych.so $RPM_BUILD_ROOT%{ruby_archdir}/psych.so
705
706# Adjust the gemspec files so that the gems will load properly
707sed -i '/^end$/ i\
708 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/rake-%{rake_ver}.gemspec
709
710sed -i '/^end$/ i\
711 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/rdoc-%{rdoc_ver}.gemspec
712
713sed -i '/^end$/ i\
714 s.require_paths = ["lib"]\
715 s.extensions = ["bigdecimal.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/bigdecimal-%{bigdecimal_ver}.gemspec
716
717sed -i '/^end$/ i\
718 s.require_paths = ["lib"]\
719 s.extensions = ["io/console.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/io-console-%{io_console_ver}.gemspec
720
721sed -i '/^end$/ i\
722 s.require_paths = ["lib"]\
723 s.extensions = ["json/ext/parser.so", "json/ext/generator.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/json-%{json_ver}.gemspec
724
725sed -i '/^end$/ i\
726 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/minitest-%{minitest_ver}.gemspec
727
3112d6a6
ER
728# Push the .gemspecs through the RubyGems to let them write the stub headers.
729# This speeds up loading of libraries and avoids warnings in Spring:
730# https://github.com/rubygems/rubygems/pull/694
731for s in rake-%{rake_ver}.gemspec rdoc-%{rdoc_ver}.gemspec json-%{json_ver}.gemspec; do
732 s="$RPM_BUILD_ROOT%{gem_dir}/specifications/$s"
733 %{__make} runruby TESTRUN_SCRIPT="-rubygems \
734 -e \"spec = Gem::Specification.load('$s')\" \
735 -e \"File.write '$s', spec.to_ruby\""
736done
737
9c41e51a 738ln -sf %{gem_dir}/gems/rake-%{rake_ver}/bin/rake $RPM_BUILD_ROOT%{_bindir}/rake%{ruby_suffix}
63b8d212 739
7cb22c75
JB
740%{__sed} -i -e '1s,/usr/bin/env ruby,/usr/bin/ruby,' \
741 $RPM_BUILD_ROOT%{ruby_libdir}/abbrev.rb \
742 $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/bin/rake \
743 $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/bin/rdoc \
744 $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/bin/ri \
7cb22c75
JB
745 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/{cal,test,time,uumerge}.rb \
746 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/{drb,logger,openssl,ripper,rss}/*.rb \
747 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/webrick/*.cgi
748
87437a24
ER
749# gem non library files
750%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/minitest-%{minitest_ver}/test
751%{__rm} $RPM_BUILD_ROOT%{gem_dir}/gems/minitest-%{minitest_ver}/{[A-Z]*,.??*,design_rationale.rb}
752%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/test-unit-%{test_unit_ver}/{doc,sample,test}
753%{__rm} $RPM_BUILD_ROOT%{gem_dir}/gems/test-unit-%{test_unit_ver}/[A-Z]*
754%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/power_assert-%{power_assert_ver}/test
755%{__rm} $RPM_BUILD_ROOT%{gem_dir}/gems/power_assert-%{power_assert_ver}/{[A-Z]*,.??*,power_assert.gemspec}
76a22994 756
15467dc7 757%if %{without batteries}
b2f04116 758# packaged separately
05f75f09 759%{__rm} -r $RPM_BUILD_ROOT%{ruby_libdir}/{rubygems,rake,json,minitest}
0b1956f4 760%{__rm} -r $RPM_BUILD_ROOT%{ruby_archdir}/json
7179288b 761%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rake-*
0b1956f4 762%{__rm} $RPM_BUILD_ROOT%{ruby_libdir}/{rake,rubygems,json}.rb
92ff5331 763%{__rm} $RPM_BUILD_ROOT%{_bindir}/{gem,rake}
764%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/rake*
45f22c60 765%{__rm} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/{json,minitest,rake}-*.gemspec
7179288b 766%{?with_doc:%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/ri/%{ruby_version}/system/JSON}
15467dc7 767%endif
1968db6d 768
44802bd7 769%if %{with doc}
d78ec589 770# too much .ri
2db0575e
ER
771%{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/cache.ri
772%{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/created.rid
15467dc7 773%endif
1968db6d 774
4ab119cd 775%clean
776rm -rf $RPM_BUILD_ROOT
777
d041de24
JR
778%post -p /sbin/ldconfig
779%postun -p /sbin/ldconfig
4ab119cd 780
781%files
782%defattr(644,root,root,755)
3112d6a6 783%doc NEWS LEGAL BSDL README.md README.EXT ChangeLog
9c41e51a 784%attr(755,root,root) %{_bindir}/ruby%{ruby_suffix}
529ff870 785%attr(755,root,root) %{_libdir}/libruby.so.*.*.*
eee72344 786%attr(755,root,root) %ghost %{_libdir}/libruby.so.%{ruby_version}
9c41e51a 787%{_mandir}/man1/ruby%{ruby_suffix}.1*
05f75f09 788
9c41e51a
ER
789%dir %{_libdir}/%{oname}
790%dir %{_libdir}/%{oname}/%{vendordir}
791%dir %{_datadir}/%{oname}
0b1956f4 792
be8e7b24 793%dir %{ruby_libdir}
5c3d5a0e 794%dir %{ruby_archdir}
be8e7b24 795%dir %{ruby_vendorlibdir}
be8e7b24 796%dir %{ruby_vendorarchdir}
31058abe 797
df9a7ee8 798%dir %{dirname:%{ruby_ridir}}
2db0575e 799%dir %{ruby_ridir}
a43d66d8 800%dir %{ruby_rdocdir}
9fd96af7 801
f1a7abab 802# common dirs for ruby vendor modules
08c2f6e5 803%dir %{ruby_vendorlibdir}/data
f1a7abab
ER
804%dir %{ruby_vendorlibdir}/net
805
9fd96af7 806%files devel
807%defattr(644,root,root,755)
529ff870 808%attr(755,root,root) %{_libdir}/libruby.so
9c41e51a 809%{_includedir}/%{oname}-%{ruby_version}
c24d5840 810%{_pkgconfigdir}/%{oname}-%{ruby_version}.pc
b5465d0c 811%{ruby_libdir}/mkmf.rb
9fd96af7 812
813%files static
814%defattr(644,root,root,755)
529ff870 815%{_libdir}/libruby-static.a
9fd96af7 816
15ecb21e 817%if %{with tk}
9fd96af7 818%files tk
819%defattr(644,root,root,755)
7cb22c75
JB
820%doc ext/tk/{ChangeLog.tkextlib,MANUAL_tcltklib.eng,README.fork}
821%lang(ja) %doc ext/tk/MANUAL_tcltklib.ja
822%{ruby_libdir}/multi-tk.rb
823%{ruby_libdir}/remote-tk.rb
0b1956f4
ER
824%{ruby_libdir}/tcltk.rb
825%{ruby_libdir}/tk*.rb
826%{ruby_libdir}/tk
827%{ruby_libdir}/tkextlib
7cb22c75
JB
828%attr(755,root,root) %{ruby_archdir}/tcltklib.so
829%attr(755,root,root) %{ruby_archdir}/tkutil.so
15ecb21e 830%endif
9fd96af7 831
d8228776
ER
832%files irb
833%defattr(644,root,root,755)
9c41e51a 834%attr(755,root,root) %{_bindir}/irb%{ruby_suffix}
d8228776
ER
835%{ruby_libdir}/irb.rb
836%{ruby_libdir}/irb
9c41e51a 837%{_mandir}/man1/irb%{ruby_suffix}.1*
d8228776 838
2db0575e 839%files rdoc
9fd96af7 840%defattr(644,root,root,755)
9c41e51a
ER
841%attr(755,root,root) %{_bindir}/rdoc%{ruby_suffix}
842%attr(755,root,root) %{_bindir}/ri%{ruby_suffix}
843%{_mandir}/man1/rdoc%{ruby_suffix}.1*
2db0575e
ER
844%{ruby_libdir}/rdoc
845%dir %{gem_dir}/gems/rdoc-%{rdoc_ver}
a6d548c5 846%{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
2db0575e
ER
847%dir %{gem_dir}/gems/rdoc-%{rdoc_ver}/bin
848%attr(755,root,root) %{gem_dir}/gems/rdoc-%{rdoc_ver}/bin/rdoc
849%{gem_dir}/specifications/rdoc-%{rdoc_ver}.gemspec
850%attr(755,root,root) %{gem_dir}/gems/rdoc-%{rdoc_ver}/bin/ri
851
44802bd7
ER
852%if %{with batteries}
853%files rubygems
941981c7 854%defattr(644,root,root,755)
9c41e51a 855%attr(755,root,root) %{_bindir}/gem%{ruby_suffix}
f493239c
ER
856%{rubygems_dir}/rubygems
857%{rubygems_dir}/rubygems.rb
858%{rubygems_dir}/ubygems.rb
45f22c60 859%{rubygems_dir}/rbconfig
63b8d212
ER
860
861%files rake
862%defattr(644,root,root,755)
9c41e51a
ER
863%attr(755,root,root) %{_bindir}/rake%{ruby_suffix}
864%{_mandir}/man1/rake%{ruby_suffix}.1*
63b8d212 865%{ruby_libdir}/rake
05bcc29a 866%{ruby_libdir}/rake.rb
63b8d212 867%dir %{gem_dir}/gems/rake-%{rake_ver}
a6d548c5 868%{gem_dir}/gems/rake-%{rake_ver}/lib
63b8d212
ER
869%dir %{gem_dir}/gems/rake-%{rake_ver}/bin
870%attr(755,root,root) %{gem_dir}/gems/rake-%{rake_ver}/bin/rake
871%{gem_dir}/specifications/rake-%{rake_ver}.gemspec
7e87bcc1
ER
872
873%files json
874%defattr(644,root,root,755)
875%{ruby_libdir}/json
876%dir %{ruby_archdir}/json
877%dir %{ruby_archdir}/json/ext
878%attr(755,root,root) %{ruby_archdir}/json/ext/*.so
a6d548c5
ER
879
880%dir %{gem_libdir}/json-%{json_ver}
881%dir %{gem_libdir}/json-%{json_ver}/lib
882%dir %{gem_libdir}/json-%{json_ver}/lib/json
883%dir %{gem_libdir}/json-%{json_ver}/lib/json/ext
884%attr(755,root,root) %{gem_libdir}/json-%{json_ver}/lib/json/ext/generator.so
885%attr(755,root,root) %{gem_libdir}/json-%{json_ver}/lib/json/ext/parser.so
886
887%{gem_dir}/gems/json-%{json_ver}
7e87bcc1 888%{gem_dir}/specifications/json-%{json_ver}.gemspec
44802bd7
ER
889%endif
890
74ff0589
ER
891%files power_assert
892%defattr(644,root,root,755)
87437a24
ER
893%dir %{gem_dir}/gems/power_assert-%{power_assert_ver}
894%{gem_dir}/gems/power_assert-%{power_assert_ver}/lib
74ff0589
ER
895%{gem_dir}/specifications/power_assert-%{power_assert_ver}.gemspec
896
cac72f51
ER
897%files minitest
898%defattr(644,root,root,755)
899%{ruby_libdir}/minitest
900%{gem_dir}/gems/minitest-%{minitest_ver}
cac72f51
ER
901%{gem_dir}/specifications/minitest-%{minitest_ver}.gemspec
902
76a22994
ER
903%files test-unit
904%defattr(644,root,root,755)
905%dir %{gem_dir}/gems/test-unit-%{test_unit_ver}
906%{gem_dir}/gems/test-unit-%{test_unit_ver}/lib
907%{gem_dir}/specifications/test-unit-%{test_unit_ver}.gemspec
908%{_mandir}/man1/testrb%{ruby_suffix}.1*
909
9fd96af7 910%files modules
911%defattr(644,root,root,755)
9c41e51a 912%attr(755,root,root) %{_bindir}/erb%{ruby_suffix}
0b1956f4 913%{ruby_libdir}/cgi
1c3d4237 914#%{ruby_libdir}/date
0b1956f4 915%{ruby_libdir}/digest
1c3d4237 916#%{ruby_libdir}/dl
0b1956f4
ER
917%{ruby_libdir}/drb
918%{ruby_libdir}/fiddle
919%{ruby_libdir}/io
0b1956f4 920%{ruby_libdir}/matrix
0b1956f4
ER
921%{ruby_libdir}/net
922%{ruby_libdir}/openssl
923%{ruby_libdir}/optparse
0b1956f4
ER
924%{ruby_libdir}/racc
925%{ruby_libdir}/rbconfig
0b1956f4
ER
926%{ruby_libdir}/rexml
927%{ruby_libdir}/rinda
928%{ruby_libdir}/ripper
929%{ruby_libdir}/rss
930%{ruby_libdir}/shell
45f22c60 931%{ruby_libdir}/syslog
0b1956f4
ER
932%{ruby_libdir}/test
933%{ruby_libdir}/uri
934%{ruby_libdir}/webrick
935%{ruby_libdir}/xmlrpc
936%{ruby_libdir}/yaml
ba0bcd1d
ER
937
938%{ruby_libdir}/English.rb
939%{ruby_libdir}/abbrev.rb
940%{ruby_libdir}/base64.rb
941%{ruby_libdir}/benchmark.rb
942%{ruby_libdir}/cgi.rb
943%{ruby_libdir}/cmath.rb
1c3d4237 944#%{ruby_libdir}/complex.rb
ba0bcd1d
ER
945%{ruby_libdir}/csv.rb
946%{ruby_libdir}/date.rb
947%{ruby_libdir}/debug.rb
948%{ruby_libdir}/delegate.rb
949%{ruby_libdir}/digest.rb
1c3d4237 950#%{ruby_libdir}/dl.rb
ba0bcd1d
ER
951%{ruby_libdir}/drb.rb
952%{ruby_libdir}/e2mmap.rb
953%{ruby_libdir}/erb.rb
954%{ruby_libdir}/expect.rb
955%{ruby_libdir}/fiddle.rb
956%{ruby_libdir}/fileutils.rb
957%{ruby_libdir}/find.rb
958%{ruby_libdir}/forwardable.rb
959%{ruby_libdir}/getoptlong.rb
1c3d4237 960#%{ruby_libdir}/gserver.rb
ba0bcd1d
ER
961%{ruby_libdir}/ipaddr.rb
962%{ruby_libdir}/json.rb
963%{ruby_libdir}/kconv.rb
964%{ruby_libdir}/logger.rb
965%{ruby_libdir}/mathn.rb
966%{ruby_libdir}/matrix.rb
967%{ruby_libdir}/monitor.rb
968%{ruby_libdir}/mutex_m.rb
969%{ruby_libdir}/observer.rb
970%{ruby_libdir}/open-uri.rb
971%{ruby_libdir}/open3.rb
972%{ruby_libdir}/openssl.rb
94592386 973%{ruby_libdir}/optionparser.rb
ba0bcd1d
ER
974%{ruby_libdir}/optparse.rb
975%{ruby_libdir}/ostruct.rb
976%{ruby_libdir}/pathname.rb
977%{ruby_libdir}/pp.rb
978%{ruby_libdir}/prettyprint.rb
979%{ruby_libdir}/prime.rb
980%{ruby_libdir}/profile.rb
981%{ruby_libdir}/profiler.rb
982%{ruby_libdir}/pstore.rb
983%{ruby_libdir}/psych.rb
1c3d4237 984#%{ruby_libdir}/rational.rb
ba0bcd1d
ER
985%{ruby_libdir}/rdoc.rb
986%{ruby_libdir}/resolv-replace.rb
987%{ruby_libdir}/resolv.rb
988%{ruby_libdir}/ripper.rb
989%{ruby_libdir}/rss.rb
990%{ruby_libdir}/scanf.rb
991%{ruby_libdir}/securerandom.rb
992%{ruby_libdir}/set.rb
993%{ruby_libdir}/shell.rb
994%{ruby_libdir}/shellwords.rb
995%{ruby_libdir}/singleton.rb
996%{ruby_libdir}/socket.rb
997%{ruby_libdir}/sync.rb
0b1956f4 998%{ruby_libdir}/tempfile.rb
0b1956f4
ER
999%{ruby_libdir}/thwait.rb
1000%{ruby_libdir}/time.rb
1001%{ruby_libdir}/timeout.rb
1002%{ruby_libdir}/tmpdir.rb
1003%{ruby_libdir}/tracer.rb
1004%{ruby_libdir}/tsort.rb
05bcc29a 1005%{ruby_libdir}/un.rb
94592386
ER
1006%{ruby_libdir}/unicode_normalize
1007%{ruby_libdir}/unicode_normalize.rb
05bcc29a
ER
1008%{ruby_libdir}/uri.rb
1009%{ruby_libdir}/weakref.rb
1010%{ruby_libdir}/webrick.rb
1011%{ruby_libdir}/xmlrpc.rb
1012%{ruby_libdir}/yaml.rb
ba0bcd1d 1013
7179288b 1014%if %{with batteries}
44802bd7
ER
1015%exclude %{ruby_libdir}/rubygems.rb
1016%exclude %{ruby_libdir}/ubygems.rb
ed7247e0 1017%exclude %{ruby_libdir}/rbconfig/datadir.rb
1c3d4237 1018#%exclude %{ruby_libdir}/rbconfig/obsolete.rb
7179288b 1019%endif
d8228776 1020%exclude %{ruby_libdir}/irb.rb
b5465d0c 1021%exclude %{ruby_libdir}/mkmf.rb
05bcc29a
ER
1022%exclude %{ruby_libdir}/rake.rb
1023
1024%{ruby_archdir}/rbconfig.rb
1025%attr(755,root,root) %{ruby_archdir}/bigdecimal.so
1026%attr(755,root,root) %{ruby_archdir}/continuation.so
1027%attr(755,root,root) %{ruby_archdir}/coverage.so
05bcc29a
ER
1028%attr(755,root,root) %{ruby_archdir}/date_core.so
1029%attr(755,root,root) %{ruby_archdir}/dbm.so
1030%attr(755,root,root) %{ruby_archdir}/digest.so
1c3d4237 1031#%attr(755,root,root) %{ruby_archdir}/dl.so
05bcc29a
ER
1032%attr(755,root,root) %{ruby_archdir}/etc.so
1033%attr(755,root,root) %{ruby_archdir}/fcntl.so
1034%attr(755,root,root) %{ruby_archdir}/fiber.so
1035%attr(755,root,root) %{ruby_archdir}/fiddle.so
1036%attr(755,root,root) %{ruby_archdir}/gdbm.so
1037%attr(755,root,root) %{ruby_archdir}/nkf.so
1038%attr(755,root,root) %{ruby_archdir}/objspace.so
1039%attr(755,root,root) %{ruby_archdir}/openssl.so
1040%attr(755,root,root) %{ruby_archdir}/pathname.so
1041%attr(755,root,root) %{ruby_archdir}/psych.so
1042%attr(755,root,root) %{ruby_archdir}/pty.so
1043%attr(755,root,root) %{ruby_archdir}/readline.so
1044%attr(755,root,root) %{ruby_archdir}/ripper.so
a319cc02 1045%attr(755,root,root) %{ruby_archdir}/thread.so
05bcc29a
ER
1046%attr(755,root,root) %{ruby_archdir}/sdbm.so
1047%attr(755,root,root) %{ruby_archdir}/socket.so
1048%attr(755,root,root) %{ruby_archdir}/stringio.so
1049%attr(755,root,root) %{ruby_archdir}/strscan.so
1050%attr(755,root,root) %{ruby_archdir}/syslog.so
1051%attr(755,root,root) %{ruby_archdir}/zlib.so
1052
0b1956f4
ER
1053%dir %{ruby_archdir}/digest
1054%attr(755,root,root) %{ruby_archdir}/digest/*.so
1c3d4237 1055#%dir %{ruby_archdir}/dl
1056#%attr(755,root,root) %{ruby_archdir}/dl/callback.so
0b1956f4
ER
1057%dir %{ruby_archdir}/enc
1058%attr(755,root,root) %{ruby_archdir}/enc/*.so
1059%dir %{ruby_archdir}/enc/trans
1060%attr(755,root,root) %{ruby_archdir}/enc/trans/*.so
1061%dir %{ruby_archdir}/io
1062%attr(755,root,root) %{ruby_archdir}/io/*.so
0b1956f4
ER
1063%dir %{ruby_archdir}/mathn
1064%attr(755,root,root) %{ruby_archdir}/mathn/*.so
1065%dir %{ruby_archdir}/racc
1066%attr(755,root,root) %{ruby_archdir}/racc/*.so
a319cc02
ER
1067%dir %{ruby_archdir}/rbconfig
1068%attr(755,root,root) %{ruby_archdir}/rbconfig/sizeof.so
31058abe 1069
a6d548c5 1070# bigdecimal
ee1edb11 1071%{gem_dir}/specifications/bigdecimal-%{bigdecimal_ver}.gemspec
a6d548c5
ER
1072%{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}
1073%dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}
1074%dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
1075%attr(755,root,root) %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal.so
1076%{ruby_libdir}/bigdecimal
1077
1078%dir %{_libdir}/gems
1079%dir %{_libdir}/gems/%{oname}
1080
1081# io-console
ee1edb11 1082%{gem_dir}/specifications/io-console-%{io_console_ver}.gemspec
a6d548c5
ER
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
ee1edb11 1088
a6d548c5
ER
1089%{gem_dir}/specifications/psych-%{psych_ver}.gemspec
1090%{gem_dir}/gems/psych-%{psych_ver}
1091%{ruby_libdir}/psych
1092%dir %{gem_libdir}/psych-%{psych_ver}
1093%dir %{gem_libdir}/psych-%{psych_ver}/lib
1094%attr(755,root,root) %{gem_libdir}/psych-%{psych_ver}/lib/psych.so
45f22c60 1095
d78ec589 1096%dir %{gem_dir}
a6d548c5 1097%dir %{gem_dir}/gems
d78ec589 1098%dir %{gem_dir}/specifications
45f22c60 1099%dir %{gem_dir}/specifications/default
9c41e51a
ER
1100%{_mandir}/man1/erb%{ruby_suffix}.1*
1101%{_mandir}/man1/ri%{ruby_suffix}.1*
15467dc7 1102
9fd96af7 1103%files doc
9434194f 1104%defattr(644,root,root,755)
b2f04116 1105%doc ruby-doc-bundle/*
af4f9d38
JR
1106%{?with_doc:%doc ruby_%{doc_version}_stdlib}
1107%{?with_doc:%doc ruby_%{doc_version}_core}
87b9c30a 1108
d0f5536d 1109%if %{with doc}
9fd96af7 1110%files doc-ri
e40bfe06 1111%defattr(644,root,root,755)
2db0575e 1112%{ruby_ridir}/*
d0f5536d 1113%endif
265d0efe 1114
9fd96af7 1115%files examples
616a12d8 1116%defattr(644,root,root,755)
7cb22c75 1117%{_examplesdir}/%{oname}-%{pkg_version}
This page took 0.326037 seconds and 4 git commands to generate.