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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (show annotations) (download)
Sat Aug 8 19:46:09 2009 UTC (4 years, 11 months ago) by gengor
Branch: MAIN
Changes since 1.1: +2 -1 lines
Xvfb requires font-cursor-misc runtime, bug #278487.
(Portage version: 2.1.6.13/cvs/Linux i686, RepoMan options: --force)

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

  ViewVC Help
Powered by ViewVC 1.1.20