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

Contents of /cauldron/ruby/pristine/SPECS/ruby.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 291557 - (show annotations) (download)
Mon Sep 10 02:15:10 2012 UTC (11 years, 6 months ago) by fwang
Original Path: cauldron/ruby/current/SPECS/ruby.spec
File size: 14114 byte(s)
we will provide only one flavour of ruby now, so versioned paths are not needed
1 %define subver 1.9
2 %define rubyapi 1.9.1
3 %define rubyver 1.9.3
4 %define patchversion p194
5 %define rel 3
6
7 %define ruby_libdir %{_datadir}/%{name}
8 %define ruby_libarchdir %{_libdir}/%{name}
9
10 # This is the local lib/arch and should not be used for packaging.
11 %define ruby_sitelibdir %{_datadir}/ruby/site_ruby
12 %define ruby_sitearchdir %{_libdir}/ruby/site_ruby
13
14 # This is the general location for libs/archs compatible with all
15 # or most of the Ruby versions available in the Fedora repositories.
16 %define ruby_vendorlibdir %{_datadir}/ruby/vendor_ruby
17 %define ruby_vendorarchdir %{_libdir}/ruby/vendor_ruby
18
19 # The RubyGems library has to stay out of Ruby directory three, since the
20 # RubyGems should be share by all Ruby implementations.
21 %define rubygems_dir %{_datadir}/ruby/gems
22
23 Summary: Object Oriented Script Language
24 Name: ruby
25 Version: %{rubyver}.%{patchversion}
26 Release: %mkrel %rel
27 License: Ruby or GPLv2
28 Group: Development/Ruby
29 BuildRequires: autoconf
30 BuildRequires: byacc
31 BuildRequires: ncurses-devel
32 BuildRequires: readline-devel
33 BuildRequires: tcl-devel tk-devel
34 BuildRequires: db-devel
35 BuildRequires: gdbm-devel >= 1.8.3
36 BuildRequires: openssl-devel
37 BuildRequires: zlib-devel
38 BuildRequires: libffi-devel
39 BuildRequires: yaml-devel
40 BuildRequires: rpm-mageia-setup >= 1.158
41 Obsoletes: ruby-rexml
42 Provides: ruby-rexml
43 # explicit file provides (since such requires are automatically added by find-requires)
44 Provides: /usr/bin/ruby
45 Provides: ruby(abi) = %subver
46
47 Source0: http://ftp.ruby-lang.org/pub/ruby/%{subver}/ruby-%{rubyver}-%{patchversion}.tar.bz2
48 Source3: ruby.macros
49 URL: http://www.ruby-lang.org/
50
51 # == FEDORA PATCHES BEGINS ==
52 # http://redmine.ruby-lang.org/issues/5231
53 Patch0: ruby-1.9.3-disable-versioned-paths.patch
54 # TODO: Should be submitted upstream?
55 Patch1: ruby-1.9.3-arch-specific-dir.patch
56 # http://redmine.ruby-lang.org/issues/5281
57 Patch2: ruby-1.9.3-added-site-and-vendor-arch-flags.patch
58 # http://redmine.ruby-lang.org/issues/5465
59 Patch4: ruby-1.9.3-fix-s390x-build.patch
60 # Fix the uninstaller, so that it doesn't say that gem doesn't exist
61 # when it exists outside of the GEM_HOME (already fixed in the upstream)
62 Patch5: ruby-1.9.3-rubygems-1.8.11-uninstaller.patch
63 # http://redmine.ruby-lang.org/issues/5135 - see comment 29
64 Patch6: ruby-1.9.3-webrick-test-fix.patch
65 # Already fixed upstream:
66 # https://github.com/ruby/ruby/commit/f212df564a4e1025f9fb019ce727022a97bfff53
67 Patch7: ruby-1.9.3-bignum-test-fix.patch
68 # Allows to install RubyGems into custom directory, outside of Ruby's tree.
69 # http://redmine.ruby-lang.org/issues/5617
70 Patch8: ruby-1.9.3-custom-rubygems-location.patch
71 # Add support for installing binary extensions according to FHS.
72 # https://github.com/rubygems/rubygems/issues/210
73 Patch9: rubygems-1.8.11-binary-extensions.patch
74 # Make mkmf verbose by default
75 Patch12: ruby-1.9.3-mkmf-verbose.patch
76 # == FEDORA PATCHES ENDS ==
77
78 %package doc
79 Summary: Documentation for the powerful language Ruby
80 Group: Development/Ruby
81 BuildArch: noarch
82
83 %package devel
84 Summary: Development file for the powerful language Ruby
85 Group: Development/Ruby
86 Requires: %{name} = %{version}
87
88 %package tk
89 Summary: Tk extension for the powerful language Ruby
90 Group: Development/Ruby
91 Requires: %{name} = %{version}
92
93 %package RubyGems
94 Summary: The Ruby standard for packaging ruby libraries
95 Group: Development/Ruby
96 Requires: ruby(abi) = %{subver}
97 Provides: gem = %{version}-%{release}
98 Provides: ruby(rubygems) = %{version}-%{release}
99
100 %package rake
101 Summary: Simple ruby build program with capabilities similar to make
102 Group: Development/Ruby
103 Requires: ruby(abi) = %{subver}
104
105 %description
106 Ruby is the interpreted scripting language for quick and
107 easy object-oriented programming. It has many features to
108 process text files and to do system management tasks (as in
109 Perl). It is simple, straight-forward, and extensible.
110
111 %description doc
112 Ruby is the interpreted scripting language for quick and
113 easy object-oriented programming. It has many features to
114 process text files and to do system management tasks (as in
115 Perl). It is simple, straight-forward, and extensible.
116
117 This package contains the Ruby's documentation
118
119 %description devel
120 Ruby is the interpreted scripting language for quick and
121 easy object-oriented programming. It has many features to
122 process text files and to do system management tasks (as in
123 Perl). It is simple, straight-forward, and extensible.
124
125 This package contains the Ruby's devel files.
126
127 %description tk
128 Ruby is the interpreted scripting language for quick and
129 easy object-oriented programming. It has many features to
130 process text files and to do system management tasks (as in
131 Perl). It is simple, straight-forward, and extensible.
132
133 This package contains the Tk extension for Ruby.
134
135 %description RubyGems
136 RubyGems is the Ruby standard for publishing and managing third party
137 libraries.
138
139 %description rake
140 Rake is a Make-like program implemented in Ruby. Tasks and dependencies are
141 specified in standard Ruby syntax.
142
143 %prep
144 %setup -q -n ruby-%{rubyver}-%{patchversion}
145 %apply_patches
146
147 %build
148 autoconf
149 CFLAGS=`echo %optflags | sed 's/-fomit-frame-pointer//'`
150 %configure2_5x --enable-shared --disable-rpath --enable-pthread --disable-versioned-paths \
151 --with-rubylibprefix='%{ruby_libdir}' \
152 --with-archdir='%{ruby_libarchdir}' \
153 --with-sitedir='%{ruby_sitelibdir}' \
154 --with-sitearchdir='%{ruby_sitearchdir}' \
155 --with-vendordir='%{ruby_vendorlibdir}' \
156 --with-vendorarchdir='%{ruby_vendorarchdir}' \
157 --with-rubygemsdir='%{rubygems_dir}'
158 %make
159
160 %install
161 %makeinstall_std install-doc
162
163 install -d %buildroot%{_datadir}/emacs/site-lisp
164 cp -a misc/ruby-mode.el %buildroot%{_datadir}/emacs/site-lisp
165
166 install -d %buildroot%{_sysconfdir}/emacs/site-start.d
167 cat <<EOF >%buildroot%{_sysconfdir}/emacs/site-start.d/%{name}.el
168 (autoload 'ruby-mode "ruby-mode" "Ruby editing mode." t)
169 (add-to-list 'auto-mode-alist '("\\\\.rb$" . ruby-mode))
170 (add-to-list 'interpreter-mode-alist '("ruby" . ruby-mode))
171 EOF
172
173 # Install the rpm macros
174 mkdir -p %buildroot%{_sysconfdir}/rpm/macros.d
175 cp %{SOURCE3} %buildroot%{_sysconfdir}/rpm/macros.d
176
177 %check
178 make test
179
180 %files
181 %{_bindir}/erb
182 %{_bindir}/irb
183 %{_bindir}/rake
184 %{_bindir}/rdoc
185 %{_bindir}/ri
186 %{_bindir}/ruby
187 %{_bindir}/testrb
188 %{_libdir}/libruby.so.%{subver}
189 %{_libdir}/libruby.so.%{rubyapi}
190 %dir %{_libdir}/ruby
191 %dir %{_libdir}/ruby/%{rubyapi}
192 %{_libdir}/ruby/%{rubyapi}/English.rb
193 %{_libdir}/ruby/%{rubyapi}/abbrev.rb
194 %{_libdir}/ruby/%{rubyapi}/base64.rb
195 %{_libdir}/ruby/%{rubyapi}/benchmark.rb
196 %{_libdir}/ruby/%{rubyapi}/bigdecimal
197 %{_libdir}/ruby/%{rubyapi}/cgi
198 %{_libdir}/ruby/%{rubyapi}/cgi.rb
199 %{_libdir}/ruby/%{rubyapi}/cmath.rb
200 %{_libdir}/ruby/%{rubyapi}/complex.rb
201 %{_libdir}/ruby/%{rubyapi}/csv.rb
202 %{_libdir}/ruby/%{rubyapi}/date
203 %{_libdir}/ruby/%{rubyapi}/date.rb
204 %{_libdir}/ruby/%{rubyapi}/debug.rb
205 %{_libdir}/ruby/%{rubyapi}/delegate.rb
206 %{_libdir}/ruby/%{rubyapi}/digest
207 %{_libdir}/ruby/%{rubyapi}/digest.rb
208 %{_libdir}/ruby/%{rubyapi}/dl
209 %{_libdir}/ruby/%{rubyapi}/dl.rb
210 %{_libdir}/ruby/%{rubyapi}/drb
211 %{_libdir}/ruby/%{rubyapi}/drb.rb
212 %{_libdir}/ruby/%{rubyapi}/e2mmap.rb
213 %{_libdir}/ruby/%{rubyapi}/erb.rb
214 %{_libdir}/ruby/%{rubyapi}/expect.rb
215 %{_libdir}/ruby/%{rubyapi}/fiddle
216 %{_libdir}/ruby/%{rubyapi}/fiddle.rb
217 %{_libdir}/ruby/%{rubyapi}/fileutils.rb
218 %{_libdir}/ruby/%{rubyapi}/find.rb
219 %{_libdir}/ruby/%{rubyapi}/forwardable.rb
220 %{_libdir}/ruby/%{rubyapi}/getoptlong.rb
221 %{_libdir}/ruby/%{rubyapi}/gserver.rb
222 %{_libdir}/ruby/%{rubyapi}/io
223 %{_libdir}/ruby/%{rubyapi}/ipaddr.rb
224 %{_libdir}/ruby/%{rubyapi}/irb
225 %{_libdir}/ruby/%{rubyapi}/irb.rb
226 %{_libdir}/ruby/%{rubyapi}/json
227 %{_libdir}/ruby/%{rubyapi}/json.rb
228 %{_libdir}/ruby/%{rubyapi}/kconv.rb
229 %{_libdir}/ruby/%{rubyapi}/logger.rb
230 %{_libdir}/ruby/%{rubyapi}/mathn.rb
231 %{_libdir}/ruby/%{rubyapi}/matrix
232 %{_libdir}/ruby/%{rubyapi}/matrix.rb
233 %{_libdir}/ruby/%{rubyapi}/minitest
234 %{_libdir}/ruby/%{rubyapi}/mkmf.rb
235 %{_libdir}/ruby/%{rubyapi}/mkmf.rb.0012
236 %{_libdir}/ruby/%{rubyapi}/monitor.rb
237 %{_libdir}/ruby/%{rubyapi}/mutex_m.rb
238 %{_libdir}/ruby/%{rubyapi}/net
239 %{_libdir}/ruby/%{rubyapi}/observer.rb
240 %{_libdir}/ruby/%{rubyapi}/open-uri.rb
241 %{_libdir}/ruby/%{rubyapi}/open3.rb
242 %{_libdir}/ruby/%{rubyapi}/openssl
243 %{_libdir}/ruby/%{rubyapi}/openssl.rb
244 %{_libdir}/ruby/%{rubyapi}/optparse
245 %{_libdir}/ruby/%{rubyapi}/optparse.rb
246 %{_libdir}/ruby/%{rubyapi}/ostruct.rb
247 %{_libdir}/ruby/%{rubyapi}/pathname.rb
248 %{_libdir}/ruby/%{rubyapi}/pp.rb
249 %{_libdir}/ruby/%{rubyapi}/prettyprint.rb
250 %{_libdir}/ruby/%{rubyapi}/prime.rb
251 %{_libdir}/ruby/%{rubyapi}/profile.rb
252 %{_libdir}/ruby/%{rubyapi}/profiler.rb
253 %{_libdir}/ruby/%{rubyapi}/pstore.rb
254 %{_libdir}/ruby/%{rubyapi}/psych
255 %{_libdir}/ruby/%{rubyapi}/psych.rb
256 %{_libdir}/ruby/%{rubyapi}/racc
257 %{_libdir}/ruby/%{rubyapi}/rational.rb
258 %{_libdir}/ruby/%{rubyapi}/rbconfig
259 %{_libdir}/ruby/%{rubyapi}/rdoc
260 %{_libdir}/ruby/%{rubyapi}/rdoc.rb
261 %{_libdir}/ruby/%{rubyapi}/resolv-replace.rb
262 %{_libdir}/ruby/%{rubyapi}/resolv.rb
263 %{_libdir}/ruby/%{rubyapi}/rexml
264 %{_libdir}/ruby/%{rubyapi}/rinda
265 %{_libdir}/ruby/%{rubyapi}/ripper
266 %{_libdir}/ruby/%{rubyapi}/ripper.rb
267 %{_libdir}/ruby/%{rubyapi}/rss
268 %{_libdir}/ruby/%{rubyapi}/rss.rb
269 %{_libdir}/ruby/%{rubyapi}/scanf.rb
270 %{_libdir}/ruby/%{rubyapi}/securerandom.rb
271 %{_libdir}/ruby/%{rubyapi}/set.rb
272 %{_libdir}/ruby/%{rubyapi}/shell
273 %{_libdir}/ruby/%{rubyapi}/shell.rb
274 %{_libdir}/ruby/%{rubyapi}/shellwords.rb
275 %{_libdir}/ruby/%{rubyapi}/singleton.rb
276 %{_libdir}/ruby/%{rubyapi}/socket.rb
277 %{_libdir}/ruby/%{rubyapi}/syck
278 %{_libdir}/ruby/%{rubyapi}/syck.rb
279 %{_libdir}/ruby/%{rubyapi}/sync.rb
280 %{_libdir}/ruby/%{rubyapi}/tempfile.rb
281 %{_libdir}/ruby/%{rubyapi}/test
282 %{_libdir}/ruby/%{rubyapi}/thread.rb
283 %{_libdir}/ruby/%{rubyapi}/thwait.rb
284 %{_libdir}/ruby/%{rubyapi}/time.rb
285 %{_libdir}/ruby/%{rubyapi}/timeout.rb
286 %{_libdir}/ruby/%{rubyapi}/tmpdir.rb
287 %{_libdir}/ruby/%{rubyapi}/tracer.rb
288 %{_libdir}/ruby/%{rubyapi}/tsort.rb
289 %{_libdir}/ruby/%{rubyapi}/un.rb
290 %{_libdir}/ruby/%{rubyapi}/uri
291 %{_libdir}/ruby/%{rubyapi}/uri.rb
292 %{_libdir}/ruby/%{rubyapi}/weakref.rb
293 %{_libdir}/ruby/%{rubyapi}/webrick
294 %{_libdir}/ruby/%{rubyapi}/webrick.rb
295 %{_libdir}/ruby/%{rubyapi}/xmlrpc
296 %{_libdir}/ruby/%{rubyapi}/yaml
297 %{_libdir}/ruby/%{rubyapi}/yaml.rb
298 %dir %{_libdir}/ruby/%{_target}
299 %{_libdir}/ruby/%{_target}/bigdecimal.so
300 %{_libdir}/ruby/%{_target}/continuation.so
301 %{_libdir}/ruby/%{_target}/coverage.so
302 %{_libdir}/ruby/%{_target}/curses.so
303 %{_libdir}/ruby/%{_target}/date_core.so
304 %{_libdir}/ruby/%{_target}/dbm.so
305 %{_libdir}/ruby/%{_target}/digest
306 %{_libdir}/ruby/%{_target}/digest.so
307 %{_libdir}/ruby/%{_target}/dl
308 %{_libdir}/ruby/%{_target}/dl.so
309 %{_libdir}/ruby/%{_target}/enc
310 %{_libdir}/ruby/%{_target}/etc.so
311 %{_libdir}/ruby/%{_target}/fcntl.so
312 %{_libdir}/ruby/%{_target}/fiber.so
313 %{_libdir}/ruby/%{_target}/fiddle.so
314 %{_libdir}/ruby/%{_target}/gdbm.so
315 %{_libdir}/ruby/%{_target}/iconv.so
316 %{_libdir}/ruby/%{_target}/io
317 %{_libdir}/ruby/%{_target}/json
318 %{_libdir}/ruby/%{_target}/mathn
319 %{_libdir}/ruby/%{_target}/nkf.so
320 %{_libdir}/ruby/%{_target}/objspace.so
321 %{_libdir}/ruby/%{_target}/openssl.so
322 %{_libdir}/ruby/%{_target}/pathname.so
323 %{_libdir}/ruby/%{_target}/psych.so
324 %{_libdir}/ruby/%{_target}/pty.so
325 %{_libdir}/ruby/%{_target}/racc
326 %{_libdir}/ruby/%{_target}/rbconfig.rb
327 %{_libdir}/ruby/%{_target}/readline.so
328 %{_libdir}/ruby/%{_target}/ripper.so
329 %{_libdir}/ruby/%{_target}/sdbm.so
330 %{_libdir}/ruby/%{_target}/socket.so
331 %{_libdir}/ruby/%{_target}/stringio.so
332 %{_libdir}/ruby/%{_target}/strscan.so
333 %{_libdir}/ruby/%{_target}/syck.so
334 %{_libdir}/ruby/%{_target}/syslog.so
335 %{_libdir}/ruby/%{_target}/zlib.so
336 %dir %{_datadir}/ruby
337 %{_mandir}/man1/erb.1.*
338 %{_mandir}/man1/irb.1.*
339 %{_mandir}/man1/ri.1.*
340 %{_mandir}/man1/ruby.1.*
341 %{_datadir}/emacs/site-lisp/*
342 %config(noreplace) %{_sysconfdir}/emacs/site-start.d/*
343 %{_sysconfdir}/rpm/macros.d/%{name}.macros
344 %dir %{_libdir}/ruby/site_ruby
345 %dir %{_libdir}/ruby/site_ruby/%{rubyapi}
346 %dir %{_libdir}/ruby/vendor_ruby
347 %dir %{_libdir}/ruby/vendor_ruby/%{rubyapi}
348 %dir %{_datadir}/ruby/site_ruby
349 %dir %{_datadir}/ruby/site_ruby/%{rubyapi}
350 %dir %{_datadir}/ruby/vendor_ruby
351 %dir %{_datadir}/ruby/vendor_ruby/%{rubyapi}
352
353 %files doc
354 %{_datadir}/ri
355
356 %files devel
357 %{_includedir}/*
358 %{_libdir}/libruby-static.a
359 %{_libdir}/libruby.so
360 %{_libdir}/pkgconfig/*.pc
361
362 %files tk
363 %{_libdir}/ruby/%{_target}/tcltklib.so
364 %{_libdir}/ruby/%{_target}/tkutil.so
365 %{_libdir}/ruby/%{rubyapi}/multi-tk.rb
366 %{_libdir}/ruby/%{rubyapi}/remote-tk.rb
367 %{_libdir}/ruby/%{rubyapi}/tcltk.rb
368 %{_libdir}/ruby/%{rubyapi}/tk.rb
369 %{_libdir}/ruby/%{rubyapi}/tkafter.rb
370 %{_libdir}/ruby/%{rubyapi}/tkbgerror.rb
371 %{_libdir}/ruby/%{rubyapi}/tkcanvas.rb
372 %{_libdir}/ruby/%{rubyapi}/tkclass.rb
373 %{_libdir}/ruby/%{rubyapi}/tkconsole.rb
374 %{_libdir}/ruby/%{rubyapi}/tkdialog.rb
375 %{_libdir}/ruby/%{rubyapi}/tkentry.rb
376 %{_libdir}/ruby/%{rubyapi}/tkfont.rb
377 %{_libdir}/ruby/%{rubyapi}/tkmacpkg.rb
378 %{_libdir}/ruby/%{rubyapi}/tkmenubar.rb
379 %{_libdir}/ruby/%{rubyapi}/tkmngfocus.rb
380 %{_libdir}/ruby/%{rubyapi}/tkpalette.rb
381 %{_libdir}/ruby/%{rubyapi}/tkscrollbox.rb
382 %{_libdir}/ruby/%{rubyapi}/tktext.rb
383 %{_libdir}/ruby/%{rubyapi}/tkvirtevent.rb
384 %{_libdir}/ruby/%{rubyapi}/tkwinpkg.rb
385 %{_libdir}/ruby/%{rubyapi}/tk
386 %{_libdir}/ruby/%{rubyapi}/tkextlib
387
388 %files RubyGems
389 %{_bindir}/gem
390 %dir %{_libdir}/ruby/gems
391 %dir %{_libdir}/ruby/gems/%{rubyapi}
392 %{_libdir}/ruby/gems/%{rubyapi}/cache
393 %{_libdir}/ruby/gems/%{rubyapi}/doc
394 %dir %{_libdir}/ruby/gems/%{rubyapi}/gems
395 %{_libdir}/ruby/gems/%{rubyapi}/gems/rdoc-*
396 %dir %{_libdir}/ruby/gems/%{rubyapi}/specifications
397 %{_libdir}/ruby/gems/%{rubyapi}/specifications/bigdecimal-*.gemspec
398 %{_libdir}/ruby/gems/%{rubyapi}/specifications/io-console-*.gemspec
399 %{_libdir}/ruby/gems/%{rubyapi}/specifications/json-*.gemspec
400 %{_libdir}/ruby/gems/%{rubyapi}/specifications/minitest-*.gemspec
401 %{_libdir}/ruby/gems/%{rubyapi}/specifications/rdoc-*.gemspec
402 %dir %{rubygems_dir}
403 %{rubygems_dir}/rbconfig
404 %{rubygems_dir}/rubygems
405 %{rubygems_dir}/rubygems.rb
406 %{rubygems_dir}/ubygems.rb
407
408 %files rake
409 %{_bindir}/rake
410 %{_mandir}/man1/rake.1.*
411 %{_libdir}/ruby/gems/%{rubyapi}/gems/rake-*
412 %{_libdir}/ruby/gems/%{rubyapi}/specifications/rake-*.gemspec
413 %{_libdir}/ruby/%{rubyapi}/rake
414 %{_libdir}/ruby/%{rubyapi}/rake.rb

  ViewVC Help
Powered by ViewVC 1.1.30