patch added to fix opencl build failure

This commit is contained in:
LW-archlinux 2018-05-23 15:46:59 +02:00
parent 47eab9a1d6
commit e277d2a73f
3 changed files with 52 additions and 7 deletions

View File

@ -1,7 +1,7 @@
pkgbase = mesa-git
pkgdesc = an open-source implementation of the OpenGL specification, git version
pkgver = 18.2.0_devel.102242.dace607245
pkgrel = 3
pkgver = 18.2.0_devel.102366.6db0660d08
pkgrel = 1
url = http://mesa3d.sourceforge.net
arch = x86_64
license = custom
@ -49,8 +49,10 @@ pkgbase = mesa-git
conflicts = wayland<1.14.93
source = mesa::git://anongit.freedesktop.org/mesa/mesa
source = LICENSE
source = 1-3-clover-Fix-build-after-llvm-r332881.patch
sha512sums = SKIP
sha512sums = 25da77914dded10c1f432ebcbf29941124138824ceecaf1367b3deedafaecabc082d463abcfa3d15abff59f177491472b505bcb5ba0c4a51bb6b93b4721a23c2
sha512sums = 650beb81d694b3042aaf2933bd8a97ca0e57a917c84292bfd6f0a284e1ba8b94c4030f855cf82daa76dd05f7a53394db226dff9f2bdc00d8b1d3106de57ae6d5
pkgname = mesa-git

View File

@ -0,0 +1,40 @@
diff --git a/src/gallium/state_trackers/clover/llvm/codegen/native.cpp b/src/gallium/state_trackers/clover/llvm/codegen/native.cpp
index 409f8ac32f..4b589ef50c 100644
--- a/src/gallium/state_trackers/clover/llvm/codegen/native.cpp
+++ b/src/gallium/state_trackers/clover/llvm/codegen/native.cpp
@@ -126,13 +126,12 @@ namespace {
{
compat::pass_manager pm;
::llvm::raw_svector_ostream os { data };
- compat::raw_ostream_to_emit_file fos(os);
mod.setDataLayout(compat::get_data_layout(*tm));
tm->Options.MCOptions.AsmVerbose =
(ft == TargetMachine::CGFT_AssemblyFile);
- if (tm->addPassesToEmitFile(pm, fos, ft))
+ if (compat::add_passes_to_emit_file(*tm, pm, os, ft))
fail(r_log, build_error(), "TargetMachine can't emit this file");
pm.run(mod);
diff --git a/src/gallium/state_trackers/clover/llvm/compat.hpp b/src/gallium/state_trackers/clover/llvm/compat.hpp
index 2e070b2eef..96ba798970 100644
--- a/src/gallium/state_trackers/clover/llvm/compat.hpp
+++ b/src/gallium/state_trackers/clover/llvm/compat.hpp
@@ -245,6 +245,16 @@ namespace clover {
::llvm::WriteBitcodeToFile(mod, os);
#else
::llvm::WriteBitcodeToFile(&mod, os);
+#endif
+ }
+ template<typename TM, typename PM, typename OS, typename FT>
+ bool add_passes_to_emit_file(TM &tm, PM &pm, OS &os, FT &ft)
+ {
+ compat::raw_ostream_to_emit_file fos(os);
+#if HAVE_LLVM >= 0x0700
+ return tm.addPassesToEmitFile(pm, fos, nullptr, ft);
+#else
+ return tm.addPassesToEmitFile(pm, fos, ft);
#endif
}
}

View File

@ -12,8 +12,8 @@
pkgbase=mesa-git
pkgname=('mesa-git')
pkgdesc="an open-source implementation of the OpenGL specification, git version"
pkgver=18.2.0_devel.102242.dace607245
pkgrel=3
pkgver=18.2.0_devel.102366.6db0660d08
pkgrel=1
arch=('x86_64')
makedepends=('git' 'python2-mako' 'llvm-svn' 'clang-svn' 'xorgproto'
'libxml2' 'libx11' 'libvdpau' 'libva' 'elfutils' 'libomxil-bellagio'
@ -27,13 +27,17 @@ url="http://mesa3d.sourceforge.net"
license=('custom')
source=('mesa::git://anongit.freedesktop.org/mesa/mesa'
'LICENSE'
'1-3-clover-Fix-build-after-llvm-r332881.patch'
)
sha512sums=('SKIP'
'25da77914dded10c1f432ebcbf29941124138824ceecaf1367b3deedafaecabc082d463abcfa3d15abff59f177491472b505bcb5ba0c4a51bb6b93b4721a23c2'
)
'650beb81d694b3042aaf2933bd8a97ca0e57a917c84292bfd6f0a284e1ba8b94c4030f855cf82daa76dd05f7a53394db226dff9f2bdc00d8b1d3106de57ae6d5')
prepare() {
cd mesa
# https://bugs.freedesktop.org/show_bug.cgi?id=106619
# https://patchwork.freedesktop.org/patch/224857/
patch -Np1 -i ../1-3-clover-Fix-build-after-llvm-r332881.patch
autoreconf -vfi
}
@ -64,7 +68,6 @@ build () {
--enable-glx-tls \
--enable-libglvnd
# broken, see https://bugs.freedesktop.org/show_bug.cgi?id=106209
# Used configure settings
@ -115,7 +118,7 @@ package_mesa-git() {
make DESTDIR="$pkgdir" install
# remove files provided by libglvnd
rm "$pkgdir"/usr/lib/libGLESv{1_CM,2}.so*
rm "$pkgdir"/usr/lib/libGLESv{1_CM,2}.so*
# indirect rendering
ln -s /usr/lib/libGLX_mesa.so.0 ${pkgdir}/usr/lib/libGLX_indirect.so.0