/[gentoo-x86]/x11-base/xorg-server/xorg-server-1.1.1-r1.ebuild
Gentoo

Diff of /x11-base/xorg-server/xorg-server-1.1.1-r1.ebuild

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.3 Revision 1.23
1# Copyright 1999-2006 Gentoo Foundation 1# Copyright 1999-2007 Gentoo Foundation
2# Distributed under the terms of the GNU General Public License v2 2# Distributed under the terms of the GNU General Public License v2
3# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/Attic/xorg-server-1.1.1-r1.ebuild,v 1.3 2006/09/12 20:59:52 dberkholz Exp $ 3# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/Attic/xorg-server-1.1.1-r1.ebuild,v 1.23 2007/07/31 18:52:11 cardoe Exp $
4 4
5# Must be before x-modular eclass is inherited 5# Must be before x-modular eclass is inherited
6SNAPSHOT="yes" 6SNAPSHOT="yes"
7 7
8inherit x-modular multilib 8inherit x-modular multilib
9 9
10OPENGL_DIR="xorg-x11" 10OPENGL_DIR="xorg-x11"
11 11
12MESA_PN="Mesa" 12MESA_PN="Mesa"
13MESA_PV="20060831" 13MESA_PV="6.5.1"
14MESA_P="${MESA_PN}-${MESA_PV}" 14MESA_P="${MESA_PN}-${MESA_PV}"
15MESA_SRC_P="${MESA_PN}-${MESA_PV}" 15MESA_SRC_P="${MESA_PN}Lib-${MESA_PV}"
16
17PATCHES="${FILESDIR}/01-no-move-damage.patch
18 ${FILESDIR}/02-dont-backfill-bg-none.patch
19 ${FILESDIR}/03-tfp-damage.patch
20 ${FILESDIR}/04-mesa-copy-sub-buffer.patch
21 ${FILESDIR}/05-offscreen-pixmaps.patch
22 ${FILESDIR}/06-aiglx-happy-vt-switch.patch
23 ${FILESDIR}/xorg-x11-server-1.1.1-mesa-6.5.1.patch
24 ${FILESDIR}/${P}-install-libxf86config-headers.patch
25 ${FILESDIR}/${PV}-fix-xrandr-zoom-keys.patch"
26
27 16
28SRC_URI="${SRC_URI} 17SRC_URI="${SRC_URI}
29 http://www.schokokeks.org/~hanno/snapshots/${MESA_SRC_P}.tar.bz2 18 mirror://sourceforge/mesa3d/${MESA_SRC_P}.tar.bz2
30 http://xorg.freedesktop.org/snapshots/individual/xserver/${P}.tar.bz2" 19 http://xorg.freedesktop.org/releases/individual/xserver/${P}.tar.bz2"
31DESCRIPTION="X.Org X servers" 20DESCRIPTION="X.Org X servers"
32# It's suid and has lazy bindings, so FEATURES="stricter" doesn't work
33RESTRICT="stricter"
34KEYWORDS="~alpha ~amd64 arm ~hppa ~ia64 mips ppc ppc64 sh sparc ~x86 ~x86-fbsd" 21KEYWORDS="alpha amd64 arm hppa ia64 mips ppc ppc64 sh sparc x86 ~x86-fbsd"
35IUSE_INPUT_DEVICES=" 22IUSE_INPUT_DEVICES="
36 input_devices_acecad 23 input_devices_acecad
37 input_devices_aiptek 24 input_devices_aiptek
38 input_devices_calcomp 25 input_devices_calcomp
39 input_devices_citron 26 input_devices_citron
116IUSE_SERVERS="dmx kdrive xorg" 103IUSE_SERVERS="dmx kdrive xorg"
117IUSE="${IUSE_VIDEO_CARDS} 104IUSE="${IUSE_VIDEO_CARDS}
118 ${IUSE_INPUT_DEVICES} 105 ${IUSE_INPUT_DEVICES}
119 ${IUSE_SERVERS} 106 ${IUSE_SERVERS}
120 3dfx 107 3dfx
108 aiglx
121 dri ipv6 minimal nptl sdl xprint" 109 dri ipv6 minimal nptl sdl xprint"
122RDEPEND="x11-libs/libXfont 110RDEPEND="x11-libs/libXfont
123 x11-libs/xtrans 111 x11-libs/xtrans
124 x11-libs/libXau 112 x11-libs/libXau
125 x11-libs/libXext 113 x11-libs/libXext
148 dmx? ( x11-libs/libdmx ) 136 dmx? ( x11-libs/libdmx )
149 !minimal? ( x11-libs/libXtst 137 !minimal? ( x11-libs/libXtst
150 x11-libs/libXres ) 138 x11-libs/libXres )
151 >=x11-libs/libxkbui-1.0.2 139 >=x11-libs/libxkbui-1.0.2
152 x11-libs/liblbxutil 140 x11-libs/liblbxutil
153 kdrive? ( sdl? ( media-libs/libsdl ) ) 141 kdrive? ( sdl? ( media-libs/libsdl ) )"
154 !media-video/nvidia-glx"
155 # Xres is dmx-dependent, xkbui is xorgcfg-dependent 142 # Xres is dmx-dependent, xkbui is xorgcfg-dependent
156 # Xaw is dmx- and xorgcfg-dependent 143 # Xaw is dmx- and xorgcfg-dependent
157 # Xpm is dmx- and xorgcfg-dependent, pulls in Xt 144 # Xpm is dmx- and xorgcfg-dependent, pulls in Xt
158 # Xxf86misc and Xxf86vm are xorgcfg-dependent 145 # Xxf86misc and Xxf86vm are xorgcfg-dependent
159 # liblbxutil is lbx- dependent 146 # liblbxutil is lbx- dependent
180 x11-proto/fontsproto 167 x11-proto/fontsproto
181 >=x11-proto/kbproto-1.0-r1 168 >=x11-proto/kbproto-1.0-r1
182 x11-proto/inputproto 169 x11-proto/inputproto
183 x11-proto/bigreqsproto 170 x11-proto/bigreqsproto
184 x11-proto/xcmiscproto 171 x11-proto/xcmiscproto
185 >=x11-proto/glproto-1.4.6 172 >=x11-proto/glproto-1.4.8
186 dmx? ( x11-proto/dmxproto ) 173 dmx? ( x11-proto/dmxproto )
187 dri? ( x11-proto/xf86driproto 174 dri? ( x11-proto/xf86driproto
188 >=x11-libs/libdrm-2 ) 175 >=x11-libs/libdrm-2 )
189 xprint? ( x11-proto/printproto 176 xprint? ( x11-proto/printproto
190 x11-apps/mkfontdir 177 x11-apps/mkfontdir
271 video_cards_vmware? ( >=x11-drivers/xf86-video-vmware-10.13.0 ) 258 video_cards_vmware? ( >=x11-drivers/xf86-video-vmware-10.13.0 )
272 video_cards_voodoo? ( >=x11-drivers/xf86-video-voodoo-1.1.0 ) 259 video_cards_voodoo? ( >=x11-drivers/xf86-video-voodoo-1.1.0 )
273 260
274 video_cards_tdfx? ( 3dfx? ( >=media-libs/glide-v3-3.10 ) ) 261 video_cards_tdfx? ( 3dfx? ( >=media-libs/glide-v3-3.10 ) )
275 video_cards_fglrx? ( >=x11-drivers/ati-drivers-8.27.10 ) 262 video_cards_fglrx? ( >=x11-drivers/ati-drivers-8.27.10 )
276 video_cards_nvidia? ( || ( 263 video_cards_nvidia? ( x11-drivers/nvidia-drivers )
277 >=x11-drivers/nvidia-drivers-1.0.8774
278 >=x11-drivers/nvidia-legacy-drivers-1.0.7184
279 )
280 )
281 )" 264 )"
282LICENSE="${LICENSE} MIT" 265LICENSE="${LICENSE} MIT"
283 266
284pkg_setup() { 267pkg_setup() {
285 use minimal || ensure_a_server_is_building 268 use minimal || ensure_a_server_is_building
286 269
287 # Bug #145274 - anything that uses vm86.h is broken on AMD64 270 PATCHES="${FILESDIR}/xorg-x11-server-1.1.1-mesa-6.5.1.patch
288 if use kdrive && use amd64 && use video_cards_vesa; then 271 ${FILESDIR}/${P}-install-libxf86config-headers.patch
289 eerror "kdrive's VESA driver does not build on AMD64 because it uses" 272 ${FILESDIR}/${PV}-fix-xrandr-zoom-keys.patch
290 eerror "vm86.h. Please build kdrive without VIDEO_CARDS=\"vesa\"." 273 ${FILESDIR}/${PV}-sparc64-ati-lockups.patch
291 die "kdrive's VESA driver does not build on AMD64." 274 ${FILESDIR}/xorg-conf-example.patch"
275
276 # Patches required for compiz to work with AIGLX,
277 # but they slow EXA down (bug #147841).
278 if use aiglx; then
279 einfo "AIGLX patches will be applied."
280 ewarn "These patches are known to cause problems with EXA enabled."
281 PATCHES="${FILESDIR}/01-no-move-damage.patch
282 ${FILESDIR}/02-dont-backfill-bg-none.patch
283 ${FILESDIR}/03-tfp-damage.patch
284 ${FILESDIR}/04-mesa-copy-sub-buffer.patch
285 ${FILESDIR}/05-offscreen-pixmaps.patch
286 ${FILESDIR}/06-aiglx-happy-vt-switch.patch
287 ${PATCHES}"
292 fi 288 fi
293 289
294 # SDL only available in kdrive build 290 # SDL only available in kdrive build
295 if use kdrive && use sdl; then 291 if use kdrive && use sdl; then
296 conf_opts="${conf_opts} --enable-xsdl" 292 conf_opts="${conf_opts} --enable-xsdl"
299 fi 295 fi
300 296
301 # Only Xorg and Xgl support this, and we won't build Xgl 297 # Only Xorg and Xgl support this, and we won't build Xgl
302 # until it merges to trunk 298 # until it merges to trunk
303 if use xorg; then 299 if use xorg; then
304 conf_opts="${conf_opts} --with-mesa-source=${WORKDIR}/Mesa" 300 conf_opts="${conf_opts} --with-mesa-source=${WORKDIR}/${MESA_P}"
305 fi 301 fi
306 302
307 # localstatedir is used for the log location; we need to override the default 303 # localstatedir is used for the log location; we need to override the default
308 # from ebuild.sh 304 # from ebuild.sh
309 # sysconfdir is used for the xorg.conf location; same applies 305 # sysconfdir is used for the xorg.conf location; same applies
321 $(use_enable xprint) 317 $(use_enable xprint)
322 $(use_enable nptl glx-tls) 318 $(use_enable nptl glx-tls)
323 --sysconfdir=/etc/X11 319 --sysconfdir=/etc/X11
324 --localstatedir=/var 320 --localstatedir=/var
325 --enable-install-setuid 321 --enable-install-setuid
326 --with-default-font-path=/usr/share/fonts/misc,/usr/share/fonts/75dpi,/usr/share/fonts/100dpi,/usr/share/fonts/TTF,/usr/share/fonts/Type1 322 --with-fontdir=/usr/share/fonts
327 ${conf_opts}" 323 ${conf_opts}"
328 324
329 local diemsg="You must build xorg-server and mesa with the same nptl USE setting." 325 local diemsg="You must build xorg-server and mesa with the same nptl USE setting."
330 if built_with_use media-libs/mesa nptl; then 326 if built_with_use media-libs/mesa nptl; then
331 use nptl || die "${diemsg}" 327 use nptl || die "${diemsg}"
346 x-modular_specs_check 342 x-modular_specs_check
347 x-modular_dri_check 343 x-modular_dri_check
348 x-modular_unpack_source 344 x-modular_unpack_source
349 x-modular_patch_source 345 x-modular_patch_source
350 346
351 # https://bugs.freedesktop.org/show_bug.cgi?id=3914
352 # Addition of Altix support breaks 64-bit BARs,
353 # which causes sparc64 lockups with ATI video
354 # The sparc team will maintain and forward-port this patch.
355 if use sparc && use video_cards_mach64; then
356 epatch "${FILESDIR}"/${PV}-remove-altix.patch
357 fi
358
359 # Set up kdrive servers to build 347 # Set up kdrive servers to build
360 if use kdrive; then 348 if use kdrive; then
361 einfo "Removing unused kdrive drivers ..." 349 kdrive_setup
362 for card in ${IUSE_VIDEO_CARDS}; do
363 # (bug #136370) Radeon needs fbdev and vesa
364 if use video_cards_radeon; then
365 if [[ ${card} = video_cards_fbdev ]] \
366 || [[ ${card} = video_cards_vesa ]]; then
367 continue
368 fi
369 fi
370
371 real_card=${card#video_cards_}
372
373 # Differences between VIDEO_CARDS name and kdrive server name
374 real_card=${real_card/glint/pm2}
375 real_card=${real_card/radeon/ati}
376 real_card=${real_card/%nv/nvidia}
377 real_card=${real_card/siliconmotion/smi}
378 real_card=${real_card/%sis/sis300}
379 if ! use ${card}; then
380 ebegin " ${real_card}"
381 sed -i \
382 -e "s:\b${real_card}\b::g" \
383 ${S}/hw/kdrive/Makefile.am \
384 || die "sed of ${real_card} failed"
385 eend
386 fi
387
388 done
389
390 # smi and via are the only things on line 2. If line 2 ends up blank,
391 # we need to get rid of the backslash at the end of line 1.
392 if ! use video_cards_siliconmotion && ! use video_cards_via; then
393 sed -i \
394 -e "s:^\(VESA_SUBDIRS.*\)\\\:\1:g" \
395 ${S}/hw/kdrive/Makefile.am
396 fi
397 fi 350 fi
398 351
399 # Make sure eautoreconf gets run if we need the autoconf/make 352 # Make sure eautoreconf gets run if we need the autoconf/make
400 # changes. 353 # changes.
401 if [[ ${SNAPSHOT} != "yes" ]]; then 354 if [[ ${SNAPSHOT} != "yes" ]]; then
415 368
416 # Install video mode files for system-config-display 369 # Install video mode files for system-config-display
417 insinto /usr/share/xorg 370 insinto /usr/share/xorg
418 doins hw/xfree86/common/{extra,vesa}modes \ 371 doins hw/xfree86/common/{extra,vesa}modes \
419 || die "couldn't install extra modes" 372 || die "couldn't install extra modes"
373
374 # Bug #151421 - this file is not built with USE="minimal"
375 # Bug #151670 - this file is also not build if USE="-xorg"
376 if ! use minimal && use xorg; then
377 # Install xorg.conf.example
378 insinto /etc/X11
379 doins hw/xfree86/xorg.conf.example \
380 || die "couldn't install xorg.conf.example"
381 fi
420} 382}
421 383
422pkg_postinst() { 384pkg_postinst() {
423 switch_opengl_implem 385 switch_opengl_implem
424 386
433 # Get rid of module dir to ensure opengl-update works properly 395 # Get rid of module dir to ensure opengl-update works properly
434 if ! has_version x11-base/xorg-server; then 396 if ! has_version x11-base/xorg-server; then
435 if [ -e ${ROOT}/usr/$(get_libdir)/xorg/modules ]; then 397 if [ -e ${ROOT}/usr/$(get_libdir)/xorg/modules ]; then
436 rm -rf ${ROOT}/usr/$(get_libdir)/xorg/modules 398 rm -rf ${ROOT}/usr/$(get_libdir)/xorg/modules
437 fi 399 fi
400 fi
401}
402
403kdrive_setup() {
404 local card real_card disable_card kdrive_fbdev kdrive_vesa
405
406 einfo "Removing unused kdrive drivers ..."
407
408 # Some kdrive servers require fbdev and vesa
409 kdrive_fbdev="radeon neomagic sis siliconmotion"
410 # Some kdrive servers require just vesa
411 kdrive_vesa="chips mach64 mga nv glint r128 via"
412
413 for card in ${IUSE_VIDEO_CARDS}; do
414 real_card=${card#video_cards_}
415
416 # Differences between VIDEO_CARDS name and kdrive server name
417 real_card=${real_card/glint/pm2}
418 real_card=${real_card/radeon/ati}
419 real_card=${real_card/%nv/nvidia}
420 real_card=${real_card/siliconmotion/smi}
421 real_card=${real_card/%sis/sis300}
422
423 disable_card=0
424
425 # Check whether it's a valid kdrive server before we waste time
426 # on the rest of this
427 if ! grep -q -o "\b${real_card}\b" ${S}/hw/kdrive/Makefile.am; then
428 continue
429 fi
430
431 if ! use ${card}; then
432 if use x86; then
433 # Some kdrive servers require fbdev and vesa
434 for i in ${kdrive_fbdev}; do
435 if use video_cards_${i}; then
436 if [[ ${real_card} = fbdev ]] \
437 || [[ ${real_card} = vesa ]]; then
438 continue 2 # Don't disable
439 fi
440 fi
441 done
442
443 # Some kdrive servers require just vesa
444 for i in ${kdrive_vesa}; do
445 if use video_cards_${i}; then
446 if [[ ${real_card} = vesa ]]; then
447 continue 2 # Don't disable
448 fi
449 fi
450 done
451 fi
452 disable_card=1
453 # Bug #150052
454 # fbdev is the only VIDEO_CARDS setting that works on non-x86
455 elif ! use x86 \
456 && [[ ${real_card} != fbdev ]]; then
457 ewarn " $real_card does not work on your architecture; disabling."
458 disable_card=1
459 fi
460
461 if [[ $disable_card = 1 ]]; then
462 ebegin " ${real_card}"
463 sed -i \
464 -e "s:\b${real_card}\b::g" \
465 ${S}/hw/kdrive/Makefile.am \
466 || die "sed of ${real_card} failed"
467 eend
468 fi
469
470 done
471
472 # smi and via are the only things on line 2. If line 2 ends up blank,
473 # we need to get rid of the backslash at the end of line 1.
474 if ! use video_cards_siliconmotion && ! use video_cards_via; then
475 sed -i \
476 -e "s:^\(VESA_SUBDIRS.*\)\\\:\1:g" \
477 ${S}/hw/kdrive/Makefile.am
438 fi 478 fi
439} 479}
440 480
441dynamic_libgl_install() { 481dynamic_libgl_install() {
442 # next section is to setup the dynamic libGL stuff 482 # next section is to setup the dynamic libGL stuff

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.23

  ViewVC Help
Powered by ViewVC 1.1.20