/[gentoo-x86]/eclass/gems.eclass
Gentoo

Contents of /eclass/gems.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.20 - (hide annotations) (download)
Wed Jan 16 05:52:20 2008 UTC (6 years, 8 months ago) by nichoj
Branch: MAIN
Changes since 1.19: +20 -37 lines
Updated rubygems dependency to be >= 0.9, in order to remove obsoleted workaround for gem not returning a proper exit code. This fixes bug #202688. Removed unneeded setting of S. Re-ordered src_* functions to be in order. Use long command line options for gem, to be more clear what it's doing.

1 pythonhead 1.1 # Copyright 1999-2005 Gentoo Foundation
2     # Distributed under the terms of the GNU General Public License v2
3 nichoj 1.20 # $Header: /var/cvsroot/gentoo-x86/eclass/gems.eclass,v 1.19 2008/01/11 00:22:03 rbrown Exp $
4 pythonhead 1.1 #
5     # Author: Rob Cakebread <pythonhead@gentoo.org>
6 caleb 1.9 # Current Maintainer: Ruby Herd <ruby@gentoo.org>
7 pythonhead 1.1 #
8     # The gems eclass is designed to allow easier installation of
9 swegener 1.6 # gems-based ruby packagess and their incorporation into
10 pythonhead 1.1 # the Gentoo Linux system.
11     #
12     # - Features:
13 flameeyes 1.14 # gems_location() - Set ${GEMSDIR} with gem install dir and ${GEM_SRC} with path to gem to install
14     # gems_src_unpack() - Does nothing.
15 pythonhead 1.2 # gems_src_compile() - Does nothing.
16 nichoj 1.20 # gems_src_install() - installs a gem into ${D}
17 pythonhead 1.2 #
18     # NOTE:
19     # See http://dev.gentoo.org/~pythonhead/ruby/gems.html for notes on using gems with portage
20 pythonhead 1.1
21    
22 nichoj 1.20 inherit eutils ruby
23 pythonhead 1.1
24 nichoj 1.18 SRC_URI="http://gems.rubyforge.org/gems/${P}.gem"
25    
26     IUSE="doc"
27 pythonhead 1.1
28 nichoj 1.20 DEPEND=">=dev-ruby/rubygems-0.9.4
29 caleb 1.7 !dev-ruby/rdoc"
30 pythonhead 1.1
31     gems_location() {
32     local sitelibdir
33 nichoj 1.20 sitelibdir=$(ruby -r rbconfig -e 'print Config::CONFIG["sitelibdir"]')
34 pythonhead 1.1 export GEMSDIR=${sitelibdir/site_ruby/gems}
35 pythonhead 1.2
36 pythonhead 1.1 }
37    
38     gems_src_unpack() {
39 nichoj 1.20 true
40     }
41    
42     gems_src_compile() {
43 pythonhead 1.1 true
44     }
45    
46     gems_src_install() {
47     gems_location
48 pythonhead 1.2
49 nichoj 1.20 if [[ -z "${MY_P}" ]]; then
50     [[ -z "${GEM_SRC}" ]] && GEM_SRC="${DISTDIR}/${P}"
51     spec_path="${D}/${GEMSDIR}/specifications/${P}.gemspec"
52 pythonhead 1.2 else
53 nichoj 1.20 [[ -z "${GEM_SRC}" ]] && GEM_SRC="${DISTDIR}/${MY_P}"
54     spec_path="${D}/${GEMSDIR}/specifications/${MY_P}.gemspec"
55 pythonhead 1.2 fi
56    
57 nichoj 1.20 local myconf
58 caleb 1.8 if use doc; then
59 nichoj 1.20 myconf="--rdoc --ri"
60 caleb 1.8 else
61 nichoj 1.20 myconf="--no-rdoc --no-ri"
62 pclouds 1.12 fi
63    
64 pythonhead 1.1 dodir ${GEMSDIR}
65 nichoj 1.20 gem install ${GEM_SRC} --version ${PV} ${myconf} \
66     --local --install-dir "${D}/${GEMSDIR}" || die "gem install failed"
67 swegener 1.6
68 nichoj 1.20 if [[ -d "${D}/${GEMSDIR}/bin" ]] ; then
69 pythonhead 1.1 exeinto /usr/bin
70     for exe in ${D}/${GEMSDIR}/bin/* ; do
71     doexe ${exe}
72     done
73     fi
74     }
75    
76 pythonhead 1.2 EXPORT_FUNCTIONS src_unpack src_compile src_install

  ViewVC Help
Powered by ViewVC 1.1.20