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

Contents of /eclass/enlightenment.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.67 - (hide annotations) (download)
Sat Nov 4 10:14:35 2006 UTC (8 years ago) by vapier
Branch: MAIN
Changes since 1.66: +3 -3 lines
allow people to override the WANT_AUTO{CONF,MAKE} settings as suggested by jakub

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

  ViewVC Help
Powered by ViewVC 1.1.20