/[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 - (hide annotations) (download)
Thu Oct 29 10:50:10 2009 UTC (4 years, 9 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 remi 1.1 # Copyright 1999-2009 Gentoo Foundation
2     # Distributed under the terms of the GNU General Public License v2
3 scarabeus 1.2 # $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 remi 1.1
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 scarabeus 1.2
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 remi 1.1 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