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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (show annotations) (download)
Mon Aug 10 17:37:33 2009 UTC (5 years, 4 months ago) by remi
Branch: MAIN
Changes since 1.2: +0 -1 lines
x11-base/xorg-server: reverting the previous commit, see bug #278487
(Portage version: 2.2_rc36/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.3.ebuild,v 1.1 2009/08/02 21:25:16 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 )
134 >=x11-libs/libxkbui-1.0.2
135 kdrive? ( sdl? ( media-libs/libsdl ) )"
136 # Xres is dmx-dependent
137 # Xaw is dmx-dependent
138 # Xpm is dmx-dependent, pulls in Xt
139 # xkbcomp is launched at startup but not checked by ./configure
140 DEPEND="${RDEPEND}
141 !net-dialup/dtrace
142 sys-devel/flex
143 >=x11-proto/randrproto-1.2.99.4
144 >=x11-proto/renderproto-0.9.3
145 >=x11-proto/fixesproto-4
146 >=x11-proto/damageproto-1.1
147 >=x11-proto/xextproto-7.0.4
148 >=x11-proto/xproto-7.0.14
149 >=x11-proto/xf86dgaproto-2.0.3
150 >=x11-proto/xf86rushproto-1.1.2
151 >=x11-proto/xf86vidmodeproto-2.2.2
152 >=x11-proto/compositeproto-0.4
153 >=x11-proto/recordproto-1.13.2
154 >=x11-proto/resourceproto-1.0.2
155 >=x11-proto/videoproto-2.2.2
156 >=x11-proto/scrnsaverproto-1.1.0
157 >=x11-proto/trapproto-3.4.3
158 >=x11-proto/xineramaproto-1.1.2
159 >=x11-proto/fontsproto-2.0.2
160 >=x11-proto/kbproto-1.0.3
161 >=x11-proto/inputproto-1.5.0
162 >=x11-proto/bigreqsproto-1.0.2
163 >=x11-proto/xcmiscproto-1.1.2
164 >=x11-proto/glproto-1.4.9
165 dmx? ( >=x11-proto/dmxproto-2.2.2 )
166 !minimal? (
167 >=x11-proto/xf86driproto-2.0.4
168 >=x11-proto/dri2proto-2.1
169 >=x11-libs/libdrm-2.3
170 )"
171
172 # Drivers
173 PDEPEND="
174 xorg? (
175 input_devices_acecad? ( >=x11-drivers/xf86-input-acecad-1.3.0 )
176 input_devices_aiptek? ( >=x11-drivers/xf86-input-aiptek-1.2.0 )
177 input_devices_citron? ( >=x11-drivers/xf86-input-citron-2.2.1 )
178 input_devices_elographics? ( >=x11-drivers/xf86-input-elographics-1.2.3 )
179 input_devices_evdev? ( >=x11-drivers/xf86-input-evdev-2.1.3 )
180 input_devices_fpit? ( >=x11-drivers/xf86-input-fpit-1.3.0 )
181 input_devices_hyperpen? ( >=x11-drivers/xf86-input-hyperpen-1.2.0 )
182 input_devices_joystick? ( >=x11-drivers/xf86-input-joystick-1.4.0 )
183 input_devices_keyboard? ( >=x11-drivers/xf86-input-keyboard-1.3.2 )
184 input_devices_mouse? ( >=x11-drivers/xf86-input-mouse-1.4.0 )
185 input_devices_mutouch? ( >=x11-drivers/xf86-input-mutouch-1.2.1 )
186 input_devices_penmount? ( >=x11-drivers/xf86-input-penmount-1.4.0 )
187 input_devices_tslib? ( x11-drivers/xf86-input-tslib )
188 input_devices_virtualbox? ( x11-drivers/xf86-input-virtualbox )
189 input_devices_vmmouse? ( >=x11-drivers/xf86-input-vmmouse-12.6.3 )
190 input_devices_void? ( >=x11-drivers/xf86-input-void-1.2.0 )
191 input_devices_synaptics? ( >=x11-drivers/xf86-input-synaptics-0.15.0 )
192 input_devices_wacom? ( x11-drivers/linuxwacom )
193
194 video_cards_apm? ( >=x11-drivers/xf86-video-apm-1.2.1 )
195 video_cards_ark? ( >=x11-drivers/xf86-video-ark-0.7.1 )
196 video_cards_ast? ( >=x11-drivers/xf86-video-ast-0.87.0 )
197 video_cards_chips? ( >=x11-drivers/xf86-video-chips-1.2.1 )
198 video_cards_cirrus? ( >=x11-drivers/xf86-video-cirrus-1.2.1 )
199 video_cards_dummy? ( >=x11-drivers/xf86-video-dummy-0.3.1 )
200 video_cards_fbdev? ( >=x11-drivers/xf86-video-fbdev-0.4.0 )
201 video_cards_geode? ( >=x11-drivers/xf86-video-geode-2.11.0 )
202 video_cards_glint? ( >=x11-drivers/xf86-video-glint-1.2.2 )
203 video_cards_i128? ( >=x11-drivers/xf86-video-i128-1.3.1 )
204 video_cards_i740? ( >=x11-drivers/xf86-video-i740-1.2.0 )
205 video_cards_intel? ( >=x11-drivers/xf86-video-intel-2.4.2-r1 )
206 video_cards_mach64? ( >=x11-drivers/xf86-video-mach64-6.8.0 )
207 video_cards_mga? ( >=x11-drivers/xf86-video-mga-1.4.9 )
208 video_cards_neomagic? ( >=x11-drivers/xf86-video-neomagic-1.2.2 )
209 video_cards_newport? ( >=x11-drivers/xf86-video-newport-0.2.2 )
210 video_cards_nv? ( >=x11-drivers/xf86-video-nv-2.1.12 )
211 video_cards_nvidia? ( x11-drivers/nvidia-drivers )
212 video_cards_fglrx? ( >=x11-drivers/ati-drivers-9.6 )
213 video_cards_r128? ( >=x11-drivers/xf86-video-r128-6.8.0 )
214 video_cards_radeon? ( >=x11-drivers/xf86-video-ati-6.11.0 )
215 video_cards_radeonhd? ( >=x11-drivers/xf86-video-radeonhd-1.2.1 )
216 video_cards_rendition? ( >=x11-drivers/xf86-video-rendition-4.2.1 )
217 video_cards_s3? ( >=x11-drivers/xf86-video-s3-0.6.1 )
218 video_cards_s3virge? ( >=x11-drivers/xf86-video-s3virge-1.10.2 )
219 video_cards_savage? ( >=x11-drivers/xf86-video-savage-2.2.1 )
220 video_cards_siliconmotion? ( >=x11-drivers/xf86-video-siliconmotion-1.7.0 )
221 video_cards_sis? ( >=x11-drivers/xf86-video-sis-0.10.1 )
222 video_cards_sisusb? ( >=x11-drivers/xf86-video-sisusb-0.9.1 )
223 video_cards_sunffb? ( >=x11-drivers/xf86-video-sunffb-1.2.0 )
224 video_cards_sunleo? ( >=x11-drivers/xf86-video-sunleo-1.2.0 )
225 video_cards_tdfx? ( >=x11-drivers/xf86-video-tdfx-1.4.1 )
226 video_cards_tga? ( >=x11-drivers/xf86-video-tga-1.2.0 )
227 video_cards_trident? ( >=x11-drivers/xf86-video-trident-1.3.1 )
228 video_cards_tseng? ( >=x11-drivers/xf86-video-tseng-1.2.1 )
229 video_cards_v4l? ( >=x11-drivers/xf86-video-v4l-0.2.0 )
230 video_cards_vesa? ( >=x11-drivers/xf86-video-vesa-2.2.0 )
231 video_cards_via? ( >=x11-drivers/xf86-video-openchrome-0.2.903 )
232 video_cards_virtualbox? ( x11-drivers/xf86-video-virtualbox )
233 video_cards_vmware? ( >=x11-drivers/xf86-video-vmware-10.16.5 )
234 video_cards_voodoo? ( >=x11-drivers/xf86-video-voodoo-1.2.1 )
235 video_cards_xgi? ( >=x11-drivers/xf86-video-xgi-1.5.0 )
236
237 !x11-drivers/xf86-video-impact
238 !x11-drivers/xf86-video-imstt
239 !x11-drivers/xf86-video-sunbw2
240 !x11-drivers/xf86-video-suncg14
241 !x11-drivers/xf86-video-suncg3
242 !x11-drivers/xf86-video-suncg6
243 !x11-drivers/xf86-video-suntcx
244 !x11-drivers/xf86-video-vermilion
245
246 !x11-drivers/xf86-video-cyrix
247 !x11-drivers/xf86-video-nsc
248 !x11-drivers/xf86-video-vga
249 )"
250 LICENSE="${LICENSE} MIT"
251
252 EPATCH_FORCE="yes"
253 EPATCH_SUFFIX="patch"
254
255 # Local customizations, unsuitable for upstream
256 GENTOO_PATCHES=(
257 "${FILESDIR}/1.4-fpic-libxf86config.patch"
258 )
259
260 # These have been sent upstream
261 #UPSTREAMED_PATCHES=(
262 # "${WORKDIR}/patches/"
263 # )
264
265 PATCHES=(
266 "${GENTOO_PATCHES[@]}"
267 "${UPSTREAMED_PATCHES[@]}"
268 )
269
270 pkg_setup() {
271 use minimal || ensure_a_server_is_building
272
273 # SDL only available in kdrive build
274 if use kdrive && use sdl; then
275 conf_opts="${conf_opts} --enable-xsdl"
276 else
277 conf_opts="${conf_opts} --disable-xsdl"
278 fi
279
280 # localstatedir is used for the log location; we need to override the default
281 # from ebuild.sh
282 # sysconfdir is used for the xorg.conf location; same applies
283 # --enable-install-setuid needed because sparcs default off
284 CONFIGURE_OPTIONS="
285 $(use_enable ipv6)
286 $(use_enable dmx)
287 $(use_enable kdrive)
288 $(use_enable tslib)
289 $(use_enable tslib xcalibrate)
290 $(use_enable !minimal xvfb)
291 $(use_enable !minimal xnest)
292 $(use_enable !minimal record)
293 $(use_enable !minimal xfree86-utils)
294 $(use_enable !minimal install-libxf86config)
295 $(use_enable !minimal dri)
296 $(use_enable !minimal dri2)
297 $(use_enable !minimal glx)
298 $(use_enable xorg)
299 $(use_enable nptl glx-tls)
300 $(use_enable hal config-dbus)
301 $(use_enable hal config-hal)
302 --sysconfdir=/etc/X11
303 --localstatedir=/var
304 --enable-install-setuid
305 --with-fontdir=/usr/share/fonts
306 --with-xkb-output=/var/lib/xkb
307 --without-dtrace
308 ${conf_opts}"
309
310 # (#121394) Causes window corruption
311 filter-flags -fweb
312
313 # Incompatible with GCC 3.x SSP on x86, bug #244352
314 if use x86 ; then
315 if [[ $(gcc-major-version) -lt 4 ]]; then
316 filter-flags -fstack-protector
317 fi
318 fi
319
320 OLD_IMPLEM="$(eselect opengl show)"
321 eselect opengl set --impl-headers ${OPENGL_DIR}
322 }
323
324 src_install() {
325 x-modular_src_install
326
327 dynamic_libgl_install
328
329 server_based_install
330
331 # Install video mode files for system-config-display
332 insinto /usr/share/xorg
333 doins hw/xfree86/common/{extra,vesa}modes \
334 || die "couldn't install extra modes"
335
336 # Bug #151421 - this file is not built with USE="minimal"
337 # Bug #151670 - this file is also not build if USE="-xorg"
338 if ! use minimal && use xorg; then
339 # Install xorg.conf.example
340 insinto /etc/X11
341 doins hw/xfree86/xorg.conf.example \
342 || die "couldn't install xorg.conf.example"
343 fi
344 }
345
346 pkg_postinst() {
347 switch_opengl_implem
348
349 # Bug #135544
350 ewarn "Users of reduced blanking now need:"
351 ewarn " Option \"ReducedBlanking\""
352 ewarn "In the relevant Monitor section(s)."
353 ewarn "Make sure your reduced blanking modelines are safe!"
354
355 echo
356 ewarn "You must rebuild all drivers if upgrading from xorg-server 1.5"
357 ewarn "or earlier, because the ABI changed. If you cannot start X because"
358 ewarn "of module version mismatch errors, this is your problem."
359
360 echo
361 ewarn "You can generate a list of all installed packages in the x11-drivers"
362 ewarn "category using this command:"
363 ewarn "emerge portage-utils; qlist -I -C x11-drivers/"
364
365 ebeep 5
366 epause 10
367 }
368
369 pkg_postrm() {
370 # Get rid of module dir to ensure opengl-update works properly
371 if ! has_version x11-base/xorg-server; then
372 if [[ -e ${ROOT}/usr/$(get_libdir)/xorg/modules ]]; then
373 rm -rf "${ROOT}"/usr/$(get_libdir)/xorg/modules
374 fi
375 fi
376 }
377
378 dynamic_libgl_install() {
379 # next section is to setup the dynamic libGL stuff
380 ebegin "Moving GL files for dynamic switching"
381 dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/extensions
382 local x=""
383 for x in "${D}"/usr/$(get_libdir)/xorg/modules/extensions/lib{glx,dri}*; do
384 if [ -f ${x} -o -L ${x} ]; then
385 mv -f ${x} "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/extensions
386 fi
387 done
388 eend 0
389 }
390
391 server_based_install() {
392 if ! use xorg; then
393 rm "${D}"/usr/share/man/man1/Xserver.1x \
394 "${D}"/usr/$(get_libdir)/xserver/SecurityPolicy \
395 "${D}"/usr/$(get_libdir)/pkgconfig/xorg-server.pc \
396 "${D}"/usr/share/man/man1/Xserver.1x
397 fi
398 }
399
400 switch_opengl_implem() {
401 # Switch to the xorg implementation.
402 # Use new opengl-update that will not reset user selected
403 # OpenGL interface ...
404 echo
405 eselect opengl set ${OLD_IMPLEM}
406 }
407
408 ensure_a_server_is_building() {
409 for server in ${IUSE_SERVERS}; do
410 use ${server} && return;
411 done
412 eerror "You need to specify at least one server to build."
413 eerror "Valid servers are: ${IUSE_SERVERS}."
414 die "No servers were specified to build."
415 }

  ViewVC Help
Powered by ViewVC 1.1.20