summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNguyen Thai Ngoc Duy <pclouds@gentoo.org>2007-09-03 08:50:51 +0000
committerNguyen Thai Ngoc Duy <pclouds@gentoo.org>2007-09-03 08:50:51 +0000
commita30542869e50192861344aabf11d3baae24ca3cf (patch)
tree182ab884dc84623fd19da6675f7325da4fd62184 /dev-ruby
parentFix freeStacks() in single-threaded builds without dynamic stack shifting. (diff)
downloadgentoo-2-a30542869e50192861344aabf11d3baae24ca3cf.tar.gz
gentoo-2-a30542869e50192861344aabf11d3baae24ca3cf.tar.bz2
gentoo-2-a30542869e50192861344aabf11d3baae24ca3cf.zip
Add initscript for gem_server. The script was contributed by Henning Schild <henning@wh9.tu-dresden.de>, #186937
(Portage version: 2.1.3_rc8)
Diffstat (limited to 'dev-ruby')
-rw-r--r--dev-ruby/rubygems/ChangeLog10
-rw-r--r--dev-ruby/rubygems/files/conf.d-gem_server5
-rw-r--r--dev-ruby/rubygems/files/digest-rubygems-0.9.4-r13
-rw-r--r--dev-ruby/rubygems/files/init.d-gem_server22
-rw-r--r--dev-ruby/rubygems/rubygems-0.9.4-r1.ebuild88
5 files changed, 127 insertions, 1 deletions
diff --git a/dev-ruby/rubygems/ChangeLog b/dev-ruby/rubygems/ChangeLog
index 07651984f7fb..8ec8828bcc1e 100644
--- a/dev-ruby/rubygems/ChangeLog
+++ b/dev-ruby/rubygems/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for dev-ruby/rubygems
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-ruby/rubygems/ChangeLog,v 1.68 2007/08/24 11:06:42 graaff Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-ruby/rubygems/ChangeLog,v 1.69 2007/09/03 08:50:51 pclouds Exp $
+
+*rubygems-0.9.4-r1 (03 Sep 2007)
+
+ 03 Sep 2007; Nguyễn Thái Ngọc Duy <pclouds@gentoo.org>
+ +files/conf.d-gem_server, +files/init.d-gem_server,
+ +rubygems-0.9.4-r1.ebuild:
+ Add initscript for gem_server. The script was contributed by Henning Schild
+ <henning@wh9.tu-dresden.de>, #186937
24 Aug 2007; Hans de Graaff <graaff@gentoo.org> rubygems-0.9.4.ebuild:
Fix silly typo, thanks to marc_alec
diff --git a/dev-ruby/rubygems/files/conf.d-gem_server b/dev-ruby/rubygems/files/conf.d-gem_server
new file mode 100644
index 000000000000..b9cfa3f557ee
--- /dev/null
+++ b/dev-ruby/rubygems/files/conf.d-gem_server
@@ -0,0 +1,5 @@
+# /etc/conf.d/gem_server
+
+# See `gem_server --help` for more
+
+GEM_SERVER_OPTS=""
diff --git a/dev-ruby/rubygems/files/digest-rubygems-0.9.4-r1 b/dev-ruby/rubygems/files/digest-rubygems-0.9.4-r1
new file mode 100644
index 000000000000..29a12d32c242
--- /dev/null
+++ b/dev-ruby/rubygems/files/digest-rubygems-0.9.4-r1
@@ -0,0 +1,3 @@
+MD5 b5680acaa019c80ea44fe87cc2e227da rubygems-0.9.4.tgz 204841
+RMD160 6ee02db45173f05e6f8c5b1ecd5af832fb8601f8 rubygems-0.9.4.tgz 204841
+SHA256 b4d47bcfe2f3b08f7c3bb659a2f4e34a3fa9c1135ba98ad3272753753c354e5c rubygems-0.9.4.tgz 204841
diff --git a/dev-ruby/rubygems/files/init.d-gem_server b/dev-ruby/rubygems/files/init.d-gem_server
new file mode 100644
index 000000000000..1600bdc12349
--- /dev/null
+++ b/dev-ruby/rubygems/files/init.d-gem_server
@@ -0,0 +1,22 @@
+#!/sbin/runscript
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+PID=/var/run/gem_server.pid
+
+depend() {
+ need localmount net
+}
+
+start() {
+ ebegin "Starting gem_server"
+ start-stop-daemon --start --chuid nobody --quiet --background --make-pidfile \
+ --pidfile ${PID} --exec /usr/bin/ruby -- /usr/bin/gem_server ${GEM_SERVER_OPTS}
+ eend ${?}
+}
+
+stop() {
+ ebegin "Stopping gem_server"
+ start-stop-daemon --stop --pidfile ${PID}
+ eend ${?}
+}
diff --git a/dev-ruby/rubygems/rubygems-0.9.4-r1.ebuild b/dev-ruby/rubygems/rubygems-0.9.4-r1.ebuild
new file mode 100644
index 000000000000..71da31fab145
--- /dev/null
+++ b/dev-ruby/rubygems/rubygems-0.9.4-r1.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-ruby/rubygems/rubygems-0.9.4-r1.ebuild,v 1.1 2007/09/03 08:50:51 pclouds Exp $
+
+inherit ruby
+
+DESCRIPTION="Centralized Ruby extension management system"
+HOMEPAGE="http://rubyforge.org/projects/rubygems/"
+LICENSE="Ruby"
+
+# Needs to be installed first
+RESTRICT="test"
+
+# The URL depends implicitly on the version, unfortunately. Even if you
+# change the filename on the end, it still downloads the same file.
+SRC_URI="http://rubyforge.org/frs/download.php/20989/${P}.tgz"
+
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+SLOT="0"
+IUSE="doc server examples"
+DEPEND=">=dev-lang/ruby-1.8"
+PDEPEND="server? ( dev-ruby/builder )" # index_gem_repository.rb
+
+PATCHES="${FILESDIR}/${PN}-0.9.1-no_post_install.patch
+ ${FILESDIR}/no-system-rubygems.patch"
+USE_RUBY="ruby18"
+
+src_unpack() {
+ ruby_src_unpack
+ use doc || epatch "${FILESDIR}/${PN}-0.9.1-no_rdoc_install.patch"
+
+ # Delete mis-packaged . files
+ cd "${S}"
+ find -name '.*' -type f -print0|xargs -0 rm
+}
+
+src_compile() {
+ ${RUBY} setup.rb config --libruby="/usr/$(get_libdir)/ruby" || die "setup.rb config failed"
+ ${RUBY} setup.rb setup || die "setup.rb setup failed"
+}
+
+src_test() {
+ # Currently RESTRICTed because rubygems needs to be installed
+ # When I work out how to get around that I'll remove the RETRICT
+
+ #for i in test/{test,functional}*.rb; do
+ # ruby -I pkgs/sources/lib/ -I lib ${i} # || die "$i failed"
+ #done
+ ruby setup.rb test || die "test failed"
+}
+
+src_install() {
+ # RUBYOPT=-rauto_gem without rubygems installed will cause ruby to fail, bug #158455
+ export RUBYOPT="${GENTOO_RUBYOPT}"
+
+ # Fix GEM_HOME to install sources.gem
+ ver=$(${RUBY} -r rbconfig -e 'print Config::CONFIG["ruby_version"]')
+ export GEM_HOME="${D}usr/$(get_libdir)/ruby/gems/${ver}"
+
+ ${RUBY} setup.rb install --prefix=${D} || die "setup.rb install failed"
+ erubydoc
+ cp "${FILESDIR}/auto_gem.rb" "${D}"/$(${RUBY} -r rbconfig -e 'print Config::CONFIG["sitedir"]')
+ keepdir /usr/$(get_libdir)/ruby/gems/$ver/doc
+ doenvd "${FILESDIR}/10rubygems"
+
+ if use server; then
+ newinitd "${FILESDIR}/init.d-gem_server" gem_server
+ newconfd "${FILESDIR}/conf.d-gem_server" gem_server
+ fi
+}
+
+pkg_postinst()
+{
+ ewarn "If you have previously switched to using ruby18_with_gems using ruby-config, this"
+ ewarn "package has removed that file and makes it unnecessary anymore."
+ ewarn "Please use ruby-config to revert back to ruby18."
+}
+
+pkg_postrm()
+{
+ ewarn "If you have uninstalled dev-ruby/rubygems. Ruby applications are unlikely"
+ ewarn "to run in current shells because of missing auto_gem."
+ ewarn "Please run \"unset RUBYOPT\" in your shells before using ruby"
+ ewarn "or start new shells"
+ ewarn
+ ewarn "If you have not uninstalled dev-ruby/rubygems, please do not unset "
+ ewarn "RUBYOPT"
+}