/[gentoo-x86]/x11-base/xorg-server/xorg-server-1.0.2-r4.ebuild
Gentoo

Contents of /x11-base/xorg-server/xorg-server-1.0.2-r4.ebuild

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.5 - (show annotations) (download)
Tue Jun 20 16:37:38 2006 UTC (8 years, 2 months ago) by spyderous
Branch: MAIN
CVS Tags: HEAD
Changes since 1.4: +1 -1 lines
FILE REMOVED
Security bump. Failure to check the return value of setuid() in a privileged process could be used by a local user for file overwriting and possible privilege escalation in corner cases. See http://lists.freedesktop.org/archives/xorg/2006-June/016146.html for more information.
(Portage version: 2.1.1_pre1-r1)
 (Unsigned Manifest commit)

1 # Copyright 1999-2006 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/xorg-server-1.0.2-r4.ebuild,v 1.4 2006/05/14 22:52:32 spyderous Exp $
4
5 # Must be before x-modular eclass is inherited
6 # Hack to make sure autoreconf gets run
7 SNAPSHOT="yes"
8
9 inherit flag-o-matic x-modular multilib
10
11 OPENGL_DIR="xorg-x11"
12
13 MESA_PN="Mesa"
14 MESA_PV="6.4.2"
15 MESA_P="${MESA_PN}-${MESA_PV}"
16 MESA_SRC_P="${MESA_PN}Lib-${MESA_PV}"
17
18 PATCHES="${FILESDIR}/${P}-Sbus.patch
19 ${FILESDIR}/CVE-2006-1526-xrender-mitri.patch
20 ${FILESDIR}/${P}-sparc64-cfbrrop-fix.patch
21 ${FILESDIR}/${P}-64bit-fix-indirect-vertex-array.patch
22 ${FILESDIR}/${P}-64bit-fix-have-dix-config.patch
23 ${FILESDIR}/${P}-64bit-fix-for-glx.patch
24 ${FILESDIR}/${P}-Xprt-build.patch
25 ${FILESDIR}/${P}-xprint-init.patch
26 ${FILESDIR}/${PV}-Xprint-xprintdir.patch
27 ${FILESDIR}/${PV}-try-to-fix-xorgcfg.patch
28 ${FILESDIR}/${PV}-fix-xorgconfig-rgbpath-and-mouse.patch
29 ${DISTDIR}/${PV}-overlay-window.patch.bz2"
30
31 SRC_URI="${SRC_URI}
32 mirror://sourceforge/mesa3d/${MESA_SRC_P}.tar.bz2
33 http://dev.gentoo.org/~spyderous/xorg-x11/1.0.2/1.0.2-overlay-window.patch.bz2"
34 DESCRIPTION="X.Org X servers"
35 # It's suid and has lazy bindings, so FEATURES="stricter" doesn't work
36 RESTRICT="stricter"
37 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
38 IUSE="dri ipv6 minimal xprint"
39 RDEPEND="x11-libs/libXfont
40 x11-libs/xtrans
41 x11-libs/libXau
42 x11-libs/libXext
43 x11-libs/libX11
44 x11-libs/libxkbfile
45 x11-libs/libXdmcp
46 x11-libs/libXmu
47 x11-libs/libXrender
48 x11-libs/libXi
49 media-libs/freetype
50 media-libs/mesa
51 media-fonts/font-adobe-75dpi
52 media-fonts/font-misc-misc
53 media-fonts/font-cursor-misc
54 x11-misc/xbitmaps
55 || ( x11-misc/xkeyboard-config x11-misc/xkbdata )
56 x11-apps/iceauth
57 x11-apps/rgb
58 x11-apps/xauth
59 x11-apps/xinit
60 app-admin/eselect-opengl
61 x11-libs/libXaw
62 x11-libs/libXpm
63 x11-libs/libXxf86misc
64 x11-libs/libXxf86vm
65 !minimal? ( x11-libs/libdmx
66 x11-libs/libXtst
67 x11-libs/libXres )
68 >=x11-libs/libxkbui-1.0.2
69 x11-libs/liblbxutil"
70 # Xres is dmx-dependent, xkbui is xorgcfg-dependent
71 # Xaw is dmx- and xorgcfg-dependent
72 # Xpm is dmx- and xorgcfg-dependent, pulls in Xt
73 # Xxf86misc and Xxf86vm are xorgcfg-dependent
74 # liblbxutil is lbx- dependent
75 DEPEND="${RDEPEND}
76 x11-proto/randrproto
77 x11-proto/renderproto
78 >=x11-proto/fixesproto-4
79 x11-proto/damageproto
80 x11-proto/xextproto
81 x11-proto/xproto
82 x11-proto/xf86dgaproto
83 x11-proto/xf86miscproto
84 x11-proto/xf86rushproto
85 x11-proto/xf86vidmodeproto
86 x11-proto/xf86bigfontproto
87 >=x11-proto/compositeproto-0.3
88 x11-proto/recordproto
89 x11-proto/resourceproto
90 x11-proto/videoproto
91 x11-proto/scrnsaverproto
92 x11-proto/evieext
93 x11-proto/trapproto
94 >=x11-proto/xineramaproto-1.1-r1
95 x11-proto/fontsproto
96 >=x11-proto/kbproto-1.0-r1
97 x11-proto/inputproto
98 x11-proto/bigreqsproto
99 x11-proto/xcmiscproto
100 >=x11-proto/glproto-1.4.1_pre20051013
101 !minimal? ( x11-proto/dmxproto )
102 dri? ( x11-proto/xf86driproto
103 >=x11-libs/libdrm-2 )
104 xprint? ( x11-proto/printproto
105 x11-apps/mkfontdir
106 x11-apps/mkfontscale )"
107 LICENSE="${LICENSE} MIT"
108
109 pkg_setup() {
110 # localstatedir is used for the log location; we need to override the default
111 # from ebuild.sh
112 # sysconfdir is used for the xorg.conf location; same applies
113
114 # --enable-xorg needed because darwin defaults off
115 # --enable-install-setuid needed because sparcs default off
116 CONFIGURE_OPTIONS="
117 $(use_enable ipv6)
118 $(use_enable !minimal dmx)
119 $(use_enable !minimal xvfb)
120 $(use_enable !minimal xnest)
121 $(use_enable dri)
122 $(use_enable xprint)
123 --with-mesa-source=${WORKDIR}/${MESA_P}
124 --enable-xorg
125 --sysconfdir=/etc/X11
126 --localstatedir=/var
127 --enable-install-setuid
128 --with-default-font-path=/usr/share/fonts/misc,/usr/share/fonts/75dpi,/usr/share/fonts/100dpi,/usr/share/fonts/TTF,/usr/share/fonts/Type1"
129
130 # (#121394) Causes window corruption
131 filter-flags -fweb
132
133 # Nothing else provides new enough glxtokens.h
134 ewarn "Forcing on xorg-x11 for new enough glxtokens.h..."
135 OLD_IMPLEM="$(eselect opengl show)"
136 eselect opengl set --impl-headers ${OPENGL_DIR}
137 }
138
139 src_install() {
140 x-modular_src_install
141
142 dynamic_libgl_install
143
144 use xprint && xprint_src_install
145 }
146
147 pkg_postinst() {
148 switch_opengl_implem
149 }
150
151 pkg_postrm() {
152 # Get rid of module dir to ensure opengl-update works properly
153 if ! has_version x11-base/xorg-server; then
154 if [ -e ${ROOT}/usr/$(get_libdir)/xorg/modules ]; then
155 rm -rf ${ROOT}/usr/$(get_libdir)/xorg/modules
156 fi
157 fi
158 }
159
160 dynamic_libgl_install() {
161 # next section is to setup the dynamic libGL stuff
162 ebegin "Moving GL files for dynamic switching"
163 dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/extensions
164 local x=""
165 for x in ${D}/usr/$(get_libdir)/xorg/modules/extensions/libglx*; do
166 if [ -f ${x} -o -L ${x} ]; then
167 mv -f ${x} ${D}/usr/$(get_libdir)/opengl/${OPENGL_DIR}/extensions
168 fi
169 done
170 eend 0
171 }
172
173 switch_opengl_implem() {
174 # Switch to the xorg implementation.
175 # Use new opengl-update that will not reset user selected
176 # OpenGL interface ...
177 echo
178 # eselect opengl set --use-old ${OPENGL_DIR}
179 eselect opengl set ${OLD_IMPLEM}
180 }
181
182 xprint_src_install() {
183 # RH-style init script, we provide a wrapper
184 exeinto /usr/$(get_libdir)/misc
185 doexe ${S}/Xprint/etc/init.d/xprint
186 # Patch init script for fonts location
187 sed -e 's:/lib/X11/fonts/:/share/fonts/:g' \
188 -i ${D}/usr/$(get_libdir)/misc/xprint
189 # Install the wrapper
190 newinitd ${FILESDIR}/xprint.init xprint
191 # Install profile scripts
192 insinto /etc/profile.d
193 doins ${S}/Xprint/etc/profile.d/xprint*
194 insinto /etc/X11/xinit/xinitrc.d
195 newins ${S}/Xprint/etc/Xsession.d/cde_xsessiond_xprint.sh \
196 92xprint-xpserverlist.sh
197 # Patch profile scripts
198 sed -e "s:/bin/sh.*get_xpserverlist:/usr/$(get_libdir)/misc/xprint \
199 get_xpserverlist:g" -i ${D}/etc/profile.d/xprint* \
200 ${D}/etc/X11/xinit/xinitrc.d/92xprint-xpserverlist.sh
201 # Move profile scripts, we can't touch /etc/profile.d/ in Gentoo
202 dodoc ${D}/etc/profile.d/xprint*
203 rm -f ${D}/etc/profile.d/xprint*
204 }

  ViewVC Help
Powered by ViewVC 1.1.20