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

Diff of /eclass/virtualx.eclass

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.15 Revision 1.19
1# Copyright 1999-2003 Gentoo Technologies, Inc. 1# Copyright 1999-2004 Gentoo Foundation
2# Distributed under the terms of the GNU General Public License v2 2# Distributed under the terms of the GNU General Public License v2
3# $Header: /var/cvsroot/gentoo-x86/eclass/virtualx.eclass,v 1.15 2004/04/11 05:46:09 mr_bones_ Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/virtualx.eclass,v 1.19 2004/11/04 10:53:14 ferringb Exp $
4# 4#
5# Author: Martin Schlemmer <azarah@gentoo.org> 5# Author: Martin Schlemmer <azarah@gentoo.org>
6# 6#
7# This eclass can be used for packages that needs a working X environment to build 7# This eclass can be used for packages that needs a working X environment to build
8 8
10INHERITED="$INHERITED $ECLASS" 10INHERITED="$INHERITED $ECLASS"
11DEPEND="virtual/x11" 11DEPEND="virtual/x11"
12 12
13DESCRIPTION="Based on the $ECLASS eclass" 13DESCRIPTION="Based on the $ECLASS eclass"
14 14
15#
16# Brian Harring <ferringb@gentoo.org> 11/04/2004
17# do not disable the sandbox during the depend phase.
18# ebuilds shouldn't touch the fs during depend phase, nor screw with the sandbox.
19#
20if [ "${EBUILD_PHASE/depend}" == "${EBUILD_PHASE}" ]; then
15[ -z "${SANDBOX_DISABLED}" ] && export SANDBOX_DISABLED="0" || : 21 [ -z "${SANDBOX_DISABLED}" ] && export SANDBOX_DISABLED="0" || :
22fi
16 23
17virtualmake() { 24virtualmake() {
18 local retval=0 25 local retval=0
19 local OLD_SANDBOX_DISABLED="${SANDBOX_DISABLED}" 26 local OLD_SANDBOX_DISABLED="${SANDBOX_DISABLED}"
20 27
24 then 31 then
25 export XAUTHORITY= 32 export XAUTHORITY=
26 # The following is derived from Mandrake's hack to allow 33 # The following is derived from Mandrake's hack to allow
27 # compiling without the X display 34 # compiling without the X display
28 35
29 einfo "Scanning for a open DISPLAY to start Xvfb..." 36 einfo "Scanning for a open DISPLAY to start Xvfb ..."
30 37
31 # We really do not want SANDBOX enabled here 38 # We really do not want SANDBOX enabled here
32 export SANDBOX_DISABLED="1" 39 export SANDBOX_DISABLED="1"
33 40
34 local i=0 41 local i=0
39 # on the same display (most cases this is :0 ), so make sure 46 # on the same display (most cases this is :0 ), so make sure
40 # Xvfb is started, else bump the display number 47 # Xvfb is started, else bump the display number
41 # 48 #
42 # Azarah - 5 May 2002 49 # Azarah - 5 May 2002
43 # 50 #
51 # Changed the mode from 800x600x32 to 800x600x24 because the mfb
52 # support has been dropped in Xvfb in the xorg-x11 pre-releases.
53 # For now only depths up to 24-bit are supported.
54 #
55 # Sven Wegener <swegener@gentoo.org> - 22 Aug 2004
56 #
44 /usr/X11R6/bin/Xvfb :${XDISPLAY} -screen 0 800x600x32 &>/dev/null & 57 /usr/X11R6/bin/Xvfb :${XDISPLAY} -screen 0 800x600x24 &>/dev/null &
45 sleep 2 58 sleep 2
46 59
47 local start=${XDISPLAY} 60 local start=${XDISPLAY}
48 while [ ! -f /tmp/.X${XDISPLAY}-lock ] 61 while [ ! -f /tmp/.X${XDISPLAY}-lock ]
49 do 62 do
51 if [ $((${XDISPLAY} - ${start})) -gt 15 ]; then 64 if [ $((${XDISPLAY} - ${start})) -gt 15 ]; then
52 65
53 eerror "" 66 eerror ""
54 eerror "Unable to start Xvfb." 67 eerror "Unable to start Xvfb."
55 eerror "" 68 eerror ""
56 eerror "'/usr/X11R6/bin/Xvfb :${XDISPLAY} -screen 0 800x600x32' returns:" 69 eerror "'/usr/X11R6/bin/Xvfb :${XDISPLAY} -screen 0 800x600x24' returns:"
57 eerror "" 70 eerror ""
58 /usr/X11R6/bin/Xvfb :${XDISPLAY} -screen 0 800x600x32 71 /usr/X11R6/bin/Xvfb :${XDISPLAY} -screen 0 800x600x24
59 eerror "" 72 eerror ""
60 eerror "If possible, correct the above error and try your emerge again." 73 eerror "If possible, correct the above error and try your emerge again."
61 eerror "" 74 eerror ""
62 die 75 die
63 fi 76 fi
64 77
65 XDISPLAY=$((${XDISPLAY}+1)) 78 XDISPLAY=$((${XDISPLAY}+1))
66 /usr/X11R6/bin/Xvfb :${XDISPLAY} -screen 0 800x600x32 &>/dev/null & 79 /usr/X11R6/bin/Xvfb :${XDISPLAY} -screen 0 800x600x24 &>/dev/null &
67 sleep 2 80 sleep 2
68 done 81 done
69 82
70 # Now enable SANDBOX again if needed. 83 # Now enable SANDBOX again if needed.
71 export SANDBOX_DISABLED="${OLD_SANDBOX_DISABLED}" 84 export SANDBOX_DISABLED="${OLD_SANDBOX_DISABLED}"

Legend:
Removed from v.1.15  
changed lines
  Added in v.1.19

  ViewVC Help
Powered by ViewVC 1.1.20