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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.8 - (show annotations) (download)
Thu Jan 17 21:31:41 2008 UTC (6 years, 6 months ago) by dberkholz
Branch: MAIN
CVS Tags: HEAD
Changes since 1.7: +1 -1 lines
FILE REMOVED
Security cleanup. Still waiting on mips/sh/arm to stable 1.3.0.0-r3 before I can pull -r2.
(Portage version: 2.1.4)

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

  ViewVC Help
Powered by ViewVC 1.1.20