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

Contents of /eclass/enlightenment.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.61 - (hide annotations) (download)
Sun Jan 29 06:14:40 2006 UTC (8 years, 5 months ago) by vapier
Branch: MAIN
Changes since 1.60: +1 -5 lines
thinktux is broken

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

  ViewVC Help
Powered by ViewVC 1.1.20