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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (show annotations) (download)
Thu Oct 29 10:50:10 2009 UTC (4 years, 10 months ago) by scarabeus
Branch: MAIN
Changes since 1.1: +27 -2 lines
Add proper blockers for xorg-7.5 stuff we dont want with xorg-server-1.6. Per bug #290739.
(Portage version: 2.2_rc46/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.5.ebuild,v 1.1 2009/10/12 08:19:07 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 versionator
11
12 SRC_URI="${SRC_URI}"
13 # mirror://gentoo/${P}-gentoo-patches-01.tar.bz2
14
15 OPENGL_DIR="xorg-x11"
16
17 DESCRIPTION="X.Org X servers"
18 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
19
20 IUSE_SERVERS="dmx kdrive xorg"
21 IUSE="${IUSE_SERVERS} tslib hal ipv6 minimal nptl sdl"
22
23 RDEP_XORG_BLOCKERS="!>=x11-apps/xinput-1.5.0
24 !>=x11-base/xorg-drivers-1.7
25 !>=x11-base/xorg-server-1.7.1
26 !>=x11-libs/libX11-1.3.2
27 !>=x11-libs/libXScrnSaver-1.2.0
28 !>=x11-libs/libXext-1.1.1
29 !>=x11-libs/libXi-1.3
30 !>=x11-libs/libXinerama-1.1
31 !>=x11-libs/libXtst-1.1.0
32 !>=x11-libs/libXxf86dga-1.1.1
33 !>=x11-libs/libXxf86vm-1.1.0
34 !>=x11-proto/bigreqsproto-1.1.0
35 !>=x11-proto/fixesproto-4.1.1
36 !>=x11-proto/inputproto-2.0
37 !>=x11-proto/recordproto-1.14
38 !>=x11-proto/scrnsaverproto-1.2.0
39 !>=x11-proto/xcmiscproto-1.2.0
40 !>=x11-proto/xextproto-7.1.1
41 !>=x11-proto/xf86bigfontproto-1.2.0
42 !>=x11-proto/xf86dgaproto-2.1
43 !>=x11-proto/xf86driproto-2.1.0
44 !>=x11-proto/xf86vidmodeproto-2.3
45 !>=x11-proto/xineramaproto-1.2"
46 RDEPEND="${RDEP_XORG_BLOCKERS}
47 hal? ( sys-apps/hal )
48 tslib? ( >=x11-libs/tslib-1.0 x11-proto/xcalibrateproto )
49 dev-libs/openssl
50 >=x11-libs/libXfont-1.4.0
51 >=x11-libs/xtrans-1.2.3
52 >=x11-libs/libXau-1.0.4
53 >=x11-libs/libXext-1.0.4
54 >=x11-libs/libX11-1.1.5
55 >=x11-libs/libxkbfile-1.0.4
56 >=x11-libs/libXdmcp-1.0.2
57 >=x11-libs/libXmu-1.0.3
58 >=x11-libs/libXrender-0.9.4
59 >=x11-libs/libXi-1.2.1
60 >=x11-libs/pixman-0.14.0
61 media-libs/freetype
62 >=x11-misc/xbitmaps-1.0.1
63 >=x11-misc/xkeyboard-config-1.4
64 x11-apps/xkbcomp
65 >=x11-apps/iceauth-1.0.2
66 >=x11-apps/rgb-1.0.3
67 >=x11-apps/xauth-1.0.3
68 >=x11-apps/xinit-1.0.8-r3
69 >=app-admin/eselect-opengl-1.0.8
70 >=x11-libs/libXaw-1.0.5
71 >=x11-libs/libXpm-3.5.7
72 >=x11-libs/libpciaccess-0.10.3
73 dmx? (
74 >=x11-libs/libdmx-1.0.2
75 >=x11-libs/libXfixes-4.0.3
76 )
77 !minimal? (
78 >=x11-libs/libXtst-1.0.3
79 >=x11-libs/libXres-1.0.3
80 >=media-libs/mesa-7.3_rc1[nptl=]
81 )
82 >=x11-libs/libxkbui-1.0.2
83 kdrive? ( sdl? ( media-libs/libsdl ) )"
84 # Xres is dmx-dependent
85 # Xaw is dmx-dependent
86 # Xpm is dmx-dependent, pulls in Xt
87 # xkbcomp is launched at startup but not checked by ./configure
88 DEPEND="${RDEPEND}
89 !net-dialup/dtrace
90 sys-devel/flex
91 >=x11-proto/randrproto-1.2.99.4
92 >=x11-proto/renderproto-0.9.3
93 >=x11-proto/fixesproto-4
94 >=x11-proto/damageproto-1.1
95 >=x11-proto/xextproto-7.0.4
96 >=x11-proto/xproto-7.0.14
97 >=x11-proto/xf86dgaproto-2.0.3
98 >=x11-proto/xf86rushproto-1.1.2
99 >=x11-proto/xf86vidmodeproto-2.2.2
100 >=x11-proto/compositeproto-0.4
101 >=x11-proto/recordproto-1.13.2
102 >=x11-proto/resourceproto-1.0.2
103 >=x11-proto/videoproto-2.2.2
104 >=x11-proto/scrnsaverproto-1.1.0
105 >=x11-proto/trapproto-3.4.3
106 >=x11-proto/xineramaproto-1.1.2
107 >=x11-proto/fontsproto-2.0.2
108 >=x11-proto/kbproto-1.0.3
109 >=x11-proto/inputproto-1.5.0
110 >=x11-proto/bigreqsproto-1.0.2
111 >=x11-proto/xcmiscproto-1.1.2
112 >=x11-proto/glproto-1.4.9
113 dmx? ( >=x11-proto/dmxproto-2.2.2 )
114 !minimal? (
115 >=x11-proto/xf86driproto-2.0.4
116 >=x11-proto/dri2proto-2.1
117 >=x11-libs/libdrm-2.3
118 )"
119
120 PDEPEND="xorg? ( >=x11-base/xorg-drivers-$(get_version_component_range 1-2) )"
121 LICENSE="${LICENSE} MIT"
122
123 EPATCH_FORCE="yes"
124 EPATCH_SUFFIX="patch"
125
126 # These have been sent upstream
127 #UPSTREAMED_PATCHES=(
128 # "${WORKDIR}/patches/"
129 # )
130
131 PATCHES=(
132 "${UPSTREAMED_PATCHES[@]}"
133 )
134
135 pkg_setup() {
136 use minimal || ensure_a_server_is_building
137
138 # SDL only available in kdrive build
139 if use kdrive && use sdl; then
140 conf_opts="${conf_opts} --enable-xsdl"
141 else
142 conf_opts="${conf_opts} --disable-xsdl"
143 fi
144
145 # localstatedir is used for the log location; we need to override the default
146 # from ebuild.sh
147 # sysconfdir is used for the xorg.conf location; same applies
148 # --enable-install-setuid needed because sparcs default off
149 CONFIGURE_OPTIONS="
150 $(use_enable ipv6)
151 $(use_enable dmx)
152 $(use_enable kdrive)
153 $(use_enable tslib)
154 $(use_enable tslib xcalibrate)
155 $(use_enable !minimal xvfb)
156 $(use_enable !minimal xnest)
157 $(use_enable !minimal record)
158 $(use_enable !minimal xfree86-utils)
159 $(use_enable !minimal install-libxf86config)
160 $(use_enable !minimal dri)
161 $(use_enable !minimal dri2)
162 $(use_enable !minimal glx)
163 $(use_enable xorg)
164 $(use_enable nptl glx-tls)
165 $(use_enable hal config-hal)
166 --sysconfdir=/etc/X11
167 --localstatedir=/var
168 --enable-install-setuid
169 --with-fontdir=/usr/share/fonts
170 --with-xkb-output=/var/lib/xkb
171 --without-dtrace
172 ${conf_opts}"
173
174 # (#121394) Causes window corruption
175 filter-flags -fweb
176
177 # Incompatible with GCC 3.x SSP on x86, bug #244352
178 if use x86 ; then
179 if [[ $(gcc-major-version) -lt 4 ]]; then
180 filter-flags -fstack-protector
181 fi
182 fi
183
184 OLD_IMPLEM="$(eselect opengl show)"
185 eselect opengl set --impl-headers ${OPENGL_DIR}
186 }
187
188 src_install() {
189 x-modular_src_install
190
191 dynamic_libgl_install
192
193 server_based_install
194
195 # Install video mode files for system-config-display
196 insinto /usr/share/xorg
197 doins hw/xfree86/common/{extra,vesa}modes \
198 || die "couldn't install extra modes"
199
200 # Bug #151421 - this file is not built with USE="minimal"
201 # Bug #151670 - this file is also not build if USE="-xorg"
202 if ! use minimal && use xorg; then
203 # Install xorg.conf.example
204 insinto /etc/X11
205 doins hw/xfree86/xorg.conf.example \
206 || die "couldn't install xorg.conf.example"
207 fi
208 }
209
210 pkg_postinst() {
211 switch_opengl_implem
212
213 # Bug #135544
214 ewarn "Users of reduced blanking now need:"
215 ewarn " Option \"ReducedBlanking\""
216 ewarn "In the relevant Monitor section(s)."
217 ewarn "Make sure your reduced blanking modelines are safe!"
218
219 echo
220 ewarn "You must rebuild all drivers if upgrading from xorg-server 1.5"
221 ewarn "or earlier, because the ABI changed. If you cannot start X because"
222 ewarn "of module version mismatch errors, this is your problem."
223
224 echo
225 ewarn "You can generate a list of all installed packages in the x11-drivers"
226 ewarn "category using this command:"
227 ewarn "emerge portage-utils; qlist -I -C x11-drivers/"
228
229 ebeep 5
230 epause 10
231 }
232
233 pkg_postrm() {
234 # Get rid of module dir to ensure opengl-update works properly
235 if ! has_version x11-base/xorg-server; then
236 if [[ -e ${ROOT}/usr/$(get_libdir)/xorg/modules ]]; then
237 rm -rf "${ROOT}"/usr/$(get_libdir)/xorg/modules
238 fi
239 fi
240 }
241
242 dynamic_libgl_install() {
243 # next section is to setup the dynamic libGL stuff
244 ebegin "Moving GL files for dynamic switching"
245 dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/extensions
246 local x=""
247 for x in "${D}"/usr/$(get_libdir)/xorg/modules/extensions/lib{glx,dri,dri2}*; do
248 if [ -f ${x} -o -L ${x} ]; then
249 mv -f ${x} "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/extensions
250 fi
251 done
252 eend 0
253 }
254
255 server_based_install() {
256 if ! use xorg; then
257 rm "${D}"/usr/share/man/man1/Xserver.1x \
258 "${D}"/usr/$(get_libdir)/xserver/SecurityPolicy \
259 "${D}"/usr/$(get_libdir)/pkgconfig/xorg-server.pc \
260 "${D}"/usr/share/man/man1/Xserver.1x
261 fi
262 }
263
264 switch_opengl_implem() {
265 # Switch to the xorg implementation.
266 # Use new opengl-update that will not reset user selected
267 # OpenGL interface ...
268 echo
269 eselect opengl set ${OLD_IMPLEM}
270 }
271
272 ensure_a_server_is_building() {
273 for server in ${IUSE_SERVERS}; do
274 use ${server} && return;
275 done
276 eerror "You need to specify at least one server to build."
277 eerror "Valid servers are: ${IUSE_SERVERS}."
278 die "No servers were specified to build."
279 }

  ViewVC Help
Powered by ViewVC 1.1.20