/[packages]/cauldron/ruby/current/SPECS/ruby.spec
ViewVC logotype

Annotation of /cauldron/ruby/current/SPECS/ruby.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 291748 - (hide annotations) (download)
Mon Sep 10 11:39:29 2012 UTC (11 years, 7 months ago) by shlomif
File size: 14841 byte(s)
Add a missing provides for rake
1 fwang 289958 %define subver 1.9
2 fwang 290007 %define rubyapi 1.9.1
3 fwang 289958 %define rubyver 1.9.3
4     %define patchversion p194
5 shlomif 291748 %define rel 4
6 blino 1152
7 fwang 291590 %define libname %mklibname ruby %{subver}
8    
9 fwang 291557 %define ruby_libdir %{_datadir}/%{name}
10     %define ruby_libarchdir %{_libdir}/%{name}
11    
12 fwang 290007 # This is the local lib/arch and should not be used for packaging.
13 fwang 291557 %define ruby_sitelibdir %{_datadir}/ruby/site_ruby
14     %define ruby_sitearchdir %{_libdir}/ruby/site_ruby
15 fwang 290007
16     # This is the general location for libs/archs compatible with all
17     # or most of the Ruby versions available in the Fedora repositories.
18 fwang 291551 %define ruby_vendorlibdir %{_datadir}/ruby/vendor_ruby
19 fwang 291557 %define ruby_vendorarchdir %{_libdir}/ruby/vendor_ruby
20 fwang 290007
21     # The RubyGems library has to stay out of Ruby directory three, since the
22     # RubyGems should be share by all Ruby implementations.
23 fwang 291557 %define rubygems_dir %{_datadir}/ruby/gems
24 fwang 291590 %define rubygems_version 1.8.23
25 fwang 290007
26 blino 1152 Summary: Object Oriented Script Language
27     Name: ruby
28 fwang 291590 Epoch: 1
29 blino 1152 Version: %{rubyver}.%{patchversion}
30     Release: %mkrel %rel
31     License: Ruby or GPLv2
32     Group: Development/Ruby
33     BuildRequires: autoconf
34     BuildRequires: byacc
35 shlomif 291698 BuildRequires: doxygen
36 blino 1152 BuildRequires: ncurses-devel
37     BuildRequires: readline-devel
38     BuildRequires: tcl-devel tk-devel
39 fwang 276350 BuildRequires: db-devel
40 fwang 176940 BuildRequires: gdbm-devel >= 1.8.3
41 blino 1152 BuildRequires: openssl-devel
42     BuildRequires: zlib-devel
43 fwang 289987 BuildRequires: libffi-devel
44     BuildRequires: yaml-devel
45 fwang 289998 BuildRequires: rpm-mageia-setup >= 1.158
46 blino 1152 Obsoletes: ruby-rexml
47     Provides: ruby-rexml
48     # explicit file provides (since such requires are automatically added by find-requires)
49     Provides: /usr/bin/ruby
50     Provides: ruby(abi) = %subver
51    
52 fwang 289958 Source0: http://ftp.ruby-lang.org/pub/ruby/%{subver}/ruby-%{rubyver}-%{patchversion}.tar.bz2
53 blino 1152 Source3: ruby.macros
54     URL: http://www.ruby-lang.org/
55    
56 fwang 290007 # == FEDORA PATCHES BEGINS ==
57     # http://redmine.ruby-lang.org/issues/5231
58     Patch0: ruby-1.9.3-disable-versioned-paths.patch
59     # TODO: Should be submitted upstream?
60     Patch1: ruby-1.9.3-arch-specific-dir.patch
61     # http://redmine.ruby-lang.org/issues/5281
62     Patch2: ruby-1.9.3-added-site-and-vendor-arch-flags.patch
63     # http://redmine.ruby-lang.org/issues/5465
64     Patch4: ruby-1.9.3-fix-s390x-build.patch
65     # Fix the uninstaller, so that it doesn't say that gem doesn't exist
66     # when it exists outside of the GEM_HOME (already fixed in the upstream)
67     Patch5: ruby-1.9.3-rubygems-1.8.11-uninstaller.patch
68     # http://redmine.ruby-lang.org/issues/5135 - see comment 29
69     Patch6: ruby-1.9.3-webrick-test-fix.patch
70     # Already fixed upstream:
71     # https://github.com/ruby/ruby/commit/f212df564a4e1025f9fb019ce727022a97bfff53
72     Patch7: ruby-1.9.3-bignum-test-fix.patch
73     # Allows to install RubyGems into custom directory, outside of Ruby's tree.
74     # http://redmine.ruby-lang.org/issues/5617
75     Patch8: ruby-1.9.3-custom-rubygems-location.patch
76     # Add support for installing binary extensions according to FHS.
77     # https://github.com/rubygems/rubygems/issues/210
78     Patch9: rubygems-1.8.11-binary-extensions.patch
79     # == FEDORA PATCHES ENDS ==
80    
81 fwang 291591 %package -n %{libname}
82 fwang 291590 Summary: Libraries necessary to run Ruby
83     Group: Development/Ruby
84    
85 blino 1152 %package doc
86     Summary: Documentation for the powerful language Ruby
87     Group: Development/Ruby
88 fwang 202696 BuildArch: noarch
89 blino 1152
90     %package devel
91     Summary: Development file for the powerful language Ruby
92     Group: Development/Ruby
93 fwang 291590 Requires: %{name} = %{epoch}:%{version}
94     Requires: %{libname} = %{epoch}:%{version}
95 blino 1152
96     %package tk
97     Summary: Tk extension for the powerful language Ruby
98     Group: Development/Ruby
99 fwang 291590 Requires: %{name} = %{epoch}:%{version}
100 blino 1152
101 fwang 291551 %package RubyGems
102     Summary: The Ruby standard for packaging ruby libraries
103     Group: Development/Ruby
104 fwang 291590 Version: %{rubygems_version}
105 fwang 291551 Requires: ruby(abi) = %{subver}
106 fwang 291590 Provides: gem = %{rubygems_version}
107     Provides: rubygems = %{rubygems_version}
108     Provides: ruby(rubygems) = %{rubygems_version}
109 fwang 291561 BuildArch: noarch
110 fwang 291551
111     %package rake
112     Summary: Simple ruby build program with capabilities similar to make
113     Group: Development/Ruby
114 fwang 291590 Version: 0.9.2.2
115 fwang 291551 Requires: ruby(abi) = %{subver}
116 shlomif 291748 Provides: rubygem(rake) = 0.9.2.2
117 fwang 291561 BuildArch: noarch
118 fwang 291551
119 fwang 291562 %package minitest
120 shlomif 291733 Summary: Minitest provides a complete suite of testing facilities
121 fwang 291562 Group: Development/Ruby
122 fwang 291590 Version: 2.5.1
123 fwang 291562 License: MIT
124 fwang 291590 Requires: ruby(abi) = %{subver}
125     Requires: ruby(rubygems) >= %{rubygems_version}
126     Provides: rubygem(minitest) = 2.5.1
127 fwang 291562 BuildArch: noarch
128    
129     %package json
130     Summary: This is a JSON implementation as a Ruby extension in C
131     Group: Development/Ruby
132 fwang 291590 Version: 1.5.4
133 fwang 291562 License: Ruby or GPLv2
134 fwang 291590 Requires: ruby(abi) = %{subver}
135     Requires: ruby(rubygems) >= %{rubygems_version}
136     Provides: rubygem(json) = 1.5.4
137 fwang 291562
138     %package rdoc
139     Summary: A tool to generate HTML and command-line documentation for Ruby projects
140     Group: Development/Ruby
141 fwang 291590 Version: 3.9.4
142 fwang 291562 License: GPLv2 and Ruby and MIT
143 fwang 291590 Requires: ruby(abi) = %{subver}
144     Requires: ruby(rubygems) >= %{rubygems_version}
145     Requires: ruby(irb) = %{version}
146     Provides: rdoc = 3.9.4
147     Provides: ri = 3.9.4
148 fwang 291562 BuildArch: noarch
149    
150 fwang 291590 %package irb
151     Summary: The Interactive Ruby
152     Group: Development/Ruby
153     Provides: irb = %{version}-%{release}
154     Provides: ruby(irb) = %{version}-%{release}
155     BuildArch: noarch
156    
157     %package bigdecimal
158     Summary: BigDecimal provides arbitrary-precision floating point decimal arithmetic
159     Group: Development/Ruby
160     Version: 1.1.0
161     License: GPL+ or Artistic
162     Requires: ruby(abi) = %{subver}
163     Requires: ruby(rubygems) >= %{rubygems_version}
164     Provides: rubygem(bigdecimal) = 1.1.0
165    
166     %package io-console
167     Summary: IO/Console is a simple console utilizing library
168     Group: Development/Ruby
169     Version: 0.3
170     Requires: ruby(abi) = %{subver}
171     Requires: ruby(rubygems) >= %{rubygems_version}
172     Provides: rubygem(io-console) = 0.3
173    
174 blino 1152 %description
175     Ruby is the interpreted scripting language for quick and
176     easy object-oriented programming. It has many features to
177     process text files and to do system management tasks (as in
178     Perl). It is simple, straight-forward, and extensible.
179    
180     %description doc
181     Ruby is the interpreted scripting language for quick and
182     easy object-oriented programming. It has many features to
183     process text files and to do system management tasks (as in
184     Perl). It is simple, straight-forward, and extensible.
185    
186     This package contains the Ruby's documentation
187    
188 fwang 291590 %description -n %{libname}
189     This package includes the libruby, necessary to run Ruby.
190    
191 blino 1152 %description devel
192     Ruby is the interpreted scripting language for quick and
193     easy object-oriented programming. It has many features to
194     process text files and to do system management tasks (as in
195     Perl). It is simple, straight-forward, and extensible.
196    
197     This package contains the Ruby's devel files.
198    
199     %description tk
200     Ruby is the interpreted scripting language for quick and
201     easy object-oriented programming. It has many features to
202     process text files and to do system management tasks (as in
203     Perl). It is simple, straight-forward, and extensible.
204    
205     This package contains the Tk extension for Ruby.
206    
207 fwang 291551 %description RubyGems
208     RubyGems is the Ruby standard for publishing and managing third party
209     libraries.
210    
211 fwang 291552 %description rake
212     Rake is a Make-like program implemented in Ruby. Tasks and dependencies are
213     specified in standard Ruby syntax.
214    
215 fwang 291562 %description rdoc
216     RDoc produces HTML and command-line documentation for Ruby projects. RDoc
217     includes the 'rdoc' and 'ri' tools for generating and displaying online
218     documentation.
219    
220     %description json
221     This is a implementation of the JSON specification according to RFC 4627.
222     You can think of it as a low fat alternative to XML, if you want to store
223     data to disk or transmit it over a network rather than use a verbose
224     markup language.
225    
226     %description minitest
227     minitest/unit is a small and incredibly fast unit testing framework.
228    
229     minitest/spec is a functionally complete spec engine.
230    
231     minitest/benchmark is an awesome way to assert the performance of your
232     algorithms in a repeatable manner.
233    
234     minitest/mock by Steven Baker, is a beautifully tiny mock object
235     framework.
236    
237     minitest/pride shows pride in testing and adds coloring to your test
238     output.
239    
240 fwang 291590 %description irb
241     The irb is acronym for Interactive Ruby. It evaluates ruby expression
242     from the terminal.
243    
244     %description bigdecimal
245     Ruby provides built-in support for arbitrary precision integer arithmetic.
246     For example:
247    
248     42**13 -> 1265437718438866624512
249    
250     BigDecimal provides similar support for very large or very accurate floating
251     point numbers. Decimal arithmetic is also useful for general calculation,
252     because it provides the correct answers people expect–whereas normal binary
253     floating point arithmetic often introduces subtle errors because of the
254     conversion between base 10 and base 2.
255    
256     %description io-console
257     IO/Console provides very simple and portable access to console. It doesn't
258     provide higher layer features, such like curses and readline.
259    
260 blino 1152 %prep
261     %setup -q -n ruby-%{rubyver}-%{patchversion}
262 fwang 290007 %apply_patches
263 blino 1152
264     %build
265 fwang 290038 autoconf
266 blino 1152 CFLAGS=`echo %optflags | sed 's/-fomit-frame-pointer//'`
267 fwang 291557 %configure2_5x --enable-shared --disable-rpath --enable-pthread --disable-versioned-paths \
268     --with-rubylibprefix='%{ruby_libdir}' \
269     --with-archdir='%{ruby_libarchdir}' \
270 fwang 290007 --with-sitedir='%{ruby_sitelibdir}' \
271     --with-sitearchdir='%{ruby_sitearchdir}' \
272     --with-vendordir='%{ruby_vendorlibdir}' \
273     --with-vendorarchdir='%{ruby_vendorarchdir}' \
274 fwang 291559 --with-rubyhdrdir='%{_includedir}' \
275 fwang 290022 --with-rubygemsdir='%{rubygems_dir}'
276 blino 1152 %make
277    
278     %install
279     %makeinstall_std install-doc
280    
281     install -d %buildroot%{_datadir}/emacs/site-lisp
282     cp -a misc/ruby-mode.el %buildroot%{_datadir}/emacs/site-lisp
283    
284     install -d %buildroot%{_sysconfdir}/emacs/site-start.d
285     cat <<EOF >%buildroot%{_sysconfdir}/emacs/site-start.d/%{name}.el
286     (autoload 'ruby-mode "ruby-mode" "Ruby editing mode." t)
287     (add-to-list 'auto-mode-alist '("\\\\.rb$" . ruby-mode))
288     (add-to-list 'interpreter-mode-alist '("ruby" . ruby-mode))
289     EOF
290    
291     # Install the rpm macros
292     mkdir -p %buildroot%{_sysconfdir}/rpm/macros.d
293     cp %{SOURCE3} %buildroot%{_sysconfdir}/rpm/macros.d
294 fwang 289961
295 blino 1152 %check
296     make test
297    
298 fwang 289961 %files
299 fwang 291551 %{_bindir}/erb
300     %{_bindir}/rake
301     %{_bindir}/rdoc
302     %{_bindir}/ri
303     %{_bindir}/ruby
304     %{_bindir}/testrb
305 fwang 291560 %dir %{ruby_libdir}
306     %{ruby_libdir}/*.rb
307 fwang 291590 %exclude %{ruby_libdir}/irb.rb
308 fwang 291560 %exclude %{ruby_libdir}/multi-tk.rb
309     %exclude %{ruby_libdir}/remote-tk.rb
310     %exclude %{ruby_libdir}/tcltk.rb
311     %exclude %{ruby_libdir}/tk.rb
312     %exclude %{ruby_libdir}/tkafter.rb
313     %exclude %{ruby_libdir}/tkbgerror.rb
314     %exclude %{ruby_libdir}/tkcanvas.rb
315     %exclude %{ruby_libdir}/tkclass.rb
316     %exclude %{ruby_libdir}/tkconsole.rb
317     %exclude %{ruby_libdir}/tkdialog.rb
318     %exclude %{ruby_libdir}/tkentry.rb
319     %exclude %{ruby_libdir}/tkfont.rb
320     %exclude %{ruby_libdir}/tkmacpkg.rb
321     %exclude %{ruby_libdir}/tkmenubar.rb
322     %exclude %{ruby_libdir}/tkmngfocus.rb
323     %exclude %{ruby_libdir}/tkpalette.rb
324     %exclude %{ruby_libdir}/tkscrollbox.rb
325     %exclude %{ruby_libdir}/tktext.rb
326     %exclude %{ruby_libdir}/tkvirtevent.rb
327     %exclude %{ruby_libdir}/tkwinpkg.rb
328     %{ruby_libdir}/cgi
329     %{ruby_libdir}/date
330     %{ruby_libdir}/digest
331     %{ruby_libdir}/dl
332     %{ruby_libdir}/drb
333     %{ruby_libdir}/fiddle
334     %{ruby_libdir}/matrix
335     %{ruby_libdir}/net
336     %{ruby_libdir}/openssl
337     %{ruby_libdir}/optparse
338     %{ruby_libdir}/psych
339     %{ruby_libdir}/racc
340     %{ruby_libdir}/rbconfig
341     %{ruby_libdir}/rexml
342     %{ruby_libdir}/rinda
343     %{ruby_libdir}/ripper
344     %{ruby_libdir}/rss
345     %{ruby_libdir}/shell
346     %{ruby_libdir}/syck
347     %{ruby_libdir}/test
348     %{ruby_libdir}/uri
349     %{ruby_libdir}/webrick
350     %{ruby_libdir}/xmlrpc
351     %{ruby_libdir}/yaml
352     %dir %{ruby_libarchdir}
353 fwang 291562 %{ruby_libarchdir}/bigdecimal.so
354 fwang 291560 %{ruby_libarchdir}/continuation.so
355     %{ruby_libarchdir}/coverage.so
356     %{ruby_libarchdir}/curses.so
357     %{ruby_libarchdir}/date_core.so
358     %{ruby_libarchdir}/dbm.so
359     %dir %{ruby_libarchdir}/digest
360     %{ruby_libarchdir}/digest.so
361     %{ruby_libarchdir}/digest/*.so
362     %dir %{ruby_libarchdir}/dl
363     %{ruby_libarchdir}/dl.so
364     %{ruby_libarchdir}/dl/*.so
365     %dir %{ruby_libarchdir}/enc
366     %{ruby_libarchdir}/enc/*.so
367 fwang 291562 %dir %{ruby_libarchdir}/enc/trans
368     %{ruby_libarchdir}/enc/trans/*.so
369 fwang 291560 %{ruby_libarchdir}/etc.so
370     %{ruby_libarchdir}/fcntl.so
371     %{ruby_libarchdir}/fiber.so
372     %{ruby_libarchdir}/fiddle.so
373     %{ruby_libarchdir}/gdbm.so
374     %{ruby_libarchdir}/iconv.so
375     %dir %{ruby_libarchdir}/io
376     %{ruby_libarchdir}/io/nonblock.so
377     %{ruby_libarchdir}/io/wait.so
378     %dir %{ruby_libarchdir}/mathn
379 fwang 291562 %{ruby_libarchdir}/mathn/*.so
380 fwang 291560 %{ruby_libarchdir}/nkf.so
381     %{ruby_libarchdir}/objspace.so
382     %{ruby_libarchdir}/openssl.so
383     %{ruby_libarchdir}/pathname.so
384     %{ruby_libarchdir}/psych.so
385     %{ruby_libarchdir}/pty.so
386     %dir %{ruby_libarchdir}/racc
387     %{ruby_libarchdir}/racc/*.so
388     %{ruby_libarchdir}/rbconfig.rb
389     %{ruby_libarchdir}/readline.so
390     %{ruby_libarchdir}/ripper.so
391     %{ruby_libarchdir}/sdbm.so
392     %{ruby_libarchdir}/socket.so
393     %{ruby_libarchdir}/stringio.so
394     %{ruby_libarchdir}/strscan.so
395     %{ruby_libarchdir}/syck.so
396     %{ruby_libarchdir}/syslog.so
397     %{ruby_libarchdir}/zlib.so
398 fwang 291551 %{_mandir}/man1/erb.1.*
399     %{_mandir}/man1/ri.1.*
400     %{_mandir}/man1/ruby.1.*
401 blino 1152 %{_datadir}/emacs/site-lisp/*
402     %config(noreplace) %{_sysconfdir}/emacs/site-start.d/*
403     %{_sysconfdir}/rpm/macros.d/%{name}.macros
404 fwang 291560 %{_datadir}/ruby/site_ruby
405     %{_libdir}/ruby/site_ruby
406     %{_datadir}/ruby/vendor_ruby
407     %{_libdir}/ruby/vendor_ruby
408 blino 1152
409     %files doc
410     %{_datadir}/ri
411 shlomif 291698 %{_datadir}/doc/ruby/html/*
412 blino 1152
413 fwang 291590 %files -n %{libname}
414     %{_libdir}/libruby.so.%{subver}
415     %{_libdir}/libruby.so.%{rubyapi}
416    
417 blino 1152 %files devel
418 fwang 290003 %{_includedir}/*
419 blino 1152 %{_libdir}/libruby-static.a
420     %{_libdir}/libruby.so
421 fwang 290003 %{_libdir}/pkgconfig/*.pc
422 blino 1152
423     %files tk
424 fwang 291560 %{ruby_libarchdir}/tcltklib.so
425     %{ruby_libarchdir}/tkutil.so
426     %{ruby_libdir}/multi-tk.rb
427     %{ruby_libdir}/remote-tk.rb
428     %{ruby_libdir}/tcltk.rb
429     %{ruby_libdir}/tk.rb
430     %{ruby_libdir}/tkafter.rb
431     %{ruby_libdir}/tkbgerror.rb
432     %{ruby_libdir}/tkcanvas.rb
433     %{ruby_libdir}/tkclass.rb
434     %{ruby_libdir}/tkconsole.rb
435     %{ruby_libdir}/tkdialog.rb
436     %{ruby_libdir}/tkentry.rb
437     %{ruby_libdir}/tkfont.rb
438     %{ruby_libdir}/tkmacpkg.rb
439     %{ruby_libdir}/tkmenubar.rb
440     %{ruby_libdir}/tkmngfocus.rb
441     %{ruby_libdir}/tkpalette.rb
442     %{ruby_libdir}/tkscrollbox.rb
443     %{ruby_libdir}/tktext.rb
444     %{ruby_libdir}/tkvirtevent.rb
445     %{ruby_libdir}/tkwinpkg.rb
446     %{ruby_libdir}/tk
447     %{ruby_libdir}/tkextlib
448 fwang 291551
449     %files RubyGems
450     %{_bindir}/gem
451     %dir %{rubygems_dir}
452     %{rubygems_dir}/rbconfig
453     %{rubygems_dir}/rubygems
454     %{rubygems_dir}/rubygems.rb
455     %{rubygems_dir}/ubygems.rb
456    
457 fwang 291562 %files minitest
458     %{ruby_libdir}/minitest
459 fwang 291563 %{rubygems_dir}/%{rubyapi}/specifications/minitest-*.gemspec
460 fwang 291562
461 fwang 291551 %files rake
462     %{_bindir}/rake
463     %{_mandir}/man1/rake.1.*
464 fwang 291562 %{ruby_libdir}/rake
465 fwang 291563 %{rubygems_dir}/%{rubyapi}/gems/rake-*
466 fwang 291590 %{rubygems_dir}/%{rubyapi}/specifications/rake-*.gemspec
467 fwang 291562
468     %files rdoc
469     %{_bindir}/rdoc
470     %{_bindir}/ri
471     %{ruby_libdir}/rdoc
472 fwang 291563 %{rubygems_dir}/%{rubyapi}/gems/rdoc-*
473     %{rubygems_dir}/%{rubyapi}/specifications/rdoc-*.gemspec
474 fwang 291562 %{_mandir}/man1/ri.1.*
475    
476     %files json
477     %dir %{ruby_libarchdir}/json
478     %dir %{ruby_libarchdir}/json/ext
479     %{ruby_libarchdir}/json/ext/*.so
480     %{ruby_libdir}/json
481 fwang 291563 %{rubygems_dir}/%{rubyapi}/specifications/json-*.gemspec
482 fwang 291590
483     %files irb
484     %{_bindir}/irb
485     %{ruby_libdir}/irb.rb
486     %{ruby_libdir}/irb
487     %{_mandir}/man1/irb.1*
488    
489     %files bigdecimal
490     %{ruby_libdir}/bigdecimal
491     %{ruby_libarchdir}/bigdecimal.so
492 shlomif 291732 %{rubygems_dir}/%{rubyapi}/specifications/bigdecimal-*.gemspec
493 fwang 291590
494     %files io-console
495     %{ruby_libdir}/io
496     %{ruby_libarchdir}/io/console.so
497 shlomif 291732 %{rubygems_dir}/%{rubyapi}/specifications/io-console-*.gemspec

  ViewVC Help
Powered by ViewVC 1.1.30