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

Contents of /x11-base/xorg-server/xorg-server-1.6.2.ebuild

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations) (download)
Wed Jul 8 12:21:04 2009 UTC (5 years ago) by remi
Branch: MAIN
x11-base/xorg-server: bump to 1.6.2 still with patches (one for libXinerama dep, the other for xfs bug #236847)
(Portage version: 2.2_rc33/cvs/Linux x86_64)

1 remi 1.1 # Copyright 1999-2009 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.6.1.902-r1.ebuild,v 1.1 2009/07/06 12:50:55 remi Exp $
4    
5     EAPI="2"
6    
7     # Must be before x-modular eclass is inherited
8     #SNAPSHOT="yes"
9    
10     inherit x-modular multilib
11    
12     # keithp put this one in archive/ instead of releases/ for unknown reasons
13     BASE_INDIVIDUAL_URI="http://xorg.freedesktop.org/archive/individual"
14     SRC_URI="${SRC_URI}
15     ${BASE_INDIVIDUAL_URI}/${MODULE}/${P}.tar.bz2
16     mirror://gentoo/${P}-gentoo-patches-01.tar.bz2"
17    
18     OPENGL_DIR="xorg-x11"
19    
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_tslib
48     input_devices_ur98
49     input_devices_virtualbox
50     input_devices_vmmouse
51     input_devices_void
52    
53     input_devices_synaptics
54     input_devices_wacom"
55     IUSE_VIDEO_CARDS="
56     video_cards_apm
57     video_cards_ark
58     video_cards_ast
59     video_cards_chips
60     video_cards_cirrus
61     video_cards_dummy
62     video_cards_epson
63     video_cards_fbdev
64     video_cards_geode
65     video_cards_glint
66     video_cards_i128
67     video_cards_i740
68     video_cards_intel
69     video_cards_impact
70     video_cards_imstt
71     video_cards_mach64
72     video_cards_mga
73     video_cards_neomagic
74     video_cards_nv
75     video_cards_r128
76     video_cards_radeon
77     video_cards_radeonhd
78     video_cards_rendition
79     video_cards_s3
80     video_cards_s3virge
81     video_cards_savage
82     video_cards_siliconmotion
83     video_cards_sis
84     video_cards_sisusb
85     video_cards_sunbw2
86     video_cards_suncg14
87     video_cards_suncg3
88     video_cards_suncg6
89     video_cards_sunffb
90     video_cards_sunleo
91     video_cards_suntcx
92     video_cards_tdfx
93     video_cards_tga
94     video_cards_trident
95     video_cards_tseng
96     video_cards_v4l
97     video_cards_vermilion
98     video_cards_vesa
99     video_cards_via
100     video_cards_virtualbox
101     video_cards_vmware
102     video_cards_voodoo
103     video_cards_xgi
104     video_cards_fglrx
105     video_cards_nvidia"
106     IUSE_SERVERS="dmx kdrive xorg"
107     IUSE="${IUSE_VIDEO_CARDS}
108     ${IUSE_INPUT_DEVICES}
109     ${IUSE_SERVERS}
110     tslib hal ipv6 minimal nptl sdl"
111     RDEPEND="hal? ( sys-apps/hal )
112     tslib? ( >=x11-libs/tslib-1.0 x11-proto/xcalibrateproto )
113     dev-libs/openssl
114     >=x11-libs/libXfont-1.4.0
115     >=x11-libs/xtrans-1.2.3
116     >=x11-libs/libXau-1.0.4
117     >=x11-libs/libXext-1.0.4
118     >=x11-libs/libX11-1.1.5
119     >=x11-libs/libxkbfile-1.0.4
120     >=x11-libs/libXdmcp-1.0.2
121     >=x11-libs/libXmu-1.0.3
122     >=x11-libs/libXrender-0.9.4
123     >=x11-libs/libXi-1.2.1
124     >=x11-libs/pixman-0.14.0
125     media-libs/freetype
126     >=x11-misc/xbitmaps-1.0.1
127     >=x11-misc/xkeyboard-config-1.4
128     x11-apps/xkbcomp
129     >=x11-apps/iceauth-1.0.2
130     >=x11-apps/rgb-1.0.3
131     >=x11-apps/xauth-1.0.3
132     >=x11-apps/xinit-1.0.8-r3
133     >=app-admin/eselect-opengl-1.0.7
134     >=x11-libs/libXaw-1.0.5
135     >=x11-libs/libXpm-3.5.7
136     >=x11-libs/libpciaccess-0.10.3
137     dmx? (
138     >=x11-libs/libdmx-1.0.2
139     >=x11-libs/libXfixes-4.0.3
140     )
141     !minimal? (
142     >=x11-libs/libXtst-1.0.3
143     >=x11-libs/libXres-1.0.3
144     >=media-libs/mesa-7.3_rc1[nptl=]
145     )
146     >=x11-libs/libxkbui-1.0.2
147     kdrive? ( sdl? ( media-libs/libsdl ) )"
148     # Xres is dmx-dependent
149     # Xaw is dmx-dependent
150     # Xpm is dmx-dependent, pulls in Xt
151     # xkbcomp is launched at startup but not checked by ./configure
152     DEPEND="${RDEPEND}
153     !net-dialup/dtrace
154     sys-devel/flex
155     >=x11-proto/randrproto-1.2.99.4
156     >=x11-proto/renderproto-0.9.3
157     >=x11-proto/fixesproto-4
158     >=x11-proto/damageproto-1.1
159     >=x11-proto/xextproto-7.0.4
160     >=x11-proto/xproto-7.0.14
161     >=x11-proto/xf86dgaproto-2.0.3
162     >=x11-proto/xf86rushproto-1.1.2
163     >=x11-proto/xf86vidmodeproto-2.2.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/trapproto-3.4.3
170     >=x11-proto/xineramaproto-1.1.2
171     >=x11-proto/fontsproto-2.0.2
172     >=x11-proto/kbproto-1.0.3
173     >=x11-proto/inputproto-1.5.0
174     >=x11-proto/bigreqsproto-1.0.2
175     >=x11-proto/xcmiscproto-1.1.2
176     >=x11-proto/glproto-1.4.9
177     dmx? ( >=x11-proto/dmxproto-2.2.2 )
178     !minimal? (
179     >=x11-proto/xf86driproto-2.0.4
180     >=x11-proto/dri2proto-2.1
181     >=x11-libs/libdrm-2.3
182     )"
183    
184     # Drivers
185     PDEPEND="
186     xorg? (
187     input_devices_acecad? ( >=x11-drivers/xf86-input-acecad-1.3.0 )
188     input_devices_aiptek? ( >=x11-drivers/xf86-input-aiptek-1.2.0 )
189     input_devices_calcomp? ( >=x11-drivers/xf86-input-calcomp-1.1.2 )
190     input_devices_citron? ( >=x11-drivers/xf86-input-citron-2.2.1 )
191     input_devices_digitaledge? ( >=x11-drivers/xf86-input-digitaledge-1.1.1 )
192     input_devices_dmc? ( >=x11-drivers/xf86-input-dmc-1.1.2 )
193     input_devices_dynapro? ( >=x11-drivers/xf86-input-dynapro-1.1.2 )
194     input_devices_elo2300? ( >=x11-drivers/xf86-input-elo2300-1.1.2 )
195     input_devices_elographics? ( >=x11-drivers/xf86-input-elographics-1.2.3 )
196     input_devices_evdev? ( >=x11-drivers/xf86-input-evdev-2.1.3 )
197     input_devices_fpit? ( >=x11-drivers/xf86-input-fpit-1.3.0 )
198     input_devices_hyperpen? ( >=x11-drivers/xf86-input-hyperpen-1.2.0 )
199     input_devices_jamstudio? ( >=x11-drivers/xf86-input-jamstudio-1.2.0 )
200     input_devices_joystick? ( >=x11-drivers/xf86-input-joystick-1.4.0 )
201     input_devices_keyboard? ( >=x11-drivers/xf86-input-keyboard-1.3.2 )
202     input_devices_magellan? ( >=x11-drivers/xf86-input-magellan-1.2.0 )
203     input_devices_microtouch? ( >=x11-drivers/xf86-input-microtouch-1.2.0 )
204     input_devices_mouse? ( >=x11-drivers/xf86-input-mouse-1.4.0 )
205     input_devices_mutouch? ( >=x11-drivers/xf86-input-mutouch-1.2.1 )
206     input_devices_palmax? ( >=x11-drivers/xf86-input-palmax-1.2.0 )
207     input_devices_penmount? ( >=x11-drivers/xf86-input-penmount-1.4.0 )
208     input_devices_spaceorb? ( >=x11-drivers/xf86-input-spaceorb-1.1.1 )
209     input_devices_summa? ( >=x11-drivers/xf86-input-summa-1.2.0 )
210     input_devices_tek4957? ( >=x11-drivers/xf86-input-tek4957-1.2.0 )
211     input_devices_tslib? ( x11-drivers/xf86-input-tslib )
212     input_devices_ur98? ( >=x11-drivers/xf86-input-ur98-1.1.0 )
213     input_devices_virtualbox? ( x11-drivers/xf86-input-virtualbox )
214     input_devices_vmmouse? ( >=x11-drivers/xf86-input-vmmouse-12.6.3 )
215     input_devices_void? ( >=x11-drivers/xf86-input-void-1.2.0 )
216     input_devices_synaptics? ( >=x11-drivers/xf86-input-synaptics-0.15.0 )
217     input_devices_wacom? ( x11-drivers/linuxwacom )
218    
219     video_cards_apm? ( >=x11-drivers/xf86-video-apm-1.2.1 )
220     video_cards_ark? ( >=x11-drivers/xf86-video-ark-0.7.1 )
221     video_cards_ast? ( >=x11-drivers/xf86-video-ast-0.87.0 )
222     video_cards_chips? ( >=x11-drivers/xf86-video-chips-1.2.1 )
223     video_cards_cirrus? ( >=x11-drivers/xf86-video-cirrus-1.2.1 )
224     video_cards_dummy? ( >=x11-drivers/xf86-video-dummy-0.3.1 )
225     video_cards_fbdev? ( >=x11-drivers/xf86-video-fbdev-0.4.0 )
226     video_cards_geode? ( >=x11-drivers/xf86-video-geode-2.9.0 )
227     video_cards_glint? ( >=x11-drivers/xf86-video-glint-1.2.2 )
228     video_cards_i128? ( >=x11-drivers/xf86-video-i128-1.3.1 )
229     video_cards_i740? ( >=x11-drivers/xf86-video-i740-1.2.0 )
230     video_cards_intel? ( >=x11-drivers/xf86-video-intel-2.4.2-r1 )
231     video_cards_mach64? ( >=x11-drivers/xf86-video-mach64-6.8.0 )
232     video_cards_mga? ( >=x11-drivers/xf86-video-mga-1.4.9 )
233     video_cards_neomagic? ( >=x11-drivers/xf86-video-neomagic-1.2.2 )
234     video_cards_nv? ( >=x11-drivers/xf86-video-nv-2.1.12 )
235     video_cards_nvidia? ( x11-drivers/nvidia-drivers )
236     video_cards_fglrx? ( >=x11-drivers/ati-drivers-9.6 )
237     video_cards_r128? ( >=x11-drivers/xf86-video-r128-6.8.0 )
238     video_cards_radeon? ( >=x11-drivers/xf86-video-ati-6.11.0 )
239     video_cards_radeonhd? ( >=x11-drivers/xf86-video-radeonhd-1.2.1 )
240     video_cards_rendition? ( >=x11-drivers/xf86-video-rendition-4.2.1 )
241     video_cards_s3? ( >=x11-drivers/xf86-video-s3-0.6.1 )
242     video_cards_s3virge? ( >=x11-drivers/xf86-video-s3virge-1.10.2 )
243     video_cards_savage? ( >=x11-drivers/xf86-video-savage-2.2.1 )
244     video_cards_siliconmotion? ( >=x11-drivers/xf86-video-siliconmotion-1.7.0 )
245     video_cards_sis? ( >=x11-drivers/xf86-video-sis-0.10.1 )
246     video_cards_sisusb? ( >=x11-drivers/xf86-video-sisusb-0.9.1 )
247     video_cards_sunffb? ( >=x11-drivers/xf86-video-sunffb-1.2.0 )
248     video_cards_sunleo? ( >=x11-drivers/xf86-video-sunleo-1.2.0 )
249     video_cards_tdfx? ( >=x11-drivers/xf86-video-tdfx-1.4.1 )
250     video_cards_tga? ( >=x11-drivers/xf86-video-tga-1.2.0 )
251     video_cards_trident? ( >=x11-drivers/xf86-video-trident-1.3.1 )
252     video_cards_tseng? ( >=x11-drivers/xf86-video-tseng-1.2.1 )
253     video_cards_v4l? ( >=x11-drivers/xf86-video-v4l-0.2.0 )
254     video_cards_vesa? ( >=x11-drivers/xf86-video-vesa-2.2.0 )
255     video_cards_via? ( >=x11-drivers/xf86-video-openchrome-0.2.903 )
256     video_cards_virtualbox? ( x11-drivers/xf86-video-virtualbox )
257     video_cards_vmware? ( >=x11-drivers/xf86-video-vmware-10.16.5 )
258     video_cards_voodoo? ( >=x11-drivers/xf86-video-voodoo-1.2.1 )
259     video_cards_xgi? ( >=x11-drivers/xf86-video-xgi-1.5.0 )
260    
261     !x11-drivers/xf86-video-impact
262     !x11-drivers/xf86-video-imstt
263     !x11-drivers/xf86-video-newport
264     !x11-drivers/xf86-video-sunbw2
265     !x11-drivers/xf86-video-suncg14
266     !x11-drivers/xf86-video-suncg3
267     !x11-drivers/xf86-video-suncg6
268     !x11-drivers/xf86-video-suntcx
269     !x11-drivers/xf86-video-vermilion
270    
271     !x11-drivers/xf86-video-cyrix
272     !x11-drivers/xf86-video-nsc
273     !x11-drivers/xf86-video-vga
274     )"
275     LICENSE="${LICENSE} MIT"
276    
277     EPATCH_FORCE="yes"
278     EPATCH_SUFFIX="patch"
279    
280     # Local customizations, unsuitable for upstream
281     GENTOO_PATCHES=(
282     "${FILESDIR}/1.4-fpic-libxf86config.patch"
283     )
284    
285     # These have been sent upstream
286     UPSTREAMED_PATCHES=(
287     "${WORKDIR}/patches/"
288     )
289    
290     PATCHES=(
291     "${GENTOO_PATCHES[@]}"
292     "${UPSTREAMED_PATCHES[@]}"
293     )
294    
295     pkg_setup() {
296     use minimal || ensure_a_server_is_building
297    
298     # SDL only available in kdrive build
299     if use kdrive && use sdl; then
300     conf_opts="${conf_opts} --enable-xsdl"
301     else
302     conf_opts="${conf_opts} --disable-xsdl"
303     fi
304    
305     # localstatedir is used for the log location; we need to override the default
306     # from ebuild.sh
307     # sysconfdir is used for the xorg.conf location; same applies
308     # --enable-install-setuid needed because sparcs default off
309     CONFIGURE_OPTIONS="
310     $(use_enable ipv6)
311     $(use_enable dmx)
312     $(use_enable kdrive)
313     $(use_enable tslib)
314     $(use_enable tslib xcalibrate)
315     $(use_enable !minimal xvfb)
316     $(use_enable !minimal xnest)
317     $(use_enable !minimal record)
318     $(use_enable !minimal xfree86-utils)
319     $(use_enable !minimal install-libxf86config)
320     $(use_enable !minimal dri)
321     $(use_enable !minimal dri2)
322     $(use_enable !minimal glx)
323     $(use_enable xorg)
324     $(use_enable nptl glx-tls)
325     $(use_enable hal config-dbus)
326     $(use_enable hal config-hal)
327     --sysconfdir=/etc/X11
328     --localstatedir=/var
329     --enable-install-setuid
330     --with-fontdir=/usr/share/fonts
331     --with-xkb-output=/var/lib/xkb
332     --without-dtrace
333     ${conf_opts}"
334    
335     # (#121394) Causes window corruption
336     filter-flags -fweb
337    
338     # Incompatible with GCC 3.x SSP on x86, bug #244352
339     if use x86 ; then
340     if [[ $(gcc-major-version) -lt 4 ]]; then
341     filter-flags -fstack-protector
342     fi
343     fi
344    
345     OLD_IMPLEM="$(eselect opengl show)"
346     eselect opengl set --impl-headers ${OPENGL_DIR}
347     }
348    
349     src_prepare() {
350     x-modular_patch_source
351    
352     if use hal; then
353     sed -i \
354     -e "s:^\(dbusconfigdir = \).*\(dbus-1.*\):\1/etc/\2:g" \
355     "${S}"/config/Makefile.am \
356     || die "failed to fix DBUS config directory"
357     SNAPSHOT="yes"
358     fi
359    
360     x-modular_reconf_source
361     }
362    
363     src_install() {
364     x-modular_src_install
365    
366     dynamic_libgl_install
367    
368     server_based_install
369    
370     # Install video mode files for system-config-display
371     insinto /usr/share/xorg
372     doins hw/xfree86/common/{extra,vesa}modes \
373     || die "couldn't install extra modes"
374    
375     # Bug #151421 - this file is not built with USE="minimal"
376     # Bug #151670 - this file is also not build if USE="-xorg"
377     if ! use minimal && use xorg; then
378     # Install xorg.conf.example
379     insinto /etc/X11
380     doins hw/xfree86/xorg.conf.example \
381     || die "couldn't install xorg.conf.example"
382     fi
383     }
384    
385     pkg_postinst() {
386     switch_opengl_implem
387    
388     # Bug #135544
389     ewarn "Users of reduced blanking now need:"
390     ewarn " Option \"ReducedBlanking\""
391     ewarn "In the relevant Monitor section(s)."
392     ewarn "Make sure your reduced blanking modelines are safe!"
393    
394     echo
395     ewarn "You must rebuild all drivers if upgrading from xorg-server 1.5"
396     ewarn "or earlier, because the ABI changed. If you cannot start X because"
397     ewarn "of module version mismatch errors, this is your problem."
398    
399     echo
400     ewarn "You can generate a list of all installed packages in the x11-drivers"
401     ewarn "category using this command:"
402     ewarn "emerge portage-utils; qlist -I -C x11-drivers/"
403    
404     ebeep 5
405     epause 10
406     }
407    
408     pkg_postrm() {
409     # Get rid of module dir to ensure opengl-update works properly
410     if ! has_version x11-base/xorg-server; then
411     if [[ -e ${ROOT}/usr/$(get_libdir)/xorg/modules ]]; then
412     rm -rf "${ROOT}"/usr/$(get_libdir)/xorg/modules
413     fi
414     fi
415     }
416    
417     dynamic_libgl_install() {
418     # next section is to setup the dynamic libGL stuff
419     ebegin "Moving GL files for dynamic switching"
420     dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/extensions
421     local x=""
422     for x in "${D}"/usr/$(get_libdir)/xorg/modules/extensions/lib{glx,dri}*; do
423     if [ -f ${x} -o -L ${x} ]; then
424     mv -f ${x} "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/extensions
425     fi
426     done
427     eend 0
428     }
429    
430     server_based_install() {
431     if ! use xorg; then
432     rm "${D}"/usr/share/man/man1/Xserver.1x \
433     "${D}"/usr/$(get_libdir)/xserver/SecurityPolicy \
434     "${D}"/usr/$(get_libdir)/pkgconfig/xorg-server.pc \
435     "${D}"/usr/share/man/man1/Xserver.1x
436     fi
437     }
438    
439     switch_opengl_implem() {
440     # Switch to the xorg implementation.
441     # Use new opengl-update that will not reset user selected
442     # OpenGL interface ...
443     echo
444     eselect opengl set ${OLD_IMPLEM}
445     }
446    
447     ensure_a_server_is_building() {
448     for server in ${IUSE_SERVERS}; do
449     use ${server} && return;
450     done
451     eerror "You need to specify at least one server to build."
452     eerror "Valid servers are: ${IUSE_SERVERS}."
453     die "No servers were specified to build."
454     }

  ViewVC Help
Powered by ViewVC 1.1.20