mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2025-01-17 23:34:07 +00:00
added community/ruby
This commit is contained in:
parent
c63ca0fe02
commit
3435e5ef3a
1 changed files with 276 additions and 0 deletions
276
community/ruby/PKGBUILD
Normal file
276
community/ruby/PKGBUILD
Normal file
|
@ -0,0 +1,276 @@
|
|||
# Maintainer: Anatol Pomozov <anatol.pomozov@gmail.com>
|
||||
# Maintainer: Andreas 'Segaja' Schleifer <segaja at archlinux dot org>
|
||||
# Maintainer: Tim Meusel <tim@bastelfreak.de>
|
||||
# Contributor: Thomas Dziedzic <gostrc@gmail.com>
|
||||
# Contributor: Allan McRae <allan@archlinux.org>
|
||||
# Contributor: John Proctor <jproctor@prium.net>
|
||||
# Contributor: Jeramy Rutley <jrutley@gmail.com>
|
||||
|
||||
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
|
||||
# - generalize arch-dependent removal of gem remains
|
||||
|
||||
pkgname=(ruby ruby-docs ruby-stdlib ruby-bundledgems)
|
||||
pkgver=3.0.4
|
||||
pkgrel=18
|
||||
arch=(x86_64)
|
||||
url='https://www.ruby-lang.org/en/'
|
||||
license=(BSD custom)
|
||||
makedepends=(gdbm openssl libffi doxygen graphviz libyaml ttf-dejavu tk)
|
||||
options=(debug !emptydirs !lto) # Disable LTO until fixes for https://bugs.ruby-lang.org/issues/18062 released
|
||||
source=(https://cache.ruby-lang.org/pub/ruby/${pkgver:0:3}/ruby-${pkgver}.tar.xz)
|
||||
sha512sums=('53bf7dd403b0c68af9691882ad8ed7422c8d1f496627428fb4c3caf0b0313715524b744c5f453aced2d49e16e55f3f45b46b9a77aa3097dbfcae7caa0208194b')
|
||||
|
||||
build() {
|
||||
cd ruby-${pkgver}
|
||||
|
||||
./configure \
|
||||
--prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--localstatedir=/var \
|
||||
--sharedstatedir=/var/lib \
|
||||
--libexecdir=/usr/lib/ruby \
|
||||
--enable-shared \
|
||||
--disable-rpath \
|
||||
--with-dbm-type=gdbm_compat
|
||||
|
||||
make
|
||||
}
|
||||
|
||||
check() {
|
||||
cd ruby-${pkgver}
|
||||
|
||||
make test
|
||||
}
|
||||
|
||||
package_ruby() {
|
||||
pkgdesc='An object-oriented language for quick and easy programming'
|
||||
depends=(gdbm openssl libffi libyaml libxcrypt gmp zlib rubygems ruby-stdlib ruby-bundledgems)
|
||||
optdepends=(
|
||||
'ruby-docs: Ruby documentation'
|
||||
'tk: for Ruby/TK'
|
||||
)
|
||||
|
||||
cd ruby-${pkgver}
|
||||
|
||||
make DESTDIR="${pkgdir}" install-nodoc
|
||||
|
||||
install -D -m644 COPYING "${pkgdir}/usr/share/licenses/ruby/LICENSE"
|
||||
install -D -m644 BSDL "${pkgdir}/usr/share/licenses/ruby/BSDL"
|
||||
|
||||
rubyver=${pkgver:0:3}.0
|
||||
|
||||
# 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 "${pkgdir}"/usr/bin/{bundle,bundler}
|
||||
|
||||
# remove bundled rdoc gem
|
||||
rm "${pkgdir}"/usr/bin/{rdoc,ri}
|
||||
rm "${pkgdir}"/usr/share/man/man1/ri.1
|
||||
|
||||
# remove irb as it is a separate package now
|
||||
rm "${pkgdir}"/usr/bin/irb
|
||||
rm "${pkgdir}"/usr/share/man/man1/irb.1
|
||||
|
||||
# remove other binaries that are shipped as separate packages
|
||||
rm "${pkgdir}"/usr/bin/{rake,rbs,typeprof,erb,racc}
|
||||
rm "${pkgdir}"/usr/share/man/man1/erb.1
|
||||
|
||||
# remove all bundled gems to avoid conflicts with ruby-* Arch packages
|
||||
rm -r "${pkgdir}"/usr/lib/ruby/gems/${rubyver}/gems/*
|
||||
rm "${pkgdir}"/usr/lib/ruby/gems/${rubyver}/specifications/*.gemspec
|
||||
rm "${pkgdir}"/usr/lib/ruby/gems/${rubyver}/cache/*.gem
|
||||
|
||||
# remove already packaged stdlib gems (needs to be as dependency in ruby-stdlib)
|
||||
local stdlib_gems=(
|
||||
abbrev
|
||||
base64
|
||||
benchmark
|
||||
bigdecimal
|
||||
bundler
|
||||
cgi
|
||||
csv
|
||||
date
|
||||
delegate
|
||||
did_you_mean
|
||||
digest
|
||||
drb
|
||||
english
|
||||
erb
|
||||
etc
|
||||
fcntl
|
||||
fiddle
|
||||
fileutils
|
||||
find
|
||||
forwardable
|
||||
getoptlong
|
||||
io-console
|
||||
io-nonblock
|
||||
io-wait
|
||||
ipaddr
|
||||
irb
|
||||
json
|
||||
logger
|
||||
mutex_m
|
||||
net-http
|
||||
open-uri
|
||||
psych
|
||||
racc
|
||||
rdoc
|
||||
reline
|
||||
stringio
|
||||
time
|
||||
tmpdir
|
||||
uri
|
||||
)
|
||||
|
||||
for stdlib_gem in "${stdlib_gems[@]}"; do
|
||||
rm --force --recursive --verbose \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/${stdlib_gem} \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/${stdlib_gem}.rb \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/*-linux/${stdlib_gem}.so \
|
||||
"${pkgdir}"/usr/lib/ruby/gems/${rubyver}/specifications/default/${stdlib_gem}-*.gemspec
|
||||
done
|
||||
|
||||
rm --recursive --verbose \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/English.rb \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/io/console \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/net/http \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/net/http.rb \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/net/https.rb \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/*-linux/cgi \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/*-linux/date_core.so \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/*-linux/digest \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/*-linux/io/console.so \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/*-linux/io/nonblock.so \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/*-linux/io/wait.so \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/*-linux/json \
|
||||
"${pkgdir}"/usr/lib/ruby/${rubyver}/*-linux/racc
|
||||
}
|
||||
|
||||
package_ruby-docs() {
|
||||
pkgdesc='Documentation files for ruby'
|
||||
|
||||
cd ruby-${pkgver}
|
||||
|
||||
make DESTDIR="${pkgdir}" install-doc install-capi
|
||||
|
||||
install -D -m644 COPYING "${pkgdir}/usr/share/licenses/ruby-docs/LICENSE"
|
||||
install -D -m644 BSDL "${pkgdir}/usr/share/licenses/ruby-docs/BSDL"
|
||||
}
|
||||
|
||||
package_ruby-stdlib() {
|
||||
# upstream list of gems contained in stdlib ( https://github.com/ruby/ruby/tree/master/{ext,lib} )
|
||||
pkgdesc='A vast collection of classes and modules that you can require in your code for additional features'
|
||||
|
||||
depends=(
|
||||
ruby-abbrev
|
||||
ruby-base64
|
||||
ruby-benchmark
|
||||
ruby-bigdecimal
|
||||
ruby-bundler
|
||||
ruby-cgi
|
||||
ruby-csv
|
||||
ruby-date
|
||||
#ruby-dbm # removed in 3.1.2
|
||||
#ruby-debug # removed in 3.1.2
|
||||
ruby-delegate
|
||||
ruby-did_you_mean
|
||||
ruby-digest
|
||||
ruby-drb
|
||||
ruby-english
|
||||
ruby-erb
|
||||
ruby-etc
|
||||
ruby-fcntl
|
||||
ruby-fiddle
|
||||
ruby-fileutils
|
||||
ruby-find
|
||||
ruby-forwardable
|
||||
#ruby-gdbm # removed in 3.1.2
|
||||
ruby-getoptlong
|
||||
ruby-io-console
|
||||
ruby-io-nonblock
|
||||
ruby-io-wait
|
||||
ruby-ipaddr
|
||||
ruby-irb
|
||||
ruby-json
|
||||
ruby-logger
|
||||
#ruby-matrix # removed in 3.1.2
|
||||
ruby-mutex_m
|
||||
#ruby-net-ftp # removed in 3.1.2
|
||||
ruby-net-http
|
||||
#ruby-net-imap # removed in 3.1.2
|
||||
#ruby-net-pop # removed in 3.1.2
|
||||
#ruby-net-protocol
|
||||
#ruby-net-smtp # removed in 3.1.2
|
||||
#ruby-nkf
|
||||
#ruby-observer
|
||||
ruby-open-uri
|
||||
#ruby-open3
|
||||
#ruby-openssl
|
||||
#ruby-optparse
|
||||
#ruby-ostruct
|
||||
#ruby-pathname
|
||||
#ruby-pp
|
||||
#ruby-prettyprint
|
||||
#ruby-prime # removed in 3.1.2
|
||||
#ruby-pstore
|
||||
ruby-psych
|
||||
ruby-racc
|
||||
ruby-rdoc
|
||||
#ruby-readline
|
||||
#ruby-readline-ext
|
||||
ruby-reline
|
||||
#ruby-resolv
|
||||
#ruby-resolv-replace
|
||||
#ruby-rinda
|
||||
#ruby-securerandom
|
||||
#ruby-set
|
||||
#ruby-shellwords
|
||||
#ruby-singleton
|
||||
ruby-stringio
|
||||
#ruby-strscan
|
||||
#ruby-syslog
|
||||
#ruby-tempfile
|
||||
ruby-time
|
||||
#ruby-timeout
|
||||
ruby-tmpdir
|
||||
#ruby-tracer # removed in 3.1.2
|
||||
#ruby-tsort
|
||||
#ruby-un
|
||||
ruby-uri
|
||||
#ruby-weakref
|
||||
#ruby-yaml
|
||||
#ruby-zlib
|
||||
|
||||
#ruby-error_highlight # new in 3.2.1
|
||||
#ruby2_keywords # new in 3.1.2 - already exists in [community]
|
||||
)
|
||||
}
|
||||
|
||||
package_ruby-bundledgems() {
|
||||
# upstream list of bundled gems ( https://github.com/ruby/ruby/blob/master/gems/bundled_gems )
|
||||
pkgdesc='Ruby Gems (third-party libraries) that are installed by default when Ruby is installed'
|
||||
|
||||
depends=(
|
||||
ruby-minitest
|
||||
ruby-power_assert
|
||||
ruby-rake
|
||||
#ruby-rbs
|
||||
ruby-rexml
|
||||
#ruby-rss
|
||||
ruby-test-unit
|
||||
#ruby-typeprof
|
||||
|
||||
# --- new in 3.1.2
|
||||
#ruby-debug
|
||||
#ruby-matrix
|
||||
#ruby-net-ftp
|
||||
#ruby-net-imap
|
||||
#ruby-net-pop
|
||||
#ruby-net-smtp
|
||||
#ruby-prime
|
||||
)
|
||||
}
|
Loading…
Reference in a new issue