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

Contents of /eclass/enlightenment.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.73 - (hide annotations) (download)
Sat Sep 20 20:35:00 2008 UTC (5 years, 6 months ago) by vapier
Branch: MAIN
Changes since 1.72: +47 -36 lines
add support for svn #237852 by Thomas 'gimpel' Kuther and Night Nord

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.73 # $Header: /var/cvsroot/gentoo-x86/eclass/enlightenment.eclass,v 1.72 2007/04/20 04:30:18 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.73 case ${EURI_STATE:-${E_STATE}} in
87 vapier 1.27 release) S=${WORKDIR}/${P};;
88     snap) S=${WORKDIR}/${PN};;
89 vapier 1.73 live) S=${WORKDIR}/${E_S_APPEND};;
90 vapier 1.23 esac
91 vapier 1.2
92 vapier 1.3 enlightenment_warning_msg() {
93 vapier 1.73 if [[ -n ${E_LIVE_SERVER} ]] ; then
94     einfo "Using user server for live sources: ${E_LIVE_SERVER}"
95 vapier 1.65 fi
96 vapier 1.73 if [[ ${E_STATE} == "snap" ]] ; then
97 vapier 1.3 ewarn "Please do not contact the E team about bugs in Gentoo."
98     ewarn "Only contact vapier@gentoo.org via e-mail or bugzilla."
99 vapier 1.73 ewarn "Remember, this stuff is DEV only code so dont cry when"
100 vapier 1.3 ewarn "I break you :)."
101 vapier 1.73 elif [[ ${E_STATE} == "live" ]] ; then
102     eerror "This is a LIVE SOURCES ebuild."
103 vapier 1.36 eerror "That means there are NO promises it will work."
104     eerror "If it fails to build, FIX THE CODE YOURSELF"
105     eerror "before reporting any issues."
106 vapier 1.3 fi
107     }
108    
109 vapier 1.16 enlightenment_die() {
110     enlightenment_warning_msg
111     die "$@"$'\n'"!!! SEND BUG REPORTS TO vapier@gentoo.org NOT THE E TEAM"
112     }
113    
114 vapier 1.3 enlightenment_pkg_setup() {
115     enlightenment_warning_msg
116     }
117    
118 vapier 1.1 # the stupid gettextize script prevents non-interactive mode, so we hax it
119     gettext_modify() {
120     use nls || return 0
121 vapier 1.71 cp $(type -P gettextize) "${T}"/ || die "could not copy gettextize"
122 vapier 1.44 sed -i \
123     -e 's:read dummy < /dev/tty::' \
124     "${T}"/gettextize
125 vapier 1.2 }
126    
127     enlightenment_src_unpack() {
128 vapier 1.73 if [[ ${E_STATE} == "live" ]] ; then
129     case ${E_LIVE_SOURCE} in
130     cvs) cvs_src_unpack;;
131     svn) subversion_src_unpack;;
132     *) die "eek!";;
133     esac
134 vapier 1.30 else
135     unpack ${A}
136     fi
137 vapier 1.2 gettext_modify
138 vapier 1.47 [[ -s gendoc ]] && chmod a+rx gendoc
139 vapier 1.2 }
140    
141     enlightenment_src_compile() {
142 vapier 1.64 # gstreamer sucks, work around it doing stupid stuff
143     export GST_REGISTRY="${S}/registry.xml"
144    
145 vapier 1.56 if [[ ! -e configure ]] ; then
146 vapier 1.23 env \
147     PATH="${T}:${PATH}" \
148     NOCONFIGURE=yes \
149     USER=blah \
150     ./autogen.sh \
151     || enlightenment_die "autogen failed"
152 vapier 1.48 # symlinked files will cause sandbox violation
153 vapier 1.66 local x
154 vapier 1.48 for x in config.{guess,sub} ; do
155     [[ ! -L ${x} ]] && continue
156     rm -f ${x}
157     touch ${x}
158     done
159 vapier 1.68 elif [[ ${WANT_AUTOTOOLS} == "yes" ]] ; then
160     eautoreconf
161 vapier 1.4 fi
162 vapier 1.39 epunt_cxx
163 flameeyes 1.63 elibtoolize
164 vapier 1.16 econf ${MY_ECONF} || enlightenment_die "econf failed"
165     emake || enlightenment_die "emake failed"
166 vapier 1.38 use doc && [[ -x ./gendoc ]] && { ./gendoc || enlightenment_die "gendoc failed" ; }
167 vapier 1.2 }
168    
169     enlightenment_src_install() {
170 vapier 1.70 emake install DESTDIR="${D}" || enlightenment_die
171 vapier 1.73 find "${D}" '(' -name CVS -o -name .svn -o -name .git ')' -type d -exec rm -rf '{}' \; 2>/dev/null
172 vapier 1.9 dodoc AUTHORS ChangeLog NEWS README TODO ${EDOCS}
173 vapier 1.38 use doc && [[ -d doc ]] && dohtml -r doc/*
174 vapier 1.3 }
175    
176     enlightenment_pkg_postinst() {
177     enlightenment_warning_msg
178 vapier 1.1 }
179 vapier 1.70
180     EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_install pkg_postinst

  ViewVC Help
Powered by ViewVC 1.1.20