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

Contents of /eclass/enlightenment.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.74 - (hide annotations) (download)
Sun Nov 30 03:18:30 2008 UTC (6 years, 2 months ago) by vapier
Branch: MAIN
Changes since 1.73: +4 -1 lines
pull in dev-util/cvs for live ebuilds as gettext (autopoint) needs it #245073 by Thomas Kuther

1 vapier 1.73 # Copyright 1999-2008 Gentoo Foundation
2 vapier 1.1 # Distributed under the terms of the GNU General Public License v2
3 vapier 1.74 # $Header: /var/cvsroot/gentoo-x86/eclass/enlightenment.eclass,v 1.73 2008/09/20 20:35:00 vapier Exp $
4 vapier 1.1 #
5     # Author: vapier@gentoo.org
6    
7 flameeyes 1.63 inherit eutils libtool
8 vapier 1.39
9 vapier 1.73 # E_STATE's:
10 vapier 1.55 # release [default]
11     # KEYWORDS arch
12     # SRC_URI $P.tar.gz
13     # S $WORKDIR/$P
14     #
15     # snap $PV has .200##### datestamp or .### counter
16     # KEYWORDS ~arch
17     # SRC_URI $P.tar.bz2
18     # S $WORKDIR/$P
19     #
20     # live $PV has a 9999 marker
21 vapier 1.72 # KEYWORDS ""
22 vapier 1.73 # SRC_URI cvs/svn/etc... up
23     # S $WORKDIR/$E_S_APPEND
24 vapier 1.55 #
25     # Overrides:
26     # KEYWORDS EKEY_STATE
27     # SRC_URI EURI_STATE
28     # S EURI_STATE
29    
30 vapier 1.73 #E_LIVE_DEFAULT_CVS="cvs.sourceforge.net:/cvsroot/enlightenment"
31     E_LIVE_SERVER_DEFAULT_CVS="anoncvs.enlightenment.org:/var/cvs/e"
32     E_LIVE_SERVER_DEFAULT_SVN="http://svn.enlightenment.org/svn/e/trunk"
33 vapier 1.62
34 vapier 1.73 E_STATE="release"
35 vapier 1.38 if [[ ${PV/9999} != ${PV} ]] ; then
36 vapier 1.73 E_LIVE_SERVER=${E_LIVE_SERVER:-${E_LIVE_SERVER_DEFAULT_SVN}}
37     E_STATE="live"
38     WANT_AUTOTOOLS="yes"
39    
40     # force people to opt-in to legacy cvs
41     if [[ -n ${ECVS_MODULE} ]] ; then
42     ECVS_SERVER=${ECVS_SERVER:-${E_LIVE_SERVER_DEFAULT_CVS}}
43     E_LIVE_SOURCE="cvs"
44     E_S_APPEND=${ECVS_MODULE}
45     inherit cvs
46     else
47     ESVN_URI_APPEND=${ESVN_URI_APPEND:-${PN}}
48     ESVN_PROJECT="enlightenment"
49     ESVN_REPO_URI=${ESVN_SERVER:-${E_LIVE_SERVER_DEFAULT_SVN}}/${ESVN_URI_APPEND}
50     E_S_APPEND=${ESVN_URI_APPEND}
51     E_LIVE_SOURCE="svn"
52     inherit subversion
53 vapier 1.27 fi
54 vapier 1.55 elif [[ ${PV/.200[3-9][0-1][0-9][0-3][0-9]/} != ${PV} ]] ; then
55 vapier 1.73 E_STATE="snap"
56 vapier 1.55 elif [[ ${PV%%.[0-9][0-9][0-9]} != ${PV} ]] ; then
57 vapier 1.73 E_STATE="snap"
58 vapier 1.55 EURI_STATE="release"
59 vapier 1.21 fi
60 vapier 1.68 if [[ ${WANT_AUTOTOOLS} == "yes" ]] ; then
61 vapier 1.73 WANT_AUTOCONF=${E_WANT_AUTOCONF:-latest}
62     WANT_AUTOMAKE=${E_WANT_AUTOMAKE:-latest}
63 vapier 1.68 inherit autotools
64     fi
65 vapier 1.21
66 vapier 1.2 DESCRIPTION="A DR17 production"
67 vapier 1.1 HOMEPAGE="http://www.enlightenment.org/"
68 vapier 1.73 case ${EURI_STATE:-${E_STATE}} in
69 vapier 1.42 release) SRC_URI="http://enlightenment.freedesktop.org/files/${P}.tar.gz mirror://sourceforge/enlightenment/${P}.tar.gz";;
70 vapier 1.23 snap) SRC_URI="mirror://gentoo/${P}.tar.bz2";;
71     live) SRC_URI="";;
72     esac
73 vapier 1.1
74 vapier 1.10 LICENSE="BSD"
75 vapier 1.2 SLOT="0"
76 vapier 1.73 case ${EKEY_STATE:-${E_STATE}} in
77 uberlord 1.69 release) KEYWORDS="alpha amd64 arm hppa ia64 mips ppc ppc64 sh sparc x86 ~x86-fbsd";;
78     snap) KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd";;
79 vapier 1.72 live) KEYWORDS="";;
80 vapier 1.28 esac
81 vapier 1.6 IUSE="nls doc"
82 vapier 1.1
83 vapier 1.35 DEPEND="doc? ( app-doc/doxygen )"
84 vapier 1.11 RDEPEND="nls? ( sys-devel/gettext )"
85 vapier 1.1
86 vapier 1.74 # gettext (via `autopoint`) needs to run cvs #245073
87     [[ ${E_STATE} == "live" ]] && DEPEND="${DEPEND} dev-util/cvs"
88    
89 vapier 1.73 case ${EURI_STATE:-${E_STATE}} in
90 vapier 1.27 release) S=${WORKDIR}/${P};;
91     snap) S=${WORKDIR}/${PN};;
92 vapier 1.73 live) S=${WORKDIR}/${E_S_APPEND};;
93 vapier 1.23 esac
94 vapier 1.2
95 vapier 1.3 enlightenment_warning_msg() {
96 vapier 1.73 if [[ -n ${E_LIVE_SERVER} ]] ; then
97     einfo "Using user server for live sources: ${E_LIVE_SERVER}"
98 vapier 1.65 fi
99 vapier 1.73 if [[ ${E_STATE} == "snap" ]] ; then
100 vapier 1.3 ewarn "Please do not contact the E team about bugs in Gentoo."
101     ewarn "Only contact vapier@gentoo.org via e-mail or bugzilla."
102 vapier 1.73 ewarn "Remember, this stuff is DEV only code so dont cry when"
103 vapier 1.3 ewarn "I break you :)."
104 vapier 1.73 elif [[ ${E_STATE} == "live" ]] ; then
105     eerror "This is a LIVE SOURCES ebuild."
106 vapier 1.36 eerror "That means there are NO promises it will work."
107     eerror "If it fails to build, FIX THE CODE YOURSELF"
108     eerror "before reporting any issues."
109 vapier 1.3 fi
110     }
111    
112 vapier 1.16 enlightenment_die() {
113     enlightenment_warning_msg
114     die "$@"$'\n'"!!! SEND BUG REPORTS TO vapier@gentoo.org NOT THE E TEAM"
115     }
116    
117 vapier 1.3 enlightenment_pkg_setup() {
118     enlightenment_warning_msg
119     }
120    
121 vapier 1.1 # the stupid gettextize script prevents non-interactive mode, so we hax it
122     gettext_modify() {
123     use nls || return 0
124 vapier 1.71 cp $(type -P gettextize) "${T}"/ || die "could not copy gettextize"
125 vapier 1.44 sed -i \
126     -e 's:read dummy < /dev/tty::' \
127     "${T}"/gettextize
128 vapier 1.2 }
129    
130     enlightenment_src_unpack() {
131 vapier 1.73 if [[ ${E_STATE} == "live" ]] ; then
132     case ${E_LIVE_SOURCE} in
133     cvs) cvs_src_unpack;;
134     svn) subversion_src_unpack;;
135     *) die "eek!";;
136     esac
137 vapier 1.30 else
138     unpack ${A}
139     fi
140 vapier 1.2 gettext_modify
141 vapier 1.47 [[ -s gendoc ]] && chmod a+rx gendoc
142 vapier 1.2 }
143    
144     enlightenment_src_compile() {
145 vapier 1.64 # gstreamer sucks, work around it doing stupid stuff
146     export GST_REGISTRY="${S}/registry.xml"
147    
148 vapier 1.56 if [[ ! -e configure ]] ; then
149 vapier 1.23 env \
150     PATH="${T}:${PATH}" \
151     NOCONFIGURE=yes \
152     USER=blah \
153     ./autogen.sh \
154     || enlightenment_die "autogen failed"
155 vapier 1.48 # symlinked files will cause sandbox violation
156 vapier 1.66 local x
157 vapier 1.48 for x in config.{guess,sub} ; do
158     [[ ! -L ${x} ]] && continue
159     rm -f ${x}
160     touch ${x}
161     done
162 vapier 1.68 elif [[ ${WANT_AUTOTOOLS} == "yes" ]] ; then
163     eautoreconf
164 vapier 1.4 fi
165 vapier 1.39 epunt_cxx
166 flameeyes 1.63 elibtoolize
167 vapier 1.16 econf ${MY_ECONF} || enlightenment_die "econf failed"
168     emake || enlightenment_die "emake failed"
169 vapier 1.38 use doc && [[ -x ./gendoc ]] && { ./gendoc || enlightenment_die "gendoc failed" ; }
170 vapier 1.2 }
171    
172     enlightenment_src_install() {
173 vapier 1.70 emake install DESTDIR="${D}" || enlightenment_die
174 vapier 1.73 find "${D}" '(' -name CVS -o -name .svn -o -name .git ')' -type d -exec rm -rf '{}' \; 2>/dev/null
175 vapier 1.9 dodoc AUTHORS ChangeLog NEWS README TODO ${EDOCS}
176 vapier 1.38 use doc && [[ -d doc ]] && dohtml -r doc/*
177 vapier 1.3 }
178    
179     enlightenment_pkg_postinst() {
180     enlightenment_warning_msg
181 vapier 1.1 }
182 vapier 1.70
183     EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_install pkg_postinst

  ViewVC Help
Powered by ViewVC 1.1.20