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