From 6c3faf7b69c366131e14d665bdf6f83f3be0c025 Mon Sep 17 00:00:00 2001 From: h00465007 Date: Fri, 6 Mar 2020 18:07:55 +0800 Subject: [PATCH] package init --- README.en.md | 36 ---------- README.md | 37 ----------- gem2rpm-1.0.1-tests.tgz | Bin 0 -> 11000 bytes gem2rpm-1.0.1.gem | Bin 0 -> 20992 bytes rubygem-gem2rpm.spec | 80 +++++++++++++++++++++++ sort-dependencies-in-the-test-case.patch | 38 +++++++++++ 6 files changed, 118 insertions(+), 73 deletions(-) delete mode 100644 README.en.md delete mode 100644 README.md create mode 100644 gem2rpm-1.0.1-tests.tgz create mode 100644 gem2rpm-1.0.1.gem create mode 100644 rubygem-gem2rpm.spec create mode 100644 sort-dependencies-in-the-test-case.patch diff --git a/README.en.md b/README.en.md deleted file mode 100644 index 487d6f3..0000000 --- a/README.en.md +++ /dev/null @@ -1,36 +0,0 @@ -# rubygem-gem2rpm - -#### Description -Generate rpm specfiles from gems - -#### Software Architecture -Software architecture description - -#### Installation - -1. xxxx -2. xxxx -3. xxxx - -#### Instructions - -1. xxxx -2. xxxx -3. xxxx - -#### Contribution - -1. Fork the repository -2. Create Feat_xxx branch -3. Commit your code -4. Create Pull Request - - -#### Gitee Feature - -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) -4. The most valuable open source project [GVP](https://gitee.com/gvp) -5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) -6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/README.md b/README.md deleted file mode 100644 index e1ba13c..0000000 --- a/README.md +++ /dev/null @@ -1,37 +0,0 @@ -# rubygem-gem2rpm - -#### 介绍 -Generate rpm specfiles from gems - -#### 软件架构 -软件架构说明 - - -#### 安装教程 - -1. xxxx -2. xxxx -3. xxxx - -#### 使用说明 - -1. xxxx -2. xxxx -3. xxxx - -#### 参与贡献 - -1. Fork 本仓库 -2. 新建 Feat_xxx 分支 -3. 提交代码 -4. 新建 Pull Request - - -#### 码云特技 - -1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md -2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com) -3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目 -4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目 -5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) -6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/gem2rpm-1.0.1-tests.tgz b/gem2rpm-1.0.1-tests.tgz new file mode 100644 index 0000000000000000000000000000000000000000..ada096cfc23627006d0efdc9363814f01f73968c GIT binary patch literal 11000 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�q09IHfgZ(>hBqwvmR zwU$1)c(jcXhHya)W(+Swn0Pyc@cL-&c`4S`xer1obz{u@y!jTrh?D%CIEhal9hd3c z=&EVxW8r`u^Nqu?{qY@~(Ig^ zskj*kSXMl)hI<)sc>yG@PAn$_xlx7~s-FMp?|&PQ|HVHJVg27b?CtmW_DTHjex3h! zGbJzo2VcZ;zv{7*afaj3tCZoa{M?#*STmi7`WEqfrjv0bo2xGRO4d;Z$^;7Sjyqf8 zxG~a1N^2Fpi1QtFf69LQ?>oIt=G$I(C;QGbW##O*2c_X0WWS1XHOfQWAQW_AKDICo<{n;|{aasWhn&d$;f;-O_qA8*q zuf@acs1e_H$gRR>QG$p^a={_L-%w$YNW?TXacpWWtQ(m56i%0p!}rc4UCDglMaZMR zCfk|yX<=e40K2J`$||q5k$Nj`@d1LIH|@X*nni$G=u1XABrWjfw1=P*G~(dMnFG)yR$t02>RNKy z)ztB|=A;mF^U0WL2hh)m$H%Dq(@zH(#H3aqA$^saxGiBeJW)CjgPdCOVl54m*Oq_& mFiwZM)TJ(UsY_kzQkS~ar7m@;OI_-+(ei)7>vGlrKmh=|K{e|D literal 0 HcmV?d00001 diff --git a/gem2rpm-1.0.1.gem b/gem2rpm-1.0.1.gem new file mode 100644 index 0000000000000000000000000000000000000000..a800c767560336d998d162f14d19d4fc4068a774 GIT binary patch literal 20992 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 literal 0 HcmV?d00001 diff --git a/rubygem-gem2rpm.spec b/rubygem-gem2rpm.spec new file mode 100644 index 0000000..c438a35 --- /dev/null +++ b/rubygem-gem2rpm.spec @@ -0,0 +1,80 @@ +%global gem_name gem2rpm +%global debug_package %{nil} + +Name: rubygem-gem2rpm +Version: 1.0.1 +Release: 1 +Summary: Generate rpm specfiles from gems +License: GPLv2+ +URL: https://github.com/fedora-ruby/gem2rpm +Source0: https://rubygems.org/gems/gem2rpm-%{version}.gem +Source1: gem2rpm-%{version}-tests.tgz + +# Fix Ruby 2.6 test failure. +# https://github.com/rubygems/rubygems/issues/2627 +# https://github.com/fedora-ruby/gem2rpm/pull/99/commits/4b40d342761a3fdc402fbddccccaa99f38c50ddd +Patch0: sort-dependencies-in-the-test-case.patch + +BuildRequires: ruby rubygems-devel rubygem-minitest rpmdevtools +Requires: rpmdevtools + +%description +Generate source rpms and rpm spec files from a Ruby Gem. The spec file +tries to follow the gem as closely as possible, and be compliant with the +Fedora rubygem packaging guidelines. + +%package doc +Summary: Documentation for %{name} +BuildArch: noarch +Requires: %{name} = %{version}-%{release} + +%description doc +Documentation for %{name}. + +%prep +%setup -q -n gem2rpm-%{version} + +%build +# Create the gem as gem install only works on a gem file +gem build ../gem2rpm-%{version}.gemspec + +# %%gem_install compiles any C extensions and installs the gem into ./%%gem_dir +# by default, so that we can move it into the buildroot in %%install +%gem_install + +%install +mkdir -p %{buildroot}%{gem_dir} +cp -a .%{gem_dir}/* %{buildroot}%{gem_dir}/ + +mkdir -p %{buildroot}%{_bindir} +cp -a .%{_bindir}/* %{buildroot}%{_bindir}/ + +find %{buildroot}%{gem_instdir}/bin -type f | xargs chmod a+x + +%check +pushd .%{gem_instdir} +tar xzvf %{SOURCE1} + +cat %{PATCH0} | patch -p1 + +TEST_GEM2RPM_LOCAL=1 ruby -Itest -e 'Dir.glob "./test/**/test_*.rb", &method(:require)' +popd + +%files +%dir %{gem_instdir} +%doc %{gem_instdir}/README.md +%doc %{gem_instdir}/AUTHORS +%license %{gem_instdir}/LICENSE +%{_bindir}/gem2rpm +%{gem_instdir}/bin +%{gem_libdir} +%{gem_instdir}/templates +%{gem_spec} +%exclude %{gem_cache} + +%files doc +%doc %{gem_docdir} + +%changelog +* Fri Mar 6 2020 hexiujun - 1.0.1-1 +- Package init diff --git a/sort-dependencies-in-the-test-case.patch b/sort-dependencies-in-the-test-case.patch new file mode 100644 index 0000000..08ed165 --- /dev/null +++ b/sort-dependencies-in-the-test-case.patch @@ -0,0 +1,38 @@ +From 4b40d342761a3fdc402fbddccccaa99f38c50ddd Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?V=C3=ADt=20Ondruch?= +Date: Wed, 6 Feb 2019 14:56:13 +0100 +Subject: [PATCH 1/2] Sort dependencies in the test case. + +Some versions of RubyGems might or might not sort the requirements. The +order should not be important for this test case, so sort the entries. +But otherwise keep the RubyGems upstream sort order. + +https://github.com/rubygems/rubygems/issues/2627 +--- + test/test_gem2rpm.rb | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/test/test_gem2rpm.rb b/test/test_gem2rpm.rb +index 4f3ce9f..325922a 100644 +--- a/test/test_gem2rpm.rb ++++ b/test/test_gem2rpm.rb +@@ -57,7 +57,7 @@ foo + end + + def test_print_dependencies +- dependencies = <<-END.gsub(/^ */, '') ++ dependencies = <<-END.gsub(/^ */, '').lines.sort + rubygem(test_runtime) >= 1.0 + rubygem(test_runtime) < 2 + rubygem(test_runtime) >= 1.0.0 +@@ -71,6 +71,6 @@ foo + @out + ) + +- assert_equal dependencies, @out.string ++ assert_equal dependencies, @out.string.lines.sort + end + end +-- +2.20.1 +