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

Contents of /eclass/enlightenment.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.78 - (hide annotations) (download)
Mon Dec 8 11:55:31 2008 UTC (6 years ago) by pva
Branch: MAIN
Changes since 1.77: +3 -3 lines
After dicussion with vapier, updated e17 alias to enlightenment@g.o.

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

  ViewVC Help
Powered by ViewVC 1.1.20