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

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

Parent Directory Parent Directory | Revision Log Revision Log


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

  ViewVC Help
Powered by ViewVC 1.1.20