summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Elio 'Flameeyes' Pettenò <flameeyes@gmail.com>2010-01-03 14:52:31 +0100
committerDiego Elio 'Flameeyes' Pettenò <flameeyes@gmail.com>2010-01-03 14:52:31 +0100
commitdf31d39bc8e19ba6bb73ddc361a14401824d5a2b (patch)
treeb43134ed8ab95f86d021101efbcccea7c0025000
parentJRuby 1.3.1-r1 in main tree is fixed. (diff)
downloadruby-scripts-df31d39bc8e19ba6bb73ddc361a14401824d5a2b.tar.gz
ruby-scripts-df31d39bc8e19ba6bb73ddc361a14401824d5a2b.tar.bz2
ruby-scripts-df31d39bc8e19ba6bb73ddc361a14401824d5a2b.zip
Remove fakegem eclass.
-rw-r--r--ruby-ng-testbed/eclass/ruby-fakegem.eclass264
1 files changed, 0 insertions, 264 deletions
diff --git a/ruby-ng-testbed/eclass/ruby-fakegem.eclass b/ruby-ng-testbed/eclass/ruby-fakegem.eclass
deleted file mode 100644
index 4a247d8..0000000
--- a/ruby-ng-testbed/eclass/ruby-fakegem.eclass
+++ /dev/null
@@ -1,264 +0,0 @@
-# Copyright 1999-2009 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ruby.eclass,v 1.75 2009/03/03 15:51:54 a3li Exp $
-#
-# @ECLASS: ruby-fakegem.eclass
-# @MAINTAINER:
-# Ruby herd <ruby@gentoo.org>
-#
-# Author: Diego E. Pettenò <flameeyes@gentoo.org>
-#
-# Author: Alex Legler <a3li@gentoo.org>
-#
-# @BLURB: An eclass for installing Ruby packages to behave like RubyGems.
-# @DESCRIPTION:
-# This eclass allows to install arbitrary Ruby libraries (including Gems),
-# providing integration into the RubyGems system even for "regular" packages.
-#
-
-inherit ruby-ng
-
-# @ECLASS-VARIABLE: RUBY_FAKEGEM_NAME
-# @DESCRIPTION:
-# Sets the Gem name for the generated fake gemspec.
-# RUBY_FAKEGEM_NAME="${PN}"
-
-# @ECLASS-VARIABLE: RUBY_FAKEGEM_VERSION
-# @DESCRIPTION:
-# Sets the Gem version for the generated fake gemspec.
-# RUBY_FAKEGEM_VERSION="${PV}"
-
-# @ECLASS-VARIABLE: RUBY_FAKEGEM_TASK_DOC
-# @DESCRIPTION:
-# Specify the rake(1) task to run to generate documentation.
-# RUBY_FAKEGEM_VERSION="rdoc"
-
-# @ECLASS-VARIABLE: RUBY_FAKEGEM_TASK_TEST
-# @DESCRIPTION:
-# Specify the rake(1) task used for executing tests.
-# RUBY_FAKEGEM_VERSION="test"
-
-RUBY_FAKEGEM_NAME="${RUBY_FAKEGEM_NAME:-${PN}}"
-RUBY_FAKEGEM_VERSION="${RUBY_FAKEGEM_VERSION:-${PV}}"
-
-RUBY_FAKEGEM_TASK_DOC="${RUBY_FAKEGEM_TASK_DOC-rdoc}"
-RUBY_FAKEGEM_TASK_TEST="${RUBY_FAKEGEM_TASK_TEST-test}"
-
-if [[ ${RUBY_FAKEGEM_TASK_DOC} != "" ]]; then
- IUSE="$IUSE doc"
- ruby_add_bdepend doc "dev-ruby/rake"
-fi
-
-if [[ ${RUBY_FAKEGEM_TASK_TEST} != "" ]]; then
- IUSE="$IUSE test"
- ruby_add_bdepend test "dev-ruby/rake"
-fi
-
-ruby_add_rdepend virtual/rubygems
-
-# @FUNCTION: ruby_fakegem_gemsdir
-# @RETURN: Returns the gem data directory
-# @DESCRIPTION:
-# This function returns the gems data directory for the ruby
-# implementation in question.
-ruby_fakegem_gemsdir() {
- local _gemsitedir=$(${RUBY} -r rbconfig -e 'print Config::CONFIG["sitelibdir"]' | sed -e 's:site_ruby:gems:')
-
- [[ -z ${_gemsitedir} ]] && {
- eerror "Unable to find the gems dir"
- die "Unable to find the gems dir"
- }
-
- echo "${_gemsitedir}"
-}
-
-# @FUNCTION: ruby_fakegem_doins
-# @USAGE: file [file...]
-# @DESCRIPTION:
-# Installs the specified file(s) into the gems directory.
-ruby_fakegem_doins() {
- (
- insinto $(ruby_fakegem_gemsdir)/gems/${RUBY_FAKEGEM_NAME}-${RUBY_FAKEGEM_VERSION}
- doins "$@"
- ) || die "failed $0 $@"
-}
-
-# @FUNCTION: ruby_fakegem_newsins()
-# @USAGE: file filename
-# @DESCRIPTION:
-# Installs the specified file into the gems directory using the provided filename.
-ruby_fakegem_newins() {
- (
- # Since newins does not accept full paths but just basenames
- # for the target file, we want to extend it here.
- local newdirname=/$(dirname "$2")
- [[ ${newdirname} == "/." ]] && newdirname=
-
- local newbasename=$(basename "$2")
-
- insinto $(ruby_fakegem_gemsdir)/gems/${RUBY_FAKEGEM_NAME}-${RUBY_FAKEGEM_VERSION}${newdirname}
- newins "$1" ${newbasename}
- ) || die "failed $0 $@"
-}
-
-# @FUNCTION: ruby_fakegem_genspec
-# @DESCRIPTION:
-# Generates a gemspec for the package and places it into the "specifications"
-# directory of RubyGems.
-# In the gemspec, the following values are set: name, version, summary,
-# homepage, and require_paths=["lib"].
-# See RUBY_FAKEGEM_NAME and RUBY_FAKEGEM_VERSION for setting name and version.
-ruby_fakegem_genspec() {
- (
- # We use the _ruby_implementation variable to avoid having stray
- # copies with different implementations; while for now we're using
- # the same exact content, we might have differences in the future,
- # so better taking this into consideration.
- cat - > "${T}"/${RUBY_FAKEGEM_NAME}-${_ruby_implementation} <<EOF
-Gem::Specification.new do |s|
- s.name = "${RUBY_FAKEGEM_NAME}"
- s.version = "${RUBY_FAKEGEM_VERSION}"
- s.summary = "${DESCRIPTION}"
- s.homepage = "${HOMEPAGE}"
- s.require_paths = ["lib"]
-end
-EOF
-
- insinto $(ruby_fakegem_gemsdir)/specifications
- newins "${T}"/${RUBY_FAKEGEM_NAME}-${_ruby_implementation} ${RUBY_FAKEGEM_NAME}-${RUBY_FAKEGEM_VERSION}.gemspec
- ) || die "Unable to install fake gemspec"
-}
-
-# @FUNCTION: ruby_fakegem_binwrapper
-# @USAGE: command [path]
-# @DESCRIPTION:
-# Creates a new binary wrapper for a command installed by the RubyGem.
-# path defaults to /usr/bin/$command
-ruby_fakegem_binwrapper() {
- (
- local gembinary=$1
- local newbinary=${2:-/usr/bin/$gembinary}
-
- cat - > "${T}"/gembin-wrapper-${gembinary} <<EOF
-#!/usr/bin/env ruby
-# This is a simplified version of the RubyGems wrapper
-#
-# Generated by ruby-fakegem.eclass
-
-require 'rubygems'
-
-load Gem::GemPathSearcher.new.find('$(tr [A-Z] [a-z] <<< ${RUBY_FAKEGEM_NAME})').full_gem_path + "/bin/${gembinary}"
-
-EOF
-
- exeinto $(dirname $newbinary)
- newexe "${T}"/gembin-wrapper-${gembinary} $(basename $newbinary)
- ) || die "Unable to create fakegem wrapper"
-}
-
-# @FUNCTION: all_fakegem_compile
-# @DESCRIPTION:
-# Build documentation for the package if indicated by the doc USE flag
-# and if there is a documetation task defined.
-all_fakegem_compile() {
- if [[ ${RUBY_FAKEGEM_TASK_DOC} != "" ]] && use doc; then
- rake ${RUBY_FAKEGEM_TASK_DOC} || die "failed to (re)build documentation"
- fi
-}
-
-# @FUNCTION: all_ruby_unpack
-# @DESCRIPTION:
-# Unpack the source archive, including support for unpacking gems.
-all_ruby_unpack() {
- # Special support for extracting .gem files; the file need to be
- # extracted twice and the mtime from the archive _has_ to be
- # ignored (it's always set to epoch 0).
- #
- # This only works if there is exactly one archive and that archive
- # is a .gem file!
- if [[ $(wc -w <<< ${A}) == 1 ]] &&
- [[ ${A} == *.gem ]]; then
- ebegin "Unpacking .gem file..."
- tar -mxf ${DISTDIR}/${A} || die
- eend $?
-
- mkdir "${S}"
- pushd "${S}"
-
- ebegin "Unpacking data.tar.gz"
- tar -mxf "${my_WORKDIR}"/data.tar.gz || die
- eend $?
- else
- [[ -n ${A} ]] && unpack ${A}
- fi
-}
-
-# @FUNCTION: all_ruby_compile
-# @DESCRIPTION:
-# Compile the package.
-all_ruby_compile() {
- all_fakegem_compile
-}
-
-# @FUNCTION: each_fakegem_test
-# @DESCRIPTION:
-# Run tests for the package for each ruby target if the test task is defined.
-each_fakegem_test() {
- local rubyflags=
-
- if [[ ${RUBY_FAKEGEM_TASK_TEST} != "" ]]; then
- ${RUBY} ${rubyflags} -S rake ${RUBY_FAKEGEM_TASK_TEST} || die "tests failed"
- else
- echo "No test task defined, skipping tests."
- fi
-}
-
-# @FUNCTION: each_ruby_test
-# @DESCRIPTION:
-# Run the tests for this package.
-each_ruby_test() {
- each_fakegem_test
-}
-
-# @FUNCTION: each_fakegem_install
-# @DESCRIPTION:
-# Install the package for each ruby target.
-each_fakegem_install() {
- ruby_fakegem_genspec
-
- local _gemlibdirs=
- for directory in bin lib ${RUBY_FAKEGEM_EXTRAINSTALL}; do
- [[ -d ${directory} ]] && _gemlibdirs="${_gemlibdirs} ${directory}"
- done
-
- ruby_fakegem_doins -r ${_gemlibdirs}
-}
-
-# @FUNCTION: each_ruby_install
-# @DESCRIPTION:
-# Install the package for each target.
-each_ruby_install() {
- each_fakegem_install
-}
-
-# @FUNCTION: all_fakegem_install
-# @DESCRIPTION:
-# Install files common to all ruby targets.
-all_fakegem_install() {
- if [[ -n ${RUBY_FAKEGEM_DOCDIR} ]] && use doc; then
- pushd ${RUBY_FAKEGEM_DOCDIR}
- dohtml -r * || die "failed to install documentation"
- popd
- fi
-
- if [[ -n ${RUBY_FAKEGEM_EXTRADOC} ]]; then
- dodoc ${RUBY_FAKEGEM_EXTRADOC} || die "failed to install further documentation"
- fi
-}
-
-# @FUNCTION: all_ruby_install
-# @DESCRIPTION:
-# Install files common to all ruby targets.
-all_ruby_install() {
- all_fakegem_install
-}