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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (hide annotations) (download)
Fri Apr 25 18:24:28 2008 UTC (6 years, 2 months ago) by dberkholz
Branch: MAIN
CVS Tags: HEAD
Changes since 1.2: +1 -1 lines
FILE REMOVED
Clean up a little. Still waiting on arm/sh stabilization in 1.3.0.0-r5 for -r4 to get removed.
(Portage version: 2.1.5_rc6)

1 dberkholz 1.1 # Copyright 1999-2008 Gentoo Foundation
2     # Distributed under the terms of the GNU General Public License v2
3 dberkholz 1.3 # $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/xorg-server-1.4.0.90-r2.ebuild,v 1.2 2008/03/10 17:39:30 zlin Exp $
4 dberkholz 1.1
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_amd
55     video_cards_apm
56     video_cards_ark
57     video_cards_chips
58     video_cards_cirrus
59     video_cards_cyrix
60     video_cards_dummy
61     video_cards_epson
62     video_cards_fbdev
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_amd? ( >=x11-drivers/xf86-video-amd-2.7.7.0 )
221     video_cards_apm? ( >=x11-drivers/xf86-video-apm-1.1.1 )
222     video_cards_ark? ( >=x11-drivers/xf86-video-ark-0.6.0 )
223     video_cards_chips? ( >=x11-drivers/xf86-video-chips-1.1.1 )
224     video_cards_cirrus? ( >=x11-drivers/xf86-video-cirrus-1.1.0 )
225     video_cards_cyrix? ( >=x11-drivers/xf86-video-cyrix-1.1.0 )
226     video_cards_dummy? ( >=x11-drivers/xf86-video-dummy-0.2.0 )
227     video_cards_fbdev? ( >=x11-drivers/xf86-video-fbdev-0.2.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-via-0.2.1 )
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     "
295    
296     pkg_setup() {
297     use minimal || ensure_a_server_is_building
298    
299     # SDL only available in kdrive build
300     if use kdrive && use sdl; then
301     conf_opts="${conf_opts} --enable-xsdl"
302     else
303     conf_opts="${conf_opts} --disable-xsdl"
304     fi
305    
306     # Only Xorg and Xgl support this, and we won't build Xgl
307     # until it merges to trunk
308     if use xorg; then
309     conf_opts="${conf_opts} --with-mesa-source=${WORKDIR}/${MESA_P}"
310     fi
311    
312     # localstatedir is used for the log location; we need to override the default
313     # from ebuild.sh
314     # sysconfdir is used for the xorg.conf location; same applies
315     # --enable-install-setuid needed because sparcs default off
316     CONFIGURE_OPTIONS="
317     $(use_enable ipv6)
318     $(use_enable dmx)
319     $(use_enable kdrive)
320     $(use_enable !minimal xvfb)
321     $(use_enable !minimal xnest)
322     $(use_enable !minimal install-libxf86config)
323     $(use_enable dri)
324     $(use_enable xorg)
325     $(use_enable xprint)
326     $(use_enable nptl glx-tls)
327     $(use_enable !minimal xorgcfg)
328     $(use_enable hal config-dbus)
329     $(use_enable hal config-hal)
330     --sysconfdir=/etc/X11
331     --localstatedir=/var
332     --enable-install-setuid
333     --with-fontdir=/usr/share/fonts
334     --with-xkb-output=/var/lib/xkb
335     ${conf_opts}"
336    
337     local diemsg="You must build xorg-server and mesa with the same nptl USE setting."
338     if built_with_use media-libs/mesa nptl; then
339     use nptl || die "${diemsg}"
340     else
341     use nptl && die "${diemsg}"
342     fi
343    
344     # (#121394) Causes window corruption
345     filter-flags -fweb
346    
347     # Nothing else provides new enough glxtokens.h
348     ewarn "Forcing on xorg-x11 for new enough glxtokens.h..."
349     OLD_IMPLEM="$(eselect opengl show)"
350     eselect opengl set --impl-headers ${OPENGL_DIR}
351     }
352    
353     src_unpack() {
354     x-modular_specs_check
355     x-modular_dri_check
356     x-modular_unpack_source
357     x-modular_patch_source
358    
359     # Clean up for ${PV}-clean-generated-files.patch
360     pushd hw/xprint >/dev/null
361     rm -f *-wrapper.c || die
362     popd >/dev/null
363    
364     # Set up kdrive servers to build
365     if use kdrive; then
366     kdrive_setup
367     fi
368    
369     # Make sure eautoreconf gets run if we need the autoconf/make
370     # changes.
371     if [[ ${SNAPSHOT} != "yes" ]]; then
372     if use kdrive || use dmx || use xprint; then
373     SNAPSHOT="yes"
374     fi
375     fi
376    
377     if use hal; then
378     sed -i \
379     -e "s:^\(dbusconfigdir = \).*\(dbus-1.*\):\1/etc/\2:g" \
380     "${S}"/config/Makefile.am \
381     || die "failed to fix DBUS config directory"
382     SNAPSHOT="yes"
383     fi
384    
385     x-modular_reconf_source
386     #do not install xprint's Xsession.d files, we'll do it later
387     if use xprint; then
388     sed -e "s:install-data-am\: install-dist_xpcDATA:install-data-am\::g" \
389     -i "${S}"/hw/xprint/etc/Xsession.d/Makefile.in \
390     || die "sed of Xsession.d makefile failed"
391     fi
392     }
393    
394     src_install() {
395     x-modular_src_install
396    
397     dynamic_libgl_install
398    
399     server_based_install
400    
401     # Install video mode files for system-config-display
402     insinto /usr/share/xorg
403     doins hw/xfree86/common/{extra,vesa}modes \
404     || die "couldn't install extra modes"
405    
406     # Bug #151421 - this file is not built with USE="minimal"
407     # Bug #151670 - this file is also not build if USE="-xorg"
408     if ! use minimal && use xorg; then
409     # Install xorg.conf.example
410     insinto /etc/X11
411     doins hw/xfree86/xorg.conf.example \
412     || die "couldn't install xorg.conf.example"
413     fi
414     }
415    
416     pkg_postinst() {
417     switch_opengl_implem
418    
419     # Bug #135544
420     ewarn "Users of reduced blanking now need:"
421     ewarn " Option \"ReducedBlanking\""
422     ewarn "In the relevant Monitor section(s)."
423     ewarn "Make sure your reduced blanking modelines are safe!"
424    
425     echo
426     ewarn "You must rebuild all drivers if upgrading from xorg-server 1.3"
427     ewarn "or earlier, because the ABI changed. If you cannot start X because"
428     ewarn "of module version mismatch errors, this is your problem."
429    
430     echo
431 zlin 1.2 ewarn "You can generate a list of all installed packages in the x11-drivers"
432     ewarn "category using this command:"
433 dberkholz 1.1 ewarn "emerge portage-utils; qlist -I -C x11-drivers/"
434    
435     ebeep 5
436     epause 10
437     }
438    
439     pkg_postrm() {
440     # Get rid of module dir to ensure opengl-update works properly
441     if ! has_version x11-base/xorg-server; then
442     if [[ -e ${ROOT}/usr/$(get_libdir)/xorg/modules ]]; then
443     rm -rf "${ROOT}"/usr/$(get_libdir)/xorg/modules
444     fi
445     fi
446     }
447    
448     kdrive_setup() {
449     local card real_card disable_card kdrive_fbdev kdrive_vesa
450    
451     einfo "Removing unused kdrive drivers ..."
452    
453     # Some kdrive servers require fbdev and vesa
454     kdrive_fbdev="radeon neomagic sis siliconmotion"
455     # Some kdrive servers require just vesa
456     kdrive_vesa="chips mach64 mga nv glint r128 via"
457    
458     for card in ${IUSE_VIDEO_CARDS}; do
459     real_card=${card#video_cards_}
460    
461     # Differences between VIDEO_CARDS name and kdrive server name
462     real_card=${real_card/glint/pm2}
463     real_card=${real_card/radeon/ati}
464     real_card=${real_card/%nv/nvidia}
465     real_card=${real_card/siliconmotion/smi}
466     real_card=${real_card/%sis/sis300}
467    
468     disable_card=0
469    
470     # Check whether it's a valid kdrive server before we waste time
471     # on the rest of this
472     if ! grep -q -o "\b${real_card}\b" "${S}"/hw/kdrive/Makefile.am; then
473     continue
474     fi
475    
476     if ! use ${card}; then
477     if use x86; then
478     # Some kdrive servers require fbdev and vesa
479     for i in ${kdrive_fbdev}; do
480     if use video_cards_${i}; then
481     if [[ ${real_card} = fbdev ]] \
482     || [[ ${real_card} = vesa ]]; then
483     continue 2 # Don't disable
484     fi
485     fi
486     done
487    
488     # Some kdrive servers require just vesa
489     for i in ${kdrive_vesa}; do
490     if use video_cards_${i}; then
491     if [[ ${real_card} = vesa ]]; then
492     continue 2 # Don't disable
493     fi
494     fi
495     done
496     fi
497     disable_card=1
498     # Bug #150052
499     # fbdev is the only VIDEO_CARDS setting that works on non-x86
500     elif ! use x86 \
501     && [[ ${real_card} != fbdev ]]; then
502     ewarn " $real_card does not work on your architecture; disabling."
503     disable_card=1
504     fi
505    
506     if [[ $disable_card = 1 ]]; then
507     ebegin " ${real_card}"
508     sed -i \
509     -e "s:\b${real_card}\b::g" \
510     "${S}"/hw/kdrive/Makefile.am \
511     || die "sed of ${real_card} failed"
512     eend
513     fi
514    
515     done
516     }
517    
518     dynamic_libgl_install() {
519     # next section is to setup the dynamic libGL stuff
520     ebegin "Moving GL files for dynamic switching"
521     dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/extensions
522     local x=""
523     for x in "${D}"/usr/$(get_libdir)/xorg/modules/extensions/libglx*; do
524     if [ -f ${x} -o -L ${x} ]; then
525     mv -f ${x} "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/extensions
526     fi
527     done
528     eend 0
529     }
530    
531     server_based_install() {
532     use xprint && xprint_src_install
533    
534     if ! use xorg; then
535     rm "${D}"/usr/share/man/man1/Xserver.1x \
536     "${D}"/usr/$(get_libdir)/xserver/SecurityPolicy \
537     "${D}"/usr/$(get_libdir)/pkgconfig/xorg-server.pc \
538     "${D}"/usr/share/man/man1/Xserver.1x
539     fi
540     }
541    
542     switch_opengl_implem() {
543     # Switch to the xorg implementation.
544     # Use new opengl-update that will not reset user selected
545     # OpenGL interface ...
546     echo
547     # eselect opengl set --use-old ${OPENGL_DIR}
548     eselect opengl set ${OLD_IMPLEM}
549     }
550    
551     xprint_src_install() {
552     # RH-style init script, we provide a wrapper
553     exeinto /usr/$(get_libdir)/misc
554     doexe "${S}"/hw/xprint/etc/init.d/xprint
555     # Install the wrapper
556     newinitd "${FILESDIR}"/xprint.init xprint
557     # Install profile scripts
558     insinto /etc/profile.d
559     doins "${S}"/hw/xprint/etc/profile.d/xprint*
560     exeinto /etc/X11/xinit/xinitrc.d
561     doexe "${S}"/hw/xprint/etc/Xsession.d/92xprint-xpserverlist
562     # Patch profile scripts
563     sed -e "s:/etc/init.*get_xpserverlist:/usr/$(get_libdir)/misc/xprint \
564     get_xpserverlist:g" -i "${D}"/etc/profile.d/xprint* \
565     "${D}"/etc/X11/xinit/xinitrc.d/92xprint-xpserverlist
566     # Move profile scripts, we can't touch /etc/profile.d/ in Gentoo
567     dodoc "${D}"/etc/profile.d/xprint*
568     rm -f "${D}"/etc/profile.d/xprint*
569     }
570    
571     ensure_a_server_is_building() {
572     for server in ${IUSE_SERVERS}; do
573     use ${server} && return;
574     done
575     eerror "You need to specify at least one server to build."
576     eerror "Valid servers are: ${IUSE_SERVERS}."
577     die "No servers were specified to build."
578     }

  ViewVC Help
Powered by ViewVC 1.1.20