Sync from SUSE:SLFO:Main yast2-ruby-bindings revision 2cb69715e3b4793edeb3899de7bac344

This commit is contained in:
Adrian Schröter 2024-05-04 02:30:03 +02:00
commit 1e3f96db88
4 changed files with 1281 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

BIN
yast2-ruby-bindings-4.6.2.tar.bz2 (Stored with Git LFS) Normal file

Binary file not shown.

1135
yast2-ruby-bindings.changes Normal file

File diff suppressed because it is too large Load Diff

120
yast2-ruby-bindings.spec Normal file
View File

@ -0,0 +1,120 @@
#
# spec file for package yast2-ruby-bindings
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: yast2-ruby-bindings
Version: 4.6.2
Release: 0
URL: https://github.com/yast/yast-ruby-bindings
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source0: yast2-ruby-bindings-%{version}.tar.bz2
Prefix: /usr
BuildRequires: cmake
BuildRequires: gcc-c++
BuildRequires: yast2-core-devel
BuildRequires: yast2-devtools >= 3.1.10
BuildRequires: rubygem(%{rb_default_ruby_abi}:fast_gettext) < 3.0
BuildRequires: rubygem(%{rb_default_ruby_abi}:rspec)
Requires: rubygem(%{rb_default_ruby_abi}:fast_gettext) < 3.0
# this is ruby-devel pinned to the default version, matching the gems
BuildRequires: %{rubydevel}
Requires: yast2-core >= 3.2.2
BuildRequires: yast2-core-devel >= 3.2.2
# MenuBar-shortcuts-test.rb
Requires: yast2-ycp-ui-bindings >= 4.3.7
BuildRequires: yast2-ycp-ui-bindings-devel >= 4.3.7
# requirement for testing locale dependent methods.
# Keep it only build requirement to not force installation of this package everywhere
BuildRequires: glibc-locale
%ifarch s390 s390x
# s390 specific frame title that is read from readvalues from s390-tools
# needed also for tests, so build require it
BuildRequires: s390-tools
Requires: s390-tools
%endif
# The test suite includes a regression test (std_streams_spec.rb) for a
# libyui-ncurses bug fixed in 2.47.3
BuildRequires: libyui-ncurses >= 2.47.3
# The mentioned test requires tmux in order to be executed in headless systems
# Also many other libyui tests to come
BuildRequires: tmux
# only a soft dependency, the Ruby debugger is optional
Suggests: rubygem(%{rb_default_ruby_abi}:byebug)
# Unfortunately we cannot move this to macros.yast,
# bcond within macros are ignored by osc/OBS.
%bcond_with yast_run_ci_tests
%if %{with yast_run_ci_tests}
BuildRequires: rubygem(%{rb_default_ruby_abi}:yast-rake-ci)
%endif
Requires: ruby
Summary: Ruby bindings for the YaST platform
License: GPL-2.0-only
Group: System/YaST
%description
The bindings allow YaST modules to be written using the Ruby language
and also Ruby scripts can use YaST agents, APIs and modules.
%prep
%setup -n yast2-ruby-bindings-%{version}
%build
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=%{prefix} \
-DLIB=%{_lib} \
-DCMAKE_C_FLAGS="%{optflags}" \
-DCMAKE_CXX_FLAGS="%{optflags}" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_SKIP_RPATH=1 \
..
make %{?jobs:-j %jobs} VERBOSE=1
%install
cd build
make install DESTDIR=$RPM_BUILD_ROOT
cd -
%check
# Build workers are set up without systemd so the default /run/tmux dir
# will not be present (unless clamav pulls systemd in, on SLE)
export TMUX_TMPDIR=/tmp
cd build
make test ARGS=-V
cd -
# run extra CI checks (in Jenkins)
%if %{with yast_run_ci_tests}
%yast_ci_check
%endif
%files
%defattr (-, root, root)
%{yast_ybindir}/y2start
%{_libdir}/YaST2/plugin/libpy2lang_ruby.so
%{_libdir}/ruby/vendor_ruby/%{rb_ver}/*.rb
%{_libdir}/ruby/vendor_ruby/%{rb_ver}/yast
%{_libdir}/ruby/vendor_ruby/%{rb_ver}/%{rb_arch}/*x.so
%{_libdir}/ruby/vendor_ruby/%{rb_ver}/%{rb_arch}/yast
%license COPYING
%changelog