summaryrefslogtreecommitdiff
path: root/libre/ruby/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'libre/ruby/PKGBUILD')
-rw-r--r--libre/ruby/PKGBUILD61
1 files changed, 35 insertions, 26 deletions
diff --git a/libre/ruby/PKGBUILD b/libre/ruby/PKGBUILD
index 989d87d3d..70d5c95e8 100644
--- a/libre/ruby/PKGBUILD
+++ b/libre/ruby/PKGBUILD
@@ -16,8 +16,9 @@
# https://bugs.ruby-lang.org/issues/11844
# https://github.com/flori/json/issues/277
+
pkgname=(ruby ruby-docs)
-pkgver=2.5.3
+pkgver=2.6.1
_jsonver=2.1.0
pkgrel=1
pkgrel+=.par1
@@ -28,46 +29,41 @@ url='http://www.ruby-lang.org/en/'
license=(BSD2 custom)
makedepends=(gdbm openssl libffi doxygen graphviz libyaml ttf-dejavu tk)
options=(!emptydirs)
-source=(https://repo.parabola.nu/other/ruby-libre/ruby-${pkgver}-libre${_srcrel}.tar.gz)
-sha512sums=('5dee091aef9cbaa0f61296112a8ad19bf490579f7978023983fc31d2f2e009b2a2e6bd703a6684d0249fa8f56c37985a6a42563ccc9958b0553173ed76771a31')
-
-mkdepends=('ruby') # for 'gem build'
-mksource=(https://cache.ruby-lang.org/pub/ruby/${pkgver:0:3}/ruby-${pkgver}.tar.xz
- ruby-2.5-remove-json-ext.patch
- ruby-2.5-add-json_pure.patch
- json-${_jsonver}.tar.gz::https://github.com/flori/json/archive/v${_jsonver}.tar.gz
- json-${_jsonver}-libre.patch)
-mksha512sums=('6dcae0e8d0bacdb2cbde636e2030596308b5af53f2eb85d3adccb67b02e6f8f9751e8117d12f8484829fdd9d995f6e327f701d9b433bcf94f1f59d13a1fd7518'
- 'dbfd2517e87571e25fea832f50535e76c07972e15f48050ad7b08b04993c566ae7b5e8b1dd0e3cd65eb6161290026eaa71ff4528e98a92e37983066b4929cfb1'
- '303172561a4ba54515fddfd9ea7e0c833e550b0ae5e9f331956f178f8c5e20aa0e3c4036251ddfd04312769ef7d71d83fde0afe64f6fa8e9052ca5a294c62927'
- '6019cc26a0919e4d39ae0bf737b51cd9a474c74a55d25f6931ac04d61826bb810d063190a80a29810e57d7457d1a247acd82fd78de2c4c01acb7d73ee9fde603'
- '582017bd0f98878c0ac6f4625854422662d83ae6274a34762082a720052023780dceb17694b1f4e18d9a0dcbb525990341176eac31040aa63099a8b3a8d52071')
-
-mksource() {
+source=(https://cache.ruby-lang.org/pub/ruby/${pkgver:0:3}/ruby-${pkgver}.tar.xz
+ json-${_jsonver}.tar.gz::https://github.com/flori/json/archive/v${_jsonver}.tar.gz
+ remove-json-ext.patch
+ add-json_pure.patch
+ json-libre.patch)
+sha512sums=('fb36289a955f0596c683cdadf1e4a9a9fd35222b1e1c6160c2e7cd82e5befd40a7aa4361e55f7a8f83c06ee899ec493821c7db34a60c4ac3bca0e874d33ef1a9'
+ '6019cc26a0919e4d39ae0bf737b51cd9a474c74a55d25f6931ac04d61826bb810d063190a80a29810e57d7457d1a247acd82fd78de2c4c01acb7d73ee9fde603'
+ '412dff58c77f6cbc598bf49fb09cb416ad88635e9213acc60a1d103e5d093b2d80260c41e07fbc0634047c655756f5bdd8b2f5e59ae8e4b992b598b251b4c3e9'
+ '303172561a4ba54515fddfd9ea7e0c833e550b0ae5e9f331956f178f8c5e20aa0e3c4036251ddfd04312769ef7d71d83fde0afe64f6fa8e9052ca5a294c62927'
+ '582017bd0f98878c0ac6f4625854422662d83ae6274a34762082a720052023780dceb17694b1f4e18d9a0dcbb525990341176eac31040aa63099a8b3a8d52071')
+
+
+prepare() {
# Start with the vanilla version of json
cd "$srcdir/json-${_jsonver}"
# Modify it so that 'json' doesn't try to load (non-free!) 'json/ext'
rm -rf -- json.gemspec ext lib/json/ext*
- patch -p1 -i ../json-${_jsonver}-libre.patch
+ patch -p1 -i ../json-libre.patch
# Now modify the ruby sources to include the json_pure lib instead
# of the json ext
cd "$srcdir/ruby-${pkgver}"
# remove the json ext
rm -rv ext/json test/json
- patch -p1 -i ../ruby-${pkgver}-remove-json-ext.patch
+ patch -p1 -i ../remove-json-ext.patch
# and insert the json_pure lib
cp -r ../json-${_jsonver}/lib/* -t lib/
cp ../json-${_jsonver}/json_pure.gemspec -t lib/json/
cp -rT ../json-${_jsonver}/tests test/json
- patch -p1 -i ../ruby-${pkgver}-add-json_pure.patch
+ patch -p1 -i ../add-json_pure.patch
# Clean up the original json sources
cd "$srcdir"
rm -rf "json-${_jsonver}"
-}
-prepare() {
cd ruby-${pkgver}
# remove bundled gems, we are going to ship them as separate packages
rm -rf gems/
@@ -112,16 +108,29 @@ package_ruby() {
rubyver=${pkgver:0:3}.0
- # remove rubygems as it shipped in a separate package
+ # remove rubygems as it shipped as a separate package
rm -r "${pkgdir}"/usr/lib/ruby/${rubyver}/{rubygems,rubygems.rb}
rm "${pkgdir}"/usr/bin/gem
+ # remove bundler as it shipped as a separate package
+ rm -r "${pkgdir}"/usr/lib/ruby/${rubyver}/{bundler,bundler.rb}
+ rm "${pkgdir}"/usr/bin/{bundle,bundler}
+ rm "${pkgdir}"/usr/lib/ruby/gems/${rubyver}/specifications/default/bundler-*.gemspec
+ rm "${pkgdir}"/usr/share/man/man1/{bundle,bundle-*}.1
+
# remove bundled rdoc gem
- # we are doing it here instead of prepare() because rdoc used doring Ruby build process
- rm -r "${pkgdir}"/usr/lib/ruby/${rubyver}/rdoc/
+ rm -r "${pkgdir}"/usr/lib/ruby/${rubyver}/{rdoc,rdoc.rb}
rm "${pkgdir}"/usr/bin/{rdoc,ri}
- rm -r "${pkgdir}"/usr/lib/ruby/gems/${rubyver}/gems/*
rm "${pkgdir}"/usr/lib/ruby/gems/${rubyver}/specifications/default/rdoc-*.gemspec
+
+ # remove irb as it is a separate package now
+ rm -r "${pkgdir}"/usr/lib/ruby/${rubyver}/{irb,irb.rb}
+ rm "${pkgdir}"/usr/bin/irb
+ rm "${pkgdir}"/usr/lib/ruby/gems/${rubyver}/specifications/default/irb-*.gemspec
+ rm "${pkgdir}"/usr/share/man/man1/irb.1
+
+ # remove all bundled gems to avoid conflicts with ruby-* Arch packages
+ rm -r "${pkgdir}"/usr/lib/ruby/gems/${rubyver}/gems/*
}
package_ruby-docs() {