Magellan Linux

Contents of /smage/trunk/core/xorg-server/xorg-server-1.18.1-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 8724 - (show annotations) (download)
Fri Feb 12 13:41:00 2016 UTC (8 years, 2 months ago) by niro
File size: 8628 byte(s)
auto added: ver bump to 1.18.1-r1
1 # $Id$
2
3 PNAME="xorg-server"
4 PVER="1.18.1"
5 PBUILD="r1"
6
7 SPLIT_PACKAGES="xorg-server xvfb xorg-server-dev"
8
9 PCAT="x11-base"
10
11 DESCRIPTION="Modular X.Org X Server."
12 HOMEPAGE="http://xorg.freedesktop.org"
13
14 # mesa sources are needed to compile opengl extensions
15 MESA_PVER="11.0.9"
16 MESA_SRCFILE="mesa-${MESA_PVER/_/-}.tar.xz"
17 MESA_SRCDIR="${BUILDDIR}/mesa-${MESA_PVER/_/-}"
18
19 PROVIDE="virtual/x11"
20
21 # see hw/xfree86/common/xf86Module.h for ABI versions
22 # or installed pkg-config file
23 PROVIDE+=" virtual/X-ABI-VIDEODRV-20 virtual/X-ABI-XINPUT-22.1 virtual/X-ABI-EXTENSION-9.0"
24
25 DEPEND=">= x11-libs/libXfont-1.5
26 >= x11-libs/libXau-1.0.8
27 >= x11-libs/libXdmcp-1.1
28 >= x11-libs/pixman-0.32
29 >= media-libs/freetype-2.6
30 >= media-fonts/font-misc-misc-1
31 >= dev-libs/openssl-1.0.2
32 >= sys-libs/libsystemd-228
33 >= sys-fs/udev-228
34 >= sys-apps/dbus-x11-1.10
35 >= x11-libs/libXext-1.3
36 >= x11-libs/libX11-1.6
37 >= x11-libs/libXi-1.7
38 == media-libs/mesa-${MESA_PVER}
39 >= media-libs/libepoxy-1.2
40 >= sys-libs/libunwind-1.1
41 >= x11-libs/libxshmfence-1.2
42 >= x11-misc/xkeyboard-config-2.15
43 >= x11-apps/iceauth-1.0.7
44 >= x11-apps/rgb-1.0.6
45 >= x11-apps/xauth-1.0.9
46 >= x11-base/opengl-update-2.3.11
47 >= x11-libs/libpciaccess-0.13.2"
48 #>= media-fonts/font-cursor-misc-1
49 # >= x11-apps/xinit-1.3
50
51 XVFB_DEPEND="${DEPEND}"
52
53 ALX_DEV_DEPEND="== x11-proto/xorg-protos-7.7.${PVER}
54 >= x11-libs/pixman-dev-0.32
55 >= x11-libs/libpciaccess-dev-0.13.2
56 >= x11-libs/libdrm-dev-2.4.66
57 == media-libs/mesa-dev-${MESA_PVER}
58 >= x11-libs/libxkbfile-dev-1
59 >= x11-libs/libXfont-dev-1.5
60 >= sys-libs/libunwind-dev-1.1
61 >= dev-libs/openssl-dev-1.0.2
62 >= x11-apps/rgb-dev-1.0.6"
63
64 SDEPEND=">= media-fonts/font-util-1.3
65 >= x11-libs/libdrm-2.4.61
66 >= x11-libs/libXtst-1.2
67 >= x11-libs/libXres-1.0.7
68 >= x11-libs/xcb-util-image-0.4
69 >= x11-libs/xcb-util-keysyms-0.4
70 >= x11-libs/xcb-util-wm-0.3.9
71 >= x11-libs/libxkbfile-1
72 ${ALX_DEV_DEPEND}
73 >= x11-libs/libXau-dev-1.0.8
74 >= x11-libs/libXdmcp-dev-1.1
75 >= media-libs/freetype-dev-2.6
76 >= sys-apps/systemd-dev-228
77 >= sys-fs/udev-dev-228
78 >= sys-apps/dbus-dev-1.10
79 >= x11-libs/libXext-dev-1.3
80 >= x11-libs/libX11-dev-1.6
81 >= x11-libs/libXi-dev-1.7
82 >= media-libs/libepoxy-dev-1.2
83 >= x11-libs/libxshmfence-dev-1.2
84 >= x11-libs/libXtst-dev-1.2
85 >= x11-libs/libXres-dev-1.0.7
86 >= x11-libs/xcb-util-image-dev-0.4
87 >= x11-libs/xcb-util-keysyms-dev-0.4
88 >= x11-libs/xcb-util-wm-dev-0.3.9"
89
90 # base files
91 ALX_PKG_KEEP="etc/X11
92 usr/bin/X
93 usr/bin/Xorg*
94 usr/$(mlibdir)/${PNAME}
95 usr/$(mlibdir)/xorg/protocol.txt
96 var/lib/xkb/README.compiled"
97
98 # generic modules
99 ALX_PKG_KEEP+=" usr/$(mlibdir)/xorg/modules/libvgahw.so
100 usr/$(mlibdir)/xorg/modules/libvbe.so
101 usr/$(mlibdir)/xorg/modules/libshadow.so
102 usr/$(mlibdir)/xorg/modules/libexa.so
103 usr/$(mlibdir)/xorg/modules/libxaa.so
104 usr/$(mlibdir)/xorg/modules/libint10.so
105 usr/$(mlibdir)/xorg/modules/libfb.so
106 usr/$(mlibdir)/xorg/modules/libshadowfb.so
107 usr/$(mlibdir)/xorg/modules/libglamoregl.so
108 usr/$(mlibdir)/xorg/modules/libfbdevhw.so"
109
110 # generic extensions
111 ALX_PKG_KEEP+=" usr/$(mlibdir)/xorg/modules/extensions/libextmod.so
112 usr/$(mlibdir)/xorg/modules/extensions/libdbe.so
113 usr/$(mlibdir)/xorg/modules/extensions/libglx.so
114 usr/$(mlibdir)/xorg/modules/extensions/libdri.so
115 usr/$(mlibdir)/xorg/modules/extensions/libdri2.so
116 usr/$(mlibdir)/xorg/modules/extensions/librecord.so"
117
118 # opengl
119 ALX_PKG_KEEP+=" usr/$(mlibdir)/opengl/xorg/extensions"
120
121 # other drivers
122 ALX_PKG_KEEP+=" usr/$(mlibdir)/xorg/modules/drivers
123 usr/$(mlibdir)/xorg/modules/drivers/extensions
124 usr/$(mlibdir)/xorg/modules/drivers/input
125 usr/$(mlibdir)/xorg/modules/drivers/linux
126 usr/$(mlibdir)/xorg/modules/drivers/multimedia"
127
128 # libwfb module is needed by the proprietary nvidia-drivers
129 ALX_PKG_KEEP+=" usr/$(mlibdir)/xorg/modules/libwfb.so"
130
131 # keep cvt and gtf for modline calculating
132 ALX_PKG_KEEP+=" usr/bin/cvt usr/bin/gtf"
133
134 UP2SUBDIR="xserver"
135 sminclude xorg mtools alx-split
136
137 SRC_URI=( ${SRC_URI[*]}
138 mirror://${PNAME}/${SRCFILE}
139 ftp://ftp.freedesktop.org/pub/mesa/${MESA_PVER}/${MESA_SRCFILE}
140 #sourceforge://mesa3d/${MESA_SRCFILE}
141 mirror://mesa/${MESA_SRCFILE}
142 mirror://${PNAME}/xvfb-run
143 mirror://${PNAME}/${PNAME}-1.12.3-die-ugly-pattern-die-die-die.patch
144 mirror://${PNAME}/${PNAME}-1.12.3-kdrive-default-mode.patch
145 mirror://${PNAME}/${PNAME}-1.12.3-kdrive-evdev-with-valid-mouse-devices.patch
146 mirror://${PNAME}/${PNAME}-1.18.0-v2-Xorg.wrap-activate-libdrm-based-detection-for-KMS-drivers.patch
147 )
148
149 split_info_xvfb()
150 {
151 DESCRIPTION="A virtual framebuffer X11 server."
152 DEPEND="${XVFB_DEPEND}"
153 }
154
155 pkg_setup()
156 {
157 # must use mesa as opengl-headers!
158 if [[ $(opengl-update --get-implementation) != xorg ]]
159 then
160 die "please change to xorg opengl-headers: opengl-update xorg"
161 fi
162 }
163
164 src_prepare()
165 {
166 munpack ${SRCFILE} || die
167 munpack ${MESA_SRCFILE} || die
168 cd ${SRCDIR}
169
170 # fix kms detection without root permissions
171 mpatch ${PNAME}-1.18.0-v2-Xorg.wrap-activate-libdrm-based-detection-for-KMS-drivers.patch || die
172
173 # adopted from redhat; use a black background
174 mpatch ${PNAME}-1.12.3-die-ugly-pattern-die-die-die.patch || die
175
176 # fix kdrive default mode -> use 640x480@60hz instead of 800x600@75hz
177 mpatch ${PNAME}-1.12.3-kdrive-default-mode.patch || die
178
179 # fix new evdev event devices (event4 and event5)
180 mpatch ${PNAME}-1.12.3-kdrive-evdev-with-valid-mouse-devices.patch || die
181
182 # fix build issues, some wrapper files which should be generated
183 # at build time exist and the makefile doesn't whipe them. we patch
184 # the makefile to clean them and whipe these wrapper files
185 rm -f ${SRCDIR}/hw/xprint/*-wrapper.c || die
186
187 # fix xorg.conf.d location
188 sed -i 's:^\(@CONFIG_UDEV_TRUE@xorgconfddir =\).*:\1 $(sysconfdir)/X11/$(XF86CONFIGDIR):' config/Makefile.in || die
189 sed -i 's:^\(xorgconfddir =\).*: \1$(sysconfdir)/X11/$(XF86CONFIGDIR):' config/Makefile.am || die
190
191 mautoreconf || die
192 }
193
194 src_compile()
195 {
196 cd ${SRCDIR}
197
198 xorg_src_configure \
199 --with-mesa-source=${MESA_SRCDIR} \
200 --sysconfdir=/etc \
201 --localstatedir=/var \
202 --libexecdir=/usr/$(mlibdir)/${PNAME} \
203 --with-xkb-output=/var/lib/xkb \
204 --with-default-font-path=/usr/share/fonts/misc,/usr/share/fonts/75dpi,/usr/share/fonts/100dpi,/usr/share/fonts/TTF,/usr/share/fonts/Type1 \
205 --disable-install-setuid \
206 --enable-suid-wrapper \
207 --enable-ipv6 \
208 --enable-xorg \
209 --disable-dmx \
210 --enable-xvfb \
211 --disable-xnest \
212 --enable-dri \
213 --enable-dri2 \
214 --enable-dri3 \
215 --enable-glamor \
216 --enable-xtrap \
217 --enable-xevie \
218 --enable-xcsecurity \
219 --enable-libunwind \
220 --disable-xprint \
221 --enable-glx-tls \
222 --enable-glx \
223 --disable-static \
224 --disable-config-dbus \
225 --disable-config-hal \
226 --enable-config-udev \
227 --enable-composite \
228 --enable-xinerama \
229 --enable-systemd-logind \
230 || die
231
232 mmake || die
233 }
234
235 alx_generic_src_install()
236 {
237 xorg_src_install || die
238
239 # needed directories
240 minstalldir /usr/bin || die
241 minstalldir /usr/$(mlibdir)/opengl/xorg/extensions || die
242
243 # dynamic opengl setup
244 local i
245 for i in ${BINDIR}/usr/$(mlibdir)/xorg/modules/libglx* \
246 ${BINDIR}/usr/$(mlibdir)/xorg/modules/libdri*
247 do
248 if [ -f ${i} -o -L ${i} ]
249 then
250 mv -f ${i} ${BINDIR}/usr/$(mlibdir)/opengl/xorg/extensions || die "${i}"
251 fi
252 done
253
254 # missing symlink
255 mlink Xorg /usr/bin/X || die
256
257 # xvfb
258 mdelete /usr/bin/Xvfb || die
259 }
260
261 src_install_xvfb()
262 {
263 cd ${SRCDIR}
264
265 minstallexec hw/vfb/Xvfb || die
266
267 # xvfb-run script to ease things
268 minstallexec -s xvfb-run || die
269
270 # needed directory
271 mkeepdir /usr/share/X11/xkb/compiled || die
272 }
273
274 preinstall_xorg-server()
275 {
276 # fix some deprecated symlinks from ancient xorg-1.5 servers
277 if [ -L ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libdri.so ]
278 then
279 rm ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libdri.so
280 fi
281
282 if [ -f ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libdri.so ]
283 then
284 rm ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libdri.so
285 fi
286
287 if [ -L ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libglx.so ]
288 then
289 rm ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libglx.so
290 fi
291
292 if [ -f ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libglx.so ]
293 then
294 rm ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libglx.so
295 fi
296 }
297
298 postinstall_xorg-server()
299 {
300 # provided by xf86-input-evdev now
301 if [ -f ${MROOT}/etc/X11/xorg.conf.d/10-evdev.conf ]
302 then
303 rm ${MROOT}/etc/X11/xorg.conf.d/10-evdev.conf
304 fi
305
306 # opengl setup
307 ${MROOT}/usr/sbin/opengl-update --use-old xorg
308 }
309
310 postremove_xorg-server()
311 {
312 # get rid of module dir to ensure opengl-update works properly
313 if [ -e ${MROOT}/usr/$(mlibdir)/xorg/modules ]
314 then
315 if [[ -z $(magequery -n xorg-server) ]]
316 then
317 rm -rf ${MROOT}/usr/$(mlibdir)/xorg/modules
318 fi
319 fi
320 }