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