Accepting request 220747 from openSUSE:Factory:Staging:H
- readd old macros - for now at least - generate provides for embedded rubygems - merged ruby-common - new package split - only single Ruby version installable ruby - binary libruby2_1-2_0 - ruby runtime library ruby-stdlib - ruby standard library ruby-doc - ruby documentation ruby-devel - ruby development - revert the ruby split (ruby - ruby21) rename ruby21 to ruby, integrate 'ruby' and 'ruby-common' - remove part of rubygems1.5 patch that modify mkmf which is already fixed upstream - fix rb_arch in spec: append -gnu - fix native gem builds: create gem native extensions dir - initial version for ruby 2.1.0 - changes to Ruby 2.0: VM (method cache) RGenGC (See ko1’s RubyKaigi presentation and RubyConf 2013 presentation) refinements #8481 #8571 syntax changes Rational/Complex Literal #8430 def’s return value #3753 Bignum use GMP #8796 String#scrub #8414 Socket.getifaddrs #8368 RDoc 4.1.0 and RubyGems 2.2.0 “literal”.freeze is now optimized #9042 add Exception#cause #8257 update libraries like BigDecimal, JSON, NKF, Rake, RubyGems, and RDoc OBS-URL: https://build.opensuse.org/request/show/220747 OBS-URL: https://build.opensuse.org/package/show/devel:languages:ruby/ruby?expand=0&rev=70
This commit is contained in:
parent
069bf7c3af
commit
9594841e44
16
drop_content_size_check_in_xmlrpc.patch
Normal file
16
drop_content_size_check_in_xmlrpc.patch
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
xmlrpc is doing a wrong content size check in case the server is compressing the answer. drop the check for now.
|
||||||
|
http://bugs.ruby-lang.org/issues/8182
|
||||||
|
|
||||||
|
Index: lib/xmlrpc/client.rb
|
||||||
|
===================================================================
|
||||||
|
--- lib/xmlrpc/client.rb.orig
|
||||||
|
+++ lib/xmlrpc/client.rb
|
||||||
|
@@ -509,8 +509,6 @@ module XMLRPC # :nodoc:
|
||||||
|
expected = resp["Content-Length"] || "<unknown>"
|
||||||
|
if data.nil? or data.bytesize == 0
|
||||||
|
raise "Wrong size. Was #{data.bytesize}, should be #{expected}"
|
||||||
|
- elsif expected != "<unknown>" and expected.to_i != data.bytesize and resp["Transfer-Encoding"].nil?
|
||||||
|
- raise "Wrong size. Was #{data.bytesize}, should be #{expected}"
|
||||||
|
end
|
||||||
|
|
||||||
|
parse_set_cookies(resp.get_fields("Set-Cookie"))
|
16
gem_build_cleanup
Normal file
16
gem_build_cleanup
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
if [ ${#*} = 1 ] ; then
|
||||||
|
if [ -d "$1" ] ; then
|
||||||
|
find $1 \
|
||||||
|
\( -name \*.o -o -name Makefile -o -name config.log -o -name config.status -o -name Makefile.html -o -name gem_make.out -o -name mkmf.log -o -name \*.bak -o -name .deps -o -name .libs -o -name CVS \) \
|
||||||
|
-print0 | xargs -r0 rm -rv || :
|
||||||
|
# remove more strict in the docu
|
||||||
|
find $1/doc \( -name Makefile.ri -o -name ext \) -print0 | xargs -r0 rm -rv || :
|
||||||
|
else
|
||||||
|
echo "'$1' does not exists or is not a directory! Exiting." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "Please pass exact one argument to this script! Exiting." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
65
gem_install.sh
Normal file
65
gem_install.sh
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
#! /bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# options may be followed by one colon to indicate they have a required argument
|
||||||
|
if ! options=$(getopt -o dEf -l ignore-dependencies,force,no-rdoc,rdoc,no-ri,ri,env-shebang,no-env-shebang,default-gem:,build-root:,gem-binary: -- "$@")
|
||||||
|
then
|
||||||
|
# something went wrong, getopt will put out an error message for us
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
eval set -- "$options"
|
||||||
|
|
||||||
|
gem_binary=gem
|
||||||
|
defaultgem=
|
||||||
|
gemfile=
|
||||||
|
otheropts=
|
||||||
|
buildroot=
|
||||||
|
|
||||||
|
while [ $# -gt 0 ]
|
||||||
|
do
|
||||||
|
case $1 in
|
||||||
|
--default-gem) defaultgem=$2 ; shift;;
|
||||||
|
--gem-binary) gem_binary="$2" ; shift;;
|
||||||
|
--build-root) otheropts="$otheropts $1=$2"; buildroot=$2; shift;;
|
||||||
|
(--) ;;
|
||||||
|
(-*) otheropts="$otheropts $1";;
|
||||||
|
(*) gemfile=$1; otheropts="$otheropts $1"; break;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "x$gemfile" = "x" ] ; then
|
||||||
|
gemfile=$(find . -maxdepth 2 -type f -name "$defaultgem")
|
||||||
|
# if still empty, we pick the sources
|
||||||
|
if [ "x$gemfile" = "x" ] ; then
|
||||||
|
gemfile=$(find $RPM_SOURCE_DIR -name "$defaultgem")
|
||||||
|
fi
|
||||||
|
otheropts="$otheropts $gemfile"
|
||||||
|
fi
|
||||||
|
set -x
|
||||||
|
$gem_binary install --verbose --local $otheropts
|
||||||
|
if test -d $RPM_BUILD_ROOT/usr/bin; then
|
||||||
|
cd $RPM_BUILD_ROOT/usr/bin
|
||||||
|
# backward compat
|
||||||
|
bins=`ls -1 *1.9 *2.0 2> /dev/null` || true
|
||||||
|
if test -n "$bins"; then
|
||||||
|
for bin in $bins; do
|
||||||
|
mv -v $bin $(echo "$bin" | sed -e 's,2.0$,,; s,1.9$,,')
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -d "$buildroot" ]; then
|
||||||
|
find $buildroot -type f -perm /u+x | while read file; do
|
||||||
|
# TODO: scripts in ruby/1.9.1 should call ruby1.9 for consistency
|
||||||
|
sed -i -e 's,^#!/usr/bin/env ruby,#!/usr/bin/ruby,; s,^#! *[^ ]*/ruby,#!/usr/bin/ruby,' "$file"
|
||||||
|
done
|
||||||
|
# some windows made gems are broken
|
||||||
|
find $buildroot -type d | xargs ls -ld || :
|
||||||
|
find $buildroot -type f | xargs ls -l || :
|
||||||
|
chmod -R u+w $buildroot
|
||||||
|
chmod -R o-w $buildroot
|
||||||
|
fi
|
||||||
|
|
11
gemrc
11
gemrc
@ -1,11 +0,0 @@
|
|||||||
---
|
|
||||||
:benchmark: false
|
|
||||||
install: --no-format-executable --no-user-install
|
|
||||||
:backtrace: true
|
|
||||||
:update_sources: true
|
|
||||||
format_executable: true
|
|
||||||
:verbose: true
|
|
||||||
update: --no-format-executable --no-user-install
|
|
||||||
:bulk_threshold: 1000
|
|
||||||
:sources:
|
|
||||||
- https://rubygems.org
|
|
208
generate_buildrequires.sh
Normal file
208
generate_buildrequires.sh
Normal file
@ -0,0 +1,208 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# In the current package's specfile, updates a block delimited
|
||||||
|
# by "# BEGIN" / "# END" lines to contain BuildRequires: lines
|
||||||
|
# for each rubygem rpm (or rpm matching a given pattern) which
|
||||||
|
# has been built by the project.
|
||||||
|
#
|
||||||
|
# This gives us project-build-time dependency checking without the
|
||||||
|
# performance impact that specifying BuildRequires lines within
|
||||||
|
# each gem would cause. For more information, see:
|
||||||
|
#
|
||||||
|
# http://en.opensuse.org/openSUSE:Packaging_Ruby#Compensating_for_lack_of_BuildRequires
|
||||||
|
#
|
||||||
|
# Usage:
|
||||||
|
# ------
|
||||||
|
#
|
||||||
|
# 1. Ensure you have an "all-rubygems-good" package or similar
|
||||||
|
# in your project. If in doubt, copy the one from
|
||||||
|
# devel:languages:ruby:extensions.
|
||||||
|
#
|
||||||
|
# 2. cd to a working copy
|
||||||
|
#
|
||||||
|
# If you're feeling lazy, you are probably fine skipping the next two
|
||||||
|
# steps.
|
||||||
|
#
|
||||||
|
# 3. Run this script with the -l option and make sure you understand
|
||||||
|
# any differences between each repository/arch combination in the
|
||||||
|
# numbers of matching gems found.
|
||||||
|
#
|
||||||
|
# 4. If you don't, run with -l REPO ARCH to compare individual lists
|
||||||
|
# of matching gems.
|
||||||
|
#
|
||||||
|
# 5. If you want a BuildRequires: list of matching gems from *all*
|
||||||
|
# repo/arch combinations, run again with no arguments.
|
||||||
|
#
|
||||||
|
# OR
|
||||||
|
#
|
||||||
|
# If you want a BuildRequires: list of matching gems from a specific
|
||||||
|
# repo/arch combinations, run again with REPO ARCH as arguments.
|
||||||
|
#
|
||||||
|
# 6. osc diff to review the changes to the spec file, then osc commit.
|
||||||
|
|
||||||
|
me=`basename $0`
|
||||||
|
|
||||||
|
DEFAULT_PATTERN="rubygem-"
|
||||||
|
|
||||||
|
main () {
|
||||||
|
parse_opts "$@"
|
||||||
|
|
||||||
|
if [ -z "$project" ]; then
|
||||||
|
project=$( osc info | sed -ne '/^Project name: / { s///; p }' )
|
||||||
|
if [ -z "$project" ]; then
|
||||||
|
echo "Couldn't establish build service project name." >&2
|
||||||
|
echo "Are you inside a package working directory?" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
echo "Project: $project"
|
||||||
|
|
||||||
|
case "$project" in
|
||||||
|
home:*:branches:*)
|
||||||
|
cat <<EOF >&2
|
||||||
|
|
||||||
|
WARNING: you are running this in a branch.
|
||||||
|
|
||||||
|
You probably need to specify the parent project via -P,
|
||||||
|
otherwise you may not get the dependencies you want.
|
||||||
|
|
||||||
|
EOF
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
specfile=$( ls -1 *.spec )
|
||||||
|
if ! [ -f "$specfile" ]; then
|
||||||
|
echo "Couldn't find spec file." >&2
|
||||||
|
echo "Are you inside a package working directory?" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$list" ]; then
|
||||||
|
if [ -n "$repo" ]; then
|
||||||
|
get_buildrequires_lines "$repo" "$arch"
|
||||||
|
else
|
||||||
|
list_matches
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if [ -n "$repo" ]; then
|
||||||
|
get_buildrequires_lines "$repo" "$arch" | update_spec
|
||||||
|
else
|
||||||
|
find_all_matches | update_spec
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
usage () {
|
||||||
|
# Call as: usage [EXITCODE] [USAGE MESSAGE]
|
||||||
|
exit_code=1
|
||||||
|
if [[ "$1" == [0-9] ]]; then
|
||||||
|
exit_code="$1"
|
||||||
|
shift
|
||||||
|
fi
|
||||||
|
if [ -n "$1" ]; then
|
||||||
|
echo "$*" >&2
|
||||||
|
echo
|
||||||
|
fi
|
||||||
|
|
||||||
|
cat <<EOF >&2
|
||||||
|
Usage: $me [options] [REPOSITORY ARCH]
|
||||||
|
Options:
|
||||||
|
-h, --help Show this help and exit
|
||||||
|
-l, --list List matching rpms for the given repository / arch.
|
||||||
|
If no repository specified, show counts of matching
|
||||||
|
rpms per repository / arch.
|
||||||
|
-P, --project=PROJ Retrieve rpm lists from PROJ, not the current project.
|
||||||
|
-p, --pattern=PAT Set the pattern to match rpms by [$DEFAULT_PATTERN]
|
||||||
|
EOF
|
||||||
|
exit "$exit_code"
|
||||||
|
}
|
||||||
|
|
||||||
|
parse_opts () {
|
||||||
|
list=
|
||||||
|
project=
|
||||||
|
pattern="$DEFAULT_PATTERN"
|
||||||
|
|
||||||
|
while [ $# != 0 ]; do
|
||||||
|
case "$1" in
|
||||||
|
-h|--help)
|
||||||
|
usage 0
|
||||||
|
;;
|
||||||
|
-l|--list)
|
||||||
|
list=y
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-p|--pattern)
|
||||||
|
pattern="$2"
|
||||||
|
shift 2
|
||||||
|
;;
|
||||||
|
-P|--project)
|
||||||
|
project="$2"
|
||||||
|
shift 2
|
||||||
|
;;
|
||||||
|
-*)
|
||||||
|
usage "Unrecognised option: $1"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ $# = 1 ]; then
|
||||||
|
usage "Insufficient arguments."
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ $# -gt 2 ]; then
|
||||||
|
usage "Too many arguments."
|
||||||
|
fi
|
||||||
|
|
||||||
|
repo="$1"
|
||||||
|
arch="$2"
|
||||||
|
}
|
||||||
|
|
||||||
|
get_buildrequires_lines () {
|
||||||
|
repo="$1" arch="$2"
|
||||||
|
osc api "/build/$project/$repo/$arch/_repository" | \
|
||||||
|
grep "binary .*filename=\"$pattern" | \
|
||||||
|
sed -e 's,.* <binary filename=",,; s,\.rpm".*,,; s,^,BuildRequires: ,' | \
|
||||||
|
grep -v debuginfo
|
||||||
|
}
|
||||||
|
|
||||||
|
list_matches () {
|
||||||
|
echo
|
||||||
|
echo "Matching rpms per repository/arch:"
|
||||||
|
echo
|
||||||
|
osc repos | while read repo arch; do
|
||||||
|
count=$( get_buildrequires_lines "$repo" "$arch" | wc -l )
|
||||||
|
printf "%-17s %-8s %d\n" "$repo" "$arch" "$count"
|
||||||
|
done
|
||||||
|
echo
|
||||||
|
}
|
||||||
|
|
||||||
|
find_all_matches () {
|
||||||
|
osc repos "$project" | while read repo arch; do
|
||||||
|
echo "Obtaining BuildRequires from $repo $arch ..." >&2
|
||||||
|
get_buildrequires_lines "$repo" "$arch"
|
||||||
|
done | sort -u
|
||||||
|
}
|
||||||
|
|
||||||
|
edit_spec () {
|
||||||
|
sed -n -e '1,/BEGIN/p' $specfile
|
||||||
|
echo "# Automatically generated by $0"
|
||||||
|
echo "# on `date`"
|
||||||
|
echo "# See http://en.opensuse.org/openSUSE:Packaging_Ruby#Compensating_for_lack_of_BuildRequires"
|
||||||
|
cat
|
||||||
|
sed -n -e '/END/,$p' $specfile
|
||||||
|
}
|
||||||
|
|
||||||
|
update_spec () {
|
||||||
|
if edit_spec > $specfile.new; then
|
||||||
|
mv $specfile.new $specfile
|
||||||
|
echo "Updated spec: $specfile"
|
||||||
|
else
|
||||||
|
echo "Failed to generate new spec file contents; aborting." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
main "$@"
|
58
generate_rubygemprovides.awk
Normal file
58
generate_rubygemprovides.awk
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
#!/usr/bin/awk -f
|
||||||
|
#
|
||||||
|
# Generate 'Provides' for embedded rubygems
|
||||||
|
#
|
||||||
|
# Call-seq:
|
||||||
|
# generate_rubygemprovides.awk <ruby-version> <arch> <gemname> <gemmajor> <gemminor> <gemmicro> [ <gemtiny> ]
|
||||||
|
#
|
||||||
|
# Provides: rubygem(<rubyversion>:<gemname>) = <gemversion>
|
||||||
|
# Provides: rubygem(<rubyversion>:<gemname>:<gemmajorversion>) = <gemversion>
|
||||||
|
# Provides: rubygem(<rubyversion>:<gemname>:<gemmajorversion>.<gemminorversion>) = <gemversion>
|
||||||
|
# Provides: rubygem(<rubyversion>:<gemname>:<gemmajorversion>.<gemminorversion>.<gemtinyversion) = <gemversion>
|
||||||
|
# Provides: rubygem(<rubyversion>:<gemname>:<gemversion>) = <gemversion>
|
||||||
|
# Provides: rubygem(<gemname>) = <gemversion>
|
||||||
|
# Provides: rubygem-<gemname> = <gemversion>
|
||||||
|
# Provides: rubygem-<gemname> = <gemversion>-<rubyrelease>
|
||||||
|
# Provides: rubygem-<gemname>(<arch>) = <gemversion>-<rubyrelease>
|
||||||
|
# Provides: rubygem-<gemname>-<gemmajorversion> = <gemversion>
|
||||||
|
# Provides: rubygem-<gemname>-<gemmajorversion>_<gemminorversion> = <gemversion>
|
||||||
|
# Provides: rubygem-<gemname>-<gemmajorversion>_<gemminorversion>_<gemmicroversion> = <gemversion>
|
||||||
|
# Provides: rubygem-<gemname>-<gemmajorversion>_<gemminorversion>_<gemmicroversion>_<gemtinyversion> = <gemversion>
|
||||||
|
|
||||||
|
BEGIN {
|
||||||
|
rbver = ARGV[1]
|
||||||
|
arch = ARGV[2]
|
||||||
|
name = ARGV[3]
|
||||||
|
major = ARGV[4]
|
||||||
|
minor = ARGV[5]
|
||||||
|
micro = ARGV[6]
|
||||||
|
tiny = ARGV[7]
|
||||||
|
|
||||||
|
if (tiny != "") {
|
||||||
|
version = major "." minor "." micro "." tiny
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
version = major "." minor "." micro
|
||||||
|
}
|
||||||
|
print "Provides: rubygem(" rbver ":" name ") = " version
|
||||||
|
print "Provides: rubygem(" rbver ":" name ":" major ") = " version
|
||||||
|
print "Provides: rubygem(" rbver ":" name ":" major "." minor ") = " version
|
||||||
|
print "Provides: rubygem(" rbver ":" name ":" major "." minor "." micro ") = " version
|
||||||
|
if (tiny != "") {
|
||||||
|
print "Provides: rubygem(" rbver ":" name ":" major "." minor "." micro "." tiny ") = " version
|
||||||
|
}
|
||||||
|
print "Provides: rubygem(" rbver ":" name ":" version ") = " version
|
||||||
|
print "Provides: rubygem(" name ") = " version
|
||||||
|
print "Provides: rubygem-" name " = " version
|
||||||
|
# not needed currently
|
||||||
|
# if ( arch == "x86_64") {
|
||||||
|
# print "Provides: rubygem-" name "(" arch ") = " version
|
||||||
|
# }
|
||||||
|
print "Provides: rubygem-" name "-" major " = " version
|
||||||
|
print "Provides: rubygem-" name "-" major "_" minor " = " version
|
||||||
|
print "Provides: rubygem-" name "-" major "_" minor "_" micro " = " version
|
||||||
|
if (tiny != "") {
|
||||||
|
print "Provides: rubygem-" name "-" major "_" minor "_" micro "_" tiny " = " version
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
15
ruby-1.9.2p290_tcl_no_stupid_rpaths.patch
Normal file
15
ruby-1.9.2p290_tcl_no_stupid_rpaths.patch
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
Index: ext/tk/extconf.rb
|
||||||
|
===================================================================
|
||||||
|
--- ext/tk/extconf.rb.orig
|
||||||
|
+++ ext/tk/extconf.rb
|
||||||
|
@@ -224,9 +224,7 @@ def get_shlib_path_head
|
||||||
|
|
||||||
|
else
|
||||||
|
[
|
||||||
|
- '/opt', '/pkg', '/share',
|
||||||
|
- '/usr/local/opt', '/usr/local/pkg', '/usr/local/share', '/usr/local',
|
||||||
|
- '/usr/opt', '/usr/pkg', '/usr/share', '/usr/contrib', '/usr'
|
||||||
|
+ '/usr'
|
||||||
|
].each{|dir|
|
||||||
|
next unless File.directory?(dir)
|
||||||
|
|
3
ruby-2.1.0.tar.bz2
Normal file
3
ruby-2.1.0.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:1d3f4ad5f619ec15229206b6667586dcec7cc986672c8fbb8558161ecf07e277
|
||||||
|
size 12007442
|
2
ruby-rpmlintrc
Normal file
2
ruby-rpmlintrc
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
addFilter("files-duplicate /usr/share/ri/.*")
|
||||||
|
addFilter("unexpanded-macro /usr/share/ri/.*")
|
968
ruby.changes
968
ruby.changes
@ -1,949 +1,69 @@
|
|||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Sun Jan 12 19:02:38 UTC 2014 - coolo@suse.com
|
Sat Feb 1 11:51:30 UTC 2014 - coolo@suse.com
|
||||||
|
|
||||||
- disable format-executable. we only support one ruby at a time
|
- readd old macros - for now at least
|
||||||
(de facto)
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Jan 8 20:06:35 UTC 2014 - kkaempf@suse.com
|
Fri Jan 31 10:22:24 UTC 2014 - kkaempf@suse.com
|
||||||
|
|
||||||
- Add gem_* to ruby.macros
|
- generate provides for embedded rubygems
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Jan 6 16:39:40 UTC 2014 - coolo@suse.com
|
Thu Jan 30 14:29:36 UTC 2014 - kkaempf@suse.com
|
||||||
|
|
||||||
- switch to ruby 2.1
|
- merged ruby-common
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Jan 6 08:25:55 UTC 2014 - coolo@suse.com
|
Sun Jan 19 12:54:46 UTC 2014 - kkaempf@suse.com
|
||||||
|
|
||||||
- move update-alternative usage to main package
|
- new package split - only single Ruby version installable
|
||||||
|
ruby - binary
|
||||||
|
libruby2_1-2_0 - ruby runtime library
|
||||||
|
ruby-stdlib - ruby standard library
|
||||||
|
ruby-doc - ruby documentation
|
||||||
|
ruby-devel - ruby development
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Aug 19 11:15:25 UTC 2013 - jmassaguerpla@suse.com
|
Sun Jan 19 12:53:57 UTC 2014 - kkaempf@suse.com
|
||||||
|
|
||||||
- fix Bug 834785 - VUL-0: ruby*: default /etc/gemrc uses http source
|
- revert the ruby split (ruby - ruby21)
|
||||||
of gems instead of https
|
rename ruby21 to ruby, integrate 'ruby' and 'ruby-common'
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Sat Jun 29 12:38:12 UTC 2013 - coolo@suse.com
|
Thu Jan 9 10:37:57 UTC 2014 - jreidinger@suse.com
|
||||||
|
|
||||||
- change too strict ruby20 requires with _ge
|
- remove part of rubygems1.5 patch that modify mkmf which is
|
||||||
|
already fixed upstream
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Jun 26 15:01:32 UTC 2013 - coolo@suse.com
|
Wed Jan 8 20:03:32 UTC 2014 - kkaempf@suse.com
|
||||||
|
|
||||||
- use update-alternatives the right way - which is portable too
|
- fix rb_arch in spec: append -gnu
|
||||||
|
- fix native gem builds: create gem native extensions dir
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Jun 25 09:02:48 UTC 2013 - coolo@suse.com
|
Mon Jan 6 08:31:16 UTC 2014 - coolo@suse.com
|
||||||
|
|
||||||
- remove --force usage in favor of portable rm (SLE11)
|
- initial version for ruby 2.1.0 - changes to Ruby 2.0:
|
||||||
|
VM (method cache)
|
||||||
|
RGenGC (See ko1’s RubyKaigi presentation and RubyConf 2013 presentation)
|
||||||
|
refinements #8481 #8571
|
||||||
|
syntax changes
|
||||||
|
Rational/Complex Literal #8430
|
||||||
|
def’s return value #3753
|
||||||
|
Bignum
|
||||||
|
use GMP #8796
|
||||||
|
String#scrub #8414
|
||||||
|
Socket.getifaddrs #8368
|
||||||
|
RDoc 4.1.0 and RubyGems 2.2.0
|
||||||
|
“literal”.freeze is now optimized #9042
|
||||||
|
add Exception#cause #8257
|
||||||
|
update libraries like BigDecimal, JSON, NKF, Rake, RubyGems, and RDoc
|
||||||
|
remove curses #8584
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
- initial patches:
|
||||||
Tue Jun 4 17:04:50 UTC 2013 - coolo@suse.com
|
drop_content_size_check_in_xmlrpc.patch
|
||||||
|
ruby-1.9.2p290_tcl_no_stupid_rpaths.patch
|
||||||
- use --force for update-alternatives
|
ruby19-export_init_prelude.patch
|
||||||
|
rubygems-1.5.0_buildroot.patch
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sat Apr 27 16:25:12 UTC 2013 - coolo@suse.com
|
|
||||||
|
|
||||||
- switch to ruby 2.0 default
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Jan 21 15:42:54 UTC 2013 - adrian@suse.de
|
|
||||||
|
|
||||||
- buildignore rubygems package to avoid bootstrap problem
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Nov 13 14:14:27 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- ruby-common no longer provides anything that ruby requires,
|
|
||||||
so remove it
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sat Nov 3 15:31:49 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- buildignore own subpackages to avoid bootstrap problem
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Aug 6 10:30:08 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- reenable rdoc generation, no need to differ from upstream there
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Aug 1 13:29:19 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- add update-alternatives for ruby provided binaries
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Aug 1 12:07:35 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- expand ruby19 gemspecs as provides automatically
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Jul 26 09:53:19 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- remove rubygem-requires - rpm does it correctly
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Jul 26 07:36:15 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- split out ruby-common into a package on its own
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Jul 25 14:52:49 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- map the != operator to > - which might be wrong in 50% of all cases
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Jul 25 14:39:43 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- require a patched rpm in case rpm does not have magic hooks
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Jul 25 12:17:02 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- move the option parsing to a shell script that is able to do it
|
|
||||||
rightly (rpm macros are just *BAD*)
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Jul 25 11:09:28 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- make the rubygemdeps a ruby script much more clever about gemspecs
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Jul 25 08:27:38 UTC 2012 - saschpe@suse.de
|
|
||||||
|
|
||||||
- Another take on %gem_install, the version w/o passing parameters
|
|
||||||
seemed to be wrong
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Jul 25 05:54:25 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- avoid *.gemspec, we get problems if we there are two
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Jul 24 15:24:43 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- remove too relaxing permissions from unpacked archive
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Jul 24 14:55:31 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- add a provides for ruby-macros
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Jul 24 14:36:38 UTC 2012 - saschpe@suse.de
|
|
||||||
|
|
||||||
- Fix %gem_unpack:
|
|
||||||
Fetch Gemspec from gem metadata for gems that don't package Gemspecs
|
|
||||||
but generate them programatically
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Jul 17 14:15:42 UTC 2012 - saschpe@suse.de
|
|
||||||
|
|
||||||
- Fix ruby(abi) requires generation, the path glob was to broad
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Jul 9 05:17:40 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- rename $bin19 binaries to $bin
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Jul 4 08:59:02 UTC 2012 - saschpe@suse.de
|
|
||||||
|
|
||||||
- Fix old-style %gem_install macro (missing parameter)
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Jul 3 08:02:01 UTC 2012 - saschpe@suse.de
|
|
||||||
|
|
||||||
- Provide the following new RPM macros:
|
|
||||||
+ %gem_unpack
|
|
||||||
+ %gem_build
|
|
||||||
+ %gem_install (retaining the old behavior)
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Jul 2 14:06:43 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- add automatic provides and requires for rubygems
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Jun 19 10:10:00 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- also add the old macro names as wrapper
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue May 8 09:46:38 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- make this package a wrapper around the default ruby - ruby19 for now
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Feb 13 10:54:34 UTC 2012 - coolo@suse.com
|
|
||||||
|
|
||||||
- patch license to follow spdx.org standard
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Dec 29 01:40:14 UTC 2011 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- update to 1.8.7.p357
|
|
||||||
- randomize hash to avoid algorithmic complexity attacks.
|
|
||||||
CVE-2011-4815
|
|
||||||
- initialization of hash_seed to be at the beginning of the
|
|
||||||
process.
|
|
||||||
- initialize random seed at first.
|
|
||||||
- call OpenSSL::Random.seed at the SecureRandom.random_bytes
|
|
||||||
call. insert separators for array join. patch by Masahiro
|
|
||||||
Tomita. [ruby-dev:44270]
|
|
||||||
- mkconfig.rb: fix for continued lines. based on a patch from
|
|
||||||
Marcus Rueckert <darix AT opensu.se> at [ruby-core:20420].
|
|
||||||
- Infinity is greater than any bignum number. [ruby-dev:38672]
|
|
||||||
- initialize store->ex_data.sk. [ruby-core:28907]
|
|
||||||
[ruby-core:23971] [ruby-core:18121]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Dec 1 17:03:34 UTC 2011 - coolo@suse.com
|
|
||||||
|
|
||||||
- add automake as buildrequire to avoid implicit dependency
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Jul 7 13:02:17 UTC 2011 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- update to 1.8.7.p352
|
|
||||||
- support for openssl compiled without SSLv2
|
|
||||||
- multilib support for tk build
|
|
||||||
- some IPv6 related fixes
|
|
||||||
- zlib fixes
|
|
||||||
- reinitialize PRNG when forking children
|
|
||||||
- uri route_to fixes
|
|
||||||
- fix race condition with variables and autoload
|
|
||||||
- drop 1887f60a8540f64f5c7bb14d57c0be70506941b8.patch
|
|
||||||
included upstream
|
|
||||||
- drop ruby-1.8.7.p22_tcltk-multilib.patch
|
|
||||||
solved differently upstream
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri May 20 13:26:07 UTC 2011 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- drop ruby-1.8.7.p299_webrick_error_page_encoding.patch:
|
|
||||||
we will stick to the upstream charset
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Mar 18 13:46:36 UTC 2011 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- added ruby-1.8.x_rubylibdir.patch:
|
|
||||||
allows us to also change the path for the stdlib part of the ruby
|
|
||||||
directory tree
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Feb 22 16:38:09 UTC 2011 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- update to 1.8.7.p334 (bnc#673740, bnc#673750, bnc#600752)
|
|
||||||
- A symlink race condition vulnerability was found in
|
|
||||||
FileUtils.remove_entry_secure. The vulnerability allows local
|
|
||||||
users to delete arbitrary files and directories. CVE-2011-1004
|
|
||||||
- Exception#to_s method can be used to trick $SAFE check, which
|
|
||||||
makes a untrusted codes to modify arbitrary strings.
|
|
||||||
CVE-2011-1005
|
|
||||||
- Ruby WEBrick character set issue (XSS) CVE-2010-0541
|
|
||||||
|
|
||||||
for all non security changes see
|
|
||||||
/usr/share/doc/packages/ruby/ChangeLog
|
|
||||||
|
|
||||||
- refreshed ruby-1.8.x_openssl_branch_update.patch
|
|
||||||
- buildrequires openssl to make the last openssl test work
|
|
||||||
- https://github.com/ruby/ruby/commit/1887f60a8540f64f5c7bb14d57c0be70506941b8.patch
|
|
||||||
* ext/zlib/zlib.c (zstream_append_input2): add RB_GC_GUARD.
|
|
||||||
This caused failure when test/csv is executed with GC.stress =
|
|
||||||
true.
|
|
||||||
- added ruby-1.8.7.p334_remove_zlib_test_params_test.patch:
|
|
||||||
remove the test_params patch from backport in r27917
|
|
||||||
It doesnt pass atm.
|
|
||||||
- removed ruby-1.8.6.p36_socket_ipv6.patch:
|
|
||||||
included upstream
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Sep 7 14:38:54 UTC 2010 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- the testsuite and doc-html package should of course require the
|
|
||||||
main package
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Jul 2 09:50:00 UTC 2010 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- add ruby(abi) = 1.8 provides
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Jul 1 15:27:17 UTC 2010 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- update to 1.8.7.p299 (bnc#606056 and bnc#603914)
|
|
||||||
- OpenSSL 1.0.0 support
|
|
||||||
- Use OpenSSL engines which exist
|
|
||||||
- Fixed range and chunked support for Net::HTTP
|
|
||||||
- Iconv fixes
|
|
||||||
- Backported pack/unpack from the 1.9 branch (bnc#606056 bnc#603914)
|
|
||||||
- Multiple fixes in the resolver
|
|
||||||
- Fixed Unicode inspection bug.
|
|
||||||
- Escape characters properly for the accesslog (bnc#570616)
|
|
||||||
- cleaned up rpmlintrc
|
|
||||||
- refreshed patches:
|
|
||||||
old: ruby-1.8.7.p22_lib64.patch
|
|
||||||
new: ruby-1.8.7.p299_lib64.patch
|
|
||||||
old: ruby_1.8.6.p36_date_remove_privat.patch
|
|
||||||
new: ruby-1.8.7.p299_date_remove_privat.patch
|
|
||||||
old: ruby-pedantic-headers.diff
|
|
||||||
new: ruby-1.8.7.p299_pedantic-headers.patch
|
|
||||||
- replaced patches ruby-1.8.x_openssl-1.0.patch and
|
|
||||||
ruby-1.8.x_openssl-1.0-tests.patch with
|
|
||||||
ruby-1.8.x_openssl_branch_update.patch
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed May 19 14:44:51 UTC 2010 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- fix build on ix86:
|
|
||||||
--target got removed from the %configure macro. add it back
|
|
||||||
locally for now.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Apr 22 22:06:56 UTC 2010 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- added ruby-1.8.x_openssl-1.0.patch and
|
|
||||||
ruby-1.8.x_openssl-1.0-tests.patch:
|
|
||||||
fix building with openssl 1.0.0 (taken from svn)
|
|
||||||
- added ruby-1.8.x_yaml2byte.patch:
|
|
||||||
fix warning about sequence point
|
|
||||||
- remove requires on glibc-devel again
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sat Mar 13 21:25:30 UTC 2010 - crrodriguez@opensuse.org
|
|
||||||
|
|
||||||
- ruby-devel requires glibc-devel
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Feb 23 12:02:11 UTC 2010 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- added ruby-1.8.x_digest_non_void_return.patch:
|
|
||||||
patch pulled from SVN to fix the warnings about no return in
|
|
||||||
non-void functions.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sun Jan 31 21:56:19 CET 2010 - meissner@suse.de
|
|
||||||
|
|
||||||
- ruby calls "ppc" "powerpc".
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Jan 29 19:12:11 UTC 2010 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- update to 1.8.7p249
|
|
||||||
small big fix release in the 1.8.7 branch, this includes the fix
|
|
||||||
for:
|
|
||||||
- ruby webrick doesn't sanitize non-printable characters in log
|
|
||||||
(bnc#570616) CVE-2009-4492
|
|
||||||
- drop ruby-1.8.6.p36_gc.patch: solution is upstream
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Dec 17 00:42:51 CET 2009 - jengelh@medozas.de
|
|
||||||
|
|
||||||
- package documentation as noarch
|
|
||||||
- adjust ruby.macros to ask the ruby binary for the target plaform.
|
|
||||||
This is because %_host_cpu can expand to sparc64, while ruby is
|
|
||||||
built for the sparcv9 target, and %_target_cpu can expand to
|
|
||||||
noarch.
|
|
||||||
- in ruby.spec, %rb_arch is statically reset to %_target_cpu, as
|
|
||||||
we need the target name. Since it won't be noarch in this case,
|
|
||||||
that is good.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Aug 20 19:19:52 UTC 2009 - jansimon.moeller@opensuse.org
|
|
||||||
|
|
||||||
- remove s/armv5tel/armv4l/ in macros as it breaks build for armv5tel
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Nov 21 20:37:17 CET 2008 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- add ruby-1.8.7-p72_topdir.patch:
|
|
||||||
Config::TOPDIR was broken on lib64 systems as the code was
|
|
||||||
assuming $prefix/lib.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Nov 21 17:03:25 CET 2008 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- added more ruby macros in /etc/rpm/macros.ruby
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sat Sep 6 06:56:56 CEST 2008 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- update to 1.8.7p72
|
|
||||||
vendor_ruby support now officially included
|
|
||||||
for all the changes since 1.8.6 see
|
|
||||||
/usr/share/doc/packages/ruby/NEWS
|
|
||||||
- dropped ruby-1.8.6_openssl_verify_host.patch
|
|
||||||
included in update
|
|
||||||
- updated patch for new release:
|
|
||||||
old name: ruby-1.8.6.p36_lib64.patch
|
|
||||||
new name: ruby-1.8.7.p22_lib64.patch
|
|
||||||
- updated patch for new release:
|
|
||||||
old name: ruby-1.8.6.p36_tcltk-multilib.patch
|
|
||||||
new name: ruby-1.8.7.p22_tcltk-multilib.patch
|
|
||||||
- dropped ruby-1.8.6.p111_vendor_ruby.patch
|
|
||||||
only one chunk survived as ruby-1.8.7-p72_vendor_specific.patch
|
|
||||||
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri May 16 15:06:51 CEST 2008 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- update to 1.8.6.p114
|
|
||||||
bugfix release
|
|
||||||
- Fixes File access vulnerability of WEBrick (CVE-2008-1145)
|
|
||||||
(bnc#368618)
|
|
||||||
- ensure that the rss module adds the xml namespace
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Dec 6 22:14:44 CET 2007 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- update to 1.8.6.p111
|
|
||||||
bugfix release. important changes:
|
|
||||||
- ssl fixes (see notes on the ssl patch below)
|
|
||||||
- fixes for the threads support
|
|
||||||
- various overflow checks
|
|
||||||
- safe_level improvements
|
|
||||||
- printf fixes
|
|
||||||
- imap fixes
|
|
||||||
for all the details see /usr/share/doc/packages/ruby/ChangeLog
|
|
||||||
- added ruby-1.8.6.p111_openssl_verify_host.patch: (#329706)
|
|
||||||
validate the hostname against the CN from the presented SSL
|
|
||||||
certificicate. This has been enabled for telnets, ftptls, imaps
|
|
||||||
and https. (CVE-2007-5162,CVE-2007-5770)
|
|
||||||
|
|
||||||
For telnets and https the verification is done if the verify mode
|
|
||||||
is set to anything else than OpenSSL::SSL::VERIFY_NONE.
|
|
||||||
For ftptls it is always enabled.
|
|
||||||
For imaps it is checked if you enable verification.
|
|
||||||
- added support to build with bleak_house to allow better memleak
|
|
||||||
debugging. (requires additional package ruby-bleakhouse)
|
|
||||||
- updated ruby-1.8.6.p36_vendor_ruby.patch
|
|
||||||
new name ruby-1.8.6.p111_vendor_ruby.patch
|
|
||||||
- dropped ruby-1.8.6.p36_thread_prototype_and_testsuite.patch:
|
|
||||||
included in update
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Oct 11 11:56:16 CEST 2007 - dmueller@suse.de
|
|
||||||
|
|
||||||
- fix headers to be compileable with -pedantic
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sun Aug 12 04:35:09 CEST 2007 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- added ruby_1.8.6.p36_date_remove_privat.patch:
|
|
||||||
Time.to_date() and Time.to_datetime() shouldnt be private.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Aug 6 03:11:29 CEST 2007 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- added ruby-1.8.6.p36_thread_prototype_and_testsuite.patch:
|
|
||||||
pulled two fixes from the 1.8.6 branch:
|
|
||||||
* avoid executing shell in the testsuite
|
|
||||||
* moved definition of rb_thread_status() to avoid errors in C++
|
|
||||||
extensions.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sun Aug 5 22:35:36 CEST 2007 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- update to 1.8.6.p36:
|
|
||||||
many bugfixes and library updates. hilights:
|
|
||||||
=== Library updates (outstanding ones only)
|
|
||||||
* date
|
|
||||||
* Updated based on date2 4.0.3.
|
|
||||||
* digest
|
|
||||||
* New internal APIs for C and Ruby.
|
|
||||||
* Support for autoloading.
|
|
||||||
* See below for new features and compatibility issues.
|
|
||||||
* nkf
|
|
||||||
* Updated based on nkf as of 2007-01-28.
|
|
||||||
* tk
|
|
||||||
* Tk::X_Scrollable (Y_Scrollable) is renamed to Tk::XScrollable
|
|
||||||
(YScrollable). Tk::X_Scrollable (Y_Scrollable) is still
|
|
||||||
available, but it is an alias name.
|
|
||||||
* Updated Tile extension support based on Tile 0.7.8.
|
|
||||||
* Support --without-X11 configure option for non-X11 versions
|
|
||||||
of Tcl/Tk (e.g. Tcl/Tk Aqua).
|
|
||||||
* New sample script: irbtkw.rbw -- IRB on Ruby/Tk. It has no
|
|
||||||
trouble about STDIN blocking on Windows.
|
|
||||||
=== New methods and features
|
|
||||||
* builtin classes
|
|
||||||
* New method: Kernel#instance_variable_defined?
|
|
||||||
* New method: Module#class_variable_defined?
|
|
||||||
* New feature: Dir::glob() can now take an array of glob
|
|
||||||
patterns.
|
|
||||||
* digest
|
|
||||||
* New digest class methods: file
|
|
||||||
* New digest instance methods: clone, reset, new,
|
|
||||||
inspect, digest_length (alias size or length),
|
|
||||||
block_length()
|
|
||||||
* New library: digest/bubblebabble
|
|
||||||
* New function: Digest(name)
|
|
||||||
* fileutils
|
|
||||||
* New option for FileUtils.cp_r(): :remove_destination
|
|
||||||
* thread
|
|
||||||
* Replaced with much faster mutex implementation in C. The
|
|
||||||
former implementation is available with a configure option
|
|
||||||
`--disable-fastthread'.
|
|
||||||
* webrick
|
|
||||||
* New method: WEBrick::Cookie.parse_set_cookies()
|
|
||||||
=== Compatibility issues (excluding feature bug fixes)
|
|
||||||
* builtin classes
|
|
||||||
* String#intern now raises SecurityError when $SAFE level is
|
|
||||||
greater than zero.
|
|
||||||
* fileutils
|
|
||||||
* A minor implementation change breaks Rake <=0.7.1.
|
|
||||||
Updating Rake to 0.7.2 fixes the problem.
|
|
||||||
* digest
|
|
||||||
* The constructor does no longer take an initial string to
|
|
||||||
feed; digest() and hexdigest() now do, instead.
|
|
||||||
For all details see the NEWS or ChangeLog file.
|
|
||||||
- rediffed patch ruby-1.8.2-gc.diff
|
|
||||||
new name ruby-1.8.6.p36_gc.patch
|
|
||||||
- rediffed patch ruby-1.8.2-tcltk-multilib.patch
|
|
||||||
new name ruby-1.8.6.p36_tcltk-multilib.patch
|
|
||||||
- rediffed patch ruby-socket_ipv6.patch
|
|
||||||
new name ruby-1.8.6.p36_socket_ipv6.patch
|
|
||||||
- rediffed patch ruby-1.8.5-vendor_ruby.patch
|
|
||||||
new name ruby-1.8.6.p36_vendor_ruby.patch
|
|
||||||
- rediffed patch ruby-1.8.5.p12-lib64.diff
|
|
||||||
new name ruby-1.8.6.p36_lib64.patch
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Mar 30 10:10:10 CEST 2007 - rguenther@suse.de
|
|
||||||
|
|
||||||
- add bison BuildRequires
|
|
||||||
- add emacs site-lisp directories
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Mar 23 15:12:51 CET 2007 - rguenther@suse.de
|
|
||||||
|
|
||||||
- add gdbm-devel BuildRequires
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Feb 12 16:53:19 CET 2007 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- update to 1.8.5-p12:
|
|
||||||
* stable version 1.8.5-p12 released.
|
|
||||||
* ext/tk/tcltklib.c: shouldn't run the killed thread at callback.
|
|
||||||
[ruby-talk: 227408]
|
|
||||||
* lib/rdoc/ri/ri_options.rb: prevent NameError. [ruby-dev:29597]
|
|
||||||
* dir.c (glob_helper): get rid of possible memory leak.
|
|
||||||
* win32/win32.c (cmdglob, rb_w32_cmdvector, rb_w32_opendir,
|
|
||||||
rb_w32_get_environ): not to use GC before initialization.
|
|
||||||
* configure.in (SITE_DIR): fixed to emtpy RUBY_SITE_LIB in
|
|
||||||
config.h on NetBSD. fixed: [ruby-dev:29358]
|
|
||||||
* parse.y (dyna_init_gen): dvar initialization only if dvar is
|
|
||||||
assigned inner block. [ruby-talk:227402]
|
|
||||||
* stable version 1.8.5-p2 released.
|
|
||||||
* lib/cgi.rb (CGI::QueryExtension::read_multipart): should
|
|
||||||
quote boundary. JVN#84798830 (BNC #225983) (CVE-2006-6303)
|
|
||||||
* bignum.c (bignorm): avoid segmentation. a patch from Hiroyuki
|
|
||||||
Ito <ZXB01226@nifty.com>. [ruby-list:43012]
|
|
||||||
* parse.y (primary): should set NODE even when compstmt is NULL.
|
|
||||||
merge from trunk. fixed: [ruby-dev:29732]
|
|
||||||
* lib/cgi.rb (CGI::QueryExtension::read_multipart): CGI content
|
|
||||||
may be empty. a patch from Jamis Buck <jamis at 37signals.com>.
|
|
||||||
* ext/dbm/extconf.rb: create makefile according to the result of
|
|
||||||
check for dbm header. fixed: [ruby-dev:29445]
|
|
||||||
* hash.c (rb_hash_s_create): fixed memory leak, based on the
|
|
||||||
patch by Kent Sibilev <ksruby at gmail.com>.
|
|
||||||
fixed: [ruby-talk:211233]
|
|
||||||
- rediffed ruby-1.8.1-lib64.diff
|
|
||||||
new name ruby-1.8.5.p12-lib64.diff
|
|
||||||
- patches included in the update:
|
|
||||||
cgi_multipart_eof_fix.patch
|
|
||||||
ruby-1.8.4-fix-alias-safe-level.patch
|
|
||||||
ruby-1.8.4-fix-insecure-dir-operation.patch
|
|
||||||
ruby-1.8.4-fix-insecure-regexp-modification.patch
|
|
||||||
ruby-1.8.4-no-eaccess.diff
|
|
||||||
ruby-1.8.4-warnings.patch
|
|
||||||
ruby-fix-autoconf-magic-code.patch
|
|
||||||
- added ruby-1.8.x-autoconf_2.61a.patch:
|
|
||||||
config.status changed to awk in 2.61a. adapt mkconfig.rb to the
|
|
||||||
new syntax.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Oct 30 18:37:50 CET 2006 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- added cgi_multipart_eof_fix.patch:
|
|
||||||
fix for a denial of service condition in cgi.rb CVE-2006-5467
|
|
||||||
(#214916)
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Oct 20 03:30:01 CEST 2006 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- run ldconfig
|
|
||||||
- add site_ruby and vendor_ruby arch directories to the filelist
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Sep 27 17:15:12 CEST 2006 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- added ruby-1.8.5-vendor_ruby.patch, site-specific.rb, vendor-specific.rb:
|
|
||||||
add vendor_ruby support. This is a small change for packager.
|
|
||||||
you can now run 'ruby -rvendor-specific extconf.rb' (or setup.rb)
|
|
||||||
and it will be automatically installed in
|
|
||||||
%{_libdir}/ruby/vendor_ruby.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sat Aug 26 04:23:28 CEST 2006 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- Update to version 1.8.5:
|
|
||||||
o Non-blocking IO
|
|
||||||
| - Several methods backported from HEAD have been added:
|
|
||||||
| - BasicSocket?#recv_nonblock
|
|
||||||
| - IO#read_nonblock
|
|
||||||
| - IO#write_nonblock
|
|
||||||
| - Socket#accept_nonblock
|
|
||||||
| - Socket#connect_nonblock
|
|
||||||
| - Socket#recvfrom_nonblock
|
|
||||||
| - TCPServer#accept_nonblock
|
|
||||||
| - UDPSocket#recvfrom_nonblock
|
|
||||||
| - UNIXServer#accept_nonblock
|
|
||||||
| (see ruby-core:7917, ruby-core:7925).
|
|
||||||
|
|
|
||||||
o Process.getrlimit/setrlimit See ruby-dev:28729.
|
|
||||||
|
|
|
||||||
o Changes in rdoc/ri
|
|
||||||
| - lots of documentation added
|
|
||||||
| - RubyGems support: ri will search gem installation dirs for
|
|
||||||
| additional documentation
|
|
||||||
| - new options to limit the search path
|
|
||||||
|
|
|
||||||
o RSS
|
|
||||||
| - added RSS::RootElementMixin?#to_xml (ruby-talk:197284), which
|
|
||||||
| can be used to convert feeds to a different RSS version as
|
|
||||||
| follows:
|
|
||||||
| [[[
|
|
||||||
| rss10 = RSS::Parser.parse(File.read("1.0.rdf"))
|
|
||||||
| File.open("2.0.rss", "w") {|f| f.print(rss10.to_xml("2.0"))}
|
|
||||||
| ]]]
|
|
||||||
| - Support for taxonomies added to the RSS parser and generator.
|
|
||||||
| - A number of convenience methods added
|
|
||||||
| - New style API for RSS generation ruby-talk:197284
|
|
||||||
| [[[
|
|
||||||
| The recommended style is nowxxx.new_yyy do |yyy|
|
|
||||||
| yyy.zzz = zzz
|
|
||||||
| ...
|
|
||||||
| end
|
|
||||||
|
|
|
||||||
|
|
|
||||||
| This corresponds to the following in pre-1.8.5:
|
|
||||||
| yyy = xxx.new_yyy
|
|
||||||
| yyy.zzz = zzz
|
|
||||||
| ]]]
|
|
||||||
o Misc
|
|
||||||
| - added Kernel.Pathname(path)
|
|
||||||
| - added Kernel#pretty_inspect
|
|
||||||
| - changes in the GC subsystem that result in better performance
|
|
||||||
| in some cases
|
|
||||||
| - added OptionParser?#getopts
|
|
||||||
| - the per-object overhead went down to 20 bytes on win32
|
|
||||||
| (from 24) ruby-core:7474
|
|
||||||
o What breaks (!!!)
|
|
||||||
| - Binding.of_caller, and therefore breakpoint (including Rails')
|
|
||||||
| - several problems in ri reported: the documentation for some
|
|
||||||
| methods seems to have disappeared, and several methods that
|
|
||||||
| should not be documented appear in the indices;
|
|
||||||
| see ruby-core:08709
|
|
||||||
|
|
||||||
- removed patches, which are included in 1.8.5:
|
|
||||||
ruby-1.8.4-fix-insecure-dir-operation.patch
|
|
||||||
ruby-1.8.4-fix-insecure-regexp-modification.patch
|
|
||||||
ruby-1.8.4-fix-alias-safe-level.patch
|
|
||||||
- updated ruby-1.8.4_linkerflags.patch.
|
|
||||||
new name ruby-1.8.5_linkerflags.patch
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Jul 31 15:59:55 CEST 2006 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- added ruby-fix-autoconf-magic-code.patch:
|
|
||||||
Fix for the latest changes in the autoconf code.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Jul 31 15:43:29 CEST 2006 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- security fixes [CVE-2006-3694] [#193661]
|
|
||||||
* added ruby-1.8.4-fix-insecure-dir-operation.patch &
|
|
||||||
ruby-1.8.4-fix-insecure-regexp-modification.patch:
|
|
||||||
fix the insecure operations in the certain safe-level
|
|
||||||
restrictions.
|
|
||||||
* ruby-1.8.4-fix-alias-safe-level.patch: preserve safe level
|
|
||||||
restrictions when aliasing a function.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Apr 10 18:19:13 CEST 2006 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- build with -fno-strict-aliasing
|
|
||||||
- enable more tests on ppc
|
|
||||||
- disable drb tests
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Apr 3 16:53:27 CEST 2006 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- reworked the ruby-1.8.4-no-eaccess.diff patch
|
|
||||||
it broke when build on old distros
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Jan 26 14:23:55 CET 2006 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- added upstream patch for eaccess
|
|
||||||
- disabled openssl tests on pcc
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Jan 25 21:43:32 CET 2006 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- added ruby-1.8.4_linkerflags.patch
|
|
||||||
patch removes -L. from the linker flags.
|
|
||||||
it seems libtool otherwise expands it to -L$PWD.
|
|
||||||
this leads to trouble with our build system.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Jan 25 21:41:14 CET 2006 - mls@suse.de
|
|
||||||
|
|
||||||
- converted neededforbuild to BuildRequires
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sun Jan 15 23:07:15 CET 2006 - kukuk@suse.de
|
|
||||||
|
|
||||||
- Use eaccess() from glibc [#143291]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sun Jan 15 13:43:18 CET 2006 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- disabled the big test suite as we trigger
|
|
||||||
a weird bug in the openssl bindings on ppc64
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sat Dec 24 19:56:48 CET 2005 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- Update to 1.8.4
|
|
||||||
- dont run with --default-kcode=utf8
|
|
||||||
triggers a bug in the test suite
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Sep 23 00:28:37 CEST 2005 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- update to 1.8.3
|
|
||||||
- updated patches for 1.8.3
|
|
||||||
- ruby-doc tarball now included as tar.bz2
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Sep 12 14:26:36 CEST 2005 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- fix path of the RI documentation [Bug #116408]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Sep 8 16:05:04 CEST 2005 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- dont make the irb man page executable. [Bug #114849]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Aug 23 10:47:04 CEST 2005 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- added directory entries for the site ruby dirs
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Aug 22 13:20:53 CEST 2005 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- disabled mkmf patch for now. it breaks building the socket
|
|
||||||
extension.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sun Aug 21 19:11:41 CEST 2005 - ro@suse.de
|
|
||||||
|
|
||||||
- added directories to filelist
|
|
||||||
- fix typo in filelist
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Aug 19 17:52:56 CEST 2005 - mrueckert@suse.de
|
|
||||||
|
|
||||||
- Build RI and html documentation. Added subpackages for them.
|
|
||||||
- moved samples into a sub packages.
|
|
||||||
- build tcl/tk bindings and move them into their own package.
|
|
||||||
(ruby-1.8.2-tcltk-multilib.patch)
|
|
||||||
- disabled optimization on ia64/x86_x64. needs investigation.
|
|
||||||
- fixed parameter swap in memset call
|
|
||||||
(ruby-1.8.2-strscan-memset.patch)
|
|
||||||
- let mkmf create shared libraries (ruby-mkmf-shared.patch)
|
|
||||||
- splitted of devel files
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Jul 19 15:49:46 CEST 2005 - mge@suse.de
|
|
||||||
|
|
||||||
- make "make test" run also on x86_64 by disabling
|
|
||||||
code optimization (-O0), as it is for ia64
|
|
||||||
- enable "make test" for ppc64 again
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Jul 19 07:42:02 CEST 2005 - mge@suse.de
|
|
||||||
|
|
||||||
- Fixes #95366, CAN-2005-1992:
|
|
||||||
arbitrary command execution on XMLRPC server
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Jun 1 17:42:21 CEST 2005 - ro@suse.de
|
|
||||||
|
|
||||||
- update to 1.8.2
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Jan 3 11:42:28 CET 2005 - mge@suse.de
|
|
||||||
|
|
||||||
- added fixes for lib/cgi.rb and lib/cgi/session.rb
|
|
||||||
from ruby-1.8.2, fixes: #47886 (CAN-2004-0983)
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Nov 18 02:01:24 CET 2004 - ro@suse.de
|
|
||||||
|
|
||||||
- fixed file list
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sat Sep 25 11:38:02 CEST 2004 - ro@suse.de
|
|
||||||
|
|
||||||
- added cgi_session.diff (from debian, CAN-2004-0755)
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Jul 26 01:29:37 CEST 2004 - ro@suse.de
|
|
||||||
|
|
||||||
- fix typo in specfile
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sun Jun 20 20:18:15 CEST 2004 - ro@suse.de
|
|
||||||
|
|
||||||
- fix find in specfile
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Apr 29 01:32:40 CEST 2004 - ro@suse.de
|
|
||||||
|
|
||||||
- added missing return value (unreached code)
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Mar 23 14:59:25 CET 2004 - mge@suse.de
|
|
||||||
|
|
||||||
- make ruby build on ia64 and ppc64
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sat Feb 28 17:16:10 CET 2004 - ro@suse.de
|
|
||||||
|
|
||||||
- fix makefile rule for regenerating lex.c
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sat Feb 28 12:05:46 CET 2004 - ro@suse.de
|
|
||||||
|
|
||||||
- add gperf to neededforbuild
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sat Feb 28 01:07:47 CET 2004 - ro@suse.de
|
|
||||||
|
|
||||||
- fix requirement for /usr/local/bin
|
|
||||||
- use no-strict-aliasing
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Feb 2 12:37:24 CET 2004 - mge@suse.de
|
|
||||||
|
|
||||||
- update to 1.8.1
|
|
||||||
also fixes Bug #34226: Readline support missing from ruby
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sat Jan 10 22:03:01 CET 2004 - adrian@suse.de
|
|
||||||
|
|
||||||
- add %defattr
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Aug 4 11:53:49 CEST 2003 - mge@suse.de
|
|
||||||
|
|
||||||
- update tp 1.8.0
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Jan 6 04:07:50 CET 2003 - mge@suse.de
|
|
||||||
|
|
||||||
- update to 1.6.8
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue May 21 14:03:25 CEST 2002 - meissner@suse.de
|
|
||||||
|
|
||||||
- More %_lib fixes inside package.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue May 21 11:38:41 CEST 2002 - meissner@suse.de
|
|
||||||
|
|
||||||
- %_lib fixes
|
|
||||||
- Added prototype for rb_node_newnode.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri May 17 12:32:52 CEST 2002 - mge@suse.de
|
|
||||||
|
|
||||||
- update to 1.6.7
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Apr 15 01:44:30 CEST 2002 - bk@suse.de
|
|
||||||
|
|
||||||
- lib64 and new arch fixes: suse_update_config and use %_libdir
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Apr 5 13:29:02 CEST 2002 - schwab@suse.de
|
|
||||||
|
|
||||||
- Remove ia64 workaround.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Aug 21 03:14:46 MEST 2001 - mge@suse.de
|
|
||||||
|
|
||||||
- update to 1.6.4
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sun May 20 21:37:19 MEST 2001 - mge@suse.de
|
|
||||||
|
|
||||||
- changes _only_ to spec-file:
|
|
||||||
- make ruby shared libs built
|
|
||||||
- cleanup ruby directory structure (drop /usr/share/lib/ruby/)
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed May 9 21:53:32 CEST 2001 - mfabian@suse.de
|
|
||||||
|
|
||||||
- bzip2 sources
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Mar 22 01:49:00 MET 2001 - mge@suse.de
|
|
||||||
|
|
||||||
- update to 1.6.3, merge of rread's SPEC patches
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Mar 19 16:04:24 CET 2001 - schwab@suse.de
|
|
||||||
|
|
||||||
- Don't use __builtin_frame_address(2) on ia64.
|
|
||||||
- Compile with -O0 on ia64 to work around compiler bug.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Mar 05 00:00:00 CET 2001 - rread@mountainviewdata.com
|
|
||||||
|
|
||||||
- introduced build-root
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Feb 23 00:10:25 CET 2001 - ro@suse.de
|
|
||||||
|
|
||||||
- added readline/readline-devel to neededforbuild (split from bash)
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Jan 12 18:22:32 MET 2001 - mge@suse.de
|
|
||||||
|
|
||||||
- update to 1.6.2
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Dec 13 13:21:15 CET 2000 - schwab@suse.de
|
|
||||||
|
|
||||||
- Add %suse_update_config.
|
|
||||||
- Fix computation of stack limit.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Dec 4 23:28:15 MET 2000 - mge@suse.de
|
|
||||||
|
|
||||||
- update to 1.6.1, manual 1.4.6
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Jul 6 13:30:35 MEST 2000 - mge@suse.de
|
|
||||||
|
|
||||||
- initial SuSE RPM
|
|
||||||
|
|
||||||
|
75
ruby.macros
75
ruby.macros
@ -1,48 +1,43 @@
|
|||||||
#
|
%rb_binary /usr/bin/ruby
|
||||||
# Copyright (c) 2014 SUSE Linux
|
%rb_arch %(%{rb_binary} -e 'print RUBY_PLATFORM')
|
||||||
#
|
%rb_ver %(%{rb_binary} -r rbconfig -e 'print RbConfig::CONFIG["ruby_version"]')
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining
|
|
||||||
# a copy of this software and associated documentation files (the
|
|
||||||
# "Software"), to deal in the Software without restriction, including
|
|
||||||
# without limitation the rights to use, copy, modify, merge, publish,
|
|
||||||
# distribute, sublicense, and/or sell copies of the Software, and to
|
|
||||||
# permit persons to whom the Software is furnished to do so, subject to
|
|
||||||
# the following conditions:
|
|
||||||
#
|
|
||||||
# The above copyright notice and this permission notice shall be
|
|
||||||
# included in all copies or substantial portions of the Software.
|
|
||||||
#
|
|
||||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
||||||
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
||||||
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
||||||
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
||||||
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
#
|
#
|
||||||
|
|
||||||
%rb_binary %{rb21_binary}
|
## Base
|
||||||
%gem_binary /usr/bin/gem2.1
|
# "rubylibprefix"=>"/usr/lib64/ruby",
|
||||||
%rb_arch %{rb21_arch}
|
%rb_dir %(%{rb_binary} -rrbconfig -e 'puts RbConfig::CONFIG["rubylibprefix"]' )
|
||||||
%rb_ver %{rb21_ver}
|
# "rubylibdir" =>"/usr/lib64/ruby/2.1.0",
|
||||||
|
%rb_libdir %(%{rb_binary} -rrbconfig -e 'puts RbConfig::CONFIG["rubylibdir"]' )
|
||||||
|
# "archdir" =>"/usr/lib64/ruby/2.1.0/x86_64-linux",
|
||||||
|
%rb_archdir %(%{rb_binary} -rrbconfig -e 'puts RbConfig::CONFIG["archdir"]' )
|
||||||
|
|
||||||
%rb_dir %{rb21_dir}
|
## Site
|
||||||
%rb_libdir %{rb21_libdir}
|
# "sitedir" =>"/usr/lib64/ruby/site_ruby",
|
||||||
%rb_archdir %{rb21_archdir}
|
%rb_sitedir %(%{rb_binary} -rrbconfig -e 'puts RbConfig::CONFIG["sitedir"]' )
|
||||||
|
# "sitelibdir" =>"/usr/lib64/ruby/site_ruby/2.1.0",
|
||||||
|
%rb_sitelibdir %(%{rb_binary} -rrbconfig -e 'puts RbConfig::CONFIG["sitelibdir"]' )
|
||||||
|
# "sitearchdir" =>"/usr/lib64/ruby/site_ruby/2.1.0/x86_64-linux",
|
||||||
|
%rb_sitearchdir %(%{rb_binary} -rrbconfig -e 'puts RbConfig::CONFIG["sitearchdir"]' )
|
||||||
|
|
||||||
%rb_sitedir %rb21_sitedir
|
## Vendor
|
||||||
%rb_sitelibdir %rb21_sitelibdir
|
# "vendordir" =>"/usr/lib64/ruby/vendor_ruby",
|
||||||
%rb_sitearchdir %rb21_sitearchdir
|
%rb_vendordir %(%{rb_binary} -rrbconfig -e 'puts RbConfig::CONFIG["vendordir"]' )
|
||||||
|
# "vendorlibdir" =>"/usr/lib64/ruby/vendor_ruby/2.1.0",
|
||||||
|
%rb_vendorlibdir %(%{rb_binary} -rrbconfig -e 'puts RbConfig::CONFIG["vendorlibdir"]' )
|
||||||
|
# "vendorarchdir" =>"/usr/lib64/ruby/vendor_ruby/2.1.0/x86_64-linux",
|
||||||
|
%rb_vendorarchdir %(%{rb_binary} -rrbconfig -e 'puts RbConfig::CONFIG["vendorarchdir"]' )
|
||||||
|
|
||||||
%rb_vendordir %rb21_vendordir
|
# backward compat
|
||||||
%rb_vendorlibdir %rb21_vendorlibdir
|
%rb_sitearch %{rb_sitearchdir}
|
||||||
%rb_vendorarchdir %rb21_vendorarchdir
|
%rb_sitelib %{rb_sitelibdir}
|
||||||
|
%rb_vendorlib %{rb_vendorlibdir}
|
||||||
|
%rb_vendorarch %{rb_vendorarchdir}
|
||||||
|
|
||||||
|
%gem_install /usr/lib/rpm/gem_install_wrapper.sh
|
||||||
|
%gem_cleanup /usr/bin/gem_build_cleanup %{buildroot}%{_libdir}/ruby/gems/%{rb_ver}/gems/%{mod_name}-%{version}/
|
||||||
|
|
||||||
# old names
|
%gem_base %(%{rb_binary} -rrubygems -e 'print Gem::BasicSpecification.new.base_dir' )
|
||||||
%rb_sitelib %rb21_sitelibdir
|
%gem_extensions %(%{rb_binary} -rrubygems -e 'print Gem::BasicSpecification.new.extensions_dir' )
|
||||||
%rb_sitearch %rb21_sitearchdir
|
%gem_doc_ext %(%{rb_binary} -rrubygems -e 'bs = Gem::BasicSpecification.new; rp = bs.extensions_dir.rpartition(bs.base_dir); print rp[1]+"/doc"+rp[2]' )
|
||||||
#
|
%gem_platform %(%{rb_binary} -rrubygems -r rbconfig -e 'print Gem::Platform.new(RbConfig::CONFIG["arch"]).to_s' )
|
||||||
%rb_vendorlib %rb21_vendorlibdir
|
|
||||||
%rb_vendorarch %rb21_vendorarchdir
|
|
||||||
|
|
||||||
|
54
ruby.rpm-macros
Normal file
54
ruby.rpm-macros
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
# %%gem_unpack macro unpacks a gem file into %%{_builddir}
|
||||||
|
#
|
||||||
|
# example:
|
||||||
|
# %prep
|
||||||
|
# %gem_unpack %{SOURCE0}
|
||||||
|
# %patch1 -p1
|
||||||
|
#
|
||||||
|
%gem_unpack(s:) \
|
||||||
|
source=%{-s:%{-s*}}%{!-s:%{SOURCE0}} \
|
||||||
|
%{?gem_binary}%{!?gem_binary:/usr/bin/gem} unpack --verbose $source \
|
||||||
|
cd %{mod_name}-%{version} \
|
||||||
|
chmod og-w -R . \
|
||||||
|
%{?gem_binary}%{!?gem_binary:/usr/bin/gem} specification --ruby $source > %{mod_name}-%{version}.gemspec \
|
||||||
|
%{nil}
|
||||||
|
|
||||||
|
# %%gem_build macro ...
|
||||||
|
#
|
||||||
|
%gem_build() \
|
||||||
|
GEMSPEC_SOURCE_DIR=`find . -maxdepth 2 -type f -name %{mod_name}-%{version}.gemspec | xargs dirname` \
|
||||||
|
cd $GEMSPEC_SOURCE_DIR && %{?gem_binary}%{!?gem_binary:/usr/bin/gem} build --verbose %{mod_name}-%{version}.gemspec \
|
||||||
|
%{nil}
|
||||||
|
|
||||||
|
# %%gem_install macro ...
|
||||||
|
#
|
||||||
|
# When invoked with a single parameter, the macro retains the old macro behavior, i.e.
|
||||||
|
# building the upstream gem directly in $RPM_BUILD_ROOT without unpacking to %{_builddir} first.
|
||||||
|
#
|
||||||
|
%gem_install /usr/lib/rpm/gem_install.sh --default-gem %{mod_name}-%{version}.gem --build-root %{buildroot} %{?gem_binary:--gem-binary %{gem_binary}}
|
||||||
|
|
||||||
|
# we need to copy parts of the %fdupes macro as rpm can't expand parameters in macro "calls" ;(
|
||||||
|
%gem_cleanup() \
|
||||||
|
/usr/lib/rpm/gem_build_cleanup.sh %{buildroot}%{_libdir}/ruby/gems/%{rb_ver}/ \
|
||||||
|
fdupes -q -p -n -r %{buildroot}%{gem_base} | \
|
||||||
|
while read _file; do \
|
||||||
|
if test -z "$_target" ; then \
|
||||||
|
_target="$_file"; \
|
||||||
|
else \
|
||||||
|
if test -z "$_file" ; then \
|
||||||
|
_target=""; \
|
||||||
|
continue ; \
|
||||||
|
fi ; \
|
||||||
|
ln -sf "${_target#%{buildroot}}" "$_file"; \
|
||||||
|
fi ; \
|
||||||
|
done \
|
||||||
|
%{nil}
|
||||||
|
|
||||||
|
# this is used in older gems - but it's pointless with newer ruby/rpm versions
|
||||||
|
%rubygems_requires %{nil}
|
||||||
|
|
||||||
|
%gem_base %(%{rb_binary} -rrubygems -e 'print Gem::Specification.new.base_dir' )
|
||||||
|
%gem_extensions %(%{rb_binary} -rrubygems -e 'print Gem::Specification.new.extensions_dir' || echo %{_libdir}/ruby/gems/%{rb_ver}/gems )
|
||||||
|
%gem_doc_ext %(%{rb_binary} -r rubygems -e 'bs = Gem::Specification.new; rp = bs.extensions_dir.rpartition(bs.base_dir); print rp[1]+"/doc"+rp[2]' )
|
||||||
|
%gem_platform %(%{rb_binary} -r rubygems -r rbconfig -e 'print Gem::Platform.new(RbConfig::CONFIG["arch"]).to_s' )
|
||||||
|
|
391
ruby.spec
391
ruby.spec
@ -17,26 +17,104 @@
|
|||||||
|
|
||||||
|
|
||||||
Name: ruby
|
Name: ruby
|
||||||
Version: 2.1
|
|
||||||
Release: 0
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
||||||
Source0: ruby.macros
|
|
||||||
Source2: gemrc
|
|
||||||
Provides: /usr/bin/ruby
|
|
||||||
Url: http://www.ruby-lang.org/
|
|
||||||
Summary: An Interpreted Object-Oriented Scripting Language
|
|
||||||
License: MIT
|
|
||||||
Group: Development/Languages/Ruby
|
|
||||||
BuildRequires: ruby-common
|
|
||||||
BuildRequires: ruby21-devel
|
|
||||||
BuildRequires: update-alternatives
|
|
||||||
#!BuildIgnore: ruby ruby-devel
|
|
||||||
#!BuildIgnore: rubygems
|
|
||||||
%requires_ge ruby21
|
|
||||||
Provides: rubygems = 1.8.15
|
|
||||||
Obsoletes: rubygems < 1.8.15
|
|
||||||
|
|
||||||
%{expand:%(rpm -ql ruby21 | fgrep .gemspec | /usr/bin/ruby2.1 /usr/lib/rpm/rubygemsdeps.rb --provides | sed -e 's,^,Provides:,')}
|
####
|
||||||
|
#!!!
|
||||||
|
#!!! when updating, check versions of embedded rubygems in %package stdlib below
|
||||||
|
#!!!
|
||||||
|
####
|
||||||
|
|
||||||
|
%define patch_level p0
|
||||||
|
Version: 2.1.0
|
||||||
|
Release: 0
|
||||||
|
|
||||||
|
# ruby-macros and ruby-common version
|
||||||
|
%define rpm_macros_version 3
|
||||||
|
|
||||||
|
#
|
||||||
|
%define pkg_version 2.1.0
|
||||||
|
%define libname lib%{name}2_1
|
||||||
|
# keep in sync with macro file!
|
||||||
|
%define rb_ver 2.1.0
|
||||||
|
%define rb_arch %(echo %{_target_cpu}-linux-gnu | sed -e "s/ppc/powerpc/")
|
||||||
|
%define rb_libdir %{_libdir}/ruby/%{rb_ver}/
|
||||||
|
%define rb_archdir %{_libdir}/ruby/%{rb_ver}/%{rb_arch}
|
||||||
|
# keep in sync with macro file!
|
||||||
|
#
|
||||||
|
# from valgrind.spec
|
||||||
|
%ifarch %ix86 x86_64 ppc ppc64
|
||||||
|
%define use_valgrind 1
|
||||||
|
%endif
|
||||||
|
# see https://bugs.ruby-lang.org/issues/8000 - might come back
|
||||||
|
%if %suse_version < 1230
|
||||||
|
%define tk_version_supported 1
|
||||||
|
%endif
|
||||||
|
# the tests are unfortunately rather fishy
|
||||||
|
%define run_tests 0
|
||||||
|
|
||||||
|
#
|
||||||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
|
BuildRequires: awk
|
||||||
|
BuildRequires: gdbm-devel
|
||||||
|
BuildRequires: libffi-devel
|
||||||
|
BuildRequires: libyaml-devel
|
||||||
|
BuildRequires: ncurses-devel
|
||||||
|
BuildRequires: openssl-devel
|
||||||
|
BuildRequires: pkg-config
|
||||||
|
BuildRequires: readline-devel
|
||||||
|
BuildRequires: tk-devel
|
||||||
|
BuildRequires: zlib-devel
|
||||||
|
# this requires is needed as distros older than 11.3 have a buildignore on freetype2, without this the detection of the tk extension fails
|
||||||
|
BuildRequires: freetype2-devel
|
||||||
|
%if 0%{?suse_version} > 1010
|
||||||
|
BuildRequires: xorg-x11-libX11-devel
|
||||||
|
%else
|
||||||
|
BuildRequires: xorg-x11-devel
|
||||||
|
%endif
|
||||||
|
%if 0%{?use_valgrind}
|
||||||
|
%if 0%{?suse_version} > 1021
|
||||||
|
BuildRequires: valgrind-devel
|
||||||
|
%else
|
||||||
|
BuildRequires: valgrind
|
||||||
|
%endif
|
||||||
|
%endif
|
||||||
|
Provides: rubygem-rake = 10.1.0
|
||||||
|
Provides: ruby(abi) = %{rb_ver}
|
||||||
|
|
||||||
|
Provides: ruby-common = %{rpm_macros_version}
|
||||||
|
Obsoletes: ruby-common < %{rpm_macros_version}
|
||||||
|
%if 0%{?suse_version} < 1140
|
||||||
|
# we need a patched rpm
|
||||||
|
Requires: rpm-with-ruby-provide-hook
|
||||||
|
%endif
|
||||||
|
Provides: ruby21
|
||||||
|
Conflicts: ruby18
|
||||||
|
Conflicts: ruby19
|
||||||
|
Conflicts: ruby20
|
||||||
|
Requires: ruby-stdlib
|
||||||
|
|
||||||
|
Provides: ruby-macros = %{rpm_macros_version}
|
||||||
|
|
||||||
|
#
|
||||||
|
Url: http://www.ruby-lang.org/
|
||||||
|
Source: http://cache.ruby-lang.org/pub/ruby/2.1/ruby-%{pkg_version}.tar.bz2
|
||||||
|
# sources from former ruby-common
|
||||||
|
Source1: gem_build_cleanup
|
||||||
|
Source2: ruby.macros
|
||||||
|
Source3: ruby.rpm-macros
|
||||||
|
Source4: rubygems.attr
|
||||||
|
Source5: rubygemsdeps.rb
|
||||||
|
Source6: gem_install.sh
|
||||||
|
Source7: generate_buildrequires.sh
|
||||||
|
Source8: generate_rubygemprovides.awk
|
||||||
|
|
||||||
|
Patch0: rubygems-1.5.0_buildroot.patch
|
||||||
|
Patch1: ruby-1.9.2p290_tcl_no_stupid_rpaths.patch
|
||||||
|
Patch2: drop_content_size_check_in_xmlrpc.patch
|
||||||
|
#
|
||||||
|
Summary: An Interpreted Object-Oriented Scripting Language
|
||||||
|
License: BSD-2-Clause or Ruby
|
||||||
|
Group: Development/Languages/Ruby
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Ruby is an interpreted scripting language for quick and easy
|
Ruby is an interpreted scripting language for quick and easy
|
||||||
@ -67,33 +145,284 @@ simple, straight-forward, and extensible.
|
|||||||
- Highly Portable (works on many UNIX machines; DOS, Windows, Mac,
|
- Highly Portable (works on many UNIX machines; DOS, Windows, Mac,
|
||||||
BeOS, and more)
|
BeOS, and more)
|
||||||
|
|
||||||
|
%package -n %{libname}
|
||||||
|
Summary: Dynamic runtime library for Ruby
|
||||||
|
Group: System/Libraries
|
||||||
|
|
||||||
|
%description -n %{libname}
|
||||||
|
Dynamic runtime library libruby2.1.so.2.0.0 for Ruby
|
||||||
|
|
||||||
|
%package doc
|
||||||
|
Summary: Documentation and samples for Ruby
|
||||||
|
Group: Development/Languages/Ruby
|
||||||
|
|
||||||
|
%description doc
|
||||||
|
Documentation and samples for Ruby
|
||||||
|
|
||||||
|
%package stdlib
|
||||||
|
Summary: The Ruby standard library
|
||||||
|
Group: Development/Languages/Ruby
|
||||||
|
|
||||||
|
################################
|
||||||
|
# generate provides for embedded rubygems
|
||||||
|
# must be 'manually' generated since
|
||||||
|
# - the final .gemspec files are created during %build and %install
|
||||||
|
# - the usual means to generate provides for rubygems is using ruby
|
||||||
|
# and ruby is not available while building ruby :-/
|
||||||
|
|
||||||
|
%define gen_embedded_provides4() %(awk -f %{S:8} -- %version %arch %1 %2 %3 %4)
|
||||||
|
%define gen_embedded_provides5() %(awk -f %{S:8} -- %version %arch %1 %2 %3 %4 %5)
|
||||||
|
%gen_embedded_provides4 io-console 0 4 2
|
||||||
|
%gen_embedded_provides4 json 1 8 1
|
||||||
|
%gen_embedded_provides4 minitest 4 7 5
|
||||||
|
%gen_embedded_provides4 psych 2 0 2
|
||||||
|
%gen_embedded_provides4 rake 10 1 0
|
||||||
|
%gen_embedded_provides4 rdoc 4 1 0
|
||||||
|
%gen_embedded_provides5 test-unit 2 1 0 0
|
||||||
|
|
||||||
|
################################
|
||||||
|
|
||||||
|
%description stdlib
|
||||||
|
The Ruby standard library
|
||||||
|
|
||||||
%package devel
|
%package devel
|
||||||
Summary: Development files to link against Ruby
|
Summary: Development files to link against Ruby
|
||||||
Group: Development/Languages/Ruby
|
Group: Development/Languages/Ruby
|
||||||
Requires: %{name}
|
Requires: %{name} = %{version}
|
||||||
Requires: ruby21-devel
|
Provides: rubygems = 1.3.7
|
||||||
Provides: rubygems_with_buildroot_patch
|
Provides: rubygems_with_buildroot_patch
|
||||||
|
Requires: ruby-common
|
||||||
|
|
||||||
%description devel
|
%description devel
|
||||||
Development files to link against Ruby.
|
Development files to link against Ruby.
|
||||||
|
|
||||||
|
%package devel-extra
|
||||||
|
Summary: Special development files of ruby, normally not installed
|
||||||
|
Group: Development/Languages/Ruby
|
||||||
|
Requires: %{name}-devel = %{version}
|
||||||
|
|
||||||
|
%description devel-extra
|
||||||
|
Development files to link against Ruby.
|
||||||
|
|
||||||
|
%if 0%{?tk_version_supported} > 0
|
||||||
|
%package tk
|
||||||
|
Summary: TCL/TK bindings for Ruby
|
||||||
|
Group: Development/Languages/Ruby
|
||||||
|
Requires: %{name} = %{version}
|
||||||
|
|
||||||
|
%description tk
|
||||||
|
TCL/TK bindings for Ruby
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%package doc-ri
|
||||||
|
Summary: Ruby Interactive Documentation
|
||||||
|
Group: Development/Languages/Ruby
|
||||||
|
Requires: %{name} = %{version}
|
||||||
|
%if 0%{?suse_version} >= 1121
|
||||||
|
BuildArch: noarch
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%description doc-ri
|
||||||
|
This package contains the RI docs for ruby
|
||||||
|
|
||||||
|
%package doc-html
|
||||||
|
Summary: This package contains the HTML docs for ruby
|
||||||
|
Group: Development/Languages/Ruby
|
||||||
|
Requires: %{name} = %{version}
|
||||||
|
%if 0%{?suse_version} >= 1121
|
||||||
|
BuildArch: noarch
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%description doc-html
|
||||||
|
This package contains the HTML docs for ruby
|
||||||
|
|
||||||
|
%package examples
|
||||||
|
Summary: Example scripts for ruby
|
||||||
|
Group: Development/Languages/Ruby
|
||||||
|
Requires: %{name} = %{version}
|
||||||
|
%if 0%{?suse_version} >= 1121
|
||||||
|
BuildArch: noarch
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%description examples
|
||||||
|
Example scripts for ruby
|
||||||
|
|
||||||
|
%package test-suite
|
||||||
|
Requires: %{name} = %{version}
|
||||||
|
Summary: An Interpreted Object-Oriented Scripting Language
|
||||||
|
Group: Development/Languages/Ruby
|
||||||
|
%if 0%{?suse_version} >= 1121
|
||||||
|
BuildArch: noarch
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%description test-suite
|
||||||
|
Ruby is an interpreted scripting language for quick and easy
|
||||||
|
object-oriented programming. It has many features for processing text
|
||||||
|
files and performing system management tasks (as in Perl). It is
|
||||||
|
simple, straight-forward, and extensible.
|
||||||
|
|
||||||
|
* Ruby features:
|
||||||
|
|
||||||
|
- Simple Syntax
|
||||||
|
|
||||||
|
- *Normal* Object-Oriented features (class, method calls, for
|
||||||
|
example)
|
||||||
|
|
||||||
|
- *Advanced* Object-Oriented features(Mix-in, Singleton-method, for
|
||||||
|
example)
|
||||||
|
|
||||||
|
- Operator Overloading
|
||||||
|
|
||||||
|
- Exception Handling
|
||||||
|
|
||||||
|
- Iterators and Closures
|
||||||
|
|
||||||
|
- Garbage Collection
|
||||||
|
|
||||||
|
- Dynamic Loading of Object Files (on some architectures)
|
||||||
|
|
||||||
|
- Highly Portable (works on many UNIX machines; DOS, Windows, Mac,
|
||||||
|
BeOS, and more)
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
|
%setup -q -n ruby-%{pkg_version}
|
||||||
|
%patch0
|
||||||
|
%patch1
|
||||||
|
%patch2
|
||||||
|
find sample -type f -print0 | xargs -r0 chmod a-x
|
||||||
|
grep -Erl '^#! */' benchmark bootstraptest ext lib sample test \
|
||||||
|
| xargs -r perl -p -i -e 's|^#!\s*\S+(\s+.*)?$|#!/usr/bin/ruby2.1$1|'
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
%configure \
|
||||||
|
--with-soname=ruby \
|
||||||
|
--target=%{_target_platform} \
|
||||||
|
%if 0%{?use_valgrind}
|
||||||
|
--with-valgrind \
|
||||||
|
%endif
|
||||||
|
--with-mantype=man \
|
||||||
|
--enable-shared \
|
||||||
|
--disable-static \
|
||||||
|
--disable-rpath
|
||||||
|
%{__make} all V=1
|
||||||
|
|
||||||
%install
|
%install
|
||||||
mkdir -p %{buildroot}%_libdir
|
%makeinstall V=1
|
||||||
ln -s %_libdir/libruby2.1.so %{buildroot}%_libdir/libruby.so
|
%{__install} -D -m 0644 %{S:2} %{buildroot}/etc/rpm/macros.ruby
|
||||||
install -D -m 0644 %{S:0} %{buildroot}/etc/rpm/macros.ruby
|
echo "%defattr(-,root,root,-)" > devel-extra-excludes
|
||||||
install -D -m 0644 %{S:2} %{buildroot}/etc/gemrc
|
echo "%defattr(-,root,root,-)" > devel-extra-list
|
||||||
|
for i in iseq.h insns.inc insns_info.inc revision.h version.h thread_pthread.h \
|
||||||
|
ruby_atomic.h method.h id.h vm_core.h vm_opts.h node.h eval_intern.h vm_debug.h; do
|
||||||
|
install -m 644 $i %{buildroot}%{_includedir}/ruby-%{rb_ver}/
|
||||||
|
echo "%exclude %{_includedir}/ruby-%{rb_ver}/$i" >> devel-extra-excludes
|
||||||
|
echo "%{_includedir}/ruby-%{rb_ver}/$i" >> devel-extra-list
|
||||||
|
done
|
||||||
|
|
||||||
|
# Create gem native extensions dir
|
||||||
|
# use shell scripting here as we're executing the just installed binary
|
||||||
|
%define rb_binary %{buildroot}/usr/bin/ruby -I %{buildroot}%{rb_libdir} -I %{buildroot}%{rb_archdir}
|
||||||
|
export LD_LIBRARY_PATH=%{buildroot}%{_libdir}
|
||||||
|
export GEM_EXTENSIONS=`%{rb_binary} -rrubygems -e 'print Gem::BasicSpecification.new.extensions_dir'`
|
||||||
|
export GEM_PLATFORM=`%{rb_binary} -r rubygems -r rbconfig -e 'print Gem::Platform.new(RbConfig::CONFIG["arch"]).to_s'`
|
||||||
|
# mkdir -p %{buildroot}$GEM_EXTENSIONS/$GEM_PLATFORM/%{rb_ver}
|
||||||
|
mkdir -p %{buildroot}$GEM_EXTENSIONS
|
||||||
|
|
||||||
|
# formerly ruby-common
|
||||||
|
# we need to make sure it overwrites older macro versions and rpm sorts alphabetically
|
||||||
|
install -D -m 0644 %{S:3} $RPM_BUILD_ROOT/etc/rpm/macros.suse-ruby
|
||||||
|
install -D -m 0644 %{S:4} $RPM_BUILD_ROOT/usr/lib/rpm/fileattrs/rubygems.attr
|
||||||
|
install -D -m 0755 %{S:5} $RPM_BUILD_ROOT/usr/lib/rpm/rubygemsdeps.rb
|
||||||
|
install -D -m 0755 %{S:6} $RPM_BUILD_ROOT/usr/lib/rpm/gem_install.sh
|
||||||
|
install -D -m 0755 %{S:1} $RPM_BUILD_ROOT/usr/lib/rpm/gem_build_cleanup.sh
|
||||||
|
install -D -m 0755 %{S:7} $RPM_BUILD_ROOT/usr/lib/rpm/generate_buildrequires.sh
|
||||||
|
|
||||||
|
%if 0%{?run_tests}
|
||||||
|
|
||||||
|
%check
|
||||||
|
export LD_LIBRARY_PATH="$PWD"
|
||||||
|
# we know some tests will fail when they do not find a /usr/bin/ruby
|
||||||
|
make check V=1 ||:
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%post -n %{libname}
|
||||||
|
/sbin/ldconfig
|
||||||
|
|
||||||
|
%postun -n %{libname}
|
||||||
|
/sbin/ldconfig
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root,-)
|
||||||
%config /etc/gemrc
|
%config(noreplace) /etc/rpm/macros.ruby
|
||||||
%config /etc/rpm/macros.ruby
|
%{_bindir}/erb
|
||||||
|
%{_bindir}/gem
|
||||||
|
%{_bindir}/irb
|
||||||
|
%{_bindir}/rake
|
||||||
|
%{_bindir}/rdoc
|
||||||
|
%{_bindir}/ri
|
||||||
|
%{_bindir}/ruby
|
||||||
|
%{_bindir}/testrb
|
||||||
|
%if 0%{?tk_version_supported} > 0
|
||||||
|
%exclude %{rb_libdir}/multi-tk.rb
|
||||||
|
%exclude %{rb_libdir}/remote-tk.rb
|
||||||
|
%exclude %{rb_libdir}/tcltk.rb
|
||||||
|
%exclude %{rb_libdir}/tk*.rb
|
||||||
|
%exclude %{rb_libdir}/tk/
|
||||||
|
%exclude %{rb_libdir}/tkextlib/
|
||||||
|
%exclude %{rb_archdir}/tcltklib.so
|
||||||
|
%exclude %{rb_archdir}/tkutil.so
|
||||||
|
%endif
|
||||||
|
%{_mandir}/man1/ri.1*
|
||||||
|
%{_mandir}/man1/irb.1*
|
||||||
|
%{_mandir}/man1/erb.1*
|
||||||
|
%{_mandir}/man1/rake.1*
|
||||||
|
%{_mandir}/man1/ruby.1*
|
||||||
|
%doc ChangeLog COPYING COPYING.ja GPL KNOWNBUGS.rb LEGAL NEWS README README.EXT README.EXT.ja README.ja
|
||||||
|
# former ruby-common files
|
||||||
|
/etc/rpm/macros.suse-ruby
|
||||||
|
%dir /usr/lib/rpm/fileattrs
|
||||||
|
/usr/lib/rpm/fileattrs/rubygems.attr
|
||||||
|
/usr/lib/rpm/rubygemsdeps.rb
|
||||||
|
/usr/lib/rpm/gem_install.sh
|
||||||
|
/usr/lib/rpm/gem_build_cleanup.sh
|
||||||
|
/usr/lib/rpm/generate_buildrequires.sh
|
||||||
|
|
||||||
%files devel
|
%files -n %{libname}
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root,-)
|
||||||
%_libdir/libruby.so
|
%{_libdir}/libruby.so.2.1*
|
||||||
|
|
||||||
|
%files doc
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%doc doc/* sample/
|
||||||
|
|
||||||
|
%files stdlib
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%{_libdir}/ruby/
|
||||||
|
|
||||||
|
%files devel -f devel-extra-excludes
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%{_includedir}/ruby-%{rb_ver}
|
||||||
|
%{_libdir}/libruby.so
|
||||||
|
%{_libdir}/libruby-static.a
|
||||||
|
%{_libdir}/pkgconfig/ruby-2.1.pc
|
||||||
|
|
||||||
|
%files devel-extra -f devel-extra-list
|
||||||
|
|
||||||
|
%if 0%{?tk_version_supported} > 0
|
||||||
|
%files tk
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%{rb_libdir}/multi-tk.rb
|
||||||
|
%{rb_libdir}/remote-tk.rb
|
||||||
|
%{rb_libdir}/tcltk.rb
|
||||||
|
%{rb_libdir}/tk*.rb
|
||||||
|
%{rb_libdir}/tk/
|
||||||
|
%{rb_libdir}/tkextlib/
|
||||||
|
%{rb_archdir}/tcltklib.so
|
||||||
|
%{rb_archdir}/tkutil.so
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%files doc-ri
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%dir %{_datadir}/ri/
|
||||||
|
%{_datadir}/ri/%{rb_ver}/
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
25
ruby19-export_init_prelude.patch
Normal file
25
ruby19-export_init_prelude.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
Index: ruby-1.9.3-p194/include/ruby/ruby.h
|
||||||
|
===================================================================
|
||||||
|
--- ruby-1.9.3-p194.orig/include/ruby/ruby.h
|
||||||
|
+++ ruby-1.9.3-p194/include/ruby/ruby.h
|
||||||
|
@@ -1225,6 +1225,7 @@ void ruby_init_stack(volatile VALUE*);
|
||||||
|
VALUE variable_in_this_stack_frame; \
|
||||||
|
ruby_init_stack(&variable_in_this_stack_frame);
|
||||||
|
void ruby_init(void);
|
||||||
|
+void ruby_init_prelude(void);
|
||||||
|
void *ruby_options(int, char**);
|
||||||
|
int ruby_run_node(void *);
|
||||||
|
int ruby_exec_node(void *);
|
||||||
|
Index: ruby-1.9.3-p194/ruby.c
|
||||||
|
===================================================================
|
||||||
|
--- ruby-1.9.3-p194.orig/ruby.c
|
||||||
|
+++ ruby-1.9.3-p194/ruby.c
|
||||||
|
@@ -1091,7 +1091,7 @@ proc_options(long argc, char **argv, str
|
||||||
|
return argc0 - argc;
|
||||||
|
}
|
||||||
|
|
||||||
|
-static void
|
||||||
|
+void
|
||||||
|
ruby_init_prelude(void)
|
||||||
|
{
|
||||||
|
Init_prelude();
|
59
rubygems-1.5.0_buildroot.patch
Normal file
59
rubygems-1.5.0_buildroot.patch
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
Index: lib/rubygems/dependency_installer.rb
|
||||||
|
===================================================================
|
||||||
|
--- lib/rubygems/dependency_installer.rb.orig
|
||||||
|
+++ lib/rubygems/dependency_installer.rb
|
||||||
|
@@ -72,6 +72,7 @@ class Gem::DependencyInstaller
|
||||||
|
def initialize options = {}
|
||||||
|
@only_install_dir = !!options[:install_dir]
|
||||||
|
@install_dir = options[:install_dir] || Gem.dir
|
||||||
|
+ @build_root = options[:build_root]
|
||||||
|
|
||||||
|
options = DEFAULT_OPTIONS.merge options
|
||||||
|
|
||||||
|
@@ -382,6 +383,7 @@ class Gem::DependencyInstaller
|
||||||
|
:security_policy => @security_policy,
|
||||||
|
:user_install => @user_install,
|
||||||
|
:wrappers => @wrappers,
|
||||||
|
+ :build_root => @build_root,
|
||||||
|
:install_as_default => @install_as_default
|
||||||
|
}
|
||||||
|
options[:install_dir] = @install_dir if @only_install_dir
|
||||||
|
Index: lib/rubygems/installer.rb
|
||||||
|
===================================================================
|
||||||
|
--- lib/rubygems/installer.rb.orig
|
||||||
|
+++ lib/rubygems/installer.rb
|
||||||
|
@@ -590,8 +590,17 @@ class Gem::Installer
|
||||||
|
# (or use) a new bin dir under the gem_home.
|
||||||
|
@bin_dir = options[:bin_dir] || Gem.bindir(gem_home)
|
||||||
|
@development = options[:development]
|
||||||
|
+ @build_root = options[:build_root]
|
||||||
|
|
||||||
|
@build_args = options[:build_args] || Gem::Command.build_args
|
||||||
|
+
|
||||||
|
+ unless @build_root.nil?
|
||||||
|
+ require 'pathname'
|
||||||
|
+ @build_root = Pathname.new(@build_root).expand_path
|
||||||
|
+ @bin_dir = File.join(@build_root, options[:bin_dir] || Gem.bindir(@gem_home))
|
||||||
|
+ @gem_home = File.join(@build_root,@gem_home)
|
||||||
|
+ alert_warning "You build with buildroot.\n Build root: #{@build_root}\n Bin dir: #{@bin_dir}\n Gem home: #{@gem_home}"
|
||||||
|
+ end
|
||||||
|
end
|
||||||
|
|
||||||
|
# DOC: Missing docs or :nodoc:.
|
||||||
|
Index: lib/rubygems/install_update_options.rb
|
||||||
|
===================================================================
|
||||||
|
--- lib/rubygems/install_update_options.rb.orig
|
||||||
|
+++ lib/rubygems/install_update_options.rb
|
||||||
|
@@ -59,6 +59,12 @@ module Gem::InstallUpdateOptions
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
+ add_option(:"Install/Update", '--build-root DIR',
|
||||||
|
+ 'Temporary installation root. Useful for building',
|
||||||
|
+ 'packages. Do not use this when installing remote gems.') do |value, options|
|
||||||
|
+ options[:build_root] = File.expand_path(value)
|
||||||
|
+ end
|
||||||
|
+
|
||||||
|
add_option(:"Install/Update", '-N', '--no-document',
|
||||||
|
'Disable documentation generation') do |value, options|
|
||||||
|
options[:document] = []
|
4
rubygems.attr
Normal file
4
rubygems.attr
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
%__rubygems_requires %{_rpmconfigdir}/rubygemsdeps.rb --requires
|
||||||
|
%__rubygems_provides %{_rpmconfigdir}/rubygemsdeps.rb --provides
|
||||||
|
%__rubygems_path ^%{_libdir}/ruby/gems/[^/]*/specifications
|
||||||
|
|
150
rubygemsdeps.rb
Normal file
150
rubygemsdeps.rb
Normal file
@ -0,0 +1,150 @@
|
|||||||
|
#!/usr/bin/ruby
|
||||||
|
|
||||||
|
# Copyright (c) 2012 Stephan Kulow
|
||||||
|
#
|
||||||
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
# a copy of this software and associated documentation files (the
|
||||||
|
# "Software"), to deal in the Software without restriction, including
|
||||||
|
# without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
# distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
# permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
# the following conditions:
|
||||||
|
#
|
||||||
|
# The above copyright notice and this permission notice shall be
|
||||||
|
# included in all copies or substantial portions of the Software.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||||
|
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||||
|
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||||
|
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||||
|
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
|
require 'optparse'
|
||||||
|
require 'rubygems'
|
||||||
|
#require 'rubygems/format'
|
||||||
|
require 'rubygems/specification'
|
||||||
|
|
||||||
|
opts = OptionParser.new("Usage: #{$0}")
|
||||||
|
|
||||||
|
provides=false
|
||||||
|
opts.on("-P", "--provides", "Output the provides of the package") do |val|
|
||||||
|
provides=true
|
||||||
|
end
|
||||||
|
requires=false
|
||||||
|
opts.on("-R", "--requires", "Output the requires of the package") do |val|
|
||||||
|
requires=true
|
||||||
|
end
|
||||||
|
file_match=".*/gems/[^/]*/specifications/.*\.gemspec$"
|
||||||
|
opts.on("-m", "--file-match REGEX", String,
|
||||||
|
"Override the regex against which the input file names",
|
||||||
|
"matched with the supplied regex") do |val|
|
||||||
|
file_match=val
|
||||||
|
end
|
||||||
|
in_file=nil
|
||||||
|
opts.on("-g", "--gemspec FILE", String,
|
||||||
|
"Take gemspec from FILE, not filename in STDIN",
|
||||||
|
"Can be a .gem file or a .gemspec file") do |file|
|
||||||
|
in_file=file
|
||||||
|
end
|
||||||
|
rest = opts.permute(ARGV)
|
||||||
|
|
||||||
|
unless provides || requires
|
||||||
|
exit(0)
|
||||||
|
end
|
||||||
|
|
||||||
|
def fatal(msg)
|
||||||
|
$stderr.puts msg
|
||||||
|
exit 1
|
||||||
|
end
|
||||||
|
|
||||||
|
def register_gemspec_from_file(gemspecs, rubyabi, file)
|
||||||
|
fatal "Couldn't read '#{file}'" unless File.readable? file
|
||||||
|
|
||||||
|
case file
|
||||||
|
when /\.gem$/
|
||||||
|
gem = Gem::Format.from_file_by_path(file)
|
||||||
|
fatal "Failed to load gem from '#{file}'" unless gem
|
||||||
|
spec = gem.spec
|
||||||
|
when /\.gemspec$/
|
||||||
|
spec = Gem::Specification.load(file)
|
||||||
|
fatal "Failed to load gem spec from '#{file}'" unless spec
|
||||||
|
else
|
||||||
|
fatal "'#{file}' must be a .gem or .gemspec file"
|
||||||
|
end
|
||||||
|
|
||||||
|
gemspecs << [ rubyabi, spec ]
|
||||||
|
end
|
||||||
|
|
||||||
|
def rubyabi_from_path(path)
|
||||||
|
m = path.match(%r{.*/gems/([^/]*)/.*})
|
||||||
|
return m ? m[1] : RbConfig::CONFIG["ruby_version"]
|
||||||
|
end
|
||||||
|
|
||||||
|
gemspecs = Array.new
|
||||||
|
|
||||||
|
if in_file
|
||||||
|
# This mode will not be used during actual rpm builds, but only by
|
||||||
|
# gem packagers for debugging / diagnostics, so that they can
|
||||||
|
# predict in advance what the dependencies will look like.
|
||||||
|
rubyabi = rubyabi_from_path(in_file) || '$RUBYABI'
|
||||||
|
register_gemspec_from_file(gemspecs, rubyabi, in_file)
|
||||||
|
else
|
||||||
|
$stdin.each_line do |line|
|
||||||
|
line.chomp!
|
||||||
|
m = line.match(%r{#{file_match}$})
|
||||||
|
if m
|
||||||
|
register_gemspec_from_file(gemspecs, rubyabi_from_path(line), line)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
gemspecs.each do |rubyabi, spec|
|
||||||
|
if provides
|
||||||
|
# old forms
|
||||||
|
puts "rubygem-#{spec.name} = #{spec.version}"
|
||||||
|
versions = spec.version.to_s.split('.')
|
||||||
|
puts "rubygem-#{spec.name}-#{versions[0]} = #{spec.version}" if versions.length > 0
|
||||||
|
puts "rubygem-#{spec.name}-#{versions[0]}_#{versions[1]} = #{spec.version}" if versions.length > 1
|
||||||
|
puts "rubygem-#{spec.name}-#{versions[0]}_#{versions[1]}_#{versions[2]} = #{spec.version}" if versions.length > 2
|
||||||
|
|
||||||
|
# version without ruby version - asking for trouble
|
||||||
|
puts "rubygem(#{spec.name}) = #{spec.version}"
|
||||||
|
if rubyabi
|
||||||
|
puts "rubygem(#{rubyabi}:#{spec.name}) = #{spec.version}"
|
||||||
|
puts "rubygem(#{rubyabi}:#{spec.name}:#{versions[0]}) = #{spec.version}" if versions.length > 0
|
||||||
|
puts "rubygem(#{rubyabi}:#{spec.name}:#{versions[0]}.#{versions[1]}) = #{spec.version}" if versions.length > 1
|
||||||
|
puts "rubygem(#{rubyabi}:#{spec.name}:#{versions[0]}.#{versions[1]}.#{versions[2]}) = #{spec.version}" if versions.length > 2
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if requires
|
||||||
|
puts "ruby(abi) = #{rubyabi}" if rubyabi
|
||||||
|
puts "rubygems" if rubyabi.to_f < 1.9
|
||||||
|
spec.runtime_dependencies.each do |dep|
|
||||||
|
dep.requirement.requirements.each do |r|
|
||||||
|
if r.first == '~>'
|
||||||
|
minversion = r.last.to_s.split('.')
|
||||||
|
versions = minversion[0,minversion.length-1]
|
||||||
|
# ~> 2 is pretty nonsense, so avoid being tricked
|
||||||
|
if versions.length > 0
|
||||||
|
if minversion[minversion.length-1] == '0'
|
||||||
|
# ~> 1.2.0 is the same as >= 1.2 for rpm and it avoids problems when 1.2 is followed by 1.2.1
|
||||||
|
minversion = versions
|
||||||
|
end
|
||||||
|
puts "rubygem(#{rubyabi}:#{dep.name}:#{versions.join('.')}) >= #{minversion.join('.')}"
|
||||||
|
else
|
||||||
|
puts "rubygem(#{rubyabi}:#{dep.name}) >= #{minversion.join('.')}"
|
||||||
|
end
|
||||||
|
elsif r.first == '!='
|
||||||
|
# this is purely guessing, but we can't generate conflicts here ;(
|
||||||
|
puts "rubygem(#{rubyabi}:#{dep.name}) > #{r.last}"
|
||||||
|
#puts "rubygem(#{rubyabi}:#{dep.name}) < #{r.last}"
|
||||||
|
else
|
||||||
|
puts "rubygem(#{rubyabi}:#{dep.name}) #{r.first} #{r.last}"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in New Issue
Block a user