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