/[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 - (hide 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 joshuabaergen 1.1 # Copyright 1999-2006 Gentoo Foundation
2     # Distributed under the terms of the GNU General Public License v2
3 spyderous 1.5 # $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 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    
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 spyderous 1.3 # It's suid and has lazy bindings, so FEATURES="stricter" doesn't work
36     RESTRICT="stricter"
37 joshuabaergen 1.1 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 joshuabaergen 1.2 >=x11-libs/libxkbui-1.0.2
69 joshuabaergen 1.1 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 spyderous 1.4
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 joshuabaergen 1.1 }
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 spyderous 1.4 # eselect opengl set --use-old ${OPENGL_DIR}
179     eselect opengl set ${OLD_IMPLEM}
180 joshuabaergen 1.1 }
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