/[gentoo-x86]/x11-base/xorg-server/xorg-server-1.4.0.90-r3.ebuild
Gentoo

Contents of /x11-base/xorg-server/xorg-server-1.4.0.90-r3.ebuild

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.8 - (show annotations) (download)
Tue Oct 14 17:51:04 2008 UTC (5 years, 11 months ago) by dberkholz
Branch: MAIN
CVS Tags: HEAD
Changes since 1.7: +1 -1 lines
FILE REMOVED
Clean up old ebuilds.
(Portage version: 2.2_rc12/cvs/Linux 2.6.27-rc9 x86_64)

1 # Copyright 1999-2008 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.4.0.90-r3.ebuild,v 1.7 2008/05/21 17:22:00 dberkholz Exp $
4
5 # Must be before x-modular eclass is inherited
6 SNAPSHOT="yes"
7
8 inherit x-modular multilib
9
10 OPENGL_DIR="xorg-x11"
11
12 MESA_PN="Mesa"
13 MESA_PV="7.0.2"
14 MESA_P="${MESA_PN}-${MESA_PV}"
15 MESA_SRC_P="${MESA_PN}Lib-${MESA_PV}"
16
17 SRC_URI="${SRC_URI}
18 mirror://sourceforge/mesa3d/${MESA_SRC_P}.tar.bz2
19 http://xorg.freedesktop.org/releases/individual/xserver/${P}.tar.bz2"
20 DESCRIPTION="X.Org X servers"
21 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
22 IUSE_INPUT_DEVICES="
23 input_devices_acecad
24 input_devices_aiptek
25 input_devices_calcomp
26 input_devices_citron
27 input_devices_digitaledge
28 input_devices_dmc
29 input_devices_dynapro
30 input_devices_elo2300
31 input_devices_elographics
32 input_devices_evdev
33 input_devices_fpit
34 input_devices_hyperpen
35 input_devices_jamstudio
36 input_devices_joystick
37 input_devices_keyboard
38 input_devices_magellan
39 input_devices_microtouch
40 input_devices_mouse
41 input_devices_mutouch
42 input_devices_palmax
43 input_devices_penmount
44 input_devices_spaceorb
45 input_devices_summa
46 input_devices_tek4957
47 input_devices_ur98
48 input_devices_vmmouse
49 input_devices_void
50
51 input_devices_synaptics
52 input_devices_wacom"
53 IUSE_VIDEO_CARDS="
54 video_cards_apm
55 video_cards_ark
56 video_cards_chips
57 video_cards_cirrus
58 video_cards_cyrix
59 video_cards_dummy
60 video_cards_epson
61 video_cards_fbdev
62 video_cards_geode
63 video_cards_glint
64 video_cards_i128
65 video_cards_i740
66 video_cards_i810
67 video_cards_impact
68 video_cards_imstt
69 video_cards_mach64
70 video_cards_mga
71 video_cards_neomagic
72 video_cards_newport
73 video_cards_nsc
74 video_cards_nv
75 video_cards_r128
76 video_cards_radeon
77 video_cards_rendition
78 video_cards_s3
79 video_cards_s3virge
80 video_cards_savage
81 video_cards_siliconmotion
82 video_cards_sis
83 video_cards_sisusb
84 video_cards_sunbw2
85 video_cards_suncg14
86 video_cards_suncg3
87 video_cards_suncg6
88 video_cards_sunffb
89 video_cards_sunleo
90 video_cards_suntcx
91 video_cards_tdfx
92 video_cards_tga
93 video_cards_trident
94 video_cards_tseng
95 video_cards_v4l
96 video_cards_vermilion
97 video_cards_vesa
98 video_cards_vga
99 video_cards_via
100 video_cards_vmware
101 video_cards_voodoo
102 video_cards_xgi
103 video_cards_fglrx
104 video_cards_nvidia"
105 IUSE_SERVERS="dmx kdrive xorg"
106 IUSE="${IUSE_VIDEO_CARDS}
107 ${IUSE_INPUT_DEVICES}
108 ${IUSE_SERVERS}
109 3dfx
110 dri hal ipv6 minimal nptl sdl xprint"
111 RDEPEND="hal? ( sys-apps/hal )
112 >=x11-libs/libXfont-1.3.1
113 >=x11-libs/xtrans-1.0.4
114 >=x11-libs/libXau-1.0.3
115 >=x11-libs/libXext-1.0.2
116 >=x11-libs/libX11-1.1.3
117 >=x11-libs/libxkbfile-1.0.4
118 >=x11-libs/libXdmcp-1.0.2
119 >=x11-libs/libXmu-1.0.3
120 >=x11-libs/libXrender-0.9.4
121 >=x11-libs/libXi-1.1.3
122 >=x11-libs/pixman-0.9.5
123 media-libs/freetype
124 >=media-libs/mesa-7.0.1
125 media-fonts/font-adobe-75dpi
126 media-fonts/font-misc-misc
127 media-fonts/font-cursor-misc
128 >=x11-misc/xbitmaps-1.0.1
129 >=x11-misc/xkeyboard-config-0.9
130 >=x11-apps/iceauth-1.0.2
131 >=x11-apps/rgb-1.0.1
132 >=x11-apps/xauth-1.0.2
133 >=x11-apps/xinit-1.0.5
134 app-admin/eselect-opengl
135 >=x11-libs/libXaw-1.0.4
136 >=x11-libs/libXpm-3.5.7
137 >=x11-libs/libXxf86misc-1.0.1
138 >=x11-libs/libXxf86vm-1.0.1
139 dmx? ( >=x11-libs/libdmx-1.0.2
140 >=x11-libs/libXfixes-4.0.3 )
141 !minimal? ( >=x11-libs/libXtst-1.0.3
142 >=x11-libs/libXres-1.0.3 )
143 >=x11-libs/libxkbui-1.0.2
144 >=x11-libs/liblbxutil-1.0.1
145 kdrive? ( sdl? ( media-libs/libsdl ) )"
146 # Xres is dmx-dependent, xkbui is xorgcfg-dependent
147 # Xaw is dmx- and xorgcfg-dependent
148 # Xpm is dmx- and xorgcfg-dependent, pulls in Xt
149 # Xxf86misc and Xxf86vm are xorgcfg-dependent
150 # liblbxutil is lbx- dependent
151 DEPEND="${RDEPEND}
152 !net-dialup/dtrace
153 >=x11-proto/randrproto-1.2.1
154 >=x11-proto/renderproto-0.9.3
155 >=x11-proto/fixesproto-4
156 >=x11-proto/damageproto-1.1
157 >=x11-proto/xextproto-7.0.2
158 >=x11-proto/xproto-7.0.10
159 >=x11-proto/xf86dgaproto-2.0.3
160 >=x11-proto/xf86miscproto-0.9.2
161 >=x11-proto/xf86rushproto-1.1.2
162 >=x11-proto/xf86vidmodeproto-2.2.2
163 >=x11-proto/xf86bigfontproto-1.1.2
164 >=x11-proto/compositeproto-0.4
165 >=x11-proto/recordproto-1.13.2
166 >=x11-proto/resourceproto-1.0.2
167 >=x11-proto/videoproto-2.2.2
168 >=x11-proto/scrnsaverproto-1.1.0
169 >=x11-proto/evieext-1.0.2
170 >=x11-proto/trapproto-3.4.3
171 >=x11-proto/xineramaproto-1.1-r1
172 >=x11-proto/fontsproto-2.0.2
173 >=x11-proto/kbproto-1.0.3
174 >=x11-proto/inputproto-1.4.2.1
175 >=x11-proto/bigreqsproto-1.0.2
176 >=x11-proto/xcmiscproto-1.1.2
177 >=x11-proto/glproto-1.4.8
178 dmx? ( >=x11-proto/dmxproto-2.2.2 )
179 dri? ( >=x11-proto/xf86driproto-2.0.3
180 >=x11-libs/libdrm-2.3 )
181 xprint? ( =x11-proto/printproto-1.0.3
182 >=x11-apps/mkfontdir-1.0.3
183 >=x11-apps/mkfontscale-1.0.3
184 >=x11-apps/xplsprinters-1.0.1 )"
185
186 # Drivers
187 PDEPEND="
188 xorg? (
189 input_devices_acecad? ( >=x11-drivers/xf86-input-acecad-1.1.0 )
190 input_devices_aiptek? ( >=x11-drivers/xf86-input-aiptek-1.0.1 )
191 input_devices_calcomp? ( >=x11-drivers/xf86-input-calcomp-1.1.1 )
192 input_devices_citron? ( >=x11-drivers/xf86-input-citron-2.2.1 )
193 input_devices_digitaledge? ( >=x11-drivers/xf86-input-digitaledge-1.1.0 )
194 input_devices_dmc? ( >=x11-drivers/xf86-input-dmc-1.1.0 )
195 input_devices_dynapro? ( >=x11-drivers/xf86-input-dynapro-1.1.1 )
196 input_devices_elo2300? ( >=x11-drivers/xf86-input-elo2300-1.1.1 )
197 input_devices_elographics? ( >=x11-drivers/xf86-input-elographics-1.1.0 )
198 input_devices_evdev? ( >=x11-drivers/xf86-input-evdev-1.1.1 )
199 input_devices_fpit? ( >=x11-drivers/xf86-input-fpit-1.1.0 )
200 input_devices_hyperpen? ( >=x11-drivers/xf86-input-hyperpen-1.1.0 )
201 input_devices_jamstudio? ( >=x11-drivers/xf86-input-jamstudio-1.1.0 )
202 input_devices_joystick? ( >=x11-drivers/xf86-input-joystick-1.1.0 )
203 input_devices_keyboard? ( >=x11-drivers/xf86-input-keyboard-1.2.0 )
204 input_devices_magellan? ( >=x11-drivers/xf86-input-magellan-1.1.1 )
205 input_devices_microtouch? ( >=x11-drivers/xf86-input-microtouch-1.1.1 )
206 input_devices_mouse? ( >=x11-drivers/xf86-input-mouse-1.1.0 )
207 input_devices_mutouch? ( >=x11-drivers/xf86-input-mutouch-1.1.0 )
208 input_devices_palmax? ( >=x11-drivers/xf86-input-palmax-1.1.0 )
209 input_devices_penmount? ( >=x11-drivers/xf86-input-penmount-1.2.1 )
210 input_devices_spaceorb? ( >=x11-drivers/xf86-input-spaceorb-1.1.1 )
211 input_devices_summa? ( >=x11-drivers/xf86-input-summa-1.1.0 )
212 input_devices_tek4957? ( >=x11-drivers/xf86-input-tek4957-1.1.0 )
213 input_devices_ur98? ( >=x11-drivers/xf86-input-ur98-1.1.0 )
214 input_devices_vmmouse? ( >=x11-drivers/xf86-input-vmmouse-12.4.2 )
215 input_devices_void? ( >=x11-drivers/xf86-input-void-1.1.0 )
216
217 input_devices_synaptics? ( x11-drivers/synaptics )
218 input_devices_wacom? ( x11-drivers/linuxwacom )
219
220 video_cards_apm? ( >=x11-drivers/xf86-video-apm-1.1.1 )
221 video_cards_ark? ( >=x11-drivers/xf86-video-ark-0.6.0 )
222 video_cards_chips? ( >=x11-drivers/xf86-video-chips-1.1.1 )
223 video_cards_cirrus? ( >=x11-drivers/xf86-video-cirrus-1.1.0 )
224 video_cards_cyrix? ( >=x11-drivers/xf86-video-cyrix-1.1.0 )
225 video_cards_dummy? ( >=x11-drivers/xf86-video-dummy-0.2.0 )
226 video_cards_fbdev? ( >=x11-drivers/xf86-video-fbdev-0.2.0 )
227 video_cards_geode? ( >=x11-drivers/xf86-video-geode-2.7.7.0 )
228 video_cards_glint? ( >=x11-drivers/xf86-video-glint-1.1.1 )
229 video_cards_i128? ( >=x11-drivers/xf86-video-i128-1.2.0 )
230 video_cards_i740? ( >=x11-drivers/xf86-video-i740-1.1.0 )
231 video_cards_i810? ( >=x11-drivers/xf86-video-i810-1.6.0 )
232 video_cards_impact? ( >=x11-drivers/xf86-video-impact-0.2.0 )
233 video_cards_imstt? ( >=x11-drivers/xf86-video-imstt-1.1.0 )
234 video_cards_mach64? ( >=x11-drivers/xf86-video-ati-6.6.0 )
235 video_cards_mga? ( >=x11-drivers/xf86-video-mga-1.4.1 )
236 video_cards_neomagic? ( >=x11-drivers/xf86-video-neomagic-1.1.1 )
237 video_cards_newport? ( >=x11-drivers/xf86-video-newport-0.2.0 )
238 video_cards_nsc? ( >=x11-drivers/xf86-video-nsc-2.8.1 )
239 video_cards_nv? ( >=x11-drivers/xf86-video-nv-1.1.1 )
240 video_cards_r128? ( >=x11-drivers/xf86-video-ati-6.6.0 )
241 video_cards_radeon? ( >=x11-drivers/xf86-video-ati-6.6.0 )
242 video_cards_rendition? ( >=x11-drivers/xf86-video-rendition-4.1.0 )
243 video_cards_s3? ( >=x11-drivers/xf86-video-s3-0.4.1 )
244 video_cards_s3virge? ( >=x11-drivers/xf86-video-s3virge-1.9.1 )
245 video_cards_savage? ( >=x11-drivers/xf86-video-savage-2.1.1 )
246 video_cards_siliconmotion? ( >=x11-drivers/xf86-video-siliconmotion-1.4.1 )
247 video_cards_sis? ( >=x11-drivers/xf86-video-sis-0.9.1 )
248 video_cards_sisusb? ( >=x11-drivers/xf86-video-sisusb-0.8.1 )
249 video_cards_sunbw2? ( >=x11-drivers/xf86-video-sunbw2-1.1.0 )
250 video_cards_suncg14? ( >=x11-drivers/xf86-video-suncg14-1.1.0 )
251 video_cards_suncg3? ( >=x11-drivers/xf86-video-suncg3-1.1.0 )
252 video_cards_suncg6? ( >=x11-drivers/xf86-video-suncg6-1.1.0 )
253 video_cards_sunffb? ( >=x11-drivers/xf86-video-sunffb-1.1.0 )
254 video_cards_sunleo? ( >=x11-drivers/xf86-video-sunleo-1.1.0 )
255 video_cards_suntcx? ( >=x11-drivers/xf86-video-suntcx-1.1.0 )
256 video_cards_tdfx? ( >=x11-drivers/xf86-video-tdfx-1.2.1 )
257 video_cards_tga? ( >=x11-drivers/xf86-video-tga-1.1.0 )
258 video_cards_trident? ( >=x11-drivers/xf86-video-trident-1.2.1 )
259 video_cards_tseng? ( >=x11-drivers/xf86-video-tseng-1.1.0 )
260 video_cards_v4l? ( >=x11-drivers/xf86-video-v4l-0.1.1 )
261 video_cards_vermilion? ( >=x11-drivers/xf86-video-vermilion-1.0.0 )
262 video_cards_vesa? ( >=x11-drivers/xf86-video-vesa-1.1.0 )
263 video_cards_vga? ( >=x11-drivers/xf86-video-vga-4.1.0 )
264 video_cards_via? ( >=x11-drivers/xf86-video-openchrome-0.2.901 )
265 video_cards_vmware? ( >=x11-drivers/xf86-video-vmware-10.13.0 )
266 video_cards_voodoo? ( >=x11-drivers/xf86-video-voodoo-1.1.0 )
267 video_cards_xgi? ( >=x11-drivers/xf86-video-xgi-1.5.0 )
268 video_cards_tdfx? ( 3dfx? ( >=media-libs/glide-v3-3.10 ) )
269 video_cards_fglrx? ( >=x11-drivers/ati-drivers-8.433 )
270 video_cards_nvidia? ( >=x11-drivers/nvidia-drivers-71.86.01 )
271 )"
272 LICENSE="${LICENSE} MIT"
273
274 PATCHES="
275 ${FILESDIR}/1.4-ia64.patch
276 ${FILESDIR}/1.3.0.0-use-proc-instead-of-sys.patch
277 ${FILESDIR}/1.4-fpic-libxf86config.patch
278 ${FILESDIR}/1.4-document-new-font-catalogs.patch
279 ${FILESDIR}/1.4-fix-dmx-build.patch
280 ${FILESDIR}/1.4-fix-dmx-link.patch
281 ${FILESDIR}/1.4-fix-xephyr-link.patch
282 ${FILESDIR}/1.4-fix-xprint-build.patch
283 ${FILESDIR}/1.4-fix-xprint-link.patch
284 ${FILESDIR}/1.4-fix-kdrive-automake.patch
285 ${FILESDIR}/1.4-dont-hang-openoffice.patch
286 ${FILESDIR}/${PV}-clean-generated-files.patch
287 ${FILESDIR}/1.4-0001-Fix-for-CVE-2007-5760-XFree86-Misc-extension-out-o.patch
288 ${FILESDIR}/1.4-0002-Fix-for-CVE-2007-6428-TOG-cup-extension-memory-cor.patch
289 ${FILESDIR}/1.4-0003-Fix-for-CVE-2007-6427-Xinput-extension-memory-corr.patch
290 ${FILESDIR}/1.4-0004-Fix-for-CVE-2007-6429-MIT-SHM-and-EVI-extensions-i.patch
291 ${FILESDIR}/1.4-0005-Fix-for-CVE-2008-0006-PCF-Font-parser-buffer-overf.patch
292 ${FILESDIR}/1.4-0006-Fix-for-CVE-2007-5958-File-existence-disclosure.patch
293 ${FILESDIR}/1.4-0007-CVE-2007-6429-Don-t-spuriously-reject-8bpp-shm-pix.patch
294 ${FILESDIR}/1.4-0008-CVE-2007-6429-Always-test-for-size-offset-wrapping.patch
295 ${FILESDIR}/1.4-0009-Don-t-break-grab-and-focus-state-for-a-window-when-r.patch
296 ${FILESDIR}/xorg-server-1.4.0.90-automake-1.10.1-fixup.patch
297 "
298
299 pkg_setup() {
300 use minimal || ensure_a_server_is_building
301
302 # SDL only available in kdrive build
303 if use kdrive && use sdl; then
304 conf_opts="${conf_opts} --enable-xsdl"
305 else
306 conf_opts="${conf_opts} --disable-xsdl"
307 fi
308
309 # Only Xorg and Xgl support this, and we won't build Xgl
310 # until it merges to trunk
311 if use xorg; then
312 conf_opts="${conf_opts} --with-mesa-source=${WORKDIR}/${MESA_P}"
313 fi
314
315 # localstatedir is used for the log location; we need to override the default
316 # from ebuild.sh
317 # sysconfdir is used for the xorg.conf location; same applies
318 # --enable-install-setuid needed because sparcs default off
319 CONFIGURE_OPTIONS="
320 $(use_enable ipv6)
321 $(use_enable dmx)
322 $(use_enable kdrive)
323 $(use_enable !minimal xvfb)
324 $(use_enable !minimal xnest)
325 $(use_enable !minimal install-libxf86config)
326 $(use_enable dri)
327 $(use_enable xorg)
328 $(use_enable xprint)
329 $(use_enable nptl glx-tls)
330 $(use_enable !minimal xorgcfg)
331 $(use_enable hal config-dbus)
332 $(use_enable hal config-hal)
333 --sysconfdir=/etc/X11
334 --localstatedir=/var
335 --enable-install-setuid
336 --with-fontdir=/usr/share/fonts
337 --with-xkb-output=/var/lib/xkb
338 ${conf_opts}"
339
340 local diemsg="You must build xorg-server and mesa with the same nptl USE setting."
341 if built_with_use media-libs/mesa nptl; then
342 use nptl || die "${diemsg}"
343 else
344 use nptl && die "${diemsg}"
345 fi
346
347 # (#121394) Causes window corruption
348 filter-flags -fweb
349
350 # Nothing else provides new enough glxtokens.h
351 ewarn "Forcing on xorg-x11 for new enough glxtokens.h..."
352 OLD_IMPLEM="$(eselect opengl show)"
353 eselect opengl set --impl-headers ${OPENGL_DIR}
354 }
355
356 src_unpack() {
357 x-modular_specs_check
358 x-modular_dri_check
359 x-modular_unpack_source
360 x-modular_patch_source
361
362 # Clean up for ${PV}-clean-generated-files.patch
363 pushd hw/xprint >/dev/null
364 rm -f *-wrapper.c || die
365 popd >/dev/null
366
367 # Set up kdrive servers to build
368 if use kdrive; then
369 kdrive_setup
370 fi
371
372 # Make sure eautoreconf gets run if we need the autoconf/make
373 # changes.
374 if [[ ${SNAPSHOT} != "yes" ]]; then
375 if use kdrive || use dmx || use xprint; then
376 SNAPSHOT="yes"
377 fi
378 fi
379
380 if use hal; then
381 sed -i \
382 -e "s:^\(dbusconfigdir = \).*\(dbus-1.*\):\1/etc/\2:g" \
383 "${S}"/config/Makefile.am \
384 || die "failed to fix DBUS config directory"
385 SNAPSHOT="yes"
386 fi
387
388 x-modular_reconf_source
389 #do not install xprint's Xsession.d files, we'll do it later
390 if use xprint; then
391 sed -e "s:install-data-am\: install-dist_xpcDATA:install-data-am\::g" \
392 -i "${S}"/hw/xprint/etc/Xsession.d/Makefile.in \
393 || die "sed of Xsession.d makefile failed"
394 fi
395 }
396
397 src_install() {
398 x-modular_src_install
399
400 dynamic_libgl_install
401
402 server_based_install
403
404 # Install video mode files for system-config-display
405 insinto /usr/share/xorg
406 doins hw/xfree86/common/{extra,vesa}modes \
407 || die "couldn't install extra modes"
408
409 # Bug #151421 - this file is not built with USE="minimal"
410 # Bug #151670 - this file is also not build if USE="-xorg"
411 if ! use minimal && use xorg; then
412 # Install xorg.conf.example
413 insinto /etc/X11
414 doins hw/xfree86/xorg.conf.example \
415 || die "couldn't install xorg.conf.example"
416 fi
417 }
418
419 pkg_postinst() {
420 switch_opengl_implem
421
422 # Bug #135544
423 ewarn "Users of reduced blanking now need:"
424 ewarn " Option \"ReducedBlanking\""
425 ewarn "In the relevant Monitor section(s)."
426 ewarn "Make sure your reduced blanking modelines are safe!"
427
428 echo
429 ewarn "You must rebuild all drivers if upgrading from xorg-server 1.3"
430 ewarn "or earlier, because the ABI changed. If you cannot start X because"
431 ewarn "of module version mismatch errors, this is your problem."
432
433 echo
434 ewarn "You can generate a list of all installed packages in the x11-drivers"
435 ewarn "category using this command:"
436 ewarn "emerge portage-utils; qlist -I -C x11-drivers/"
437
438 ebeep 5
439 epause 10
440 }
441
442 pkg_postrm() {
443 # Get rid of module dir to ensure opengl-update works properly
444 if ! has_version x11-base/xorg-server; then
445 if [[ -e ${ROOT}/usr/$(get_libdir)/xorg/modules ]]; then
446 rm -rf "${ROOT}"/usr/$(get_libdir)/xorg/modules
447 fi
448 fi
449 }
450
451 kdrive_setup() {
452 local card real_card disable_card kdrive_fbdev kdrive_vesa
453
454 einfo "Removing unused kdrive drivers ..."
455
456 # Some kdrive servers require fbdev and vesa
457 kdrive_fbdev="radeon neomagic sis siliconmotion"
458 # Some kdrive servers require just vesa
459 kdrive_vesa="chips mach64 mga nv glint r128 via"
460
461 for card in ${IUSE_VIDEO_CARDS}; do
462 real_card=${card#video_cards_}
463
464 # Differences between VIDEO_CARDS name and kdrive server name
465 real_card=${real_card/glint/pm2}
466 real_card=${real_card/radeon/ati}
467 real_card=${real_card/%nv/nvidia}
468 real_card=${real_card/siliconmotion/smi}
469 real_card=${real_card/%sis/sis300}
470
471 disable_card=0
472
473 # Check whether it's a valid kdrive server before we waste time
474 # on the rest of this
475 if ! grep -q -o "\b${real_card}\b" "${S}"/hw/kdrive/Makefile.am; then
476 continue
477 fi
478
479 if ! use ${card}; then
480 if use x86; then
481 # Some kdrive servers require fbdev and vesa
482 for i in ${kdrive_fbdev}; do
483 if use video_cards_${i}; then
484 if [[ ${real_card} = fbdev ]] \
485 || [[ ${real_card} = vesa ]]; then
486 continue 2 # Don't disable
487 fi
488 fi
489 done
490
491 # Some kdrive servers require just vesa
492 for i in ${kdrive_vesa}; do
493 if use video_cards_${i}; then
494 if [[ ${real_card} = vesa ]]; then
495 continue 2 # Don't disable
496 fi
497 fi
498 done
499 fi
500 disable_card=1
501 # Bug #150052
502 # fbdev is the only VIDEO_CARDS setting that works on non-x86
503 elif ! use x86 \
504 && [[ ${real_card} != fbdev ]]; then
505 ewarn " $real_card does not work on your architecture; disabling."
506 disable_card=1
507 fi
508
509 if [[ $disable_card = 1 ]]; then
510 ebegin " ${real_card}"
511 sed -i \
512 -e "s:\b${real_card}\b::g" \
513 "${S}"/hw/kdrive/Makefile.am \
514 || die "sed of ${real_card} failed"
515 eend
516 fi
517
518 done
519 }
520
521 dynamic_libgl_install() {
522 # next section is to setup the dynamic libGL stuff
523 ebegin "Moving GL files for dynamic switching"
524 dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/extensions
525 local x=""
526 for x in "${D}"/usr/$(get_libdir)/xorg/modules/extensions/libglx*; do
527 if [ -f ${x} -o -L ${x} ]; then
528 mv -f ${x} "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/extensions
529 fi
530 done
531 eend 0
532 }
533
534 server_based_install() {
535 use xprint && xprint_src_install
536
537 if ! use xorg; then
538 rm "${D}"/usr/share/man/man1/Xserver.1x \
539 "${D}"/usr/$(get_libdir)/xserver/SecurityPolicy \
540 "${D}"/usr/$(get_libdir)/pkgconfig/xorg-server.pc \
541 "${D}"/usr/share/man/man1/Xserver.1x
542 fi
543 }
544
545 switch_opengl_implem() {
546 # Switch to the xorg implementation.
547 # Use new opengl-update that will not reset user selected
548 # OpenGL interface ...
549 echo
550 # eselect opengl set --use-old ${OPENGL_DIR}
551 eselect opengl set ${OLD_IMPLEM}
552 }
553
554 xprint_src_install() {
555 # RH-style init script, we provide a wrapper
556 exeinto /usr/$(get_libdir)/misc
557 doexe "${S}"/hw/xprint/etc/init.d/xprint
558 # Install the wrapper
559 newinitd "${FILESDIR}"/xprint.init xprint
560 # Install profile scripts
561 insinto /etc/profile.d
562 doins "${S}"/hw/xprint/etc/profile.d/xprint*
563 exeinto /etc/X11/xinit/xinitrc.d
564 doexe "${S}"/hw/xprint/etc/Xsession.d/92xprint-xpserverlist
565 # Patch profile scripts
566 sed -e "s:/etc/init.*get_xpserverlist:/usr/$(get_libdir)/misc/xprint \
567 get_xpserverlist:g" -i "${D}"/etc/profile.d/xprint* \
568 "${D}"/etc/X11/xinit/xinitrc.d/92xprint-xpserverlist
569 # Move profile scripts, we can't touch /etc/profile.d/ in Gentoo
570 dodoc "${D}"/etc/profile.d/xprint*
571 rm -f "${D}"/etc/profile.d/xprint*
572 }
573
574 ensure_a_server_is_building() {
575 for server in ${IUSE_SERVERS}; do
576 use ${server} && return;
577 done
578 eerror "You need to specify at least one server to build."
579 eerror "Valid servers are: ${IUSE_SERVERS}."
580 die "No servers were specified to build."
581 }

  ViewVC Help
Powered by ViewVC 1.1.20