##
##  ruby-spec.spec -- OpenPKG RPM Package Specification
##  Copyright (c) 2000-2025 OpenPKG Project <http://openpkg.org/>
##
##  Permission to use, copy, modify, and distribute this software for
##  any purpose with or without fee is hereby granted, provided that
##  the above copyright notice and this permission notice appear in all
##  copies.
##
##  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
##  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
##  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
##  IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
##  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
##  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
##  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
##  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
##  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
##  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
##  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
##  SUCH DAMAGE.
##

#   package version
%define       V_rspec              3.12.0
%define       V_rspec_core         3.12.0
%define       V_rspec_expectations 3.12.0
%define       V_rspec_mocks        3.12.0
%define       V_rspec_support      3.12.0
%define       V_diff_lcs           1.6.2

#   package information
Name:         ruby-spec
Summary:      Ruby Packages for Test Specification
URL:          http://www.ruby.org/
Vendor:       Ruby Community
Packager:     OpenPKG Project
Distribution: OpenPKG Community
Class:        EVAL
Group:        Language
License:      GPL
Version:      0
Release:      20250512

#   list of sources
Source0:      http://rubygems.org/downloads/rspec-%{V_rspec}.gem
Source1:      http://rubygems.org/downloads/rspec-core-%{V_rspec_core}.gem
Source2:      http://rubygems.org/downloads/rspec-expectations-%{V_rspec_expectations}.gem
Source3:      http://rubygems.org/downloads/rspec-mocks-%{V_rspec_mocks}.gem
Source4:      http://rubygems.org/downloads/rspec-support-%{V_rspec_support}.gem
Source5:      http://rubygems.org/downloads/diff-lcs-%{V_diff_lcs}.gem

#   build information
BuildPreReq:  OpenPKG, openpkg >= 20160101, ruby
PreReq:       OpenPKG, openpkg >= 20160101, ruby

%description
    These are Ruby extensions for test specifications.

%track
    prog ruby-spec:rspec = {
        version   = %{V_rspec}
        url       = http://rubygems.org/gems/rspec
        regex     = rspec-(__VER__)\.gem
    }
    prog ruby-spec:diff-lcs = {
        version   = %{V_diff_lcs}
        url       = http://rubygems.org/gems/diff-lcs
        regex     = diff-lcs-(__VER__)\.gem
    }

%prep
    %setup -q -T -c

%build

%install
    RUBY_VERSION=`%{l_prefix}/bin/gem which rubygems | sed -e 's;.*/\([^/]*\)/rubygems\.rb$;\1;'`
    export GEM_HOME=$RPM_BUILD_ROOT%{l_prefix}/lib/ruby/gems/$RUBY_VERSION
    %{l_shtool} mkdir -f -p -m 755 $GEM_HOME
    %{l_prefix}/bin/gem install --local %{SOURCE diff-lcs-%{V_diff_lcs}.gem}
    %{l_prefix}/bin/gem install --local %{SOURCE rspec-support-%{V_rspec_support}.gem}
    %{l_prefix}/bin/gem install --local %{SOURCE rspec-mocks-%{V_rspec_mocks}.gem}
    %{l_prefix}/bin/gem install --local %{SOURCE rspec-expectations-%{V_rspec_expectations}.gem}
    %{l_prefix}/bin/gem install --local %{SOURCE rspec-core-%{V_rspec_core}.gem}
    %{l_prefix}/bin/gem install --local %{SOURCE rspec-%{V_rspec}.gem}
    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}

%files -f files

%clean

