You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
843 lines
31 KiB
843 lines
31 KiB
--- ruby.spec 2024-09-19 12:10:18.000000000 +0300
|
|
+++ alt-brepo-ruby33.spec 2024-10-23 22:15:18.460992219 +0300
|
|
@@ -1,3 +1,14 @@
|
|
+%define __brp_check_rpaths %{nil}
|
|
+%define __arch_install_post %{nil}
|
|
+%if 0%{?rhel} == 8
|
|
+%global __os_install_post /usr/lib/rpm/redhat/brp-mangle-shebangs %{nil}
|
|
+%endif
|
|
+%global srcname ruby
|
|
+%global _prefix /opt/brepo/ruby33
|
|
+%global _libdir %{_prefix}/%{_lib}
|
|
+%global _includedir %{_prefix}/include
|
|
+%global _mandir %{_prefix}/share/man
|
|
+
|
|
%global major_version 3
|
|
%global minor_version 3
|
|
%global teeny_version 5
|
|
@@ -12,7 +23,7 @@
|
|
# Keep the revision enabled for pre-releases from GIT.
|
|
#%%global revision ef084cc8f4
|
|
|
|
-%global ruby_archive %{name}-%{ruby_version}
|
|
+%global ruby_archive ruby-%{ruby_version}
|
|
|
|
# If revision and milestone are removed/commented out, the official release build is expected.
|
|
%if 0%{?milestone:1}%{?revision:1} != 0
|
|
@@ -164,10 +175,12 @@
|
|
%bcond_without hardening_test
|
|
%endif
|
|
|
|
+%undefine _package_note_flags
|
|
+
|
|
Summary: An interpreter of object-oriented scripting language
|
|
-Name: ruby
|
|
+Name: alt-brepo-ruby33
|
|
Version: %{ruby_version}%{?development_release}
|
|
-Release: 3%{?dist}
|
|
+Release: 3%{?dist}.brepo.1
|
|
# Licenses, which are likely not included in binary RPMs:
|
|
# Apache-2.0:
|
|
# benchmark/gc/redblack.rb
|
|
@@ -287,8 +300,8 @@ Patch14: rubygems-3.5.17-Remove-the-lock
|
|
|
|
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
|
%{?with_rubypick:Suggests: rubypick}
|
|
-Recommends: ruby(rubygems) >= %{rubygems_version}
|
|
-Recommends: rubygem(bigdecimal) >= %{bigdecimal_version}
|
|
+Recommends: %{name}-ruby(rubygems) >= %{rubygems_version}
|
|
+Recommends: %{name}-rubygem(bigdecimal) >= %{bigdecimal_version}
|
|
|
|
BuildRequires: rpm-local-generator-support
|
|
# Build dependencies
|
|
@@ -300,9 +313,9 @@ BuildRequires: libyaml-devel
|
|
BuildRequires: openssl-devel
|
|
BuildRequires: zlib-devel
|
|
%{?with_gmp:BuildRequires: gmp-devel}
|
|
-%{?with_systemtap:BuildRequires: %{_bindir}/dtrace}
|
|
%{?with_systemtap:BuildRequires: systemtap-sdt-devel}
|
|
-%{?with_yjit:BuildRequires: %{_bindir}/rustc}
|
|
+%{?with_yjit:BuildRequires: rustc}
|
|
+BuildRequires: chrpath
|
|
|
|
# Install section
|
|
BuildRequires: multilib-rpm-config
|
|
@@ -315,12 +328,12 @@ BuildRequires: multilib-rpm-config
|
|
# Needed to pass test_set_program_name(TestRubyOptions)
|
|
BuildRequires: procps
|
|
# Neede by `Socket.gethostname returns the host name ERROR`
|
|
-%{?with_hostname:BuildRequires: %{_bindir}/hostname}
|
|
+%{?with_hostname:BuildRequires: hostname}
|
|
|
|
# RubyGems test suite optional dependencies.
|
|
%{?with_git:BuildRequires: git}
|
|
# `cmake` is required for test/rubygems/test_gem_ext_cmake_builder.rb.
|
|
-%{?with_cmake:BuildRequires: %{_bindir}/cmake}
|
|
+%{?with_cmake:BuildRequires: cmake}
|
|
|
|
# The bundler/spec/runtime/setup_spec.rb requires the command `man`.
|
|
%{?with_bundler_tests:BuildRequires: %{_bindir}/man}
|
|
@@ -328,7 +341,7 @@ BuildRequires: procps
|
|
|
|
# This package provides %%{_bindir}/ruby-mri therefore it is marked by this
|
|
# virtual provide. It can be installed as dependency of rubypick.
|
|
-Provides: ruby(runtime_executable) = %{ruby_release}
|
|
+Provides: %{name}-ruby(runtime_executable) = %{ruby_release}
|
|
|
|
%description
|
|
Ruby is the interpreted scripting language for quick and easy
|
|
@@ -342,7 +355,7 @@ Summary: A Ruby development environme
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
# This would not be needed if ~50 packages depending on -devel used
|
|
# --disable-gems
|
|
-Requires: rubygems
|
|
+Requires: %{name}-rubygems
|
|
# Users need CFLAGS from /usr/lib/rpm/redhat/redhat-hardened-cc1
|
|
# for building gems with binary extensions (rhbz#1905222).
|
|
Recommends: redhat-rpm-config
|
|
@@ -353,24 +366,25 @@ Ruby or an application embedding Ruby.
|
|
|
|
%package libs
|
|
Summary: Libraries necessary to run Ruby
|
|
-Provides: ruby(release) = %{ruby_release}
|
|
+Provides: %{name}(release) = %{ruby_release}
|
|
|
|
# Virtual provides for CCAN copylibs.
|
|
# https://fedorahosted.org/fpc/ticket/364
|
|
-Provides: bundled(ccan-build_assert)
|
|
-Provides: bundled(ccan-check_type)
|
|
-Provides: bundled(ccan-container_of)
|
|
-Provides: bundled(ccan-list)
|
|
+Provides: %{name}-bundled(ccan-build_assert)
|
|
+Provides: %{name}-bundled(ccan-check_type)
|
|
+Provides: %{name}-bundled(ccan-container_of)
|
|
+Provides: %{name}-bundled(ccan-list)
|
|
|
|
# https://github.com/nurse/nkf
|
|
# Please note that nkf going to be promoted to bundled gem in Ruby 3.4:
|
|
# https://github.com/ruby/ruby/commit/2e3a7f70ae71650be6ea38a483f66ce17ca5eb1d
|
|
-Provides: bundled(nkf) = %{bundled_nkf_version}
|
|
+Provides: %{name}-bundled(nkf) = %{bundled_nkf_version}
|
|
|
|
# StdLib default gems.
|
|
-Provides: bundled(rubygem-did_you_mean) = %{did_you_mean_version}
|
|
-Provides: bundled(rubygem-openssl) = %{openssl_version}
|
|
-
|
|
+Provides: %{name}-bundled(rubygem-did_you_mean) = %{did_you_mean_version}
|
|
+Provides: %{name}-bundled(rubygem-openssl) = %{openssl_version}
|
|
+Requires(post): /sbin/ldconfig
|
|
+Requires(postun): /sbin/ldconfig
|
|
|
|
|
|
%description libs
|
|
@@ -378,7 +392,7 @@ This package includes the libruby, neces
|
|
|
|
|
|
# TODO: Rename or not rename to ruby-rubygems?
|
|
-%package -n rubygems
|
|
+%package rubygems
|
|
Summary: The Ruby standard for packaging ruby libraries
|
|
Version: %{rubygems_version}
|
|
# BSD-2-Clause OR Ruby:
|
|
@@ -391,41 +405,41 @@ Version: %{rubygems_version}
|
|
# MIT: lib/rubygems/resolver/molinillo
|
|
# Ruby OR BSD-2-Clause OR GPL-1.0-or-later: lib/net/protocol.rb
|
|
License: (Ruby OR MIT) AND BSD-2-Clause AND (BSD-2-Clause OR Ruby) AND (Ruby OR BSD-2-Clause OR GPL-1.0-or-later) AND MIT
|
|
-Requires: ruby(release)
|
|
-Recommends: rubygem(bundler) >= %{bundler_version}
|
|
-Recommends: rubygem(rdoc) >= %{rdoc_version}
|
|
-Recommends: rubygem(io-console)
|
|
-Requires: rubygem(psych) >= %{psych_version}
|
|
-Provides: gem = %{version}-%{release}
|
|
-Provides: ruby(rubygems) = %{version}-%{release}
|
|
-Provides: bundled(rubygems) = %{rubygems_version}
|
|
+Requires: %{name}(release)
|
|
+Recommends: %{name}-rubygem(bundler) >= %{bundler_version}
|
|
+Recommends: %{name}-rubygem(rdoc) >= %{rdoc_version}
|
|
+Recommends: %{name}-rubygem(io-console)
|
|
+Requires: %{name}-rubygem(psych) >= %{psych_version}
|
|
+Provides: %{name}-gem = %{version}-%{release}
|
|
+Provides: %{name}-ruby(rubygems) = %{version}-%{release}
|
|
+Provides: %{name}-bundled(rubygems) = %{rubygems_version}
|
|
# https://github.com/rubygems/rubygems/pull/1189#issuecomment-121600910
|
|
-Provides: bundled(rubygem-molinillo) = %{rubygems_molinillo_version}
|
|
-Provides: bundled(rubygem-net-http) = %{rubygems_net_http_version}
|
|
-Provides: bundled(rubygem-net-protocol) = %{rubygems_net_protocol_version}
|
|
-Provides: bundled(rubygem-optparse) = %{rubygems_optparse_version}
|
|
-Provides: bundled(rubygem-resolv) = %{rubygems_resolv_version}
|
|
-Provides: bundled(rubygem-timeout) = %{rubygems_timeout_version}
|
|
-Provides: bundled(rubygem-tsort) = %{rubygems_tsort_version}
|
|
+Provides: %{name}-bundled(rubygem-molinillo) = %{rubygems_molinillo_version}
|
|
+Provides: %{name}-bundled(rubygem-net-http) = %{rubygems_net_http_version}
|
|
+Provides: %{name}-bundled(rubygem-net-protocol) = %{rubygems_net_protocol_version}
|
|
+Provides: %{name}-bundled(rubygem-optparse) = %{rubygems_optparse_version}
|
|
+Provides: %{name}-bundled(rubygem-resolv) = %{rubygems_resolv_version}
|
|
+Provides: %{name}-bundled(rubygem-timeout) = %{rubygems_timeout_version}
|
|
+Provides: %{name}-bundled(rubygem-tsort) = %{rubygems_tsort_version}
|
|
|
|
BuildArch: noarch
|
|
|
|
-%description -n rubygems
|
|
+%description rubygems
|
|
RubyGems is the Ruby standard for publishing and managing third party
|
|
libraries.
|
|
|
|
|
|
-%package -n rubygems-devel
|
|
+%package rubygems-devel
|
|
Summary: Macros and development tools for packaging RubyGems
|
|
Version: %{rubygems_version}
|
|
License: MIT
|
|
-Requires: ruby(rubygems) >= %{version}-%{release}
|
|
+Requires: %{name}-ruby(rubygems) >= %{version}-%{release}
|
|
# Needed for RDoc documentation format generation.
|
|
-Requires: rubygem(json) >= %{json_version}
|
|
-Requires: rubygem(rdoc) >= %{rdoc_version}
|
|
+Requires: %{name}-rubygem(json) >= %{json_version}
|
|
+Requires: %{name}-rubygem(rdoc) >= %{rdoc_version}
|
|
BuildArch: noarch
|
|
|
|
-%description -n rubygems-devel
|
|
+%description rubygems-devel
|
|
Macros and development tools for packaging RubyGems.
|
|
|
|
|
|
@@ -436,11 +450,11 @@ Macros and development tools for packagi
|
|
|
|
%package default-gems
|
|
Summary: Default gems which are part of Ruby StdLib
|
|
-Supplements: ruby(rubygems)
|
|
+Supplements: %{name}-ruby(rubygems)
|
|
# Obsoleted by Ruby 2.7 in F32 timeframe.
|
|
-Obsoletes: rubygem-did_you_mean < 1.4.0-130
|
|
+Obsoletes: %{name}-rubygem-did_you_mean < 1.4.0-130
|
|
# Obsoleted by Ruby 3.0 in F34 timeframe.
|
|
-Obsoletes: rubygem-openssl < 2.2.0-145
|
|
+Obsoletes: %{name}-rubygem-openssl < 2.2.0-145
|
|
BuildArch: noarch
|
|
|
|
%description default-gems
|
|
@@ -448,24 +462,24 @@ The .gemspec files and executables of de
|
|
StdLib.
|
|
|
|
|
|
-%package -n rubygem-irb
|
|
+%package rubygem-irb
|
|
Summary: The Interactive Ruby
|
|
Version: %{irb_version}
|
|
License: Ruby OR BSD-2-Clause
|
|
-Provides: irb = %{version}-%{release}
|
|
+Provides: %{name}-irb = %{version}-%{release}
|
|
Provides: bundled(rubygem-irb) = %{irb_version}
|
|
# Obsoleted by Ruby 2.6 in F30 timeframe.
|
|
-Provides: ruby(irb) = %{ruby_version}%{?development_release}-%{release}
|
|
-Provides: ruby-irb = %{ruby_version}%{?development_release}-%{release}
|
|
-Obsoletes: ruby-irb < %{ruby_version}%{?development_release}-%{release}
|
|
+Provides: %{name}(irb) = %{ruby_version}%{?development_release}-%{release}
|
|
+Provides: %{name}-irb = %{ruby_version}%{?development_release}-%{release}
|
|
+Obsoletes: %{name}-irb < %{ruby_version}%{?development_release}-%{release}
|
|
BuildArch: noarch
|
|
|
|
-%description -n rubygem-irb
|
|
+%description rubygem-irb
|
|
The irb is acronym for Interactive Ruby. It evaluates ruby expression
|
|
from the terminal.
|
|
|
|
|
|
-%package -n rubygem-rdoc
|
|
+%package rubygem-rdoc
|
|
Summary: A tool to generate HTML and command-line documentation for Ruby projects
|
|
Version: %{rdoc_version}
|
|
# BSD-3-Clause: lib/rdoc/generator/darkfish.rb
|
|
@@ -476,14 +490,14 @@ Version: %{rdoc_version}
|
|
# Luckily, this should have no license impact:
|
|
# https://github.com/ruby/racc/blob/5eb07b28bfb3e193a1cac07798fe7be7e1e246c4/lib/racc/parser.rb#L8-L10
|
|
License: GPL-2.0-only AND Ruby AND BSD-3-Clause AND CC-BY-2.5 AND OFL-1.1-RFN
|
|
-Requires: rubygem(io-console)
|
|
-Requires: rubygem(json) >= %{json_version}
|
|
-Provides: rdoc = %{version}-%{release}
|
|
-Provides: ri = %{version}-%{release}
|
|
-Provides: bundled(rubygem-rdoc) = %{rdoc_version}
|
|
+Requires: %{name}-rubygem(io-console)
|
|
+Requires: %{name}-rubygem(json) >= %{json_version}
|
|
+Provides: %{name}-rdoc = %{version}-%{release}
|
|
+Provides: %{name}-ri = %{version}-%{release}
|
|
+Provides: %{name}-bundled(rubygem-rdoc) = %{rdoc_version}
|
|
BuildArch: noarch
|
|
|
|
-%description -n rubygem-rdoc
|
|
+%description rubygem-rdoc
|
|
RDoc produces HTML and command-line documentation for Ruby projects. RDoc
|
|
includes the 'rdoc' and 'ri' tools for generating and displaying online
|
|
documentation.
|
|
@@ -498,14 +512,14 @@ BuildArch: noarch
|
|
This package contains documentation for %{name}.
|
|
|
|
|
|
-%package -n rubygem-bigdecimal
|
|
+%package rubygem-bigdecimal
|
|
Summary: BigDecimal provides arbitrary-precision floating point decimal arithmetic
|
|
Version: %{bigdecimal_version}
|
|
# dtoa: missing/dtoa.c
|
|
License: (Ruby OR BSD-2-Clause) AND dtoa
|
|
-Provides: bundled(rubygem-bigdecimal) = %{bigdecimal_version}
|
|
+Provides: %{name}-bundled(rubygem-bigdecimal) = %{bigdecimal_version}
|
|
|
|
-%description -n rubygem-bigdecimal
|
|
+%description rubygem-bigdecimal
|
|
Ruby provides built-in support for arbitrary precision integer arithmetic.
|
|
For example:
|
|
|
|
@@ -518,45 +532,45 @@ floating point arithmetic often introduc
|
|
conversion between base 10 and base 2.
|
|
|
|
|
|
-%package -n rubygem-io-console
|
|
+%package rubygem-io-console
|
|
Summary: IO/Console is a simple console utilizing library
|
|
Version: %{io_console_version}
|
|
License: Ruby OR BSD-2-Clause
|
|
-Provides: bundled(rubygem-io-console) = %{io_console_version}
|
|
+Provides: %{name}-bundled(rubygem-io-console) = %{io_console_version}
|
|
|
|
-%description -n rubygem-io-console
|
|
+%description rubygem-io-console
|
|
IO/Console provides very simple and portable access to console. It doesn't
|
|
provide higher layer features, such like curses and readline.
|
|
|
|
|
|
-%package -n rubygem-json
|
|
+%package rubygem-json
|
|
Summary: This is a JSON implementation as a Ruby extension in C
|
|
Version: %{json_version}
|
|
# Unicode-DFS-2015: ext/json/ext/generator/generator.c
|
|
License: (Ruby OR BSD-2-Clause) AND Unicode-DFS-2015
|
|
-Provides: bundled(rubygem-json) = %{json_version}
|
|
+Provides: %{name}-bundled(rubygem-json) = %{json_version}
|
|
|
|
-%description -n rubygem-json
|
|
+%description rubygem-json
|
|
This is a implementation of the JSON specification according to RFC 4627.
|
|
You can think of it as a low fat alternative to XML, if you want to store
|
|
data to disk or transmit it over a network rather than use a verbose
|
|
markup language.
|
|
|
|
|
|
-%package -n rubygem-psych
|
|
+%package rubygem-psych
|
|
Summary: A libyaml wrapper for Ruby
|
|
Version: %{psych_version}
|
|
License: MIT
|
|
-Provides: bundled(rubygem-psych) = %{psych_version}
|
|
+Provides: %{name}-bundled(rubygem-psych) = %{psych_version}
|
|
|
|
-%description -n rubygem-psych
|
|
+%description rubygem-psych
|
|
Psych is a YAML parser and emitter. Psych leverages
|
|
libyaml[http://pyyaml.org/wiki/LibYAML] for its YAML parsing and emitting
|
|
capabilities. In addition to wrapping libyaml, Psych also knows how to
|
|
serialize and de-serialize most Ruby objects to and from the YAML format.
|
|
|
|
|
|
-%package -n rubygem-bundler
|
|
+%package rubygem-bundler
|
|
Summary: Library and utilities to manage a Ruby application's gem dependencies
|
|
Version: %{bundler_version}
|
|
# BSD-2-Clause OR Ruby:
|
|
@@ -570,18 +584,18 @@ Version: %{bundler_version}
|
|
# lib/bundler/vendor/thor
|
|
# lib/rubygems/resolver/molinillo
|
|
License: MIT AND (Ruby OR BSD-2-Clause)
|
|
-Requires: rubygem(io-console)
|
|
-Provides: bundled(rubygem-bundler) = %{bundler_version}
|
|
+Requires: %{name}-rubygem(io-console)
|
|
+Provides: %{name}-bundled(rubygem-bundler) = %{bundler_version}
|
|
# https://github.com/bundler/bundler/issues/3647
|
|
-Provides: bundled(rubygem-connection_pool) = %{bundler_connection_pool_version}
|
|
-Provides: bundled(rubygem-fileutils) = %{bundler_fileutils_version}
|
|
-Provides: bundled(rubygem-net-http-persistent) = %{bundler_net_http_persistent_version}
|
|
-Provides: bundled(rubygem-pub_grub) = %{bundler_pub_grub_version}
|
|
-Provides: bundled(rubygem-thor) = %{bundler_thor_version}
|
|
-Provides: bundled(rubygem-uri) = %{bundler_uri_version}
|
|
+Provides: %{name}-bundled(rubygem-connection_pool) = %{bundler_connection_pool_version}
|
|
+Provides: %{name}-bundled(rubygem-fileutils) = %{bundler_fileutils_version}
|
|
+Provides: %{name}-bundled(rubygem-net-http-persistent) = %{bundler_net_http_persistent_version}
|
|
+Provides: %{name}-bundled(rubygem-pub_grub) = %{bundler_pub_grub_version}
|
|
+Provides: %{name}-bundled(rubygem-thor) = %{bundler_thor_version}
|
|
+Provides: %{name}-bundled(rubygem-uri) = %{bundler_uri_version}
|
|
BuildArch: noarch
|
|
|
|
-%description -n rubygem-bundler
|
|
+%description rubygem-bundler
|
|
Bundler manages an application's dependencies through its entire life, across
|
|
many machines, systematically and repeatably.
|
|
|
|
@@ -593,27 +607,27 @@ many machines, systematically and repeat
|
|
|
|
%package bundled-gems
|
|
Summary: Bundled gems which are part of Ruby StdLib
|
|
-Provides: bundled(rubygem-debug) = %{debug_version}
|
|
-Provides: bundled(rubygem-matrix) = %{matrix_version}
|
|
-Provides: bundled(rubygem-net-ftp) = %{net_ftp_version}
|
|
-Provides: bundled(rubygem-net-imap) = %{net_imap_version}
|
|
-Provides: bundled(rubygem-net-pop) = %{net_pop_version}
|
|
-Provides: bundled(rubygem-net-smtp) = %{net_smtp_version}
|
|
-Provides: bundled(rubygem-prime) = %{prime_version}
|
|
+Provides: %{name}-bundled(rubygem-debug) = %{debug_version}
|
|
+Provides: %{name}-bundled(rubygem-matrix) = %{matrix_version}
|
|
+Provides: %{name}-bundled(rubygem-net-ftp) = %{net_ftp_version}
|
|
+Provides: %{name}-bundled(rubygem-net-imap) = %{net_imap_version}
|
|
+Provides: %{name}-bundled(rubygem-net-pop) = %{net_pop_version}
|
|
+Provides: %{name}-bundled(rubygem-net-smtp) = %{net_smtp_version}
|
|
+Provides: %{name}-bundled(rubygem-prime) = %{prime_version}
|
|
|
|
%description bundled-gems
|
|
Bundled gems which are part of Ruby StdLib. While being part of Ruby, these
|
|
needs to be listed in Gemfile to be used by Bundler.
|
|
|
|
|
|
-%package -n rubygem-minitest
|
|
+%package rubygem-minitest
|
|
Summary: Minitest provides a complete suite of testing facilities
|
|
Version: %{minitest_version}
|
|
License: MIT
|
|
-Provides: bundled(rubygem-minitest) = %{minitest_version}
|
|
+Provides: %{name}-bundled(rubygem-minitest) = %{minitest_version}
|
|
BuildArch: noarch
|
|
|
|
-%description -n rubygem-minitest
|
|
+%description rubygem-minitest
|
|
minitest/unit is a small and incredibly fast unit testing framework.
|
|
|
|
minitest/spec is a functionally complete spec engine.
|
|
@@ -628,79 +642,79 @@ minitest/pride shows pride in testing an
|
|
output.
|
|
|
|
|
|
-%package -n rubygem-power_assert
|
|
+%package rubygem-power_assert
|
|
Summary: Power Assert for Ruby
|
|
Version: %{power_assert_version}
|
|
License: Ruby OR BSD-2-Clause
|
|
-Provides: bundled(rubygem-power_assert) = %{power_assert_version}
|
|
+Provides: %{name}-bundled(rubygem-power_assert) = %{power_assert_version}
|
|
BuildArch: noarch
|
|
|
|
-%description -n rubygem-power_assert
|
|
+%description rubygem-power_assert
|
|
Power Assert shows each value of variables and method calls in the expression.
|
|
It is useful for testing, providing which value wasn't correct when the
|
|
condition is not satisfied.
|
|
|
|
|
|
-%package -n rubygem-rake
|
|
+%package rubygem-rake
|
|
Summary: Ruby based make-like utility
|
|
Version: %{rake_version}
|
|
License: MIT
|
|
-Provides: rake = %{version}-%{release}
|
|
-Provides: bundled(rubygem-rake) = %{rake_version}
|
|
+Provides: %{name}-rake = %{version}-%{release}
|
|
+Provides: %{name}-bundled(rubygem-rake) = %{rake_version}
|
|
BuildArch: noarch
|
|
|
|
-%description -n rubygem-rake
|
|
+%description rubygem-rake
|
|
Rake is a Make-like program implemented in Ruby. Tasks and dependencies are
|
|
specified in standard Ruby syntax.
|
|
|
|
|
|
-%package -n rubygem-rbs
|
|
+%package rubygem-rbs
|
|
Summary: Type signature for Ruby
|
|
Version: %{rbs_version}
|
|
License: Ruby OR BSD-2-Clause
|
|
-Provides: bundled(rubygem-rbs) = %{rbs_version}
|
|
+Provides: %{name}-bundled(rubygem-rbs) = %{rbs_version}
|
|
|
|
-%description -n rubygem-rbs
|
|
+%description rubygem-rbs
|
|
RBS is the language for type signatures for Ruby and standard library
|
|
definitions.
|
|
|
|
|
|
-%package -n rubygem-test-unit
|
|
+%package rubygem-test-unit
|
|
Summary: An xUnit family unit testing framework for Ruby
|
|
Version: %{test_unit_version}
|
|
# lib/test/unit/diff.rb is a double license of the Ruby license and PSF license.
|
|
License: (Ruby OR BSD-2-Clause) AND (Ruby OR BSD-2-Clause OR Python-2.0.1)
|
|
-Provides: bundled(rubygem-test-unit) = %{test_unit_version}
|
|
+Provides: %{name}-bundled(rubygem-test-unit) = %{test_unit_version}
|
|
BuildArch: noarch
|
|
|
|
-%description -n rubygem-test-unit
|
|
+%description rubygem-test-unit
|
|
Test::Unit (test-unit) is unit testing framework for Ruby, based on xUnit
|
|
principles. These were originally designed by Kent Beck, creator of extreme
|
|
programming software development methodology, for Smalltalk's SUnit. It allows
|
|
writing tests, checking results and automated testing in Ruby.
|
|
|
|
|
|
-%package -n rubygem-racc
|
|
+%package rubygem-racc
|
|
Version: %{racc_version}
|
|
Summary: Racc is a LALR(1) parser generator
|
|
License: Ruby OR BSD-2-Clause
|
|
URL: https://github.com/ruby/racc
|
|
-Provides: bundled(rubygem-racc) = %{racc_version}
|
|
+Provides: %{name}-bundled(rubygem-racc) = %{racc_version}
|
|
|
|
-%description -n rubygem-racc
|
|
+%description rubygem-racc
|
|
Racc is a LALR(1) parser generator.
|
|
It is written in Ruby itself, and generates Ruby program.
|
|
|
|
|
|
-%package -n rubygem-rexml
|
|
+%package rubygem-rexml
|
|
Summary: An XML toolkit for Ruby
|
|
Version: %{rexml_version}
|
|
License: BSD-2-Clause
|
|
URL: https://github.com/ruby/rexml
|
|
-Provides: bundled(rubygem-rexml) = %{rexml_version}
|
|
+Provides: %{name}-bundled(rubygem-rexml) = %{rexml_version}
|
|
BuildArch: noarch
|
|
|
|
-%description -n rubygem-rexml
|
|
+%description rubygem-rexml
|
|
REXML was inspired by the Electric XML library for Java, which features an
|
|
easy-to-use API, small size, and speed. Hopefully, REXML, designed with the same
|
|
philosophy, has these same features. I've tried to keep the API as intuitive as
|
|
@@ -712,30 +726,30 @@ REXML supports both tree and stream docu
|
|
features such as XPath.
|
|
|
|
|
|
-%package -n rubygem-rss
|
|
+%package rubygem-rss
|
|
Summary: Family of libraries that support various formats of XML "feeds"
|
|
Version: %{rss_version}
|
|
License: BSD-2-Clause
|
|
URL: https://github.com/ruby/rss
|
|
-Provides: bundled(rubygem-rss) = %{rss_version}
|
|
+Provides: %{name}-bundled(rubygem-rss) = %{rss_version}
|
|
BuildArch: noarch
|
|
|
|
-%description -n rubygem-rss
|
|
+%description rubygem-rss
|
|
Really Simple Syndication (RSS) is a family of formats that describe 'feeds',
|
|
specially constructed XML documents that allow an interested person to subscribe
|
|
and receive updates from a particular web service. This library provides tooling
|
|
to read and create these feeds.
|
|
|
|
|
|
-%package -n rubygem-typeprof
|
|
+%package rubygem-typeprof
|
|
Summary: TypeProf is a type analysis tool for Ruby code based on abstract interpretation
|
|
Version: %{typeprof_version}
|
|
License: MIT
|
|
URL: https://github.com/ruby/typeprof
|
|
-Provides: bundled(rubygem-typeprof) = %{typeprof_version}
|
|
+Provides: %{name}-bundled(rubygem-typeprof) = %{typeprof_version}
|
|
BuildArch: noarch
|
|
|
|
-%description -n rubygem-typeprof
|
|
+%description rubygem-typeprof
|
|
TypeProf performs a type analysis of non-annotated Ruby code.
|
|
It abstractly executes input Ruby code in a level of types instead of values,
|
|
gathers what types are passed to and returned by methods, and prints the
|
|
@@ -784,9 +798,8 @@ pushd %{_vpath_builddir}
|
|
--with-sitearchhdrdir='$(sitehdrdir)/$(arch)' \
|
|
--with-vendorarchhdrdir='$(vendorhdrdir)/$(arch)' \
|
|
--with-rubygemsdir='%{rubygems_dir}' \
|
|
- --with-ruby-pc='%{name}.pc' \
|
|
+ --with-ruby-pc='%{srcname}.pc' \
|
|
--with-compress-debug-sections=no \
|
|
- --disable-rpath \
|
|
--enable-mkmf-verbose \
|
|
--enable-shared \
|
|
--with-ruby-version='' \
|
|
@@ -795,9 +808,10 @@ pushd %{_vpath_builddir}
|
|
|
|
popd
|
|
|
|
+export LDFLAGS="-Wl,-rpath=%{_libdir}"
|
|
# V=1 in %%make_build outputs the compiler options more verbosely.
|
|
# https://bugs.ruby-lang.org/issues/18756
|
|
-%make_build COPY="cp -p" -C %{_vpath_builddir}
|
|
+%make_build COPY="cp -p" -C %{_vpath_builddir} Q=
|
|
|
|
%install
|
|
rm -rf %{buildroot}
|
|
@@ -808,14 +822,22 @@ rm -rf %{buildroot}
|
|
|
|
# Rename ruby/config.h to ruby/config-<arch>.h to avoid file conflicts on
|
|
# multilib systems and install config.h wrapper
|
|
-%multilib_fix_c_header --file %{_includedir}/%{name}/config.h
|
|
+%multilib_fix_c_header --file %{_includedir}/ruby/config.h
|
|
|
|
# Rename the ruby executable. It is replaced by RubyPick.
|
|
-%{?with_rubypick:mv %{buildroot}%{_bindir}/%{name}{,-mri}}
|
|
+%{?with_rubypick:mv %{buildroot}%{_bindir}/ruby{,-mri}}
|
|
|
|
# Version is empty if --with-ruby-version is specified.
|
|
# http://bugs.ruby-lang.org/issues/7807
|
|
-sed -i 's/Version: \${ruby_version}/Version: %{ruby_version}/' %{buildroot}%{_libdir}/pkgconfig/%{name}.pc
|
|
+sed -i 's/Version: \${ruby_version}/Version: %{ruby_version}/' %{buildroot}%{_libdir}/pkgconfig/%{srcname}.pc
|
|
+
|
|
+# fix rpath for socket.so
|
|
+chrpath --replace %{_libdir} %{buildroot}%{ruby_libarchdir}/digest/rmd160.so
|
|
+chrpath --replace %{_libdir} %{buildroot}%{ruby_libarchdir}/digest/bubblebabble.so
|
|
+chrpath --replace %{_libdir} %{buildroot}%{ruby_libarchdir}/io/nonblock.so
|
|
+chrpath --replace %{_libdir} %{buildroot}%{ruby_libarchdir}/io/wait.so
|
|
+chrpath --replace %{_libdir} %{buildroot}%{ruby_libarchdir}/json/ext/generator.so
|
|
+chrpath --replace %{_libdir} %{buildroot}%{ruby_libarchdir}/json/ext/parser.so
|
|
|
|
# Kill bundled certificates, as they should be part of ca-certificates.
|
|
for cert in \
|
|
@@ -832,9 +854,9 @@ test ! "$(ls -A %{buildroot}%{rubygems_d
|
|
# would be wrongly evaluated during build of other packages.
|
|
mkdir -p %{buildroot}%{_rpmmacrodir}
|
|
install -m 644 %{SOURCE4} %{buildroot}%{_rpmmacrodir}/macros.ruby
|
|
-sed -i "s/%%{name}/%{name}/" %{buildroot}%{_rpmmacrodir}/macros.ruby
|
|
+sed -i "s/%%{name}/ruby/" %{buildroot}%{_rpmmacrodir}/macros.ruby
|
|
install -m 644 %{SOURCE5} %{buildroot}%{_rpmmacrodir}/macros.rubygems
|
|
-sed -i "s/%%{name}/%{name}/" %{buildroot}%{_rpmmacrodir}/macros.rubygems
|
|
+sed -i "s/%%{name}/ruby/" %{buildroot}%{_rpmmacrodir}/macros.rubygems
|
|
|
|
# Install dependency generators.
|
|
mkdir -p %{buildroot}%{_fileattrsdir}
|
|
@@ -843,6 +865,8 @@ install -m 755 %{SOURCE9} %{buildroot}%{
|
|
install -m 755 %{SOURCE10} %{buildroot}%{_rpmconfigdir}
|
|
install -m 755 %{SOURCE11} %{buildroot}%{_rpmconfigdir}
|
|
|
|
+find %{buildroot} -type f -exec sed -i 's|#!/usr/bin/env ruby|#!/opt/brepo/ruby33/bin/ruby|g' {} +
|
|
+
|
|
# Install custom operating_system.rb.
|
|
mkdir -p %{buildroot}%{rubygems_dir}/rubygems/defaults
|
|
cp %{SOURCE1} %{buildroot}%{rubygems_dir}/rubygems/defaults
|
|
@@ -854,7 +878,7 @@ mv %{buildroot}%{ruby_libdir}/gems %{bui
|
|
# TODO: These folders should go into rubygem-filesystem but how to achieve it,
|
|
# since noarch package cannot provide arch dependent subpackages?
|
|
# http://rpm.org/ticket/78
|
|
-mkdir -p %{buildroot}%{_exec_prefix}/lib{,64}/gems/%{name}
|
|
+mkdir -p %{buildroot}%{_exec_prefix}/lib{,64}/gems/ruby
|
|
|
|
# Move bundled rubygems to %%gem_dir and %%gem_extdir_mri
|
|
# make symlinks for io-console and bigdecimal, which are considered to be part of stdlib by other Gems
|
|
@@ -917,7 +941,7 @@ ln -s %{gem_extdir_mri psych}/psych.so %
|
|
# the extensions directory might be empty).
|
|
# TODO: Get information about extension form .gemspec files.
|
|
find %{buildroot}%{gem_dir}/extensions/*-%{_target_os}/%{major_minor_version}.*/* -maxdepth 0 \
|
|
- -exec mv '{}' %{buildroot}%{_libdir}/gems/%{name}/ \; \
|
|
+ -exec mv '{}' %{buildroot}%{_libdir}/gems/ruby/ \; \
|
|
|| echo "No gem binary extensions to move."
|
|
|
|
# Remove the extension sources and library copies from `lib` dir.
|
|
@@ -953,6 +977,9 @@ sed -i 's/^/%doc /' .ruby-doc.*
|
|
sed -i 's/^/%lang(ja) /' .ruby-doc.ja
|
|
|
|
%check
|
|
+echo "exclude :test_rm_r_no_permissions, \"For build for MSVSphere 9 rm\"" > test/.excludes/TestFileUtils.rb
|
|
+echo "exclude :test_world_writable, \"For build for MSVSphere 9 perm\"" > test/.excludes/TestTmpdir.rb
|
|
+
|
|
%if 0%{?with_hardening_test}
|
|
# Check Ruby hardening.
|
|
%define fortification_x86_64 fortified="11" fortify-able="28"
|
|
@@ -1175,13 +1202,19 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
|
|
%{?with_bundler_tests:make -C %{_vpath_builddir} test-bundler-parallel}
|
|
|
|
+
|
|
+
|
|
+%post libs -p /sbin/ldconfig
|
|
+
|
|
+%postun libs -p /sbin/ldconfig
|
|
+
|
|
%files
|
|
%license BSDL
|
|
%license COPYING
|
|
%lang(ja) %license COPYING.ja
|
|
%license GPL
|
|
%license LEGAL
|
|
-%{_bindir}/%{name}%{?with_rubypick:-mri}
|
|
+%{_bindir}/ruby%{?with_rubypick:-mri}
|
|
%{_mandir}/man1/ruby*
|
|
|
|
%files devel
|
|
@@ -1195,7 +1228,7 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
|
|
%{_includedir}/*
|
|
%{_libdir}/libruby.so
|
|
-%{_libdir}/pkgconfig/%{name}.pc
|
|
+%{_libdir}/pkgconfig//%{srcname}.pc
|
|
|
|
%files libs
|
|
%license COPYING
|
|
@@ -1391,7 +1424,7 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
|
|
%{?with_systemtap:%{_systemtap_datadir}}
|
|
|
|
-%files -n rubygems
|
|
+%files rubygems
|
|
%{_bindir}/gem
|
|
%dir %{rubygems_dir}
|
|
%{rubygems_dir}/rubygems
|
|
@@ -1413,7 +1446,7 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
|
|
%exclude %{gem_dir}/cache/*
|
|
|
|
-%files -n rubygems-devel
|
|
+%files rubygems-devel
|
|
%{_rpmmacrodir}/macros.rubygems
|
|
%{_fileattrsdir}/rubygems.attr
|
|
%{_rpmconfigdir}/rubygems.req
|
|
@@ -1491,14 +1524,14 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
%gem_spec -d prism
|
|
%gem_spec -d zlib
|
|
|
|
-%files -n rubygem-irb
|
|
+%files rubygem-irb
|
|
%{_bindir}/irb
|
|
%{ruby_libdir}/irb*
|
|
%{gem_instdir irb}
|
|
%{gem_spec irb}
|
|
%{_mandir}/man1/irb.1*
|
|
|
|
-%files -n rubygem-rdoc
|
|
+%files rubygem-rdoc
|
|
%{_bindir}/rdoc
|
|
%{_bindir}/ri
|
|
%{gem_instdir rdoc}
|
|
@@ -1511,28 +1544,28 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
%{?with_systemtap:%doc ruby-exercise.stp}
|
|
%{_datadir}/ri
|
|
|
|
-%files -n rubygem-bigdecimal
|
|
+%files rubygem-bigdecimal
|
|
%{ruby_libdir}/bigdecimal*
|
|
%{ruby_libarchdir}/bigdecimal*
|
|
%{gem_extdir_mri bigdecimal}
|
|
%{gem_instdir bigdecimal}
|
|
%{gem_spec bigdecimal}
|
|
|
|
-%files -n rubygem-io-console
|
|
+%files rubygem-io-console
|
|
%{ruby_libdir}/io
|
|
%{ruby_libarchdir}/io/console.so
|
|
%{gem_extdir_mri io-console}
|
|
%{gem_instdir io-console}
|
|
%{gem_spec io-console}
|
|
|
|
-%files -n rubygem-json
|
|
+%files rubygem-json
|
|
%{ruby_libdir}/json*
|
|
%{ruby_libarchdir}/json*
|
|
%{gem_extdir_mri json}
|
|
%{gem_instdir json}
|
|
%{gem_spec json}
|
|
|
|
-%files -n rubygem-psych
|
|
+%files rubygem-psych
|
|
%{ruby_libdir}/psych
|
|
%{ruby_libdir}/psych.rb
|
|
%{ruby_libarchdir}/psych.so
|
|
@@ -1541,7 +1574,7 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
%{gem_libdir psych}
|
|
%{gem_spec psych}
|
|
|
|
-%files -n rubygem-bundler
|
|
+%files rubygem-bundler
|
|
%{_bindir}/bundle
|
|
%{_bindir}/bundler
|
|
%{gem_instdir bundler}
|
|
@@ -1622,7 +1655,7 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
%{gem_libdir prime}
|
|
%{gem_spec prime}
|
|
|
|
-%files -n rubygem-minitest
|
|
+%files rubygem-minitest
|
|
%dir %{gem_instdir minitest}
|
|
%exclude %{gem_instdir minitest}/.*
|
|
%{gem_instdir minitest}/Manifest.txt
|
|
@@ -1634,7 +1667,7 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
%{gem_instdir minitest}/Rakefile
|
|
%{gem_instdir minitest}/test
|
|
|
|
-%files -n rubygem-power_assert
|
|
+%files rubygem-power_assert
|
|
%dir %{gem_instdir power_assert}
|
|
%exclude %{gem_instdir power_assert}/.*
|
|
%license %{gem_instdir power_assert}/BSDL
|
|
@@ -1646,13 +1679,13 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
%doc %{gem_instdir power_assert}/README.md
|
|
%{gem_instdir power_assert}/Rakefile
|
|
|
|
-%files -n rubygem-rake
|
|
+%files rubygem-rake
|
|
%{_bindir}/rake
|
|
%{gem_instdir rake}
|
|
%{gem_spec rake}
|
|
%{_mandir}/man1/rake.1*
|
|
|
|
-%files -n rubygem-rbs
|
|
+%files rubygem-rbs
|
|
%{_bindir}/rbs
|
|
%dir %{gem_extdir_mri rbs}
|
|
%{gem_extdir_mri rbs}/gem.build_complete
|
|
@@ -1676,7 +1709,7 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
%{gem_instdir rbs}/stdlib
|
|
%{gem_spec rbs}
|
|
|
|
-%files -n rubygem-test-unit
|
|
+%files rubygem-test-unit
|
|
%dir %{gem_instdir test-unit}
|
|
%license %{gem_instdir test-unit}/BSDL
|
|
%license %{gem_instdir test-unit}/COPYING
|
|
@@ -1688,7 +1721,7 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
%{gem_instdir test-unit}/Rakefile
|
|
%doc %{gem_instdir test-unit}/doc
|
|
|
|
-%files -n rubygem-racc
|
|
+%files rubygem-racc
|
|
%dir %{gem_instdir racc}
|
|
%{_bindir}/racc
|
|
%{gem_extdir_mri racc}
|
|
@@ -1702,7 +1735,7 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
%{gem_libdir racc}
|
|
%{gem_spec racc}
|
|
|
|
-%files -n rubygem-rexml
|
|
+%files rubygem-rexml
|
|
%dir %{gem_instdir rexml}
|
|
%license %{gem_instdir rexml}/LICENSE.txt
|
|
%doc %{gem_instdir rexml}/NEWS.md
|
|
@@ -1711,7 +1744,7 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
%{gem_spec rexml}
|
|
%doc %{gem_instdir rexml}/README.md
|
|
|
|
-%files -n rubygem-rss
|
|
+%files rubygem-rss
|
|
%dir %{gem_instdir rss}
|
|
%exclude %{gem_instdir rss}/.*
|
|
%license %{gem_instdir rss}/LICENSE.txt
|
|
@@ -1720,7 +1753,7 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
%{gem_spec rss}
|
|
%doc %{gem_instdir rss}/README.md
|
|
|
|
-%files -n rubygem-typeprof
|
|
+%files rubygem-typeprof
|
|
%dir %{gem_instdir typeprof}
|
|
%{_bindir}/typeprof
|
|
%exclude %{gem_instdir typeprof}/.*
|
|
@@ -1736,6 +1769,9 @@ make -C %{_vpath_builddir} runruby TESTR
|
|
|
|
|
|
%changelog
|
|
+* Tue Oct 22 2024 Alexey Berezhok <a@brepo.ru> - 3.3.5-3.brepo.1
|
|
+- Make build for alternative path
|
|
+
|
|
* Wed Sep 04 2024 Jarek Prokop <jprokop@redhat.com> - 3.3.5-3
|
|
- Upgrade to Ruby 3.3.5
|
|
Resolves: RHEL-55411
|