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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.11 - (show annotations) (download)
Mon Oct 28 17:56:43 2013 UTC (11 months ago) by chithanh
Branch: MAIN
CVS Tags: HEAD
Changes since 1.10: +1 -1 lines
FILE REMOVED
Drop vulnerable versions, security bug #487360.

(Portage version: 2.2.7/cvs/Linux x86_64, unsigned Manifest commit)

1 # Copyright 1999-2013 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.14.3.ebuild,v 1.10 2013/10/08 05:05:04 ago Exp $
4
5 EAPI=5
6
7 XORG_DOC=doc
8 # avoid maintainer mode, bug #484634
9 XORG_EAUTORECONF=yes
10 inherit xorg-2 multilib versionator flag-o-matic
11 EGIT_REPO_URI="git://anongit.freedesktop.org/git/xorg/xserver"
12
13 DESCRIPTION="X.Org X servers"
14 SLOT="0/${PV}"
15 KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
16
17 IUSE_SERVERS="dmx kdrive xnest xorg xvfb"
18 IUSE="${IUSE_SERVERS} ipv6 minimal nptl selinux +suid tslib +udev"
19
20 RDEPEND=">=app-admin/eselect-opengl-1.0.8
21 dev-libs/openssl
22 media-libs/freetype
23 >=x11-apps/iceauth-1.0.2
24 >=x11-apps/rgb-1.0.3
25 >=x11-apps/xauth-1.0.3
26 x11-apps/xkbcomp
27 >=x11-libs/libdrm-2.4.20
28 >=x11-libs/libpciaccess-0.12.901
29 >=x11-libs/libXau-1.0.4
30 >=x11-libs/libXdmcp-1.0.2
31 >=x11-libs/libXfont-1.4.2
32 >=x11-libs/libxkbfile-1.0.4
33 >=x11-libs/pixman-0.27.2
34 >=x11-libs/xtrans-1.2.2
35 >=x11-misc/xbitmaps-1.0.1
36 >=x11-misc/xkeyboard-config-2.4.1-r3
37 dmx? (
38 x11-libs/libXt
39 >=x11-libs/libdmx-1.0.99.1
40 >=x11-libs/libX11-1.1.5
41 >=x11-libs/libXaw-1.0.4
42 >=x11-libs/libXext-1.0.99.4
43 >=x11-libs/libXfixes-5.0
44 >=x11-libs/libXi-1.2.99.1
45 >=x11-libs/libXmu-1.0.3
46 x11-libs/libXrender
47 >=x11-libs/libXres-1.0.3
48 >=x11-libs/libXtst-1.0.99.2
49 )
50 kdrive? (
51 >=x11-libs/libXext-1.0.5
52 x11-libs/libXv
53 )
54 !minimal? (
55 >=x11-libs/libX11-1.1.5
56 >=x11-libs/libXext-1.0.5
57 >=media-libs/mesa-8[nptl=]
58 )
59 tslib? ( >=x11-libs/tslib-1.0 )
60 udev? ( >=virtual/udev-150 )
61 >=x11-apps/xinit-1.3
62 selinux? ( sec-policy/selinux-xserver )"
63
64 DEPEND="${RDEPEND}
65 sys-devel/flex
66 >=x11-proto/bigreqsproto-1.1.0
67 >=x11-proto/compositeproto-0.4
68 >=x11-proto/damageproto-1.1
69 >=x11-proto/fixesproto-5.0
70 >=x11-proto/fontsproto-2.0.2
71 >=x11-proto/glproto-1.4.16
72 >=x11-proto/inputproto-2.2.99.1
73 >=x11-proto/kbproto-1.0.3
74 >=x11-proto/randrproto-1.4.0
75 >=x11-proto/recordproto-1.13.99.1
76 >=x11-proto/renderproto-0.11
77 >=x11-proto/resourceproto-1.2.0
78 >=x11-proto/scrnsaverproto-1.1
79 >=x11-proto/trapproto-3.4.3
80 >=x11-proto/videoproto-2.2.2
81 >=x11-proto/xcmiscproto-1.2.0
82 >=x11-proto/xextproto-7.1.99
83 >=x11-proto/xf86dgaproto-2.0.99.1
84 >=x11-proto/xf86rushproto-1.1.2
85 >=x11-proto/xf86vidmodeproto-2.2.99.1
86 >=x11-proto/xineramaproto-1.1.3
87 >=x11-proto/xproto-7.0.22
88 dmx? (
89 >=x11-proto/dmxproto-2.2.99.1
90 doc? (
91 || (
92 www-client/links
93 www-client/lynx
94 www-client/w3m
95 )
96 )
97 )
98 !minimal? (
99 >=x11-proto/xf86driproto-2.1.0
100 >=x11-proto/dri2proto-2.8
101 )"
102
103 PDEPEND="
104 xorg? ( >=x11-base/xorg-drivers-$(get_version_component_range 1-2) )"
105
106 REQUIRED_USE="!minimal? (
107 || ( ${IUSE_SERVERS} )
108 )"
109
110 #UPSTREAMED_PATCHES=(
111 # "${WORKDIR}/patches/"
112 #)
113
114 PATCHES=(
115 "${UPSTREAMED_PATCHES[@]}"
116 "${FILESDIR}"/${PN}-1.12-disable-acpi.patch
117 "${FILESDIR}"/${PN}-1.12-ia64-fix_inx_outx.patch
118 "${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch
119 )
120
121 pkg_pretend() {
122 # older gcc is not supported
123 [[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
124 die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
125 }
126
127 src_configure() {
128 # localstatedir is used for the log location; we need to override the default
129 # from ebuild.sh
130 # sysconfdir is used for the xorg.conf location; same applies
131 # NOTE: fop is used for doc generating ; and i have no idea if gentoo
132 # package it somewhere
133 XORG_CONFIGURE_OPTIONS=(
134 $(use_enable ipv6)
135 $(use_enable dmx)
136 $(use_enable kdrive)
137 $(use_enable kdrive kdrive-kbd)
138 $(use_enable kdrive kdrive-mouse)
139 $(use_enable kdrive kdrive-evdev)
140 $(use_enable suid install-setuid)
141 $(use_enable tslib)
142 $(use_enable !minimal record)
143 $(use_enable !minimal xfree86-utils)
144 $(use_enable !minimal install-libxf86config)
145 $(use_enable !minimal dri)
146 $(use_enable !minimal dri2)
147 $(use_enable !minimal glx)
148 $(use_enable xnest)
149 $(use_enable xorg)
150 $(use_enable xvfb)
151 $(use_enable nptl glx-tls)
152 $(use_enable udev config-udev)
153 $(use_with doc doxygen)
154 $(use_with doc xmlto)
155 --enable-libdrm
156 --sysconfdir="${EPREFIX}"/etc/X11
157 --localstatedir="${EPREFIX}"/var
158 --with-fontrootdir="${EPREFIX}"/usr/share/fonts
159 --with-xkb-output="${EPREFIX}"/var/lib/xkb
160 --disable-config-hal
161 --without-dtrace
162 --without-fop
163 --with-os-vendor=Gentoo
164 )
165
166 # Xorg-server requires includes from OS mesa which are not visible for
167 # users of binary drivers.
168 mkdir -p "${T}/mesa-symlinks/GL"
169 for i in gl glx glxmd glxproto glxtokens; do
170 ln -s "${EROOT}usr/$(get_libdir)/opengl/xorg-x11/include/$i.h" "${T}/mesa-symlinks/GL/$i.h" || die
171 done
172 for i in glext glxext; do
173 ln -s "${EROOT}usr/$(get_libdir)/opengl/global/include/$i.h" "${T}/mesa-symlinks/GL/$i.h" || die
174 done
175 append-cppflags "-I${T}/mesa-symlinks"
176
177 xorg-2_src_configure
178 }
179
180 src_install() {
181 xorg-2_src_install
182
183 dynamic_libgl_install
184
185 server_based_install
186
187 if ! use minimal && use xorg; then
188 # Install xorg.conf.example into docs
189 dodoc "${AUTOTOOLS_BUILD_DIR}"/hw/xfree86/xorg.conf.example
190 fi
191
192 newinitd "${FILESDIR}"/xdm-setup.initd-1 xdm-setup
193 newinitd "${FILESDIR}"/xdm.initd-9 xdm
194 newconfd "${FILESDIR}"/xdm.confd-4 xdm
195
196 # install the @x11-module-rebuild set for Portage
197 insinto /usr/share/portage/config/sets
198 newins "${FILESDIR}"/xorg-sets.conf xorg.conf
199 }
200
201 pkg_postinst() {
202 # sets up libGL and DRI2 symlinks if needed (ie, on a fresh install)
203 eselect opengl set xorg-x11 --use-old
204
205 if [[ ${PV} != 9999 && $(get_version_component_range 2 ${REPLACING_VERSIONS}) != $(get_version_component_range 2 ${PV}) ]]; then
206 ewarn "You must rebuild all drivers if upgrading from <xorg-server-$(get_version_component_range 1-2)"
207 ewarn "because the ABI changed. If you cannot start X because"
208 ewarn "of module version mismatch errors, this is your problem."
209
210 echo
211 ewarn "You can rebuild all installed packages in the x11-drivers"
212 ewarn "category using this command:"
213 ewarn " emerge @x11-module-rebuild"
214 fi
215
216 if use udev && has_version virtual/udev[-keymap]; then
217 ewarn "virtual/udev was built without keymap support. This may cause input device"
218 ewarn "autoconfiguration to fail."
219 fi
220 }
221
222 pkg_postrm() {
223 # Get rid of module dir to ensure opengl-update works properly
224 if [[ -z ${REPLACED_BY_VERSION} && -e ${EROOT}/usr/$(get_libdir)/xorg/modules ]]; then
225 rm -rf "${EROOT}"/usr/$(get_libdir)/xorg/modules
226 fi
227 }
228
229 dynamic_libgl_install() {
230 # next section is to setup the dynamic libGL stuff
231 ebegin "Moving GL files for dynamic switching"
232 dodir /usr/$(get_libdir)/opengl/xorg-x11/extensions
233 local x=""
234 for x in "${ED}"/usr/$(get_libdir)/xorg/modules/extensions/lib{glx,dri,dri2}*; do
235 if [ -f ${x} -o -L ${x} ]; then
236 mv -f ${x} "${ED}"/usr/$(get_libdir)/opengl/xorg-x11/extensions
237 fi
238 done
239 eend 0
240 }
241
242 server_based_install() {
243 if ! use xorg; then
244 rm "${ED}"/usr/share/man/man1/Xserver.1x \
245 "${ED}"/usr/$(get_libdir)/xserver/SecurityPolicy \
246 "${ED}"/usr/$(get_libdir)/pkgconfig/xorg-server.pc \
247 "${ED}"/usr/share/man/man1/Xserver.1x
248 fi
249 }

  ViewVC Help
Powered by ViewVC 1.1.20