1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
|
# $Id: PKGBUILD 189755 2013-07-07 09:05:23Z andyrtr $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
pkgbase=mesa
pkgname=('ati-dri' 'intel-dri' 'nouveau-dri' 'svga-dri' 'mesa' 'mesa-libgl')
pkgver=9.1.4
pkgrel=3
arch=('i686' 'x86_64')
makedepends=('python2' 'libxml2' 'libx11' 'glproto' 'libdrm' 'dri2proto' 'libxxf86vm' 'libxdamage'
'libvdpau' 'wayland' 'llvm-amdgpu-snapshot' 'systemd')
url="http://mesa3d.sourceforge.net"
license=('custom')
options=('!libtool')
source=(ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2
LICENSE)
md5sums=('a2c4e25d0e27918bc67f61bae04d0cb8'
'5c65a0fe315dd347e09b1f2826a1df5a')
build() {
cd ${srcdir}/?esa-*
autoreconf -vfi # our automake is far too new for their build system :)
./configure --prefix=/usr \
--sysconfdir=/etc \
--with-dri-driverdir=/usr/lib/xorg/modules/dri \
--with-gallium-drivers=r300,r600,radeonsi,nouveau,svga,swrast \
--with-dri-drivers=i915,i965,r200,radeon,nouveau,swrast \
--with-llvm-shared-libs \
--enable-gallium-llvm \
--enable-egl \
--enable-gallium-egl \
--with-egl-platforms=x11,drm,wayland \
--enable-shared-glapi \
--enable-gbm \
--enable-glx-tls \
--enable-dri \
--enable-glx \
--enable-osmesa \
--enable-gles1 \
--enable-gles2 \
--enable-texture-float \
--enable-xa \
--enable-vdpau \
# --help
# --with-llvm-shared-libs \ # enabling this would force us to move llvm-amdgpu-snapshot from community to extra, delay it until llvm 3.3 / Mesa 9.2/10.0
make
# fake installation
mkdir $srcdir/fakeinstall
make DESTDIR=${srcdir}/fakeinstall install
}
package_ati-dri() {
pkgdesc="Mesa drivers for AMD/ATI Radeon"
depends=("mesa-libgl=${pkgver}")
conflicts=('xf86-video-ati<6.9.0-6')
install -m755 -d ${pkgdir}/usr/lib/vdpau/
mv -v ${srcdir}/fakeinstall/usr/lib/vdpau/libvdpau_{r300,r600,radeonsi}.* ${pkgdir}/usr/lib/vdpau/
install -m755 -d ${pkgdir}/usr/lib/xorg/modules/dri
mv -v ${srcdir}/fakeinstall/usr/lib/xorg/modules/dri/{r200,r300,r600,radeon,radeonsi}_dri.so ${pkgdir}/usr/lib/xorg/modules/dri/
install -m755 -d ${pkgdir}/usr/lib/gallium-pipe
mv -v ${srcdir}/fakeinstall/usr/lib/gallium-pipe/pipe_{r300,r600,radeonsi}* ${pkgdir}/usr/lib/gallium-pipe/
install -m755 -d "${pkgdir}/usr/share/licenses/ati-dri"
install -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/ati-dri/"
}
package_intel-dri() {
pkgdesc="Mesa drivers for Intel"
depends=("mesa-libgl=${pkgver}")
install -m755 -d ${pkgdir}/usr/lib/xorg/modules/dri
mv -v ${srcdir}/fakeinstall/usr/lib/xorg/modules/dri/{i915,i965}_dri.so ${pkgdir}/usr/lib/xorg/modules/dri/
install -m755 -d "${pkgdir}/usr/share/licenses/intel-dri"
install -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/intel-dri/"
}
package_nouveau-dri() {
pkgdesc="Mesa drivers for Nouveau"
depends=("mesa-libgl=${pkgver}")
# vdpau driver is problematic, so remove it (FS#36004)
install -m755 -d ${pkgdir}/usr/lib/vdpau/
mv -v ${srcdir}/fakeinstall/usr/lib/vdpau/libvdpau_nouveau.* ${pkgdir}/usr/lib/vdpau/
rm -rf ${pkgdir}/usr/lib/vdpau/
install -m755 -d ${pkgdir}/usr/lib/xorg/modules/dri
mv -v ${srcdir}/fakeinstall/usr/lib/xorg/modules/dri/nouveau_{dri,vieux_dri}.so ${pkgdir}/usr/lib/xorg/modules/dri/
install -m755 -d ${pkgdir}/usr/lib/gallium-pipe
mv -v ${srcdir}/fakeinstall/usr/lib/gallium-pipe/pipe_nouveau* ${pkgdir}/usr/lib/gallium-pipe/
install -m755 -d "${pkgdir}/usr/share/licenses/nouveau-dri"
install -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/nouveau-dri/"
}
package_svga-dri() {
pkgdesc="Gallium3D VMware guest GL driver"
depends=('libdrm' 'expat' 'llvm-amdgpu-lib-snapshot')
install -m755 -d ${pkgdir}/usr/lib/xorg/modules/dri
mv -v ${srcdir}/fakeinstall/usr/lib/xorg/modules/dri/vmwgfx_dri.so ${pkgdir}/usr/lib/xorg/modules/dri/
install -m755 -d ${pkgdir}/usr/lib/gallium-pipe
mv -v ${srcdir}/fakeinstall/usr/lib/gallium-pipe/pipe_vmwgfx* ${pkgdir}/usr/lib/gallium-pipe/
install -m755 -d "${pkgdir}/usr/share/licenses/svga-dri"
install -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/svga-dri/"
}
package_mesa() {
pkgdesc="an open-source implementation of the OpenGL specification"
depends=('libdrm' 'libvdpau' 'wayland' 'libxxf86vm' 'libxdamage' 'systemd' 'llvm-amdgpu-lib-snapshot')
optdepends=('opengl-man-pages: for the OpenGL API man pages')
provides=('libglapi' 'osmesa' 'libgbm' 'libgles' 'libegl' 'khrplatform-devel')
conflicts=('libglapi' 'osmesa' 'libgbm' 'libgles' 'libegl' 'khrplatform-devel')
replaces=('libglapi' 'osmesa' 'libgbm' 'libgles' 'libegl' 'khrplatform-devel')
mv -v ${srcdir}/fakeinstall/* ${pkgdir}
# rename libgl.so to not conflict with blobs - may break gl.pc ?
mv ${pkgdir}/usr/lib/libGL.so.1.2.0 ${pkgdir}/usr/lib/mesa-libGL.so.1.2.0
rm ${pkgdir}/usr/lib/libGL.so{,.1}
install -m755 -d "${pkgdir}/usr/share/licenses/mesa"
install -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/mesa/"
}
package_mesa-libgl() {
pkgdesc="Mesa 3-D graphics library"
depends=("mesa=${pkgver}")
provides=("libgl=${pkgver}")
replaces=('libgl')
# See FS#26284
install -m755 -d "${pkgdir}/usr/lib/xorg/modules/extensions"
ln -s libglx.xorg "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.so"
ln -s mesa-libGL.so.1.2.0 ${pkgdir}/usr/lib/libGL.so
ln -s mesa-libGL.so.1.2.0 ${pkgdir}/usr/lib/libGL.so.1
ln -s mesa-libGL.so.1.2.0 ${pkgdir}/usr/lib/libGL.so.1.2.0
install -m755 -d "${pkgdir}/usr/share/licenses/mesa-libgl"
install -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/mesa-libgl/"
}
|