[arch-commits] Commit in mesa/trunk (PKGBUILD fix-install.diff fix-versions.diff)
Jan Steffens
heftig at archlinux.org
Wed Mar 28 09:42:44 UTC 2018
Date: Wednesday, March 28, 2018 @ 09:42:44
Author: heftig
Revision: 320543
meson fixes
Added:
mesa/trunk/fix-install.diff
mesa/trunk/fix-versions.diff
Modified:
mesa/trunk/PKGBUILD
-------------------+
PKGBUILD | 127 ++++++++++++++++++++++++++++++----------------------
fix-install.diff | 29 +++++++++++
fix-versions.diff | 74 ++++++++++++++++++++++++++++++
3 files changed, 178 insertions(+), 52 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2018-03-28 09:21:30 UTC (rev 320542)
+++ PKGBUILD 2018-03-28 09:42:44 UTC (rev 320543)
@@ -4,6 +4,7 @@
pkgbase=mesa
pkgname=('opencl-mesa' 'vulkan-intel' 'vulkan-radeon' 'libva-mesa-driver' 'mesa-vdpau' 'mesa')
+pkgdesc="an open-source implementation of the OpenGL specification"
pkgver=18.0.0
pkgrel=2
arch=('x86_64')
@@ -14,11 +15,15 @@
license=('custom')
source=(https://mesa.freedesktop.org/archive/mesa-${pkgver}.tar.xz{,.sig}
LICENSE
- 0001-glvnd-fix-gl-dot-pc.patch)
+ 0001-glvnd-fix-gl-dot-pc.patch
+ fix-install.diff
+ fix-versions.diff)
sha512sums=('1494bb09357896a2505b3dcfec772268e28c765804f21e144948a314f1d79d99ff9f21062ef5860eb5a5a568b305a9c954585924a7ac8890fe1ebd8df3bcc396'
'SKIP'
'25da77914dded10c1f432ebcbf29941124138824ceecaf1367b3deedafaecabc082d463abcfa3d15abff59f177491472b505bcb5ba0c4a51bb6b93b4721a23c2'
- '75849eca72ca9d01c648d5ea4f6371f1b8737ca35b14be179e14c73cc51dca0739c333343cdc228a6d464135f4791bcdc21734e2debecd29d57023c8c088b028')
+ '75849eca72ca9d01c648d5ea4f6371f1b8737ca35b14be179e14c73cc51dca0739c333343cdc228a6d464135f4791bcdc21734e2debecd29d57023c8c088b028'
+ 'da32ac3b025282c584bfc962723151b6e11887e59e35086c616a987cb3a471051d60f2b303a91f37106ebb75621cbd9b3f560036f5beb88518cfe9d75c45ee03'
+ '7ab28153780c5fa0f443873a627201e7d434991e5ce18ef2a05f678aa4561e172b2ad9a56fb01b72a8482bba650e26a08df10b4d4d6bb696c523f73196a47e39')
validpgpkeys=('8703B6700E7EE06D7A39B8D6EDAE37B02CEB490D') # Emil Velikov <emil.l.velikov at gmail.com>
validpgpkeys+=('946D09B5E4C9845E63075FF1D961C596A7203456') # Andres Gomez <tanty at igalia.com>
validpgpkeys+=('E3E8F480C52ADD73B278EE78E1ECBE07D7D70895') # Juan Antonio Suárez Romero (Igalia, S.L.) <jasuarez at igalia.com>"
@@ -29,6 +34,14 @@
# glvnd support patches - from Fedora
# non-upstreamed ones
patch -Np1 -i ../0001-glvnd-fix-gl-dot-pc.patch
+
+ # fix symlinks created for vdpau drivers to be relative
+ # this is upstreamable
+ patch -Np1 -i ../fix-install.diff
+
+ # fix library versioning
+ # this is upstreamable
+ patch -Np1 -i ../fix-versions.diff
# autoreconf -fiv
}
@@ -70,29 +83,34 @@
# make
arch-meson mesa-$pkgver build \
- -Dgallium-drivers=r300,r600,radeonsi,nouveau,svga,swrast,virgl,swr \
- -Ddri-drivers=i915,i965,r200,radeon,nouveau \
- -Dplatforms=x11,drm,wayland \
- -Dvulkan-drivers=intel,radeon \
- -Dgallium-xvmc=false \
- -Dllvm=true \
- -Dshared-glapi=true \
- -Dglvnd=true \
- -Dlibunwind=true \
- -Dlmsensors=true \
- -Degl=true \
- -Dglx=auto \
- -Dgles1=true \
- -Dgles2=true \
- -Dgbm=true \
- -Dosmesa=gallium \
- -Dgallium-extra-hud=true \
- -Dtexture-float=true \
- -Dgallium-xa=true \
- -Dgallium-vdpau=true \
- -Dgallium-omx=true \
- -Dgallium-nine=true \
- -Dgallium-opencl=icd
+ -D b_lto=false \
+ -D platforms=x11,wayland,drm,surfaceless \
+ -D dri-drivers=i915,i965,r100,r200,nouveau \
+ -D gallium-drivers=r300,r600,radeonsi,nouveau,virgl,svga,swrast,swr \
+ -D vulkan-drivers=amd,intel \
+ -D swr-arches=avx,avx2 \
+ -D dri3=true \
+ -D egl=true \
+ -D gallium-extra-hud=true \
+ -D gallium-nine=true \
+ -D gallium-omx=true \
+ -D gallium-opencl=icd \
+ -D gallium-va=true \
+ -D gallium-vdpau=true \
+ -D gallium-xa=true \
+ -D gallium-xvmc=false \
+ -D gbm=true \
+ -D gles1=true \
+ -D gles2=true \
+ -D glvnd=true \
+ -D glx=dri \
+ -D libunwind=true \
+ -D llvm=true \
+ -D lmsensors=true \
+ -D osmesa=gallium \
+ -D shared-glapi=true \
+ -D texture-float=true \
+ -D valgrind=false
ninja -C build
@@ -104,16 +122,16 @@
package_opencl-mesa() {
pkgdesc="OpenCL support for AMD/ATI Radeon mesa drivers"
- depends=('expat' 'libdrm' 'libelf' 'lm_sensors' 'libunwind' 'libclc' 'clang')
+ depends=('expat' 'libdrm' 'libelf' 'libclc' 'clang')
optdepends=('opencl-headers: headers necessary for OpenCL development')
provides=('opencl-driver')
install -m755 -d ${pkgdir}/etc
- cp -rv ${srcdir}/fakeinstall/etc/OpenCL ${pkgdir}/etc/
+ mv -v ${srcdir}/fakeinstall/etc/OpenCL ${pkgdir}/etc/
- install -m755 -d ${pkgdir}/usr/lib/gallium-pipe
- cp -rv ${srcdir}/fakeinstall/usr/lib/lib*OpenCL* ${pkgdir}/usr/lib/
- cp -rv ${srcdir}/fakeinstall/usr/lib/gallium-pipe/pipe_{r600,radeonsi}.so ${pkgdir}/usr/lib/gallium-pipe/
+ install -m755 -d ${pkgdir}/usr/lib
+ mv -v ${srcdir}/fakeinstall/usr/lib/lib*OpenCL* ${pkgdir}/usr/lib/
+ mv -v ${srcdir}/fakeinstall/usr/lib/gallium-pipe ${pkgdir}/usr/lib/
install -m755 -d "${pkgdir}/usr/share/licenses/opencl-mesa"
install -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/opencl-mesa/"
@@ -121,7 +139,7 @@
package_vulkan-intel() {
pkgdesc="Intel's Vulkan mesa driver"
- depends=('wayland' 'libx11' 'libxshmfence')
+ depends=('wayland' 'libx11' 'libxshmfence' 'libdrm')
provides=('vulkan-driver')
install -m755 -d ${pkgdir}/usr/share/vulkan/icd.d
@@ -152,10 +170,10 @@
package_libva-mesa-driver() {
pkgdesc="VA-API implementation for gallium"
- depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence' 'lm_sensors' 'libunwind')
+ depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence')
install -m755 -d ${pkgdir}/usr/lib/dri
- cp -av ${srcdir}/fakeinstall/usr/lib/dri/*_drv_video.so ${pkgdir}/usr/lib/dri
+ mv -v ${srcdir}/fakeinstall/usr/lib/dri/*_drv_video.so ${pkgdir}/usr/lib/dri
install -m755 -d "${pkgdir}/usr/share/licenses/libva-mesa-driver"
install -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/libva-mesa-driver/"
@@ -163,10 +181,10 @@
package_mesa-vdpau() {
pkgdesc="Mesa VDPAU drivers"
- depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence' 'lm_sensors' 'libunwind')
+ depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence')
- install -m755 -d ${pkgdir}/usr/lib/vdpau
- cp -av ${srcdir}/fakeinstall/usr/lib/vdpau/* ${pkgdir}/usr/lib/vdpau
+ install -m755 -d ${pkgdir}/usr/lib
+ mv -v ${srcdir}/fakeinstall/usr/lib/vdpau ${pkgdir}/usr/lib
install -m755 -d "${pkgdir}/usr/share/licenses/mesa-vdpau"
install -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/mesa-vdpau/"
@@ -173,7 +191,6 @@
}
package_mesa() {
- pkgdesc="an open-source implementation of the OpenGL specification"
depends=('libdrm' 'wayland' 'libxxf86vm' 'libxdamage' 'libxshmfence' 'libelf'
'libomxil-bellagio' 'libunwind' 'llvm-libs' 'lm_sensors' 'libglvnd')
optdepends=('opengl-man-pages: for the OpenGL API man pages'
@@ -185,35 +202,41 @@
backup=('etc/drirc')
install -m755 -d ${pkgdir}/etc
- cp -rv ${srcdir}/fakeinstall/etc/drirc ${pkgdir}/etc
+ mv -v ${srcdir}/fakeinstall/etc/drirc ${pkgdir}/etc
install -m755 -d ${pkgdir}/usr/share/glvnd/egl_vendor.d
- cp -rv ${srcdir}/fakeinstall/usr/share/glvnd/egl_vendor.d/50_mesa.json ${pkgdir}/usr/share/glvnd/egl_vendor.d/
+ mv -v ${srcdir}/fakeinstall/usr/share/glvnd/egl_vendor.d/50_mesa.json ${pkgdir}/usr/share/glvnd/egl_vendor.d/
install -m755 -d ${pkgdir}/usr/lib/dri
# ati-dri, nouveau-dri, intel-dri, svga-dri, swrast
- cp -av ${srcdir}/fakeinstall/usr/lib/dri/*_dri.so ${pkgdir}/usr/lib/dri
+ mv -v ${srcdir}/fakeinstall/usr/lib/dri/*_dri.so ${pkgdir}/usr/lib/dri
- cp -rv ${srcdir}/fakeinstall/usr/lib/bellagio ${pkgdir}/usr/lib
- cp -rv ${srcdir}/fakeinstall/usr/lib/d3d ${pkgdir}/usr/lib
- cp -rv ${srcdir}/fakeinstall/usr/lib/lib{gbm,glapi}.so* ${pkgdir}/usr/lib/
- cp -rv ${srcdir}/fakeinstall/usr/lib/libOSMesa.so* ${pkgdir}/usr/lib/
- cp -rv ${srcdir}/fakeinstall/usr/lib/libwayland*.so* ${pkgdir}/usr/lib/
- cp -rv ${srcdir}/fakeinstall/usr/lib/libxatracker.so* ${pkgdir}/usr/lib/
- cp -rv ${srcdir}/fakeinstall/usr/lib/libswrAVX*.so* ${pkgdir}/usr/lib/
+ mv -v ${srcdir}/fakeinstall/usr/lib/bellagio ${pkgdir}/usr/lib
+ mv -v ${srcdir}/fakeinstall/usr/lib/d3d ${pkgdir}/usr/lib
+ mv -v ${srcdir}/fakeinstall/usr/lib/lib{gbm,glapi}.so* ${pkgdir}/usr/lib/
+ mv -v ${srcdir}/fakeinstall/usr/lib/libOSMesa.so* ${pkgdir}/usr/lib/
+ mv -v ${srcdir}/fakeinstall/usr/lib/libwayland*.so* ${pkgdir}/usr/lib/
+ mv -v ${srcdir}/fakeinstall/usr/lib/libxatracker.so* ${pkgdir}/usr/lib/
+ mv -v ${srcdir}/fakeinstall/usr/lib/libswrAVX*.so* ${pkgdir}/usr/lib/
- cp -rv ${srcdir}/fakeinstall/usr/include ${pkgdir}/usr
- cp -rv ${srcdir}/fakeinstall/usr/lib/pkgconfig ${pkgdir}/usr/lib/
+ # in libglvnd
+ rm -v ${srcdir}/fakeinstall/usr/lib/libGLESv{1_CM,2}.so*
+
+ mv -v ${srcdir}/fakeinstall/usr/include ${pkgdir}/usr
+ mv -v ${srcdir}/fakeinstall/usr/lib/pkgconfig ${pkgdir}/usr/lib/
# remove vulkan headers
- rm -rf ${pkgdir}/usr/include/vulkan
+ rm -r ${pkgdir}/usr/include/vulkan
# libglvnd support
- cp -rv ${srcdir}/fakeinstall/usr/lib/libGLX_mesa.so* ${pkgdir}/usr/lib/
- cp -rv ${srcdir}/fakeinstall/usr/lib/libEGL_mesa.so* ${pkgdir}/usr/lib/
+ mv -v ${srcdir}/fakeinstall/usr/lib/libGLX_mesa.so* ${pkgdir}/usr/lib/
+ mv -v ${srcdir}/fakeinstall/usr/lib/libEGL_mesa.so* ${pkgdir}/usr/lib/
# indirect rendering
ln -s /usr/lib/libGLX_mesa.so.0 ${pkgdir}/usr/lib/libGLX_indirect.so.0
+ # no files should be left: safety check
+ find "${srcdir}/fakeinstall" -depth -print0 | xargs -0 rmdir
+
install -m755 -d "${pkgdir}/usr/share/licenses/mesa"
install -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/mesa/"
}
Added: fix-install.diff
===================================================================
--- fix-install.diff (rev 0)
+++ fix-install.diff 2018-03-28 09:42:44 UTC (rev 320543)
@@ -0,0 +1,29 @@
+diff -u -r mesa/bin/install_megadrivers.py mesa-patched/bin/install_megadrivers.py
+--- mesa/bin/install_megadrivers.py 2018-03-27 19:35:14.000000000 +0200
++++ mesa-patched/bin/install_megadrivers.py 2018-03-28 10:27:15.898280592 +0200
+@@ -50,18 +50,13 @@
+ print('installing {} to {}'.format(args.megadriver, driver))
+ os.link(master, driver)
+
+- try:
+- ret = os.getcwd()
+- os.chdir(to)
+-
+- name, ext = os.path.splitext(each)
+- while ext != '.so':
+- if os.path.exists(name):
+- os.unlink(name)
+- os.symlink(driver, name)
+- name, ext = os.path.splitext(name)
+- finally:
+- os.chdir(ret)
++ name, ext = os.path.splitext(each)
++ while ext != '.so':
++ symlink = os.path.join(to, name)
++ if os.path.exists(symlink):
++ os.unlink(symlink)
++ os.symlink(each, symlink)
++ name, ext = os.path.splitext(name)
+ os.unlink(master)
+
+
Added: fix-versions.diff
===================================================================
--- fix-versions.diff (rev 0)
+++ fix-versions.diff 2018-03-28 09:42:44 UTC (rev 320543)
@@ -0,0 +1,74 @@
+diff -u -r mesa/src/gallium/drivers/swr/meson.build mesa-patched/src/gallium/drivers/swr/meson.build
+--- mesa/src/gallium/drivers/swr/meson.build 2018-03-27 19:35:15.000000000 +0200
++++ mesa-patched/src/gallium/drivers/swr/meson.build 2018-03-28 11:27:05.025710444 +0200
+@@ -198,6 +198,7 @@
+ link_args : [ld_args_gc_sections],
+ include_directories : [swr_incs],
+ dependencies : [dep_thread, dep_llvm],
++ version : '0.0.0',
+ install : true,
+ )
+ endif
+@@ -230,6 +231,7 @@
+ link_args : [ld_args_gc_sections],
+ include_directories : [swr_incs],
+ dependencies : [dep_thread, dep_llvm],
++ version : '0.0.0',
+ install : true,
+ )
+ endif
+@@ -257,6 +259,7 @@
+ link_args : [ld_args_gc_sections],
+ include_directories : [swr_incs],
+ dependencies : [dep_thread, dep_llvm],
++ version : '0.0.0',
+ install : true,
+ )
+ endif
+@@ -281,6 +284,7 @@
+ link_args : [ld_args_gc_sections],
+ include_directories : [swr_incs],
+ dependencies : [dep_thread, dep_llvm],
++ version : '0.0.0',
+ install : true,
+ )
+ endif
+diff -u -r mesa/src/gallium/targets/opencl/meson.build mesa-patched/src/gallium/targets/opencl/meson.build
+--- mesa/src/gallium/targets/opencl/meson.build 2018-03-27 19:35:15.000000000 +0200
++++ mesa-patched/src/gallium/targets/opencl/meson.build 2018-03-28 11:28:56.345996522 +0200
+@@ -20,7 +20,6 @@
+
+ opencl_link_args = []
+ opencl_link_deps = []
+-opencl_version = '1.0'
+
+ if with_ld_version_script
+ opencl_link_args += [
+@@ -55,14 +54,14 @@
+ cpp.find_library('clangLex', dirs : llvm_libdir),
+ cpp.find_library('clangBasic', dirs : llvm_libdir),
+ ],
+- version : opencl_version,
++ version : '1.0.0',
+ install : true,
+ )
+
+ if with_opencl_icd
+ _config = configuration_data()
+ _config.set('OPENCL_LIBNAME', 'MesaOpenCL')
+- _config.set('OPENCL_VERSION', opencl_version)
++ _config.set('OPENCL_VERSION', '1.0')
+ configure_file(
+ configuration : _config,
+ input : 'mesa.icd.in',
+diff -u -r mesa/src/gallium/targets/xa/meson.build mesa-patched/src/gallium/targets/xa/meson.build
+--- mesa/src/gallium/targets/xa/meson.build 2018-03-27 19:35:15.000000000 +0200
++++ mesa-patched/src/gallium/targets/xa/meson.build 2018-03-28 11:10:32.110287167 +0200
+@@ -49,6 +49,7 @@
+ dependencies : [
+ dep_thread, driver_nouveau, driver_i915, driver_svga, driver_freedreno,
+ ],
++ version : '2.3.0',
+ install : true,
+ )
+
More information about the arch-commits
mailing list