]> git.pld-linux.org Git - packages/ruby.git/blame - ruby.spec
package ruby man
[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
1083418a
ER
18%define rel 0.1
19%define ruby_version 2.3
20%define basever 2.3
21%define patchlevel 3
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
1083418a
ER
27%define bigdecimal_ver 1.2.8
28%define io_console_ver 0.4.5
d8228776 29%define irb_ver 0.9.6
1083418a
ER
30%define json_ver 1.8.3
31%define minitest_ver 5.8.5
32%define psych_ver 2.1.0
1c3d4237 33%define rake_ver 10.4.2
1083418a
ER
34%define rdoc_ver 4.2.1
35%define rubygems_ver 2.5.2
36%define test_unit_ver 3.1.5
37%define power_assert_ver 0.2.6
ac937700 38%define did_you_mean_ver 1.0.0
45f22c60 39
9c41e51a 40%define oname ruby
6e2f9b3c 41Summary: Ruby - interpreted scripting language
3c3949cf
ER
42Summary(ja.UTF-8): オブジェクト指向言語Rubyインタプリタ
43Summary(pl.UTF-8): Ruby - interpretowany język skryptowy
44Summary(pt_BR.UTF-8): Linguagem de script orientada a objeto
45Summary(zh_CN.UTF-8): ruby - 一种快速高效的面向对象脚本编程语言
9c41e51a 46Name: ruby%{ruby_suffix}
7cb22c75 47Version: %{pkg_version}
116a558f 48Release: %{rel}
01204e8f 49Epoch: 1
3112d6a6
ER
50# Public Domain for example for: include/ruby/st.h, strftime.c, missing/*, ...
51# MIT and CCO: ccan/*
52# zlib: ext/digest/md5/md5.*, ext/nkf/nkf-utf8/nkf.c
53# UCD: some of enc/trans/**/*.src
54License: (Ruby or BSD) and Public Domain and MIT and CC0 and zlib and UCD
6eb17ef6 55Group: Development/Languages
14b99482 56# https://www.ruby-lang.org/en/downloads/
1c3d4237 57Source0: https://ftp.ruby-lang.org/pub/ruby/2.2/%{oname}-%{pkg_version}.tar.xz
1083418a 58# Source0-md5: 0cba3d1b677d2695236ace62ca6d2255
9c41e51a 59Source1: http://www.ruby-doc.org/download/%{oname}-doc-bundle.tar.gz
775b0723 60# Source1-md5: ad1af0043be98ba1a4f6d0185df63876
9c41e51a 61Source2: http://www.ruby-doc.org/downloads/%{oname}_%{doc_version}_stdlib_rdocs.tgz
92a20577 62# Source2-md5: ac3d547e5ea9ef5a89be161cd967a5e8
9c41e51a 63Source3: http://www.ruby-doc.org/downloads/%{oname}_%{doc_version}_core_rdocs.tgz
92a20577 64# Source3-md5: 12f6b7a5e923fbae0f768d3cf760e88e
9c41e51a 65Source100: ftp://ftp.ruby-lang.org/pub/ruby/1.8/%{oname}-1.8.7-p330.tar.gz
92ff5331 66# Source100-md5: 50a49edb787211598d08e756e733e42e
af4f9d38 67Source4: rdoc.1
af4f9d38 68Source5: testrb.1
a6d548c5 69Source6: operating_system.rb
9c41e51a 70Patch0: %{oname}-lib64.patch
1c3d4237 71#Patch1: %{oname}-ffs.patch
360c41c0 72Patch2: fix-bison-invocation.patch
313c55d4
ER
73Patch3: mkmf-verbose.patch
74Patch4: strip-ccache.patch
1c3d4237 75Patch5: ruby-version.patch
76Patch6: duplicated-paths.patch
7cb22c75 77# obsolete?
313c55d4
ER
78Patch8: rubygems-2.0.0-binary-extensions.patch
79Patch9: custom-rubygems-location.patch
a319cc02 80Patch12: archlibdir.patch
7c36cd5d 81URL: http://www.ruby-lang.org/
7cb22c75 82BuildRequires: autoconf >= 2.67
53c95475 83BuildRequires: automake
f2e66748 84BuildRequires: bison >= 1.875
f0eb2dd9 85BuildRequires: db-devel
e9f2c6fe 86BuildRequires: gdbm-devel >= 1.8.3
7cb22c75 87BuildRequires: gmp-devel
9ae7df75 88BuildRequires: libffi-devel
1968db6d 89BuildRequires: ncurses-devel
7cb22c75 90BuildRequires: openssl-devel >= 0.9.6
74c8af09 91BuildRequires: pkgconfig
933aeb0e 92BuildRequires: readline-devel >= 4.2
d25d71f0 93BuildRequires: rpm-build >= 5.4.10-49
7911cce0 94BuildRequires: sed >= 4.0
7cb22c75 95BuildRequires: systemtap-sdt-devel
14b99482
ER
96BuildRequires: tar >= 1:1.22
97BuildRequires: xz
92ff5331 98BuildRequires: yaml-devel
7cb22c75 99BuildRequires: zlib-devel
14b99482
ER
100%if %{without bootstrap}
101# bootstrap needs ruby binary, erb module
102BuildRequires: rpm-rubyprov
103BuildRequires: ruby
104BuildRequires: ruby-modules
105%endif
15ecb21e 106%if %{with tk}
7cb22c75 107BuildRequires: tk-devel < 8.7
3112d6a6 108BuildRequires: tk-devel >= 8.4
15ecb21e 109%endif
f0eb2dd9 110Requires(post,postun): /sbin/ldconfig
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
ac937700
ER
456Power Assert shows each value of variables and method calls in the
457expression. It is useful for testing, providing which value wasn't
458correct when the condition is not satisfied.
3112d6a6
ER
459
460%package test-unit
461# The Summary/Description fields are rather poor.
462# https://github.com/test-unit/test-unit/issues/73
463Summary: Improved version of Test::Unit bundled in Ruby 1.8.x
464Version: %{test_unit_ver}
465Release: %{pkg_version}.%{rel}
466Epoch: 0
467Group: Development/Libraries
468# lib/test/unit/diff.rb is a double license of the Ruby license and PSF license.
469# lib/test-unit.rb is a dual license of the Ruby license and LGPLv2.1 or later.
470License: (Ruby or BSD) and (Ruby or BSD or Python) and (Ruby or BSD or LGPLv2+)
471%if "%{_rpmversion}" >= "5"
472BuildArch: noarch
473%endif
474
475%description test-unit
476Ruby 1.9.x bundles minitest not Test::Unit. Test::Unit bundled in Ruby
4771.8.x had not been improved but unbundled Test::Unit (test-unit) is
478improved actively.
479
ac937700
ER
480%package did_you_mean
481Summary: "Did you mean?" experience in Ruby
482Version: %{did_you_mean_ver}
483Release: %{pkg_version}.%{rel}
484Epoch: 0
485License: MIT
486Group: Development/Libraries
487%if "%{_rpmversion}" >= "5"
488BuildArch: noarch
489%endif
490
491%description did_you_mean
492"did you mean?" experience in Ruby: the error message will tell you
493the right one when you misspelled something.
494
4ab119cd 495%prep
7cb22c75 496%setup -q -n %{oname}-%{pkg_version} -a1 -a2 -a3 %{?with_bootstrap:-a100}
933aeb0e 497%patch0 -p1
1c3d4237 498#%patch1 -p1
360c41c0 499%patch2 -p1
313c55d4
ER
500%patch3 -p1
501%patch4 -p1
3112d6a6 502#%patch5 -p1
1c3d4237 503%patch6 -p1
5a5c66dc 504#%patch8 -p1
45f22c60 505%patch9 -p1
a319cc02 506%patch12 -p1
360c41c0
JR
507
508# must be regenerated with new bison
509%{__rm} parse.{c,h}
4ab119cd 510
3112d6a6
ER
511# Remove bundled libraries to be sure they are not used.
512%{__rm} -r ext/psych/yaml
513%{__rm} -r ext/fiddle/libffi*
514
f52a91a3
ER
515# Install custom operating_system.rb.
516install -d lib/rubygems/defaults
517cp -p %{SOURCE6} lib/rubygems/defaults
518
b2f04116
JR
519find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
520
521find -type f '(' -name '*.rb' -o -name '*.cgi' -o -name '*.test' \
522 -o -name 'ruby.1' -o -name '*.html' -o -name '*.tcl' ')' \
bb5582fa 523 | xargs %{__sed} -i 's,/usr/local/bin/,%{_bindir}/,'
e7754311 524
4730786e
ER
525# no configure option to disable, so just rm
526%{!?with_tk:rm -rf ext/tk}
527
4ab119cd 528%build
de9418ad
ER
529rubygems_ver=$(awk '/VERSION =/ && $1 == "VERSION" {print $3}' lib/rubygems.rb | xargs)
530if [ $rubygems_ver != %{rubygems_ver} ]; then
531 echo "Set %%define rubygems_ver to $rubygems_ver and re-run."
532 exit 1
533fi
593ae364
ER
534rdoc_ver=$(awk '/VERSION =/ && $1 == "VERSION" {print $3}' lib/rdoc.rb | xargs)
535if [ $rdoc_ver != %{rdoc_ver} ]; then
536 echo "Set %%define rdoc_ver to $rdoc_ver and re-run."
537 exit 1
538fi
de9418ad 539
8ea447c1 540cp -f /usr/share/automake/config.sub .
a5f9b7ff 541
92ff5331 542# build ruby-1.8.7 first
543%if %{with bootstrap}
9c41e51a 544cd %{oname}-1.8.7-p330
92ff5331 545%configure
546%{__make}
547cd ..
548%endif
549
8ea447c1 550%{__autoconf}
ecde9c47 551%configure \
9c41e51a
ER
552 %{?with_bootstrap:--with-baseruby=%{oname}-1.8.7-p330/miniruby} \
553 --program-suffix=%{ruby_suffix} \
a319cc02 554 --with-archlibdir=%{_libdir} \
45f22c60
ER
555 --with-rubygemsdir=%{rubygems_dir} \
556 --with-rubylibprefix=%{ruby_libdir} \
557 --with-rubyarchprefix=%{ruby_archdir} \
558 --with-sitedir=%{ruby_sitelibdir} \
44d1acb8 559 --with-sitearchdir=%{ruby_sitearchdir} \
45f22c60 560 --with-vendordir=%{ruby_vendorlibdir} \
44d1acb8 561 --with-vendorarchdir=%{ruby_vendorarchdir} \
45f22c60
ER
562 --with-rubyhdrdir=%{_includedir}/%{oname}-%{ruby_version} \
563 --with-rubyarchhdrdir=%{_includedir}/%{oname}-%{ruby_version} \
564 --with-sitearchhdrdir='$(sitehdrdir)/$(arch)' \
565 --with-vendorarchhdrdir='$(vendorhdrdir)/$(arch)' \
45f22c60 566 --enable-multiarch \
7cb22c75
JB
567 --enable-pthread \
568 --enable-shared \
96c2e1a4 569 --disable-install-doc \
7cb22c75 570 --disable-rubygems \
1a83bc11 571 --with-ruby-version='' \
4ab119cd 572
dbf8f91d 573%{__make} -j1 main \
2690877c 574 COPY="cp -p" Q= \
9c41e51a 575 %{?with_bootstrap:BASERUBY="%{oname}-1.8.7-p330/miniruby -I./ruby-1.8.7-p330/lib"}
aa58dbf5 576
d0f5536d 577%if %{with doc}
98757242 578%{__make} -j1 rdoc
d0f5536d 579%endif
53830491 580
c588a52c 581%if %{with tests}
fff139e1
ER
582# unset these, as testsuite does "git commit" somewhere, which points to pld .spec repo. doh
583unset GIT_DIR GIT_WORK_TREE
584
585unset GIT
c588a52c
ER
586DISABLE_TESTS=""
587
588%ifarch armv7l armv7hl armv7hnl
589# test_call_double(DL::TestDL) fails on ARM HardFP
590# http://bugs.ruby-lang.org/issues/6592
591DISABLE_TESTS="-x test_dl2.rb $DISABLE_TESTS"
592%endif
593
594# test_debug(TestRubyOptions) fails due to LoadError reported in debug mode,
595# when abrt.rb cannot be required (seems to be easier way then customizing
596# the test suite).
597touch abrt.rb
598
599# TestSignal#test_hup_me hangs up the test suite.
600# http://bugs.ruby-lang.org/issues/8997
601sed -i '/def test_hup_me/,/end if Process.respond_to/ s/^/#/' test/ruby/test_signal.rb
602
603# Fix "Could not find 'minitest'" error.
604# http://bugs.ruby-lang.org/issues/9259
605sed -i "/^ gem 'minitest', '~> 4.0'/ s/^/#/" lib/rubygems/test_case.rb
606
607# Segmentation fault.
608# https://bugs.ruby-lang.org/issues/9198
609sed -i '/^ def test_machine_stackoverflow/,/^ end/ s/^/#/' test/ruby/test_exception.rb
610
611# Don't test wrap ciphers to prevent "OpenSSL::Cipher::CipherError: wrap mode
612# not allowed" error.
613# https://bugs.ruby-lang.org/issues/10229
614sed -i '/assert(OpenSSL::Cipher::Cipher.new(name).is_a?(OpenSSL::Cipher::Cipher))/i \
615 next if /wrap/ =~ name' test/openssl/test_cipher.rb
616
617# Test is broken due to SSLv3 disabled in Fedora.
618# https://bugs.ruby-lang.org/issues/10046
619sed -i '/def test_ctx_server_session_cb$/,/^ end$/ s/^/#/' test/openssl/test_ssl_session.rb
620
621%{__make} check TESTS="-v $DISABLE_TESTS"
622%endif
623
4ab119cd 624%install
625rm -rf $RPM_BUILD_ROOT
413a1967 626install -d $RPM_BUILD_ROOT{%{ruby_rdocdir},%{ruby_ridir}} \
bf0e52e2 627 $RPM_BUILD_ROOT%{ruby_vendorarchdir} \
f1a7abab 628 $RPM_BUILD_ROOT%{ruby_vendorlibdir}/net \
08c2f6e5 629 $RPM_BUILD_ROOT%{ruby_vendorlibdir}/data \
1968db6d 630
df9a7ee8 631%{__make} install %{?with_doc:install-doc -j1} \
ecde9c47 632 DESTDIR=$RPM_BUILD_ROOT
d041de24 633
c24d5840
ER
634# Version is empty if --with-ruby-version is specified.
635# http://bugs.ruby-lang.org/issues/7807
636sed -i -e 's/Version: \${ruby_version}/Version: %{ruby_version}/' $RPM_BUILD_ROOT%{_pkgconfigdir}/%{oname}-%{ruby_version}.pc
637
c588a52c
ER
638# Kill bundled certificates, as they should be part of ca-certificates.
639for cert in \
640 Class3PublicPrimaryCertificationAuthority.pem \
641 DigiCertHighAssuranceEVRootCA.pem \
642 EntrustnetSecureServerCertificationAuthority.pem \
643 GeoTrustGlobalCA.pem \
3112d6a6
ER
644 AddTrustExternalCARoot.pem \
645 AddTrustExternalCARoot-2048.pem \
90c8123f 646; do
c588a52c
ER
647 %{__rm} $RPM_BUILD_ROOT%{rubygems_dir}/rubygems/ssl_certs/$cert
648done
649
7cb22c75
JB
650install -d $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}
651cp -Rf sample/* $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}
9c41e51a
ER
652cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_mandir}/man1/rdoc%{ruby_suffix}.1
653cp -p %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man1/testrb%{ruby_suffix}.1
18e966a7 654
5c3d5a0e 655%{__rm} -rf $RPM_BUILD_ROOT%{_docdir}/%{name}/html
698147c7 656
a6d548c5 657# detect this runtime, "make install" is affected by operating_system.rb what is installed in system!
f144cce6 658gem_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
659
660# Move gems root into common directory, out of Ruby directory structure.
661install -d $RPM_BUILD_ROOT%{gem_dir}
7cb22c75 662%{__mv} $RPM_BUILD_ROOT${gem_dir}/{gems,specifications} $RPM_BUILD_ROOT%{gem_dir}
a6d548c5
ER
663
664# Move bundled rubygems to %gem_dir
665# make symlinks for io-console and bigdecimal, which are considered to be part of stdlib by other Gems
666# make symlinks for all packages, so they would work without rubygems
667# NOTE: when making symlinks, do not symlink paths that could be directories,
668# as there may came files from other packages as well. actually, unlikely as
669# the links to got system dir and only ruby may package there (other distro
c24d5840 670# packages should go to vendor dirs)
1083418a 671%if 0
a6d548c5 672install -d $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/lib
7cb22c75 673%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/rake* $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/lib
a6d548c5
ER
674ln -s %{gem_dir}/gems/rake-%{rake_ver}/lib/rake $RPM_BUILD_ROOT%{ruby_libdir}
675ln -s %{gem_dir}/gems/rake-%{rake_ver}/lib/rake.rb $RPM_BUILD_ROOT%{ruby_libdir}
7cb22c75 676%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/rake-%{rake_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
1083418a 677%endif
a6d548c5
ER
678
679install -d $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
7cb22c75 680%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/rdoc* $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
a6d548c5
ER
681ln -s %{gem_dir}/gems/rdoc-%{rdoc_ver}/lib/rdoc $RPM_BUILD_ROOT%{ruby_libdir}
682ln -s %{gem_dir}/gems/rdoc-%{rdoc_ver}/lib/rdoc.rb $RPM_BUILD_ROOT%{ruby_libdir}
7cb22c75 683%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/rdoc-%{rdoc_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
684
685install -d $RPM_BUILD_ROOT%{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib
686install -d $RPM_BUILD_ROOT%{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
7cb22c75
JB
687%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/bigdecimal $RPM_BUILD_ROOT%{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib
688%{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal.so $RPM_BUILD_ROOT%{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
689%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/bigdecimal-%{bigdecimal_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
690ln -s %{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal $RPM_BUILD_ROOT%{ruby_libdir}/bigdecimal
691ln -s %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal.so $RPM_BUILD_ROOT%{ruby_libarchdir}/bigdecimal.so
692
693install -d $RPM_BUILD_ROOT%{gem_dir}/gems/io-console-%{io_console_ver}/lib
694install -d $RPM_BUILD_ROOT%{gem_libdir}/io-console-%{io_console_ver}/lib/io
7cb22c75
JB
695%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/io $RPM_BUILD_ROOT%{gem_dir}/gems/io-console-%{io_console_ver}/lib
696%{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/io/console.so $RPM_BUILD_ROOT%{gem_libdir}/io-console-%{io_console_ver}/lib/io
697%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/io-console-%{io_console_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
698ln -s %{gem_dir}/gems/io-console-%{io_console_ver}/lib/io $RPM_BUILD_ROOT%{ruby_libdir}/io
699ln -s %{gem_libdir}/io-console-%{io_console_ver}/lib/io/console.so $RPM_BUILD_ROOT%{ruby_libarchdir}/io/console.so
700
701install -d $RPM_BUILD_ROOT%{gem_dir}/gems/json-%{json_ver}/lib
702install -d $RPM_BUILD_ROOT%{gem_libdir}/json-%{json_ver}/lib
7cb22c75
JB
703%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/json* $RPM_BUILD_ROOT%{gem_dir}/gems/json-%{json_ver}/lib
704%{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/json $RPM_BUILD_ROOT%{gem_libdir}/json-%{json_ver}/lib
705%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/json-%{json_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
706ln -s %{gem_dir}/gems/json-%{json_ver}/lib/json $RPM_BUILD_ROOT%{ruby_libdir}/json
707ln -s %{gem_dir}/gems/json-%{json_ver}/lib/json.rb $RPM_BUILD_ROOT%{ruby_libdir}/json.rb
708install -d $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
709ln -s %{gem_libdir}/json-%{json_ver}/lib/json/ext/parser.so $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
710ln -s %{gem_libdir}/json-%{json_ver}/lib/json/ext/generator.so $RPM_BUILD_ROOT%{ruby_libarchdir}/json/ext
711
a6d548c5 712ln -s %{gem_dir}/gems/minitest-%{minitest_ver}/lib/minitest $RPM_BUILD_ROOT%{ruby_libdir}
a6d548c5 713
a6d548c5 714install -d $RPM_BUILD_ROOT%{ruby_libdir}/test
a6d548c5 715ln -s %{gem_dir}/gems/test-unit-%{test_unit_ver}/lib/unit $RPM_BUILD_ROOT%{ruby_libdir}/test
a6d548c5
ER
716
717install -d $RPM_BUILD_ROOT%{gem_dir}/gems/psych-%{psych_ver}/lib
718install -d $RPM_BUILD_ROOT%{gem_libdir}/psych-%{psych_ver}/lib
7cb22c75
JB
719%{__mv} $RPM_BUILD_ROOT%{ruby_libdir}/psych* $RPM_BUILD_ROOT%{gem_dir}/gems/psych-%{psych_ver}/lib
720%{__mv} $RPM_BUILD_ROOT%{ruby_libarchdir}/psych.so $RPM_BUILD_ROOT%{gem_libdir}/psych-%{psych_ver}/lib/
721%{__mv} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/psych-%{psych_ver}.gemspec $RPM_BUILD_ROOT%{gem_dir}/specifications
a6d548c5
ER
722ln -s %{gem_dir}/gems/psych-%{psych_ver}/lib/psych $RPM_BUILD_ROOT%{ruby_libdir}/psych
723ln -s %{gem_dir}/gems/psych-%{psych_ver}/lib/psych.rb $RPM_BUILD_ROOT%{ruby_libdir}/psych.rb
724ln -s %{gem_libdir}/psych-%{psych_ver}/lib/psych.so $RPM_BUILD_ROOT%{ruby_archdir}/psych.so
725
726# Adjust the gemspec files so that the gems will load properly
727sed -i '/^end$/ i\
728 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/rake-%{rake_ver}.gemspec
729
730sed -i '/^end$/ i\
731 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/rdoc-%{rdoc_ver}.gemspec
732
733sed -i '/^end$/ i\
734 s.require_paths = ["lib"]\
735 s.extensions = ["bigdecimal.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/bigdecimal-%{bigdecimal_ver}.gemspec
736
737sed -i '/^end$/ i\
738 s.require_paths = ["lib"]\
739 s.extensions = ["io/console.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/io-console-%{io_console_ver}.gemspec
740
741sed -i '/^end$/ i\
742 s.require_paths = ["lib"]\
743 s.extensions = ["json/ext/parser.so", "json/ext/generator.so"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/json-%{json_ver}.gemspec
744
745sed -i '/^end$/ i\
746 s.require_paths = ["lib"]' $RPM_BUILD_ROOT%{gem_dir}/specifications/minitest-%{minitest_ver}.gemspec
747
3112d6a6
ER
748# Push the .gemspecs through the RubyGems to let them write the stub headers.
749# This speeds up loading of libraries and avoids warnings in Spring:
750# https://github.com/rubygems/rubygems/pull/694
751for s in rake-%{rake_ver}.gemspec rdoc-%{rdoc_ver}.gemspec json-%{json_ver}.gemspec; do
752 s="$RPM_BUILD_ROOT%{gem_dir}/specifications/$s"
753 %{__make} runruby TESTRUN_SCRIPT="-rubygems \
754 -e \"spec = Gem::Specification.load('$s')\" \
755 -e \"File.write '$s', spec.to_ruby\""
756done
757
9c41e51a 758ln -sf %{gem_dir}/gems/rake-%{rake_ver}/bin/rake $RPM_BUILD_ROOT%{_bindir}/rake%{ruby_suffix}
63b8d212 759
7cb22c75
JB
760%{__sed} -i -e '1s,/usr/bin/env ruby,/usr/bin/ruby,' \
761 $RPM_BUILD_ROOT%{ruby_libdir}/abbrev.rb \
762 $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/bin/rake \
763 $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/bin/rdoc \
764 $RPM_BUILD_ROOT%{gem_dir}/gems/rdoc-%{rdoc_ver}/bin/ri \
7cb22c75
JB
765 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/{cal,test,time,uumerge}.rb \
766 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/{drb,logger,openssl,ripper,rss}/*.rb \
767 $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{pkg_version}/webrick/*.cgi
768
87437a24
ER
769# gem non library files
770%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/minitest-%{minitest_ver}/test
e236ea00
ER
771%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/test-unit-%{test_unit_ver}/{[A-Z]*,doc,sample,test}
772%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/power_assert-%{power_assert_ver}/{[A-Z]*,test}
ac937700 773%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/{[A-Z]*,doc,test}
e236ea00 774%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rake-%{rake_ver}/{[A-Z]*,doc,test}
76a22994 775
15467dc7 776%if %{without batteries}
b2f04116 777# packaged separately
05f75f09 778%{__rm} -r $RPM_BUILD_ROOT%{ruby_libdir}/{rubygems,rake,json,minitest}
0b1956f4 779%{__rm} -r $RPM_BUILD_ROOT%{ruby_archdir}/json
7179288b 780%{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rake-*
0b1956f4 781%{__rm} $RPM_BUILD_ROOT%{ruby_libdir}/{rake,rubygems,json}.rb
92ff5331 782%{__rm} $RPM_BUILD_ROOT%{_bindir}/{gem,rake}
1083418a 783#%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/rake*
45f22c60 784%{__rm} $RPM_BUILD_ROOT%{gem_dir}/specifications/default/{json,minitest,rake}-*.gemspec
7179288b 785%{?with_doc:%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/ri/%{ruby_version}/system/JSON}
15467dc7 786%endif
1968db6d 787
44802bd7 788%if %{with doc}
d78ec589 789# too much .ri
2db0575e
ER
790%{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/cache.ri
791%{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/created.rid
15467dc7 792%endif
1968db6d 793
4ab119cd 794%clean
795rm -rf $RPM_BUILD_ROOT
796
d041de24
JR
797%post -p /sbin/ldconfig
798%postun -p /sbin/ldconfig
4ab119cd 799
800%files
801%defattr(644,root,root,755)
3112d6a6 802%doc NEWS LEGAL BSDL README.md README.EXT ChangeLog
9c41e51a 803%attr(755,root,root) %{_bindir}/ruby%{ruby_suffix}
529ff870 804%attr(755,root,root) %{_libdir}/libruby.so.*.*.*
eee72344 805%attr(755,root,root) %ghost %{_libdir}/libruby.so.%{ruby_version}
0f2892f2 806%{_mandir}/man1/ruby%{ruby_suffix}.1*
05f75f09 807
9c41e51a
ER
808%dir %{_libdir}/%{oname}
809%dir %{_libdir}/%{oname}/%{vendordir}
810%dir %{_datadir}/%{oname}
0b1956f4 811
be8e7b24 812%dir %{ruby_libdir}
5c3d5a0e 813%dir %{ruby_archdir}
be8e7b24 814%dir %{ruby_vendorlibdir}
be8e7b24 815%dir %{ruby_vendorarchdir}
31058abe 816
df9a7ee8 817%dir %{dirname:%{ruby_ridir}}
2db0575e 818%dir %{ruby_ridir}
a43d66d8 819%dir %{ruby_rdocdir}
9fd96af7 820
f1a7abab 821# common dirs for ruby vendor modules
08c2f6e5 822%dir %{ruby_vendorlibdir}/data
f1a7abab
ER
823%dir %{ruby_vendorlibdir}/net
824
9fd96af7 825%files devel
826%defattr(644,root,root,755)
529ff870 827%attr(755,root,root) %{_libdir}/libruby.so
9c41e51a 828%{_includedir}/%{oname}-%{ruby_version}
c24d5840 829%{_pkgconfigdir}/%{oname}-%{ruby_version}.pc
b5465d0c 830%{ruby_libdir}/mkmf.rb
9fd96af7 831
832%files static
833%defattr(644,root,root,755)
529ff870 834%{_libdir}/libruby-static.a
9fd96af7 835
15ecb21e 836%if %{with tk}
9fd96af7 837%files tk
838%defattr(644,root,root,755)
7cb22c75
JB
839%doc ext/tk/{ChangeLog.tkextlib,MANUAL_tcltklib.eng,README.fork}
840%lang(ja) %doc ext/tk/MANUAL_tcltklib.ja
841%{ruby_libdir}/multi-tk.rb
842%{ruby_libdir}/remote-tk.rb
0b1956f4
ER
843%{ruby_libdir}/tcltk.rb
844%{ruby_libdir}/tk*.rb
845%{ruby_libdir}/tk
846%{ruby_libdir}/tkextlib
7cb22c75
JB
847%attr(755,root,root) %{ruby_archdir}/tcltklib.so
848%attr(755,root,root) %{ruby_archdir}/tkutil.so
15ecb21e 849%endif
9fd96af7 850
d8228776
ER
851%files irb
852%defattr(644,root,root,755)
9c41e51a 853%attr(755,root,root) %{_bindir}/irb%{ruby_suffix}
d8228776
ER
854%{ruby_libdir}/irb.rb
855%{ruby_libdir}/irb
9c41e51a 856%{_mandir}/man1/irb%{ruby_suffix}.1*
d8228776 857
2db0575e 858%files rdoc
9fd96af7 859%defattr(644,root,root,755)
9c41e51a
ER
860%attr(755,root,root) %{_bindir}/rdoc%{ruby_suffix}
861%attr(755,root,root) %{_bindir}/ri%{ruby_suffix}
862%{_mandir}/man1/rdoc%{ruby_suffix}.1*
2db0575e
ER
863%{ruby_libdir}/rdoc
864%dir %{gem_dir}/gems/rdoc-%{rdoc_ver}
a6d548c5 865%{gem_dir}/gems/rdoc-%{rdoc_ver}/lib
2db0575e
ER
866%dir %{gem_dir}/gems/rdoc-%{rdoc_ver}/bin
867%attr(755,root,root) %{gem_dir}/gems/rdoc-%{rdoc_ver}/bin/rdoc
868%{gem_dir}/specifications/rdoc-%{rdoc_ver}.gemspec
869%attr(755,root,root) %{gem_dir}/gems/rdoc-%{rdoc_ver}/bin/ri
870
44802bd7
ER
871%if %{with batteries}
872%files rubygems
941981c7 873%defattr(644,root,root,755)
9c41e51a 874%attr(755,root,root) %{_bindir}/gem%{ruby_suffix}
f493239c
ER
875%{rubygems_dir}/rubygems
876%{rubygems_dir}/rubygems.rb
877%{rubygems_dir}/ubygems.rb
45f22c60 878%{rubygems_dir}/rbconfig
63b8d212
ER
879
880%files rake
881%defattr(644,root,root,755)
9c41e51a 882%attr(755,root,root) %{_bindir}/rake%{ruby_suffix}
1083418a
ER
883#%{_mandir}/man1/rake%{ruby_suffix}.1*
884#%{ruby_libdir}/rake
885#%{ruby_libdir}/rake.rb
63b8d212 886%dir %{gem_dir}/gems/rake-%{rake_ver}
a6d548c5 887%{gem_dir}/gems/rake-%{rake_ver}/lib
e236ea00 888%{gem_dir}/gems/rake-%{rake_ver}/rakelib
63b8d212
ER
889%dir %{gem_dir}/gems/rake-%{rake_ver}/bin
890%attr(755,root,root) %{gem_dir}/gems/rake-%{rake_ver}/bin/rake
891%{gem_dir}/specifications/rake-%{rake_ver}.gemspec
7e87bcc1
ER
892
893%files json
894%defattr(644,root,root,755)
895%{ruby_libdir}/json
896%dir %{ruby_archdir}/json
897%dir %{ruby_archdir}/json/ext
898%attr(755,root,root) %{ruby_archdir}/json/ext/*.so
a6d548c5
ER
899
900%dir %{gem_libdir}/json-%{json_ver}
901%dir %{gem_libdir}/json-%{json_ver}/lib
902%dir %{gem_libdir}/json-%{json_ver}/lib/json
903%dir %{gem_libdir}/json-%{json_ver}/lib/json/ext
904%attr(755,root,root) %{gem_libdir}/json-%{json_ver}/lib/json/ext/generator.so
905%attr(755,root,root) %{gem_libdir}/json-%{json_ver}/lib/json/ext/parser.so
906
907%{gem_dir}/gems/json-%{json_ver}
7e87bcc1 908%{gem_dir}/specifications/json-%{json_ver}.gemspec
44802bd7
ER
909%endif
910
74ff0589
ER
911%files power_assert
912%defattr(644,root,root,755)
87437a24
ER
913%dir %{gem_dir}/gems/power_assert-%{power_assert_ver}
914%{gem_dir}/gems/power_assert-%{power_assert_ver}/lib
74ff0589
ER
915%{gem_dir}/specifications/power_assert-%{power_assert_ver}.gemspec
916
cac72f51
ER
917%files minitest
918%defattr(644,root,root,755)
919%{ruby_libdir}/minitest
920%{gem_dir}/gems/minitest-%{minitest_ver}
cac72f51
ER
921%{gem_dir}/specifications/minitest-%{minitest_ver}.gemspec
922
76a22994
ER
923%files test-unit
924%defattr(644,root,root,755)
925%dir %{gem_dir}/gems/test-unit-%{test_unit_ver}
926%{gem_dir}/gems/test-unit-%{test_unit_ver}/lib
927%{gem_dir}/specifications/test-unit-%{test_unit_ver}.gemspec
928%{_mandir}/man1/testrb%{ruby_suffix}.1*
929
ac937700 930%files did_you_mean
e236ea00 931%defattr(644,root,root,755)
ac937700
ER
932%dir %{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}
933%{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/benchmark
934%{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/evaluation
935%{gem_dir}/gems/did_you_mean-%{did_you_mean_ver}/lib
936%{gem_dir}/specifications/did_you_mean-%{did_you_mean_ver}.gemspec
937
9fd96af7 938%files modules
939%defattr(644,root,root,755)
9c41e51a 940%attr(755,root,root) %{_bindir}/erb%{ruby_suffix}
0b1956f4 941%{ruby_libdir}/cgi
1c3d4237 942#%{ruby_libdir}/date
0b1956f4 943%{ruby_libdir}/digest
1c3d4237 944#%{ruby_libdir}/dl
0b1956f4
ER
945%{ruby_libdir}/drb
946%{ruby_libdir}/fiddle
947%{ruby_libdir}/io
0b1956f4 948%{ruby_libdir}/matrix
0b1956f4
ER
949%{ruby_libdir}/net
950%{ruby_libdir}/openssl
951%{ruby_libdir}/optparse
0b1956f4
ER
952%{ruby_libdir}/racc
953%{ruby_libdir}/rbconfig
0b1956f4
ER
954%{ruby_libdir}/rexml
955%{ruby_libdir}/rinda
956%{ruby_libdir}/ripper
957%{ruby_libdir}/rss
958%{ruby_libdir}/shell
45f22c60 959%{ruby_libdir}/syslog
0b1956f4
ER
960%{ruby_libdir}/test
961%{ruby_libdir}/uri
962%{ruby_libdir}/webrick
963%{ruby_libdir}/xmlrpc
964%{ruby_libdir}/yaml
ba0bcd1d
ER
965
966%{ruby_libdir}/English.rb
967%{ruby_libdir}/abbrev.rb
968%{ruby_libdir}/base64.rb
969%{ruby_libdir}/benchmark.rb
970%{ruby_libdir}/cgi.rb
971%{ruby_libdir}/cmath.rb
1c3d4237 972#%{ruby_libdir}/complex.rb
ba0bcd1d
ER
973%{ruby_libdir}/csv.rb
974%{ruby_libdir}/date.rb
975%{ruby_libdir}/debug.rb
976%{ruby_libdir}/delegate.rb
977%{ruby_libdir}/digest.rb
1c3d4237 978#%{ruby_libdir}/dl.rb
ba0bcd1d
ER
979%{ruby_libdir}/drb.rb
980%{ruby_libdir}/e2mmap.rb
981%{ruby_libdir}/erb.rb
982%{ruby_libdir}/expect.rb
983%{ruby_libdir}/fiddle.rb
984%{ruby_libdir}/fileutils.rb
985%{ruby_libdir}/find.rb
986%{ruby_libdir}/forwardable.rb
987%{ruby_libdir}/getoptlong.rb
1c3d4237 988#%{ruby_libdir}/gserver.rb
ba0bcd1d
ER
989%{ruby_libdir}/ipaddr.rb
990%{ruby_libdir}/json.rb
991%{ruby_libdir}/kconv.rb
992%{ruby_libdir}/logger.rb
993%{ruby_libdir}/mathn.rb
994%{ruby_libdir}/matrix.rb
995%{ruby_libdir}/monitor.rb
996%{ruby_libdir}/mutex_m.rb
997%{ruby_libdir}/observer.rb
998%{ruby_libdir}/open-uri.rb
999%{ruby_libdir}/open3.rb
1000%{ruby_libdir}/openssl.rb
94592386 1001%{ruby_libdir}/optionparser.rb
ba0bcd1d
ER
1002%{ruby_libdir}/optparse.rb
1003%{ruby_libdir}/ostruct.rb
1004%{ruby_libdir}/pathname.rb
1005%{ruby_libdir}/pp.rb
1006%{ruby_libdir}/prettyprint.rb
1007%{ruby_libdir}/prime.rb
1008%{ruby_libdir}/profile.rb
1009%{ruby_libdir}/profiler.rb
1010%{ruby_libdir}/pstore.rb
1011%{ruby_libdir}/psych.rb
1c3d4237 1012#%{ruby_libdir}/rational.rb
ba0bcd1d
ER
1013%{ruby_libdir}/rdoc.rb
1014%{ruby_libdir}/resolv-replace.rb
1015%{ruby_libdir}/resolv.rb
1016%{ruby_libdir}/ripper.rb
1017%{ruby_libdir}/rss.rb
1018%{ruby_libdir}/scanf.rb
1019%{ruby_libdir}/securerandom.rb
1020%{ruby_libdir}/set.rb
1021%{ruby_libdir}/shell.rb
1022%{ruby_libdir}/shellwords.rb
1023%{ruby_libdir}/singleton.rb
1024%{ruby_libdir}/socket.rb
1025%{ruby_libdir}/sync.rb
0b1956f4 1026%{ruby_libdir}/tempfile.rb
0b1956f4
ER
1027%{ruby_libdir}/thwait.rb
1028%{ruby_libdir}/time.rb
1029%{ruby_libdir}/timeout.rb
1030%{ruby_libdir}/tmpdir.rb
1031%{ruby_libdir}/tracer.rb
1032%{ruby_libdir}/tsort.rb
05bcc29a 1033%{ruby_libdir}/un.rb
94592386
ER
1034%{ruby_libdir}/unicode_normalize
1035%{ruby_libdir}/unicode_normalize.rb
05bcc29a
ER
1036%{ruby_libdir}/uri.rb
1037%{ruby_libdir}/weakref.rb
1038%{ruby_libdir}/webrick.rb
1039%{ruby_libdir}/xmlrpc.rb
1040%{ruby_libdir}/yaml.rb
ba0bcd1d 1041
7179288b 1042%if %{with batteries}
44802bd7
ER
1043%exclude %{ruby_libdir}/rubygems.rb
1044%exclude %{ruby_libdir}/ubygems.rb
ed7247e0 1045%exclude %{ruby_libdir}/rbconfig/datadir.rb
1c3d4237 1046#%exclude %{ruby_libdir}/rbconfig/obsolete.rb
7179288b 1047%endif
d8228776 1048%exclude %{ruby_libdir}/irb.rb
b5465d0c 1049%exclude %{ruby_libdir}/mkmf.rb
1083418a 1050#%exclude %{ruby_libdir}/rake.rb
05bcc29a
ER
1051
1052%{ruby_archdir}/rbconfig.rb
1053%attr(755,root,root) %{ruby_archdir}/bigdecimal.so
1054%attr(755,root,root) %{ruby_archdir}/continuation.so
1055%attr(755,root,root) %{ruby_archdir}/coverage.so
05bcc29a
ER
1056%attr(755,root,root) %{ruby_archdir}/date_core.so
1057%attr(755,root,root) %{ruby_archdir}/dbm.so
1058%attr(755,root,root) %{ruby_archdir}/digest.so
1c3d4237 1059#%attr(755,root,root) %{ruby_archdir}/dl.so
05bcc29a
ER
1060%attr(755,root,root) %{ruby_archdir}/etc.so
1061%attr(755,root,root) %{ruby_archdir}/fcntl.so
1062%attr(755,root,root) %{ruby_archdir}/fiber.so
1063%attr(755,root,root) %{ruby_archdir}/fiddle.so
1064%attr(755,root,root) %{ruby_archdir}/gdbm.so
1065%attr(755,root,root) %{ruby_archdir}/nkf.so
1066%attr(755,root,root) %{ruby_archdir}/objspace.so
1067%attr(755,root,root) %{ruby_archdir}/openssl.so
1068%attr(755,root,root) %{ruby_archdir}/pathname.so
1069%attr(755,root,root) %{ruby_archdir}/psych.so
1070%attr(755,root,root) %{ruby_archdir}/pty.so
1071%attr(755,root,root) %{ruby_archdir}/readline.so
1072%attr(755,root,root) %{ruby_archdir}/ripper.so
a319cc02 1073%attr(755,root,root) %{ruby_archdir}/thread.so
05bcc29a
ER
1074%attr(755,root,root) %{ruby_archdir}/sdbm.so
1075%attr(755,root,root) %{ruby_archdir}/socket.so
1076%attr(755,root,root) %{ruby_archdir}/stringio.so
1077%attr(755,root,root) %{ruby_archdir}/strscan.so
1078%attr(755,root,root) %{ruby_archdir}/syslog.so
1079%attr(755,root,root) %{ruby_archdir}/zlib.so
1080
0b1956f4
ER
1081%dir %{ruby_archdir}/digest
1082%attr(755,root,root) %{ruby_archdir}/digest/*.so
1c3d4237 1083#%dir %{ruby_archdir}/dl
1084#%attr(755,root,root) %{ruby_archdir}/dl/callback.so
0b1956f4
ER
1085%dir %{ruby_archdir}/enc
1086%attr(755,root,root) %{ruby_archdir}/enc/*.so
1087%dir %{ruby_archdir}/enc/trans
1088%attr(755,root,root) %{ruby_archdir}/enc/trans/*.so
1089%dir %{ruby_archdir}/io
1090%attr(755,root,root) %{ruby_archdir}/io/*.so
0b1956f4
ER
1091%dir %{ruby_archdir}/mathn
1092%attr(755,root,root) %{ruby_archdir}/mathn/*.so
1093%dir %{ruby_archdir}/racc
1094%attr(755,root,root) %{ruby_archdir}/racc/*.so
a319cc02
ER
1095%dir %{ruby_archdir}/rbconfig
1096%attr(755,root,root) %{ruby_archdir}/rbconfig/sizeof.so
31058abe 1097
a6d548c5 1098# bigdecimal
ee1edb11 1099%{gem_dir}/specifications/bigdecimal-%{bigdecimal_ver}.gemspec
a6d548c5
ER
1100%{gem_dir}/gems/bigdecimal-%{bigdecimal_ver}
1101%dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}
1102%dir %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib
1103%attr(755,root,root) %{gem_libdir}/bigdecimal-%{bigdecimal_ver}/lib/bigdecimal.so
1104%{ruby_libdir}/bigdecimal
1105
1106%dir %{_libdir}/gems
1107%dir %{_libdir}/gems/%{oname}
1108
1109# io-console
ee1edb11 1110%{gem_dir}/specifications/io-console-%{io_console_ver}.gemspec
a6d548c5
ER
1111%{gem_dir}/gems/io-console-%{io_console_ver}
1112%dir %{gem_libdir}/io-console-%{io_console_ver}
1113%dir %{gem_libdir}/io-console-%{io_console_ver}/lib
1114%dir %{gem_libdir}/io-console-%{io_console_ver}/lib/io
1115%attr(755,root,root) %{gem_libdir}/io-console-%{io_console_ver}/lib/io/console.so
ee1edb11 1116
a6d548c5
ER
1117%{gem_dir}/specifications/psych-%{psych_ver}.gemspec
1118%{gem_dir}/gems/psych-%{psych_ver}
1119%{ruby_libdir}/psych
1120%dir %{gem_libdir}/psych-%{psych_ver}
1121%dir %{gem_libdir}/psych-%{psych_ver}/lib
1122%attr(755,root,root) %{gem_libdir}/psych-%{psych_ver}/lib/psych.so
45f22c60 1123
d78ec589 1124%dir %{gem_dir}
a6d548c5 1125%dir %{gem_dir}/gems
d78ec589 1126%dir %{gem_dir}/specifications
45f22c60 1127%dir %{gem_dir}/specifications/default
9c41e51a
ER
1128%{_mandir}/man1/erb%{ruby_suffix}.1*
1129%{_mandir}/man1/ri%{ruby_suffix}.1*
15467dc7 1130
9fd96af7 1131%files doc
9434194f 1132%defattr(644,root,root,755)
b2f04116 1133%doc ruby-doc-bundle/*
af4f9d38
JR
1134%{?with_doc:%doc ruby_%{doc_version}_stdlib}
1135%{?with_doc:%doc ruby_%{doc_version}_core}
87b9c30a 1136
d0f5536d 1137%if %{with doc}
9fd96af7 1138%files doc-ri
e40bfe06 1139%defattr(644,root,root,755)
2db0575e 1140%{ruby_ridir}/*
d0f5536d 1141%endif
265d0efe 1142
9fd96af7 1143%files examples
616a12d8 1144%defattr(644,root,root,755)
7cb22c75 1145%{_examplesdir}/%{oname}-%{pkg_version}
This page took 0.389331 seconds and 4 git commands to generate.