Gentoo Archives: gentoo-commits

From: "Ulrich Mueller (ulm)" <ulm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in eclass: eutils.eclass ChangeLog
Date: Thu, 01 Mar 2012 07:00:51
Message-Id: 20120301070040.559D22004B@flycatcher.gentoo.org
1 ulm 12/03/01 07:00:40
2
3 Modified: eutils.eclass ChangeLog
4 Log:
5 Cdrom functions split out to dedicated cdrom.eclass.
6
7 Revision Changes Path
8 1.385 eclass/eutils.eclass
9
10 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/eutils.eclass?rev=1.385&view=markup
11 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/eutils.eclass?rev=1.385&content-type=text/plain
12 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/eutils.eclass?r1=1.384&r2=1.385
13
14 Index: eutils.eclass
15 ===================================================================
16 RCS file: /var/cvsroot/gentoo-x86/eclass/eutils.eclass,v
17 retrieving revision 1.384
18 retrieving revision 1.385
19 diff -u -r1.384 -r1.385
20 --- eutils.eclass 26 Feb 2012 13:20:59 -0000 1.384
21 +++ eutils.eclass 1 Mar 2012 07:00:40 -0000 1.385
22 @@ -1,6 +1,6 @@
23 # Copyright 1999-2012 Gentoo Foundation
24 # Distributed under the terms of the GNU General Public License v2
25 -# $Header: /var/cvsroot/gentoo-x86/eclass/eutils.eclass,v 1.384 2012/02/26 13:20:59 pacho Exp $
26 +# $Header: /var/cvsroot/gentoo-x86/eclass/eutils.eclass,v 1.385 2012/03/01 07:00:40 ulm Exp $
27
28 # @ECLASS: eutils.eclass
29 # @MAINTAINER:
30 @@ -18,7 +18,7 @@
31 if [[ ${___ECLASS_ONCE_EUTILS} != "recur -_+^+_- spank" ]] ; then
32 ___ECLASS_ONCE_EUTILS="recur -_+^+_- spank"
33
34 -inherit multilib portability user
35 +inherit multilib user
36
37 DESCRIPTION="Based on the ${ECLASS} eclass"
38
39 @@ -956,221 +956,6 @@
40 )
41 }
42
43 -# @FUNCTION: cdrom_get_cds
44 -# @USAGE: <file on cd1> [file on cd2] [file on cd3] [...]
45 -# @DESCRIPTION:
46 -# Aquire cd(s) for those lovely cd-based emerges. Yes, this violates
47 -# the whole 'non-interactive' policy, but damnit I want CD support !
48 -#
49 -# With these cdrom functions we handle all the user interaction and
50 -# standardize everything. All you have to do is call cdrom_get_cds()
51 -# and when the function returns, you can assume that the cd has been
52 -# found at CDROM_ROOT.
53 -#
54 -# The function will attempt to locate a cd based upon a file that is on
55 -# the cd. The more files you give this function, the more cds
56 -# the cdrom functions will handle.
57 -#
58 -# Normally the cdrom functions will refer to the cds as 'cd #1', 'cd #2',
59 -# etc... If you want to give the cds better names, then just export
60 -# the appropriate CDROM_NAME variable before calling cdrom_get_cds().
61 -# Use CDROM_NAME for one cd, or CDROM_NAME_# for multiple cds. You can
62 -# also use the CDROM_NAME_SET bash array.
63 -#
64 -# For those multi cd ebuilds, see the cdrom_load_next_cd() function.
65 -cdrom_get_cds() {
66 - # first we figure out how many cds we're dealing with by
67 - # the # of files they gave us
68 - local cdcnt=0
69 - local f=
70 - for f in "$@" ; do
71 - ((++cdcnt))
72 - export CDROM_CHECK_${cdcnt}="$f"
73 - done
74 - export CDROM_TOTAL_CDS=${cdcnt}
75 - export CDROM_CURRENT_CD=1
76 -
77 - # now we see if the user gave use CD_ROOT ...
78 - # if they did, let's just believe them that it's correct
79 - if [[ -n ${CD_ROOT}${CD_ROOT_1} ]] ; then
80 - local var=
81 - cdcnt=0
82 - while [[ ${cdcnt} -lt ${CDROM_TOTAL_CDS} ]] ; do
83 - ((++cdcnt))
84 - var="CD_ROOT_${cdcnt}"
85 - [[ -z ${!var} ]] && var="CD_ROOT"
86 - if [[ -z ${!var} ]] ; then
87 - eerror "You must either use just the CD_ROOT"
88 - eerror "or specify ALL the CD_ROOT_X variables."
89 - eerror "In this case, you will need ${CDROM_TOTAL_CDS} CD_ROOT_X variables."
90 - die "could not locate CD_ROOT_${cdcnt}"
91 - fi
92 - done
93 - export CDROM_ROOT=${CD_ROOT_1:-${CD_ROOT}}
94 - einfo "Found CD #${CDROM_CURRENT_CD} root at ${CDROM_ROOT}"
95 - export CDROM_SET=-1
96 - for f in ${CDROM_CHECK_1//:/ } ; do
97 - ((++CDROM_SET))
98 - [[ -e ${CDROM_ROOT}/${f} ]] && break
99 - done
100 - export CDROM_MATCH=${f}
101 - return
102 - fi
103 -
104 - # User didn't help us out so lets make sure they know they can
105 - # simplify the whole process ...
106 - if [[ ${CDROM_TOTAL_CDS} -eq 1 ]] ; then
107 - einfo "This ebuild will need the ${CDROM_NAME:-cdrom for ${PN}}"
108 - echo
109 - einfo "If you do not have the CD, but have the data files"
110 - einfo "mounted somewhere on your filesystem, just export"
111 - einfo "the variable CD_ROOT so that it points to the"
112 - einfo "directory containing the files."
113 - echo
114 - einfo "For example:"
115 - einfo "export CD_ROOT=/mnt/cdrom"
116 - echo
117 - else
118 - if [[ -n ${CDROM_NAME_SET} ]] ; then
119 - # Translate the CDROM_NAME_SET array into CDROM_NAME_#
120 - cdcnt=0
121 - while [[ ${cdcnt} -lt ${CDROM_TOTAL_CDS} ]] ; do
122 - ((++cdcnt))
123 - export CDROM_NAME_${cdcnt}="${CDROM_NAME_SET[$((${cdcnt}-1))]}"
124 - done
125 - fi
126 -
127 - einfo "This package will need access to ${CDROM_TOTAL_CDS} cds."
128 - cdcnt=0
129 - while [[ ${cdcnt} -lt ${CDROM_TOTAL_CDS} ]] ; do
130 - ((++cdcnt))
131 - var="CDROM_NAME_${cdcnt}"
132 - [[ ! -z ${!var} ]] && einfo " CD ${cdcnt}: ${!var}"
133 - done
134 - echo
135 - einfo "If you do not have the CDs, but have the data files"
136 - einfo "mounted somewhere on your filesystem, just export"
137 - einfo "the following variables so they point to the right place:"
138 - einfon ""
139 - cdcnt=0
140 - while [[ ${cdcnt} -lt ${CDROM_TOTAL_CDS} ]] ; do
141 - ((++cdcnt))
142 - echo -n " CD_ROOT_${cdcnt}"
143 - done
144 - echo
145 - einfo "Or, if you have all the files in the same place, or"
146 - einfo "you only have one cdrom, you can export CD_ROOT"
147 - einfo "and that place will be used as the same data source"
148 - einfo "for all the CDs."
149 - echo
150 - einfo "For example:"
151 - einfo "export CD_ROOT_1=/mnt/cdrom"
152 - echo
153 - fi
154 -
155 - export CDROM_SET=""
156 - export CDROM_CURRENT_CD=0
157 - cdrom_load_next_cd
158 -}
159 -
160 -# @FUNCTION: cdrom_load_next_cd
161 -# @DESCRIPTION:
162 -# Some packages are so big they come on multiple CDs. When you're done reading
163 -# files off a CD and want access to the next one, just call this function.
164 -# Again, all the messy details of user interaction are taken care of for you.
165 -# Once this returns, just read the variable CDROM_ROOT for the location of the
166 -# mounted CD. Note that you can only go forward in the CD list, so make sure
167 -# you only call this function when you're done using the current CD.
168 -cdrom_load_next_cd() {
169 - local var
170 - ((++CDROM_CURRENT_CD))
171 -
172 - unset CDROM_ROOT
173 - var=CD_ROOT_${CDROM_CURRENT_CD}
174 - [[ -z ${!var} ]] && var="CD_ROOT"
175 - if [[ -z ${!var} ]] ; then
176 - var="CDROM_CHECK_${CDROM_CURRENT_CD}"
177 - _cdrom_locate_file_on_cd ${!var}
178 - else
179 - export CDROM_ROOT=${!var}
180 - fi
181 -
182 - einfo "Found CD #${CDROM_CURRENT_CD} root at ${CDROM_ROOT}"
183 -}
184 -
185 -# this is used internally by the cdrom_get_cds() and cdrom_load_next_cd()
186 -# functions. this should *never* be called from an ebuild.
187 -# all it does is try to locate a give file on a cd ... if the cd isn't
188 -# found, then a message asking for the user to insert the cdrom will be
189 -# displayed and we'll hang out here until:
190 -# (1) the file is found on a mounted cdrom
191 -# (2) the user hits CTRL+C
192 -_cdrom_locate_file_on_cd() {
193 - local mline=""
194 - local showedmsg=0 showjolietmsg=0
195 -
196 - while [[ -z ${CDROM_ROOT} ]] ; do
197 - local i=0
198 - local -a cdset=(${*//:/ })
199 - if [[ -n ${CDROM_SET} ]] ; then
200 - cdset=(${cdset[${CDROM_SET}]})
201 - fi
202 -
203 - while [[ -n ${cdset[${i}]} ]] ; do
204 - local dir=$(dirname ${cdset[${i}]})
205 - local file=$(basename ${cdset[${i}]})
206 -
207 - local point= node= fs= foo=
208 - while read point node fs foo ; do
209 - [[ " cd9660 iso9660 udf " != *" ${fs} "* ]] && \
210 - ! [[ ${fs} == "subfs" && ",${opts}," == *",fs=cdfss,"* ]] \
211 - && continue
212 - point=${point//\040/ }
213 - [[ ! -d ${point}/${dir} ]] && continue
214 - [[ -z $(find "${point}/${dir}" -maxdepth 1 -iname "${file}") ]] && continue
215 - export CDROM_ROOT=${point}
216 - export CDROM_SET=${i}
217 - export CDROM_MATCH=${cdset[${i}]}
218 - return
219 - done <<< "$(get_mounts)"
220 -
221 - ((++i))
222 - done
223 -
224 - echo
225 - if [[ ${showedmsg} -eq 0 ]] ; then
226 - if [[ ${CDROM_TOTAL_CDS} -eq 1 ]] ; then
227 - if [[ -z ${CDROM_NAME} ]] ; then
228 - einfo "Please insert+mount the cdrom for ${PN} now !"
229 - else
230 - einfo "Please insert+mount the ${CDROM_NAME} cdrom now !"
231 - fi
232 - else
233 - if [[ -z ${CDROM_NAME_1} ]] ; then
234 - einfo "Please insert+mount cd #${CDROM_CURRENT_CD} for ${PN} now !"
235 - else
236 - local var="CDROM_NAME_${CDROM_CURRENT_CD}"
237 - einfo "Please insert+mount the ${!var} cdrom now !"
238 - fi
239 - fi
240 - showedmsg=1
241 - fi
242 - einfo "Press return to scan for the cd again"
243 - einfo "or hit CTRL+C to abort the emerge."
244 - echo
245 - if [[ ${showjolietmsg} -eq 0 ]] ; then
246 - showjolietmsg=1
247 - else
248 - ewarn "If you are having trouble with the detection"
249 - ewarn "of your CD, it is possible that you do not have"
250 - ewarn "Joliet support enabled in your kernel. Please"
251 - ewarn "check that CONFIG_JOLIET is enabled in your kernel."
252 - ebeep 5
253 - fi
254 - read || die "something is screwed with your system"
255 - done
256 -}
257 -
258 # @FUNCTION: strip-linguas
259 # @USAGE: [<allow LINGUAS>|<-i|-u> <directories of .po files>]
260 # @DESCRIPTION:
261
262
263
264 1.148 eclass/ChangeLog
265
266 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.148&view=markup
267 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.148&content-type=text/plain
268 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.147&r2=1.148
269
270 Index: ChangeLog
271 ===================================================================
272 RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
273 retrieving revision 1.147
274 retrieving revision 1.148
275 diff -u -r1.147 -r1.148
276 --- ChangeLog 28 Feb 2012 18:19:29 -0000 1.147
277 +++ ChangeLog 1 Mar 2012 07:00:40 -0000 1.148
278 @@ -1,6 +1,9 @@
279 # ChangeLog for eclass directory
280 # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
281 -# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.147 2012/02/28 18:19:29 pesa Exp $
282 +# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.148 2012/03/01 07:00:40 ulm Exp $
283 +
284 + 01 Mar 2012; Ulrich Müller <ulm@g.o> eutils.eclass:
285 + Cdrom functions split out to dedicated cdrom.eclass.
286
287 28 Feb 2012; Davide Pesavento <pesa@g.o> qt4-build.eclass:
288 Add qt-openvg blocker.