]> git.pld-linux.org Git - packages/ruby.git/blob - ruby.spec
typo
[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 #   - fix inconsistencies with versioned vs not-versioned dirs (see dirname hacks in configure)
6 #   - custom-rubygems-location.patch
7 #
8 # Conditional build:
9 %bcond_without  doc             # skip (time-consuming) docs generating; intended for speed up test builds
10 %bcond_without  tk              # skip building package with Tk bindings
11 %bcond_without  batteries       # Don't include rubygems, json, rake, minitest
12 %bcond_without  default_ruby    # use this Ruby as default system Ruby
13 %bcond_with     bootstrap       # build bootstrap version
14
15 %define         rel             1
16 %define         ruby_version    1.9
17 %define         basever         1.9.3
18 %define         patchlevel      545
19
20 %define         ruby_suffix %{!?with_default_ruby:%{ruby_version}}
21 %define         doc_version     1_9_3
22 %define         json_ver        1.5.5
23 %define         rake_ver        0.9.2.2
24 %define         rubygems_ver    1.8.23.2
25 %define         minitest_ver    2.5.1
26 # when increasing rdoc_ver, please remove "11." prefix in rdoc package release
27 %define         rdoc_ver        3.9.5
28 %define         irb_ver         0.9.6
29 %define         bigdecimal_ver  1.1.0
30 %define         io_console_ver  0.3
31 %define         oname   ruby
32 Summary:        Ruby - interpreted scripting language
33 Summary(ja.UTF-8):      オブジェクト指向言語Rubyインタプリタ
34 Summary(pl.UTF-8):      Ruby - interpretowany język skryptowy
35 Summary(pt_BR.UTF-8):   Linguagem de script orientada a objeto
36 Summary(zh_CN.UTF-8):   ruby - 一种快速高效的面向对象脚本编程语言
37 Name:           ruby%{ruby_suffix}
38 Version:        %{basever}.%{patchlevel}
39 Release:        %{rel}
40 Epoch:          1
41 # Public Domain for example for: include/ruby/st.h, strftime.c, ...
42 License:        (Ruby or BSD) and Public Domain
43 Group:          Development/Languages
44 Source0:        ftp://ftp.ruby-lang.org/pub/ruby/1.9/%{oname}-%{basever}-p%{patchlevel}.tar.bz2
45 # Source0-md5:  4743c1dc48491070bae8fc8b423bc1a7
46 Source1:        http://www.ruby-doc.org/download/%{oname}-doc-bundle.tar.gz
47 # Source1-md5:  ad1af0043be98ba1a4f6d0185df63876
48 Source2:        http://www.ruby-doc.org/downloads/%{oname}_%{doc_version}_stdlib_rdocs.tgz
49 # Source2-md5:  ec622612428672c432b6f65dd31a84b5
50 Source3:        http://www.ruby-doc.org/downloads/%{oname}_%{doc_version}_core_rdocs.tgz
51 # Source3-md5:  1892aadde51d36106c513bced2193dff
52 Source100:      ftp://ftp.ruby-lang.org/pub/ruby/1.8/%{oname}-1.8.7-p330.tar.gz
53 # Source100-md5:        50a49edb787211598d08e756e733e42e
54 Source4:        rdoc.1
55 Source5:        testrb.1
56 Patch0:         %{oname}-lib64.patch
57 Patch1:         %{oname}-ffs.patch
58 Patch2:         fix-bison-invocation.patch
59 # http://redmine.ruby-lang.org/issues/5231
60 Patch3:         disable-versioned-paths.patch
61 # TODO: Should be submitted upstream?
62 Patch4:         arch-specific-dir.patch
63 # http://redmine.ruby-lang.org/issues/5281
64 Patch5:         site-and-vendor-arch-flags.patch
65 # Make mkmf verbose by default
66 Patch6:         mkmf-verbose.patch
67 Patch7:         strip-ccache.patch
68 URL:            http://www.ruby-lang.org/
69 BuildRequires:  autoconf >= 2.60
70 BuildRequires:  automake
71 BuildRequires:  bison >= 1.875
72 BuildRequires:  db-devel
73 BuildRequires:  gdbm-devel >= 1.8.3
74 BuildRequires:  libffi-devel
75 BuildRequires:  ncurses-devel
76 BuildRequires:  openssl-devel
77 BuildRequires:  pkgconfig
78 BuildRequires:  readline-devel >= 4.2
79 BuildRequires:  rpm-build >= 5.4.10-49
80 # boostrap needs ruby binary, erb module
81 %{!?with_bootstrap:BuildRequires:       rpm-rubyprov}
82 %{!?with_bootstrap:BuildRequires:       ruby-modules}
83 %{!?with_bootstrap:BuildRequires:       ruby}
84 BuildRequires:  sed >= 4.0
85 BuildRequires:  yaml-devel
86 %if %{with tk}
87 BuildRequires:  tk-devel
88 %endif
89 Requires(post,postun):  /sbin/ldconfig
90 Provides:       ruby(ver) = %{ruby_version}
91 Obsoletes:      ruby-REXML <= 2.4.0-2
92 Obsoletes:      ruby-doc < 1.8.4
93 Obsoletes:      ruby-fastthread <= 0.6.3
94 Conflicts:      ruby-activesupport < 2.3.11-2
95 Conflicts:      ruby-activesupport2 < 2.3.11-2
96 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
97
98 %define ruby_ridir              %{_datadir}/ri/%{ruby_version}/system
99 %define gem_dir                 %{_datadir}/%{oname}/gems/%{ruby_version}
100
101 # The RubyGems library has to stay out of Ruby directory three, since the
102 # RubyGems should be share by all Ruby implementations.
103 %define rubygems_dir            %{_datadir}/rubygems
104
105 %define ruby_archdir            %{_libdir}/%{oname}/%{ruby_version}
106 %define ruby_libdir             %{_datadir}/%{oname}/%{ruby_version}
107
108 # This is the local lib/arch and should not be used for packaging.
109 %define sitedir                 site_ruby
110 %define ruby_sitedir            %{_prefix}/local/share/%{oname}/%{sitedir}
111 %define ruby_sitearchdir        %{_prefix}/local/%{_lib}/%{oname}/%{sitedir}/%{ruby_version}
112 %define ruby_sitelibdir         %{_prefix}/local/share/%{oname}/%{sitedir}/%{ruby_version}
113
114 # This is the general location for libs/archs compatible with all
115 # or most of the Ruby versions available in the PLD repositories.
116 %define vendordir               vendor_ruby
117 %define ruby_vendordir          %{_datadir}/%{oname}/%{vendordir}
118 %define ruby_vendorarchdir      %{_libdir}/%{oname}/%{vendordir}/%{ruby_version}
119 %define ruby_vendorlibdir       %{_datadir}/%{oname}/%{vendordir}/%{ruby_version}
120
121 # TODO: drop legacy loadpaths after all ruby modules rebuilt in Th
122 %define legacy_libdir           %{_libdir}/%{oname}/%{ruby_version}
123 %define legacy_archdir          %{_libdir}/%{oname}/%{ruby_version}/%{_target_cpu}-linux
124 %define legacy_sitedir          %{_libdir}/%{oname}/%{sitedir}
125 %define legacy_sitelibdir       %{_libdir}/%{oname}/%{sitedir}/%{ruby_version}
126 %define legacy_sitearchdir      %{_libdir}/%{oname}/%{sitedir}/%{ruby_version}/%{_target_cpu}-linux
127 %define legacy_vendordir        %{_libdir}/%{oname}/%{vendordir}
128 %define legacy_vendorlibdir     %{_libdir}/%{oname}/%{vendordir}/%{ruby_version}
129 %define legacy_vendorarchdir    %{_libdir}/%{oname}/%{vendordir}/%{ruby_version}/%{_target_cpu}-linux
130
131 %define legacy_siteloadpath     %{legacy_sitelibdir}\\0%{legacy_sitearchdir}\\0%{legacy_sitedir}
132 %define legacy_vendorloadpath   %{legacy_vendorarchdir}
133 %define legacy_loadpath         %{legacy_archdir}
134 %define legacy_loadpaths        %{legacy_siteloadpath}\\0%{legacy_vendorloadpath}\\0%{legacy_loadpath}
135
136 # bleh, some nasty (gcc or ruby) bug still not fixed
137 # (SEGV or "unexpected break" on miniruby run during build)
138 %define         specflags_ia64  -O0
139
140 # ruby needs frame pointers for correct exception handling
141 %define         specflags_ia32  -fno-omit-frame-pointer
142
143 %description
144 Ruby is the interpreted scripting language for quick and easy
145 object-oriented programming. It has many features to process text
146 files and to do system management tasks (as in Perl). It is simple,
147 straight-forward, extensible, and portable.
148
149 This package contains only shared library and ruby interpreter. To get
150 full-functional ruby environment install ruby-modules package.
151
152 %description -l ja.UTF-8
153 Rubyはシンプルかつ強力なオブジェクト指向スクリプト言語です.Rubyは最初
154 から純粋なオブジェクト指向言語として設計されていますから,オブジェクト
155 指向プログラミングを手軽に行う事が出来ます.もちろん通常の手続き型のプ ログラミングも可能です.
156
157 %description -l pl.UTF-8
158 Ruby to interpretowany język skryptowy, w sam raz dla łatwego i
159 szybkiego pisania zorientowanych obiektowo programów. Ma wiele funkcji
160 ułatwiających przetwarzanie plików tekstowych i wykonywanie prac
161 związanych z zarządzaniem systemu (podobnie jak Perl). Jest prosty,
162 rozszerzalny i przenośny.
163
164 Ten pakiet zawiera tylko bibliotekę dzieloną i interpreter ruby.
165 Zainstaluj pakiet ruby-modules, jeżeli potrzebujesz w pełni
166 funkcjonalnego środowiska ruby.
167
168 %description -l pt_BR.UTF-8
169 Ruby é uma linguagem de script interpretada de programação orientada a
170 objeto. Possui diversas características para processamento de texto. É
171 simples, extensível e direta.
172
173 %package modules
174 Summary:        Ruby standard modules and utilities
175 Summary(pl.UTF-8):      Standardowe moduły i narzędzia dla języka Ruby
176 Group:          Development/Languages
177 Requires:       %{name} = %{epoch}:%{version}-%{release}
178 Suggests:       ruby-rubygems
179 Provides:       ruby-bigdecimal = %{bigdecimal_ver}
180 Provides:       ruby-io-console = %{io_console_ver}
181 # ruby-modules deprecated, rpm5 generates ruby(abi) itself
182 Provides:       ruby-modules(ver) = %{ruby_version}
183 %if %{with batteries}
184 Provides:       ruby-minitest = %{minitest_ver}
185 Obsoletes:      ruby-minitest <= 1.5.0
186 %endif
187
188 %description modules
189 Ruby standard modules and utilities:
190 - erb - Tiny eRuby
191 - testrb - automatic runner for Test::Unit of Ruby
192
193 %description modules -l pl.UTF-8
194 Standardowe moduły i narzędzia Ruby:
195 - erb - mały eRuby
196 - testrb - automatyczny runner dla Ruby Test::Unit
197
198 %package tk
199 Summary:        Ruby/Tk bindings
200 Summary(pl.UTF-8):      Wiązania Ruby/Tk
201 Group:          Development/Languages
202 Requires:       %{name}-modules = %{epoch}:%{version}-%{release}
203
204 %description tk
205 This package contains Ruby/Tk bindings.
206
207 %description tk -l pl.UTF-8
208 Ten pakiet zawiera wiązania Ruby/Tk.
209
210 %package devel
211 Summary:        Ruby development libraries
212 Summary(pl.UTF-8):      Biblioteki programistyczne interpretera języka Ruby
213 Group:          Development/Languages
214 Requires:       %{name}-modules = %{epoch}:%{version}-%{release}
215 Requires:       gcc
216 Requires:       glibc-devel
217 Requires:       pkgconfig
218
219 %description devel
220 Ruby development libraries.
221
222 %description devel -l pl.UTF-8
223 Biblioteki programistyczne interpretera języka Ruby.
224
225 %package static
226 Summary:        Ruby static libraries
227 Summary(pl.UTF-8):      Biblioteki statyczne Ruby
228 Group:          Development/Languages
229 Requires:       %{name}-devel = %{epoch}:%{version}-%{release}
230
231 %description static
232 Ruby static libraries.
233
234 %description static -l pl.UTF-8
235 Biblioteki statyczne Ruby.
236
237 %package doc
238 Summary:        Ruby HTML documentation
239 Summary(pl.UTF-8):      Dokumentacja HTML do Ruby
240 Group:          Documentation
241 %if "%{_rpmversion}" >= "5"
242 BuildArch:      noarch
243 %endif
244
245 %description doc
246 Ruby HTML documentation: FAQ, guide, core and standard library.
247
248 %description doc -l pl.UTF-8
249 Dokumentacja HTML do Ruby: FAQ, przewodnik, dokumentacja dla core i
250 stdlib.
251
252 %package doc-ri
253 Summary:        Ruby ri documentation
254 Summary(pl.UTF-8):      Dokumentacja Ruby w formacie ri
255 Group:          Documentation
256 Requires:       %{name}-modules = %{epoch}:%{version}-%{release}
257 %if "%{_rpmversion}" >= "5"
258 BuildArch:      noarch
259 %endif
260
261 %description doc-ri
262 Ruby ri documentation.
263
264 %description doc-ri -l pl.UTF-8
265 Dokumentacja Ruby w formacie ri.
266
267 %package examples
268 Summary:        Ruby examples
269 Summary(pl.UTF-8):      Przykłady dla języka Ruby
270 Group:          Development/Languages
271 %if "%{_rpmversion}" >= "5"
272 BuildArch:      noarch
273 %endif
274
275 %description examples
276 Ruby examples.
277
278 %description examples -l pl.UTF-8
279 Przykłady programów w języku Ruby.
280
281 # IMPORTANT: keep irb, rdoc, rubygems, rake, json as last packages as we reset epoch/version/release
282 # and %{version},%{release} macros may not be used directly as they take last
283 # subpackage value not main package one what you intend to use
284
285 %package irb
286 Summary:        The Interactive Ruby
287 Version:        %{irb_ver}
288 Release:        %{basever}.%{patchlevel}.%{rel}
289 Epoch:          0
290 Group:          Development/Languages
291 Requires:       %{name}-modules = 1:%{basever}.%{patchlevel}-%{rel}
292 Provides:       irb = %{version}-%{release}
293 Provides:       ruby(irb) = %{version}-%{release}
294 %if "%{_rpmversion}" >= "5"
295 BuildArch:      noarch
296 %endif
297
298 %description irb
299 The irb is acronym for Interactive Ruby. It evaluates ruby expression
300 from the terminal.
301
302 %package rdoc
303 Summary:        A tool to generate HTML and command-line documentation for Ruby projects
304 Summary(pl.UTF-8):      Narzędzie do generowania dokumentacji HTML i linii poleceń dla projektów w Rubym
305 Version:        %{rdoc_ver}
306 # remove "11." when rdoc_ver is increased
307 Release:        11.%{basever}.%{patchlevel}.%{rel}
308 Epoch:          0
309 License:        GPL v2 and Ruby and MIT
310 Group:          Development/Libraries
311 Requires:       %{name}-modules = 1:%{basever}.%{patchlevel}-%{rel}
312 Obsoletes:      rdoc <= 0.9.0
313 %if "%{_rpmversion}" >= "5"
314 BuildArch:      noarch
315 %endif
316
317 %description rdoc
318 RDoc produces HTML and command-line documentation for Ruby projects.
319 RDoc includes the 'rdoc' and 'ri' tools for generating and displaying
320 online documentation.
321
322 %description rdoc -l pl.UTF-8
323 RDoc tworzy dokumentację HTML i linii poleceń dla projektów w języku
324 Ruby. RDoc zawiera narzędzia 'rdoc' i 'ri' do generowania i
325 wyświetlania dokumentacji online.
326
327 %package rubygems
328 Summary:        RubyGems - the Ruby standard for packaging Ruby libraries
329 Summary(pl.UTF-8):      RubyGems - standard Ruby'ego pakietowania bibliotek
330 Version:        %{rubygems_ver}
331 Release:        %{basever}.%{patchlevel}.%{rel}
332 Epoch:          0
333 License:        Ruby or MIT
334 Group:          Development/Libraries
335 Requires:       %{name}-modules = 1:%{basever}.%{patchlevel}-%{rel}
336 Requires:       %{name}-rdoc >= %{rdoc_ver}
337 Suggests:       %{name}-devel
338 Provides:       rubygems = %{rubygems_ver}
339 %if "%{_rpmversion}" >= "5"
340 BuildArch:      noarch
341 %endif
342
343 %description rubygems
344 RubyGems is the Ruby standard for publishing and managing third party
345 libraries.
346
347 %description rubygems -l pl.UTF-8
348 RubyGems to standardowe narzędzie języka Ruby do publikowania i
349 zarządzania zewnętrznymi bibliotekami.
350
351 %package rake
352 Summary:        Rake is a Make-like program implemented in Ruby
353 Summary(pl.UTF-8):      Program typu Make dla języka Ruby
354 Version:        %{rake_ver}
355 Release:        %{basever}.%{patchlevel}.%{rel}
356 Epoch:          0
357 License:        MIT
358 Group:          Development/Languages
359 Provides:       rake = %{rake_ver}
360 Conflicts:      ruby-modules < 1:1.9.3.429-2
361 %if "%{_rpmversion}" >= "5"
362 BuildArch:      noarch
363 %endif
364
365 %description rake
366 Rake is a simple Ruby build program with capabilities similar to make.
367
368 It has the following features:
369 - Rakefiles (rake's version of Makefiles) are completely defined in
370   standard Ruby syntax. No XML files to edit. No quirky Makefile syntax
371   to worry about (is that a tab or a space?)
372 - Users can specify tasks with prerequisites.
373 - Rake supports rule patterns to synthesize implicit tasks.
374 - Rake is lightweight. It can be distributed with other projects as a
375   single file. Projects that depend upon rake do not require that rake
376   be installed on target systems.
377
378 %description rake -l pl.UTF-8
379 Rake to prosty program do budowania w języku Ruby o możliwościach
380 podobnych do make.
381
382 Ma następujące cechy:
383 - Pliki Rakefile (rake'owa odmiana plików Makefile) są definiowane
384   całkowicie w standardowej składni języka Ruby. Nie trzeba modyfikować
385   plików XML. Nie trzeba martwić się kaprysami składni Makefile (czy to
386   tabulacja czy spacja?).
387 - Użytkownicy mogą określać zadania z ich zależnościami.
388 - Rake obsługuje wzorce reguł do tworzenia z nich wynikowych zadań.
389 - Rake jest lekki. Może być rozpowszechniany z innymi projektami jako
390   pojedynczy plik. Projekty używające rake'a nie wymagają go
391   zainstalowanego na systemach docelowych.
392
393 %package json
394 Summary:        JSON library for Ruby
395 Summary(pl.UTF-8):      Biblioteka JSON dla języka Ruby
396 Version:        %{json_ver}
397 Release:        %{basever}.%{patchlevel}.%{rel}
398 Epoch:          0
399 License:        MIT
400 Group:          Development/Languages
401 Obsoletes:      ruby-json-rubyforge
402 Conflicts:      ruby-modules < 1:1.9.3.429-3
403
404 %description json
405 This is a JSON implementation as a Ruby extension in C.
406
407 %description json -l pl.UTF-8
408 Biblioteka JSON dla języka Ruby.
409
410 %prep
411 %if %{with bootstrap}
412 %setup -q -n %{oname}-%{basever}-p%{patchlevel} -a1 -a2 -a3 -a100
413 %else
414 %setup -q -n %{oname}-%{basever}-p%{patchlevel} -a1 -a2 -a3
415 %endif
416 %patch0 -p1
417 %patch1 -p1
418 %patch2 -p1
419 %patch3 -p1
420 %patch4 -p1
421 %patch5 -p1
422 %patch6 -p1
423 %patch7 -p1
424
425 # must be regenerated with new bison
426 %{__rm} parse.{c,h}
427
428 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
429
430 find -type f '(' -name '*.rb' -o -name '*.cgi' -o -name '*.test' \
431         -o -name 'ruby.1' -o -name '*.html' -o -name '*.tcl' ')' \
432         | xargs %{__sed} -i 's,/usr/local/bin/,%{_bindir}/,'
433
434 %build
435 rubygems_ver=$(awk '/VERSION =/ && $1 == "VERSION" {print $3}' lib/rubygems.rb | xargs)
436 if [ $rubygems_ver != %{rubygems_ver} ]; then
437         echo "Set %%define rubygems_ver to $rubygems_ver and re-run."
438         exit 1
439 fi
440
441 cp -f /usr/share/automake/config.sub .
442
443 # build ruby-1.8.7 first
444 %if %{with bootstrap}
445 cd %{oname}-1.8.7-p330
446 %configure
447 %{__make}
448 cd ..
449 %endif
450
451 %{__autoconf}
452 %configure \
453         %{?with_bootstrap:--with-baseruby=%{oname}-1.8.7-p330/miniruby} \
454         --program-suffix=%{ruby_suffix} \
455         --with-rubylibprefix=%(dirname %{ruby_libdir}) \
456         --with-archdir=%{ruby_archdir} \
457         --with-sitedir=%(dirname %{ruby_sitelibdir}) \
458         --with-sitearchdir=%{ruby_sitearchdir} \
459         --with-vendordir=%(dirname %{ruby_vendorlibdir}) \
460         --with-vendorarchdir=%{ruby_vendorarchdir} \
461         --with-rubygemsdir=%{rubygems_dir} \
462         --with-search-path="%{legacy_loadpaths}" \
463         --enable-shared \
464         --enable-pthread \
465         --disable-rubygems \
466         --disable-install-doc \
467         --with-ruby-version=minor
468
469 %{__make} -j1 main \
470         COPY="cp -p" Q= \
471         %{?with_bootstrap:BASERUBY="%{oname}-1.8.7-p330/miniruby -I./ruby-1.8.7-p330/lib"}
472
473 %if %{with doc}
474 %{__make} -j1 rdoc
475 %endif
476
477 %install
478 rm -rf $RPM_BUILD_ROOT
479 install -d $RPM_BUILD_ROOT{%{ruby_rdocdir},%{_examplesdir}/%{oname}-%{version}} \
480         $RPM_BUILD_ROOT{%{ruby_vendorarchdir},%{ruby_ridir}} \
481         $RPM_BUILD_ROOT%{ruby_vendorlibdir}/net \
482         $RPM_BUILD_ROOT%{ruby_vendordir}/data \
483         $RPM_BUILD_ROOT{%{legacy_archdir}/racc,%{legacy_sitelibdir},%{legacy_sitearchdir},%{legacy_vendorarchdir},%{legacy_libdir}/tasks} \
484
485 %{__make} install %{?with_doc:install-doc} \
486         DESTDIR=$RPM_BUILD_ROOT
487
488 cp -Rf sample/* $RPM_BUILD_ROOT%{_examplesdir}/%{oname}-%{version}
489 cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_mandir}/man1/rdoc%{ruby_suffix}.1
490 cp -p %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man1/testrb%{ruby_suffix}.1
491
492 %{__rm} -rf $RPM_BUILD_ROOT%{_docdir}/%{name}/html
493
494 ln -sf %{gem_dir}/gems/rake-%{rake_ver}/bin/rake $RPM_BUILD_ROOT%{_bindir}/rake%{ruby_suffix}
495
496 %if %{without batteries}
497 # packaged separately
498 %{__rm} -r $RPM_BUILD_ROOT%{ruby_libdir}/{rubygems,rake,json,minitest}
499 %{__rm} -r $RPM_BUILD_ROOT%{ruby_archdir}/json
500 %{__rm} -r $RPM_BUILD_ROOT%{gem_dir}/gems/rake-*
501 %{__rm} $RPM_BUILD_ROOT%{ruby_libdir}/{rake,rubygems,json}.rb
502 %{__rm} $RPM_BUILD_ROOT%{_bindir}/{gem,rake}
503 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/rake*
504 %{__rm} $RPM_BUILD_ROOT%{gem_dir}/specifications/{json,minitest,rake}-*.gemspec
505 %{?with_doc:%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/ri/%{ruby_version}/system/JSON}
506 %endif
507
508 %if %{with doc}
509 # too much .ri
510 %{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/cache.ri
511 %{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/created.rid
512 %endif
513
514 %clean
515 rm -rf $RPM_BUILD_ROOT
516
517 %post   -p /sbin/ldconfig
518 %postun -p /sbin/ldconfig
519
520 %files
521 %defattr(644,root,root,755)
522 %doc NEWS LEGAL README README.EXT ChangeLog ToDo
523 %attr(755,root,root) %{_bindir}/ruby%{ruby_suffix}
524 %attr(755,root,root) %{_libdir}/libruby.so.*.*.*
525 %attr(755,root,root) %ghost %{_libdir}/libruby.so.1.9
526 %{_mandir}/man1/ruby%{ruby_suffix}.1*
527
528 %dir %{_libdir}/%{oname}
529 %dir %{_libdir}/%{oname}/%{vendordir}
530 %dir %{_datadir}/%{oname}
531
532 %dir %{ruby_libdir}
533 %dir %{ruby_archdir}
534 %dir %{ruby_vendordir}
535 %dir %{ruby_vendordir}/data
536 %dir %{ruby_vendorlibdir}
537 %dir %{ruby_vendorarchdir}
538
539 %dir %{_datadir}/ri
540 %dir %{_datadir}/ri/%{ruby_version}
541 %dir %{ruby_ridir}
542
543 %dir %{ruby_rdocdir}
544
545 # common dirs for ruby vendor modules
546 %dir %{ruby_vendorlibdir}/net
547
548 # legacy dirs. when everything rebuilt in Th not using these dirs. drop them
549 %dir %{legacy_archdir}
550 %dir %{legacy_sitedir}
551 %dir %{legacy_sitelibdir}
552 %dir %{legacy_sitearchdir}
553 %dir %{legacy_vendorarchdir}
554 %dir %{legacy_libdir}/tasks
555 %dir %{legacy_archdir}/racc
556
557 %files devel
558 %defattr(644,root,root,755)
559 %attr(755,root,root) %{_libdir}/libruby.so
560 %{_includedir}/%{oname}-%{ruby_version}
561 %{_pkgconfigdir}/ruby-%{ruby_version}.pc
562 %{ruby_libdir}/mkmf.rb
563
564 %files static
565 %defattr(644,root,root,755)
566 %{_libdir}/libruby-static.a
567
568 %if %{with tk}
569 %files tk
570 %defattr(644,root,root,755)
571 %{ruby_libdir}/tcltk.rb
572 %{ruby_libdir}/tk*.rb
573 %{ruby_libdir}/tk
574 %{ruby_libdir}/tkextlib
575 %attr(755,root,root) %{ruby_archdir}/t*.so
576 %endif
577
578 %files irb
579 %defattr(644,root,root,755)
580 %attr(755,root,root) %{_bindir}/irb%{ruby_suffix}
581 %{ruby_libdir}/irb.rb
582 %{ruby_libdir}/irb
583 %{_mandir}/man1/irb%{ruby_suffix}.1*
584
585 %files rdoc
586 %defattr(644,root,root,755)
587 %attr(755,root,root) %{_bindir}/rdoc%{ruby_suffix}
588 %attr(755,root,root) %{_bindir}/ri%{ruby_suffix}
589 %{_mandir}/man1/rdoc%{ruby_suffix}.1*
590 %{ruby_libdir}/rdoc
591 %dir %{gem_dir}/gems/rdoc-%{rdoc_ver}
592 %dir %{gem_dir}/gems/rdoc-%{rdoc_ver}/bin
593 %attr(755,root,root) %{gem_dir}/gems/rdoc-%{rdoc_ver}/bin/rdoc
594 %{gem_dir}/specifications/rdoc-%{rdoc_ver}.gemspec
595 %attr(755,root,root) %{gem_dir}/gems/rdoc-%{rdoc_ver}/bin/ri
596
597 %if %{with batteries}
598 %files rubygems
599 %defattr(644,root,root,755)
600 %attr(755,root,root) %{_bindir}/gem%{ruby_suffix}
601 %{ruby_libdir}/rubygems
602 %{ruby_libdir}/rubygems.rb
603 %{ruby_libdir}/ubygems.rb
604
605 %files rake
606 %defattr(644,root,root,755)
607 %attr(755,root,root) %{_bindir}/rake%{ruby_suffix}
608 %{_mandir}/man1/rake%{ruby_suffix}.1*
609 %{ruby_libdir}/rake
610 %dir %{gem_dir}/gems/rake-%{rake_ver}
611 %dir %{gem_dir}/gems/rake-%{rake_ver}/bin
612 %attr(755,root,root) %{gem_dir}/gems/rake-%{rake_ver}/bin/rake
613 %{gem_dir}/specifications/rake-%{rake_ver}.gemspec
614
615 %files json
616 %defattr(644,root,root,755)
617 %{ruby_libdir}/json
618 %dir %{ruby_archdir}/json
619 %dir %{ruby_archdir}/json/ext
620 %attr(755,root,root) %{ruby_archdir}/json/ext/*.so
621 %{gem_dir}/specifications/json-%{json_ver}.gemspec
622 %endif
623
624 %files modules
625 %defattr(644,root,root,755)
626 %attr(755,root,root) %{_bindir}/erb%{ruby_suffix}
627 %attr(755,root,root) %{_bindir}/testrb%{ruby_suffix}
628 %{ruby_libdir}/bigdecimal
629 %{ruby_libdir}/cgi
630 %{ruby_libdir}/date
631 %{ruby_libdir}/digest
632 %{ruby_libdir}/dl
633 %{ruby_libdir}/drb
634 %{ruby_libdir}/fiddle
635 %{ruby_libdir}/io
636 %{ruby_libdir}/matrix
637 %{ruby_libdir}/net
638 %{ruby_libdir}/openssl
639 %{ruby_libdir}/optparse
640 %{ruby_libdir}/psych
641 %{ruby_libdir}/racc
642 %{ruby_libdir}/rbconfig
643 %{ruby_libdir}/rexml
644 %{ruby_libdir}/rinda
645 %{ruby_libdir}/ripper
646 %{ruby_libdir}/rss
647 %{ruby_libdir}/shell
648 %{ruby_libdir}/syck
649 %{ruby_libdir}/test
650 %{ruby_libdir}/uri
651 %{ruby_libdir}/webrick
652 %{ruby_libdir}/xmlrpc
653 %{ruby_libdir}/yaml
654 %{ruby_libdir}/[A-Za-s]*.rb
655 %{ruby_libdir}/tempfile.rb
656 %{ruby_libdir}/thread.rb
657 %{ruby_libdir}/thwait.rb
658 %{ruby_libdir}/time.rb
659 %{ruby_libdir}/timeout.rb
660 %{ruby_libdir}/tmpdir.rb
661 %{ruby_libdir}/tracer.rb
662 %{ruby_libdir}/tsort.rb
663 %{ruby_libdir}/[u-z]*.rb
664 %if %{with batteries}
665 %exclude %{ruby_libdir}/rubygems.rb
666 %exclude %{ruby_libdir}/ubygems.rb
667 %endif
668 %exclude %{ruby_libdir}/irb.rb
669 %exclude %{ruby_libdir}/mkmf.rb
670 %attr(755,root,root) %{ruby_archdir}/[a-s]*.so
671 %attr(755,root,root) %{ruby_archdir}/[u-z]*.so
672 %dir %{ruby_archdir}/digest
673 %attr(755,root,root) %{ruby_archdir}/digest/*.so
674 %dir %{ruby_archdir}/dl
675 %attr(755,root,root) %{ruby_archdir}/dl/callback.so
676 %dir %{ruby_archdir}/enc
677 %attr(755,root,root) %{ruby_archdir}/enc/*.so
678 %dir %{ruby_archdir}/enc/trans
679 %attr(755,root,root) %{ruby_archdir}/enc/trans/*.so
680 %dir %{ruby_archdir}/io
681 %attr(755,root,root) %{ruby_archdir}/io/*.so
682 %dir %{ruby_archdir}/mathn
683 %attr(755,root,root) %{ruby_archdir}/mathn/*.so
684 %dir %{ruby_archdir}/racc
685 %attr(755,root,root) %{ruby_archdir}/racc/*.so
686 %{ruby_archdir}/rbconfig.rb
687
688 %{gem_dir}/specifications/bigdecimal-%{bigdecimal_ver}.gemspec
689 %{gem_dir}/specifications/io-console-%{io_console_ver}.gemspec
690
691 %if %{with batteries}
692 # minitest
693 %{ruby_libdir}/minitest
694 %{gem_dir}/specifications/minitest-%{minitest_ver}.gemspec
695 %endif
696
697 # parents of gem_dir
698 %dir %{_datadir}/%{oname}/gems
699 #%dir %{_datadir}/%{oname}/gems/%{ruby_version}
700 %dir %{_datadir}/%{oname}/gems/%{ruby_version}/gems
701
702 %dir %{gem_dir}
703 %dir %{gem_dir}/specifications
704 %{_mandir}/man1/erb%{ruby_suffix}.1*
705 %{_mandir}/man1/ri%{ruby_suffix}.1*
706 %{_mandir}/man1/testrb%{ruby_suffix}.1*
707
708 %files doc
709 %defattr(644,root,root,755)
710 %doc ruby-doc-bundle/*
711 %{?with_doc:%doc ruby_%{doc_version}_stdlib}
712 %{?with_doc:%doc ruby_%{doc_version}_core}
713
714 %if %{with doc}
715 %files doc-ri
716 %defattr(644,root,root,755)
717 %{ruby_ridir}/*
718 %endif
719
720 %files examples
721 %defattr(644,root,root,755)
722 %{_examplesdir}/%{oname}-%{version}
This page took 2.138272 seconds and 4 git commands to generate.