Date: Thursday, September 8, 2022 @ 19:16:52
  Author: segaja
Revision: 1296898

upgpkg: ruby-psych 4.0.4-3: restructure stdlib to fit into ruby structure

Added:
  ruby-psych/trunk/ruby-psych_fix_gemspec.patch
Modified:
  ruby-psych/trunk/PKGBUILD

------------------------------+
 PKGBUILD                     |   50 +++++++++++++++++++++++++++++++----------
 ruby-psych_fix_gemspec.patch |   29 +++++++++++++++++++++++
 2 files changed, 67 insertions(+), 12 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD    2022-09-08 19:13:32 UTC (rev 1296897)
+++ PKGBUILD    2022-09-08 19:16:52 UTC (rev 1296898)
@@ -3,20 +3,24 @@
 _gemname='psych'
 pkgname="ruby-${_gemname}"
 pkgver=4.0.4
-pkgrel=2
+pkgrel=3
 pkgdesc="A YAML parser and emitter"
 arch=('x86_64')
-url="https://github.com/ruby/psych";
+url="https://github.com/ruby/${_gemname}";
 license=('MIT')
 depends=('ruby' 'ruby-stringio')
 makedepends=('ruby-bundler' 'ruby-rake' 'ruby-rake-compiler')
 checkdepends=('ruby-test-unit')
-source=("${url}/archive/v${pkgver}/${pkgname}-${pkgver}.tar.gz")
-sha512sums=('c84c1048e31fdf45b546ec826e4abe5cce84b3906c4feda403ca2699b2a76952a24ce3bcdf84446d97d73b21dc95f5550525726291b62902e065645a68b45b47')
+source=("${url}/archive/v${pkgver}/${pkgname}-${pkgver}.tar.gz"
+    "${pkgname}_fix_gemspec.patch")
+sha512sums=('c84c1048e31fdf45b546ec826e4abe5cce84b3906c4feda403ca2699b2a76952a24ce3bcdf84446d97d73b21dc95f5550525726291b62902e065645a68b45b47'
+            
'b3d0a4b1b8e9ccc2913265b2570a4c6e9e42d182e47639b3626a033ad695eb0476dc1ba192ebea4816e0cd0fe5ffba52fcc36d439ad96566691d1282df42c65e')
 
 prepare() {
   cd "${_gemname}-${pkgver}"
 
+  patch --verbose --strip=1 --input="../${pkgname}_fix_gemspec.patch"
+
   # update gemspec/Gemfile to allow newer version of the dependencies
   sed --in-place --regexp-extended 's|~>|>=|g' "${_gemname}.gemspec"
 }
@@ -24,6 +28,7 @@
 build() {
   cd "${_gemname}-${pkgver}"
 
+  rake compile
   rake build
 }
 
@@ -38,15 +43,36 @@
 
   local _gemdir="$(gem env gemdir)"
   local _platform="$(gem env platform | cut -d':' -f2)"
-  local _extension_api_version="$(ruby -e'puts Gem.extension_api_version')"
+  local _extension_api_version="$(ruby -e 'puts Gem.extension_api_version')"
 
-  gem install --ignore-dependencies --no-user-install --install-dir 
"${pkgdir}/${_gemdir}" --bindir "${pkgdir}/usr/bin" 
"pkg/${_gemname}-${pkgver}.gem"
+  gem install \
+    --local \
+    --verbose \
+    --ignore-dependencies \
+    --no-user-install \
+    --install-dir "${pkgdir}/${_gemdir}" \
+    --bindir "${pkgdir}/usr/bin" \
+    "pkg/${_gemname}-${pkgver}.gem"
 
