diff --git a/nio4r-2.3.1.gem b/nio4r-2.3.1.gem new file mode 100644 index 0000000..1dcacab Binary files /dev/null and b/nio4r-2.3.1.gem differ diff --git a/rubygem-nio4r.spec b/rubygem-nio4r.spec new file mode 100644 index 0000000..67bcbe6 --- /dev/null +++ b/rubygem-nio4r.spec @@ -0,0 +1,84 @@ +%global gem_name nio4r +%global libev_version 4.24 +Name: rubygem-%{gem_name} +Version: 2.3.1 +Release: 1 +Summary: New IO for Ruby +License: MIT and (BSD or GPLv2+) +URL: https://github.com/socketry/nio4r +Source0: https://rubygems.org/gems/nio4r-%{version}.gem +BuildRequires: ruby(release) rubygems-devel ruby-devel rubygem(rspec) gcc +Provides: bundled(libev) = %{libev_version} +%description +Cross-platform asynchronous I/O primitives for scalable network clients and +servers. Inspired by the Java NIO API, but simplified for ease-of-use. + +%package doc +Summary: Documentation for %{name} +Requires: %{name} = %{version}-%{release} +BuildArch: noarch +%description doc +Documentation for %{name}. + +%prep +%setup -q -n %{gem_name}-%{version} + +%build +gem build ../%{gem_name}-%{version}.gemspec +%global optflags %{?optflags} -fno-strict-aliasing +%gem_install + +%install +mkdir -p %{buildroot}%{gem_dir} +cp -a .%{gem_dir}/* \ + %{buildroot}%{gem_dir}/ +mkdir -p %{buildroot}%{gem_extdir_mri} +cp -a .%{gem_extdir_mri}/{gem.build_complete,*.so} %{buildroot}%{gem_extdir_mri}/ +rm -rf %{buildroot}%{gem_instdir}/ext/ + +%check +pushd .%{gem_instdir} +EV_VERSION_MAJOR=$(grep EV_VERSION_MAJOR ext/libev/ev.h | cut -d ' ' -f3) +EV_VERSION_MINOR=$(grep EV_VERSION_MINOR ext/libev/ev.h | cut -d ' ' -f3) +[ "${EV_VERSION_MAJOR}.${EV_VERSION_MINOR}" = '%{libev_version}' ] +sed -i '/require "coveralls"/ s/^/#/' spec/spec_helper.rb +sed -i '/Coveralls.wear!/ s/^/#/' spec/spec_helper.rb +sed -i '/require "rspec\/retry"/ s/^/#/' spec/spec_helper.rb +sed -i '/config.verbose_retry/ s/^/#/' spec/spec_helper.rb +sed -i '/config.display_try_failure_messages/ s/^/#/' spec/spec_helper.rb +sed -i 's/, retry: [0-9]\+//' spec/nio/selectables/tcp_socket_spec.rb +sed -i 's/, retry: [0-9]\+//' spec/support/selectable_examples.rb +sed -i '/TIMEOUT_PRECISION/ s/0.1/0.5/' spec/nio/selector_spec.rb +sed -i '/^ it "wakes up if signaled to from another thread" do$/,/^ end$/ s/0.1/0.5/' \ + spec/nio/selector_spec.rb +sed -i '/"selects readable when the other end closes"/a\ + skip' spec/support/selectable_examples.rb +rspec -I$(dirs +1)%{gem_extdir_mri} spec +popd + +%files +%dir %{gem_instdir} +%{gem_extdir_mri} +%exclude %{gem_instdir}/.* +%license %{gem_instdir}/LICENSE.txt +%exclude %{gem_instdir}/appveyor.yml +%{gem_libdir} +%exclude %{gem_cache} +%{gem_spec} + +%files doc +%doc %{gem_docdir} +%{gem_instdir}/Gemfile +%doc %{gem_instdir}/README.md +%doc %{gem_instdir}/CHANGES.md +%{gem_instdir}/logo.png +%{gem_instdir}/tasks +%{gem_instdir}/Guardfile +%{gem_instdir}/Rakefile +%{gem_instdir}/examples +%{gem_instdir}/nio4r.gemspec +%{gem_instdir}/spec + +%changelog +* Wed Aug 12 2020 yanan li - 2.3.1-1 +- Package init diff --git a/rubygem-nio4r.yaml b/rubygem-nio4r.yaml new file mode 100644 index 0000000..8b8c23a --- /dev/null +++ b/rubygem-nio4r.yaml @@ -0,0 +1,5 @@ +git_url: https://github.com/socketry/nio4r.git +version_control: github +src_repo: socketry/nio4r +tag_prefix: "^v" +seperator: "."