diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2014-05-27 16:20:23 +0200 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2014-05-27 16:28:25 +0200 |
commit | 787cd0769f045e3c61d1005788fac3179f29cc53 (patch) | |
tree | c9418e66616e20fafe765e773aec0c27a13d0b33 | |
parent | 031ea716821860461a103a98931aefc87ee1e6b8 (diff) | |
download | aports-787cd0769f045e3c61d1005788fac3179f29cc53.tar.bz2 aports-787cd0769f045e3c61d1005788fac3179f29cc53.tar.xz |
testing/ruby-posix-spawn: new aport
posix-spawn uses posix_spawnp(2) for faster process spawning
http://rubygems.org/gems/posix-spawn
-rw-r--r-- | testing/ruby-posix-spawn/0001-Only-use-POSIX_SPAWN_USEVFORK-if-defined-or-if-GNU-l.patch | 32 | ||||
-rw-r--r-- | testing/ruby-posix-spawn/APKBUILD | 58 |
2 files changed, 90 insertions, 0 deletions
diff --git a/testing/ruby-posix-spawn/0001-Only-use-POSIX_SPAWN_USEVFORK-if-defined-or-if-GNU-l.patch b/testing/ruby-posix-spawn/0001-Only-use-POSIX_SPAWN_USEVFORK-if-defined-or-if-GNU-l.patch new file mode 100644 index 0000000000..3779295bda --- /dev/null +++ b/testing/ruby-posix-spawn/0001-Only-use-POSIX_SPAWN_USEVFORK-if-defined-or-if-GNU-l.patch @@ -0,0 +1,32 @@ +From d8872a3274bb6d5b0ab327c4b85792009970c841 Mon Sep 17 00:00:00 2001 +From: Natanael Copa <ncopa@alpinelinux.org> +Date: Tue, 27 May 2014 15:20:28 +0200 +Subject: [PATCH] Only use POSIX_SPAWN_USEVFORK if defined or if GNU libc + +musl libc does not have it + +fixes #54 +--- + ext/posix-spawn.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/ext/posix-spawn.c b/ext/posix-spawn.c +index 501423d..29101f8 100644 +--- a/ext/posix-spawn.c ++++ b/ext/posix-spawn.c +@@ -396,9 +396,9 @@ rb_posixspawn_pspawn(VALUE self, VALUE env, VALUE argv, VALUE options) + sigemptyset(&mask); + posix_spawnattr_setsigmask(&attr, &mask); + +-#if defined(POSIX_SPAWN_USEVFORK) || defined(__linux__) +- /* Force USEVFORK on linux. If this is undefined, it's probably because +- * you forgot to define _GNU_SOURCE at the top of this file. ++#if defined(POSIX_SPAWN_USEVFORK) || defined(__GLIBC__) ++ /* Force USEVFORK on GNU libc. If this is undefined, it's probably ++ * because you forgot to define _GNU_SOURCE at the top of this file. + */ + flags |= POSIX_SPAWN_USEVFORK; + #endif +-- +1.9.3 + diff --git a/testing/ruby-posix-spawn/APKBUILD b/testing/ruby-posix-spawn/APKBUILD new file mode 100644 index 0000000000..d8378f7ff3 --- /dev/null +++ b/testing/ruby-posix-spawn/APKBUILD @@ -0,0 +1,58 @@ +# Contributor: Seung Soo Mun <hamletmun@gmail.com> +# Maintainer: +_gemname=posix-spawn +pkgname=ruby-$_gemname +pkgver=0.3.8 +pkgrel=0 +pkgdesc="posix-spawn uses posix_spawnp(2) for faster process spawning" +url="http://rubygems.org/gems/$_gemname" +arch="all" +license="MIT" +depends="ruby" +depends_dev="" +makedepends="$depends_dev" +install="" +subpackages="" +source="http://gems.rubyforge.org/gems/$_gemname-$pkgver.gem + 0001-Only-use-POSIX_SPAWN_USEVFORK-if-defined-or-if-GNU-l.patch + " + +_builddir="$srcdir"/$_realname-$pkgver + +prepare() { + cd "$srcdir" + gem unpack $_gemname-$pkgver.gem || return 1 + rm $_gemname-$pkgver.gem + cd $_gemname-$pkgver || return 1 + for i in $source; do + case $i in + *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;; + esac + done + gem build $_gemname.gemspec + mv *.gem .. || return 1 +} + +build() { + return 0 +} + +package() { + local _gemdir="$(ruby -rubygems -e'puts Gem.default_dir')" + local _geminstdir=$_gemdir/gems/$_gemname-$pkgver + mkdir -p "$pkgdir" || return 1 + + gem install --local --install-dir "$pkgdir"/$_gemdir \ + --ignore-dependencies --verbose --no-rdoc --no-ri \ + "$srcdir"/$_gemname-$pkgver.gem || return 1 + rm -rf "$pkgdir"/$_gemdir/cache \ + "$pkgdir"/$_geminstdir/ext \ + "$pkgdir"/$_geminstdir/.require_paths +} + +md5sums="bcde276ff03e0f80c42981bb1c3cfcf8 posix-spawn-0.3.8.gem +ab5beb84d3950d6b6a327c8c9cb25fa0 0001-Only-use-POSIX_SPAWN_USEVFORK-if-defined-or-if-GNU-l.patch" +sha256sums="2185d0834e8a097178caaffb4955245a0ae6195ad764804c8d9f0814e2771469 posix-spawn-0.3.8.gem +1d5b769023142eca39351ac60795ab8976be7520ff11eda8f5365f0b4b651a23 0001-Only-use-POSIX_SPAWN_USEVFORK-if-defined-or-if-GNU-l.patch" +sha512sums="0a03cd8dd11ea3c61db2bff2ecefdfac66978a3a75d3e42aaa59203422fc36e3f03fbede13a71629f80d260e3e95cf24f84ab9f7353cf5816d3c8b630cc2945e posix-spawn-0.3.8.gem +59d171b4165d08eee8252a5a3d51c3806884a0a3dca12c01c7edcee4036b27f430a14792aaa12bb3764feaf70158986b67365572422f0b5075a94acac6555757 0001-Only-use-POSIX_SPAWN_USEVFORK-if-defined-or-if-GNU-l.patch" |