Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 9075 - (show annotations) (download)
Thu Jun 16 13:49:19 2016 UTC (7 years, 10 months ago) by niro
File size: 8381 byte(s)
-re-enabled
1 # $Id$
2
3 PNAME="xorg-server"
4 PVER="1.18.3"
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.2.2"
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.34
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.3
40 >= sys-libs/libunwind-1.1
41 >= x11-libs/libxshmfence-1.2
42 >= x11-misc/xkeyboard-config-2.18
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.4"
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.34
55 >= x11-libs/libpciaccess-dev-0.13.4
56 >= x11-libs/libdrm-dev-2.4.68
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.68
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.3
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 )
147
148 split_info_xvfb()
149 {
150 DESCRIPTION="A virtual framebuffer X11 server."
151 DEPEND="${XVFB_DEPEND}"
152 }
153
154 pkg_setup()
155 {
156 # must use mesa as opengl-headers!
157 if [[ $(opengl-update --get-implementation) != xorg ]]
158 then
159 die "please change to xorg opengl-headers: opengl-update xorg"
160 fi
161 }
162
163 src_prepare()
164 {
165 munpack ${SRCFILE} || die
166 munpack ${MESA_SRCFILE} || die
167 cd ${SRCDIR}
168
169 # adopted from redhat; use a black background
170 mpatch ${PNAME}-1.12.3-die-ugly-pattern-die-die-die.patch || die
171
172 # fix kdrive default mode -> use 640x480@60hz instead of 800x600@75hz
173 mpatch ${PNAME}-1.12.3-kdrive-default-mode.patch || die
174
175 # fix new evdev event devices (event4 and event5)
176 mpatch ${PNAME}-1.12.3-kdrive-evdev-with-valid-mouse-devices.patch || die
177
178 # fix build issues, some wrapper files which should be generated
179 # at build time exist and the makefile doesn't whipe them. we patch
180 # the makefile to clean them and whipe these wrapper files
181 rm -f ${SRCDIR}/hw/xprint/*-wrapper.c || die
182
183 # fix xorg.conf.d location
184 sed -i 's:^\(@CONFIG_UDEV_TRUE@xorgconfddir =\).*:\1 $(sysconfdir)/X11/$(XF86CONFIGDIR):' config/Makefile.in || die
185 sed -i 's:^\(xorgconfddir =\).*: \1$(sysconfdir)/X11/$(XF86CONFIGDIR):' config/Makefile.am || die
186
187 mautoreconf || die
188 }
189
190 src_compile()
191 {
192 cd ${SRCDIR}
193
194 xorg_src_configure \
195 --with-mesa-source=${MESA_SRCDIR} \
196 --sysconfdir=/etc \
197 --localstatedir=/var \
198 --libexecdir=/usr/$(mlibdir)/${PNAME} \
199 --with-xkb-output=/var/lib/xkb \
200 --with-default-font-path=/usr/share/fonts/misc,/usr/share/fonts/75dpi,/usr/share/fonts/100dpi,/usr/share/fonts/TTF,/usr/share/fonts/Type1 \
201 --disable-install-setuid \
202 --enable-suid-wrapper \
203 --enable-ipv6 \
204 --enable-xorg \
205 --disable-dmx \
206 --enable-xvfb \
207 --disable-xnest \
208 --enable-dri \
209 --enable-dri2 \
210 --enable-dri3 \
211 --enable-glamor \
212 --enable-xtrap \
213 --enable-xevie \
214 --enable-xcsecurity \
215 --enable-libunwind \
216 --disable-xprint \
217 --enable-glx-tls \
218 --enable-glx \
219 --disable-static \
220 --disable-config-dbus \
221 --disable-config-hal \
222 --enable-config-udev \
223 --enable-composite \
224 --enable-xinerama \
225 --enable-systemd-logind \
226 || die
227
228 mmake || die
229 }
230
231 alx_generic_src_install()
232 {
233 xorg_src_install || die
234
235 # needed directories
236 minstalldir /usr/bin || die
237 minstalldir /usr/$(mlibdir)/opengl/xorg/extensions || die
238
239 # dynamic opengl setup
240 local i
241 for i in ${BINDIR}/usr/$(mlibdir)/xorg/modules/libglx* \
242 ${BINDIR}/usr/$(mlibdir)/xorg/modules/libdri*
243 do
244 if [ -f ${i} -o -L ${i} ]
245 then
246 mv -f ${i} ${BINDIR}/usr/$(mlibdir)/opengl/xorg/extensions || die "${i}"
247 fi
248 done
249
250 # missing symlink
251 mlink Xorg /usr/bin/X || die
252
253 # xvfb
254 mdelete /usr/bin/Xvfb || die
255 }
256
257 src_install_xvfb()
258 {
259 cd ${SRCDIR}
260
261 minstallexec hw/vfb/Xvfb || die
262
263 # xvfb-run script to ease things
264 minstallexec -s xvfb-run || die
265
266 # needed directory
267 mkeepdir /usr/share/X11/xkb/compiled || die
268 }
269
270 preinstall_xorg-server()
271 {
272 # fix some deprecated symlinks from ancient xorg-1.5 servers
273 if [ -L ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libdri.so ]
274 then
275 rm ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libdri.so
276 fi
277
278 if [ -f ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libdri.so ]
279 then
280 rm ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libdri.so
281 fi
282
283 if [ -L ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libglx.so ]
284 then
285 rm ${MROOT}/usr/$(mlibdir)/xorg/modules/extensions/libglx.so
286 fi
287
288 if [ -f ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libglx.so ]
289 then
290 rm ${MROOT}/usr/$(mlibdir)/opengl/xorg/extensions/libglx.so
291 fi
292 }
293
294 postinstall_xorg-server()
295 {
296 # provided by xf86-input-evdev now
297 if [ -f ${MROOT}/etc/X11/xorg.conf.d/10-evdev.conf ]
298 then
299 rm ${MROOT}/etc/X11/xorg.conf.d/10-evdev.conf
300 fi
301
302 # opengl setup
303 ${MROOT}/usr/sbin/opengl-update --use-old xorg
304 }
305
306 postremove_xorg-server()
307 {
308 # get rid of module dir to ensure opengl-update works properly
309 if [ -e ${MROOT}/usr/$(mlibdir)/xorg/modules ]
310 then
311 if [[ -z $(magequery -n xorg-server) ]]
312 then
313 rm -rf ${MROOT}/usr/$(mlibdir)/xorg/modules
314 fi
315 fi
316 }