Hello community, here is the log from the commit of package ruby-common for openSUSE:Factory checked in at 2014-10-20 07:27:08 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ruby-common (Old) and /work/SRC/openSUSE:Factory/.ruby-common.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ruby-common" Changes: -------- --- /work/SRC/openSUSE:Factory/ruby-common/ruby-common.changes 2014-09-20 15:51:11.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.ruby-common.new/ruby-common.changes 2014-10-20 07:27:09.000000000 +0200 @@ -1,0 +2,109 @@ +Sat Oct 18 05:37:19 UTC 2014 - co...@suse.com + +- update gem_packages template from git + +------------------------------------------------------------------- +Fri Sep 26 21:53:30 UTC 2014 - mrueck...@suse.de + +- we dont always have /usr/bin/ruby, use perl for patching the + version in the bin wrapper. also replaced the sed for patching + the shebang line. +- fixed a bad bug in the shebang line. we had an additional "." + there. + +------------------------------------------------------------------- +Fri Sep 26 21:22:24 UTC 2014 - mrueck...@suse.de + +- install gemrc on all distros + +------------------------------------------------------------------- +Fri Sep 26 10:30:56 UTC 2014 - mrueck...@suse.de + +- dont delete .a files. there are actually gems where we need them + like rubygem-libv8 for rubygem-therubyracer + +------------------------------------------------------------------- +Tue Sep 23 15:31:56 UTC 2014 - mrueck...@suse.de + +- fix the case where we dont symlink the binaries. + +------------------------------------------------------------------- +Fri Sep 19 15:10:30 UTC 2014 - mrueck...@suse.de + +- gem_cleanup macro was missed when updating for old ruby versions. + +------------------------------------------------------------------- +Fri Sep 19 14:46:08 UTC 2014 - mrueck...@suse.de + +- switch from "ruby -rrubygems -e + 'print Gem::Specification.new.base_dir'" + to "gem env gemdir" + +------------------------------------------------------------------- +Fri Sep 19 10:35:57 UTC 2014 - mrueck...@suse.de + +- gem_build_cleanup: also delete static library files + +------------------------------------------------------------------- +Wed Sep 17 16:33:06 UTC 2014 - mrueck...@suse.de + +- ruby 1.8 support: + - gem_packages.sh: change to /usr/src/packages when + /home/abuild/rpmbuild doesn't exist. + - gem_packages template: + - require rbconfigpackagingsupport to fix the ruby_install_name + dependent variables. we do that for all distros but catch the + LoadError and continue. + - and dont use not(), we need to use "!" instead. + +------------------------------------------------------------------- +Wed Sep 17 16:07:09 UTC 2014 - mrueck...@suse.de + +- our sle 11 sp3 rpm does provide the support for the automatic + rubygems dependency but does not provide + rpm-with-ruby-provide-hook. guard the requires with > 1110 + +------------------------------------------------------------------- +Wed Sep 17 15:56:49 UTC 2014 - mrueck...@suse.de + +- remove the handling of spec.required_ruby_version here. this + should be handled in rubygemsdeps.rb if at all. we already guard + for this in the buildrequires and then have a requires via the + $interpreter(abi) requires onto the newer version. + +------------------------------------------------------------------- +Wed Sep 17 15:32:46 UTC 2014 - mrueck...@suse.de + +- invert the logic. only stop shipping /etc/gemrc on 12.3 and 13.1 + +------------------------------------------------------------------- +Wed Sep 17 15:02:38 UTC 2014 - mrueck...@suse.de + +- gem_packages template: + Dont allow an suffix with just a plain number. prefix it with + ruby. + +------------------------------------------------------------------- +Wed Sep 17 14:30:49 UTC 2014 - mrueck...@suse.de + +- gem_packages also need the rewrite that rewrites a number only + suffix into .ruby<numbersuffix> + +------------------------------------------------------------------- +Wed Sep 17 13:53:09 UTC 2014 - mrueck...@suse.de + +- made the matcher for older versions more strict so we dont pick + up gem2rpm. + +------------------------------------------------------------------- +Wed Sep 17 13:48:54 UTC 2014 - mrueck...@suse.de + +- also add support for older versioning in gem_packages.sh + +------------------------------------------------------------------- +Wed Sep 17 13:28:15 UTC 2014 - mrueck...@suse.de + +- added support for the versioning scheme in 13.1 and older +- dont ship gemrc on 13.1 + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ruby-common.spec ++++++ --- /var/tmp/diff_new_pack.y4FEUQ/_old 2014-10-20 07:27:09.000000000 +0200 +++ /var/tmp/diff_new_pack.y4FEUQ/_new 2014-10-20 07:27:09.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package ruby-common # -# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -21,6 +21,11 @@ Release: 0 # ruby-macros and ruby-common version %define rpm_macros_version 5 +%if 0 +%bcond_with ship_gemrc +%else +%bcond_without ship_gemrc +%endif BuildRoot: %{_tmppath}/%{name}-%{version}-build Source1: gem_build_cleanup Source2: gemrc @@ -42,7 +47,7 @@ Requires: fdupes BuildArch: noarch Provides: ruby-macros = %{rpm_macros_version} -%if 0%{?suse_version} < 1140 +%if 0%{?suse_version} < 1140 && 0%{?suse_version} > 1110 # we need a patched rpm Requires: rpm-with-ruby-provide-hook %endif @@ -57,7 +62,9 @@ %install # we need to make sure it overwrites older macro versions and rpm sorts alphabetically +%if %{with ship_gemrc} install -D -m 0644 %{S:2} %{buildroot}/etc/gemrc +%endif install -D -m 0644 %{S:8} %{buildroot}/etc/rpm/macros.ruby-common install -D -m 0644 %{S:9} %{buildroot}/etc/rpm/macros.suse-ruby install -D -m 0644 %{S:4} %{buildroot}/usr/lib/rpm/fileattrs/rubygems.attr @@ -70,7 +77,9 @@ %files %defattr(-,root,root) +%if %{with ship_gemrc} %config /etc/gemrc +%endif %config /etc/rpm/macros.* %dir /usr/lib/rpm/fileattrs /usr/lib/rpm/fileattrs/rubygems.attr ++++++ gem_install.sh ++++++ --- /var/tmp/diff_new_pack.y4FEUQ/_old 2014-10-20 07:27:09.000000000 +0200 +++ /var/tmp/diff_new_pack.y4FEUQ/_new 2014-10-20 07:27:09.000000000 +0200 @@ -1,9 +1,10 @@ #! /bin/bash set -e +shopt -s nullglob # 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,symlink-binaries,default-gem:,build-root:,doc-files:,gem-name:,gem-version:,gem-suffix: -- "$@") +if ! options=$(getopt -o dEf -l ignore-dependencies,force,no-rdoc,rdoc,no-ri,ri,env-shebang,no-env-shebang,symlink-binaries,default-gem:,build-root:,doc-files:,gem-name:,gem-version:,gem-suffix:,gem-binary: -- "$@") then # something went wrong, getopt will put out an error message for us exit 1 @@ -11,7 +12,7 @@ eval set -- "$options" -gem_binary="/usr/bin/gem.*" +gem_binary="/usr/bin/gem.* /usr/bin/gem[0-9].[0-9]" defaultgem= gemfile= otheropts= @@ -29,7 +30,7 @@ do case $1 in --default-gem) defaultgem=$2 ; shift;; - --gem-binary) gem_binary="$2" ; shift;; + --gem-binary) echo "Ignored --gem-binary option" >&2 ; shift;; --doc-files) docfiles="$2" ; shift;; --gem-name) gemname="$2" ; shift;; --gem-version) gemversion="$2" ; shift;; @@ -59,15 +60,23 @@ for gem in $gem_binary ; do $gem install --verbose --local $otheropts # get the ruby interpreter - ruby="${gem#/usr/bin/gem.}" - rpmname="${ruby}-rubygem-${gemname}${gemsuffix:+$gemsuffix}" + ruby="${gem#/usr/bin/gem}" + if [[ $ruby == [0-9]* ]] ; then + destruby=".ruby$ruby" + else + destruby="$ruby" + fi + rpmname="${destruby#.}-rubygem-${gemname}${gemsuffix:+$gemsuffix}" if test -d $RPM_BUILD_ROOT/usr/bin; then pushd $RPM_BUILD_ROOT/usr/bin if [ "x$symlinkbinaries" = "xtrue" ] ; then for i in *$ruby ; do - unversioned="${i%.$ruby}" - mv -v ${i} ${i}-${gemversion} - ruby -p -i -e "\$_.gsub!(/>= 0/, '= $gemversion')" ${i}-${gemversion} + unversioned="${i%$ruby}" + fullyversioned="$unversioned$destruby-${gemversion}" + rubyversioned="$unversioned$destruby" + gemversioned="$unversioned-$gemversion" + mv -v ${i} $fullyversioned + perl -p -i -e "s/>= 0/= $gemversion/" $fullyversioned if [ ! -L ${RPM_BUILD_ROOT}${ua_dir}/${unversioned} ] ; then ln -sv ${unversioned} ${RPM_BUILD_ROOT}${ua_dir}/${unversioned} fi @@ -77,24 +86,24 @@ fi # ruby versioned - if [ ! -L ${RPM_BUILD_ROOT}${ua_dir}/${i} ] ; then - ln -sv ${i} ${RPM_BUILD_ROOT}${ua_dir}/$i + if [ ! -L ${RPM_BUILD_ROOT}${ua_dir}/$rubyversioned ] ; then + ln -sv ${rubyversioned} ${RPM_BUILD_ROOT}${ua_dir}/$rubyversioned fi - if [ ! -L $i ] ; then - ln -sv ${ua_dir}/${i} $i + if [ ! -L $rubyversioned ] ; then + ln -sv ${ua_dir}/${rubyversioned} $rubyversioned fi # gem versioned - if [ ! -L ${RPM_BUILD_ROOT}${ua_dir}/$unversioned-$gemversion ] ; then - ln -sv ${unversioned}-$gemversion ${RPM_BUILD_ROOT}${ua_dir}/$unversioned-$gemversion + if [ ! -L ${RPM_BUILD_ROOT}${ua_dir}/$gemversioned ] ; then + ln -sv $gemversioned ${RPM_BUILD_ROOT}${ua_dir}/$gemversioned fi - if [ ! -L $unversioned-$gemversion ] ; then - ln -sv ${ua_dir}/${unversioned}-$gemversion $unversioned-$gemversion + if [ ! -L $gemversioned ] ; then + ln -sv ${ua_dir}/$gemversioned $gemversioned fi done ; else for i in *$ruby ; do # lets undo the format-executable to avoid breaking more spec files - unversioned="${i%.$ruby}" + unversioned="${i%$ruby}" mv -v $i $unversioned done fi @@ -110,7 +119,7 @@ if [ -d "$buildroot" ]; then find ${buildroot}${gemdir} -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\S\+,#!/usr/bin/ruby.$ruby," "$file" + perl -p -i -e "s,^#!/usr/bin/env ruby,#!/usr/bin/ruby,; s,^#! *[^ ]*/ruby\S\+,#!/usr/bin/ruby$ruby," "$file" done # some windows made gems are broken find $buildroot -ls ++++++ gem_packages.sh ++++++ --- /var/tmp/diff_new_pack.y4FEUQ/_old 2014-10-20 07:27:09.000000000 +0200 +++ /var/tmp/diff_new_pack.y4FEUQ/_new 2014-10-20 07:27:09.000000000 +0200 @@ -1,4 +1,10 @@ #!/bin/bash +# we always start in /home/abuild but in older distros we wouldnt find the sources that way. +# switch to /usr/src/packages/ +if [ ! -d $PWD/rpmbuild ] ; then + cd /usr/src/packages/ +fi +shopt -s nullglob # options may be followed by one colon to indicate they have a required argument if ! options=$(getopt -o dEf -l default-gem:,build-root:,gem-name:,gem-version:,gem2rpm-config: -- "$@") then @@ -50,7 +56,11 @@ export LC_ALL="en_US.UTF-8" export LANG="en_US.UTF-8" set -x -for ruby in /usr/bin/ruby.* ; do - gemrpm="/usr/bin/gem2rpm${ruby#/usr/bin/ruby}" +for ruby in /usr/bin/ruby.* /usr/bin/ruby[0-9].[0-9] ; do + ruby="${ruby#/usr/bin/ruby}" + if [[ $ruby == [0-9]* ]] ; then + ruby=".ruby$ruby" + fi + gemrpm="/usr/bin/gem2rpm${ruby}" $gemrpm $otheropts done ++++++ opensuse.spec.erb ++++++ --- /var/tmp/diff_new_pack.y4FEUQ/_old 2014-10-20 07:27:09.000000000 +0200 +++ /var/tmp/diff_new_pack.y4FEUQ/_new 2014-10-20 07:27:09.000000000 +0200 @@ -49,6 +49,9 @@ rb_suffix = RbConfig::CONFIG['ruby_install_name'].gsub(/^ruby/, '') rb_pkgname = RbConfig::CONFIG['ruby_install_name'].gsub(/^ruby\./, '') + if rb_suffix =~ /\A\d+\.\d+\z/ + rb_suffix = '.ruby' + rb_suffix + end pkg_basename = rb_pkgname + '-rubygem-' + spec.name mod_full_name = "#{spec.name}-#{spec.version}" @@ -170,9 +173,9 @@ <% end -%> <% spec.executables.each do |executable| -%> <%= rb_bindir %>/<%= "#{executable}#{rb_suffix}-#{spec.version}" %> -%ghost <%= rb_bindir %>/<%= "#{executable}#{rb_suffix}" %> -%ghost <%= rb_bindir %>/<%= "#{executable}-#{spec.version}" %> -%ghost <%= rb_bindir %>/<%= executable %> +<%= rb_bindir %>/<%= "#{executable}#{rb_suffix}" %> +<%= rb_bindir %>/<%= "#{executable}-#{spec.version}" %> +<%= rb_bindir %>/<%= executable %> %ghost <%= rb_sysconfdir %>/alternatives/<%= executable %> %ghost <%= rb_sysconfdir %>/alternatives/<%= "#{executable}#{rb_suffix}" %> %ghost <%= rb_sysconfdir %>/alternatives/<%= "#{executable}-#{spec.version}" %> ++++++ ruby.rpm-macros ++++++ --- /var/tmp/diff_new_pack.y4FEUQ/_old 2014-10-20 07:27:09.000000000 +0200 +++ /var/tmp/diff_new_pack.y4FEUQ/_new 2014-10-20 07:27:09.000000000 +0200 @@ -65,8 +65,10 @@ # we need to copy parts of the %fdupes macro as rpm can't expand parameters in macro "calls" ;( %gem_cleanup() \ -for ruby in /usr/bin/ruby.* ; do \ - gem_base="$($ruby -rrubygems -e 'print Gem::Specification.new.base_dir' )" \ +shopt -s nullglob \ +for ruby in /usr/bin/ruby.* /usr/bin/ruby[0-9].[0-9] ; do \ + rb_suffix="${ruby#/usr/bin/ruby}" \ + gem_base="$(/usr/bin/gem$rb_suffix env gemdir)" \ /usr/lib/rpm/gem_build_cleanup.sh %{buildroot}${gem_base} \ fdupes -q -p -n -r %{buildroot}${gem_base} | \ while read _file; do \ -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org