-  rm "${pkgdir}/${_gemdir}/cache/${_gemname}-${pkgver}.gem" \
-      ${pkgdir}/${_gemdir}/gems/${_gemname}-${pkgver}/ext/psych/*.o \
-      "${pkgdir}/${_gemdir}/gems/${_gemname}-${pkgver}/ext/psych/Makefile" \
-      
"${pkgdir}/${_gemdir}/extensions/${_platform}/${_extension_api_version}/${_gemname}-${pkgver}/gem_make.out"
+  install --verbose --directory --mode=0755 \
+    "${pkgdir}/usr/lib/ruby/${_extension_api_version}/${_platform}" \
+    "${pkgdir}${_gemdir}/specifications/default"
 
-  install -Dm 644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
-  install -Dm 644 CONTRIBUTING.md README.md --target-directory 
"${pkgdir}/usr/share/doc/${pkgname}"
+  mv --verbose 
"${pkgdir}${_gemdir}/gems/${_gemname}-${pkgver}/${_gemname}.gemspec" 
"${pkgdir}${_gemdir}/specifications/default/${_gemname}-${pkgver}.gemspec"
+  mv --verbose 
"${pkgdir}${_gemdir}/gems/${_gemname}-${pkgver}/lib/${_gemname}.rb" 
"${pkgdir}/usr/lib/ruby/${_extension_api_version}/${_gemname}.rb"
+  mv --verbose 
"${pkgdir}${_gemdir}/gems/${_gemname}-${pkgver}/lib/${_gemname}" 
"${pkgdir}/usr/lib/ruby/${_extension_api_version}/${_gemname}"
+  mv --verbose 
"${pkgdir}${_gemdir}/extensions/${_platform}/${_extension_api_version}/${_gemname}-${pkgver}/${_gemname}.so"
 "${pkgdir}/usr/lib/ruby/${_extension_api_version}/${_platform}/${_gemname}.so"
+
+  # remove unrepreducible files
+  rm --force --recursive --verbose \
+    "${pkgdir}${_gemdir}/cache/" \
+    "${pkgdir}${_gemdir}/build_info/" \
+    "${pkgdir}${_gemdir}/extensions/" \
+    "${pkgdir}${_gemdir}/gems/" \
+    "${pkgdir}${_gemdir}/plugins/" \
+    "${pkgdir}${_gemdir}/specifications/${_gemname}-${pkgver}.gemspec" \
+    "${pkgdir}${_gemdir}/doc/${_gemname}-${pkgver}/ri/ext/"
+
+  install --verbose -D --mode=0644 LICENSE 
"${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+  install --verbose -D --mode=0644 *.md --target-directory 
"${pkgdir}/usr/share/doc/${pkgname}"
 }

Added: ruby-psych_fix_gemspec.patch
===================================================================
--- ruby-psych_fix_gemspec.patch                                (rev 0)
+++ ruby-psych_fix_gemspec.patch        2022-09-08 19:16:52 UTC (rev 1296898)
@@ -0,0 +1,29 @@
+diff --git a/psych.gemspec b/psych.gemspec
+index 65dd715..c178af2 100644
+--- a/psych.gemspec
++++ b/psych.gemspec
+@@ -1,14 +1,9 @@
+ # -*- encoding: utf-8 -*-
+ # frozen_string_literal: true
+ 
+-version_module = Module.new do
+-  version_rb = File.join(__dir__, "lib/psych/versions.rb")
+-  module_eval(File.read(version_rb), version_rb)
+-end
+-
+ Gem::Specification.new do |s|
+   s.name = "psych"
+-  s.version = version_module::Psych::VERSION
++  s.version = "4.0.4"
+   s.authors = ["Aaron Patterson", "SHIBATA Hiroshi", "Charles Oliver Nutter"]
+   s.email = ["aa...@tenderlovemaking.com", "h...@ruby-lang.org", 
"head...@headius.com"]
+   s.summary = "Psych is a YAML parser and emitter"
+@@ -59,7 +54,7 @@ DESCRIPTION
+       "lib/psych_jars.rb",
+       "lib/psych.jar"
+     ]
+-    s.requirements = "jar org.yaml:snakeyaml, 
#{version_module::Psych::DEFAULT_SNAKEYAML_VERSION}"
++    s.requirements = "jar org.yaml:snakeyaml, 1.28"
+     s.add_dependency 'jar-dependencies', '>= 0.1.7'
+   else
+     s.extensions = ["ext/psych/extconf.rb"]

Reply via email to